91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 413KB
    文件類型: .bz2
    金幣: 1
    下載: 0 次
    發布日期: 2021-05-20
  • 語言: 其他
  • 標簽: gstreamer??DVR??

資源簡介

用QT做前端界面,調用 gstreamer的一些接口,寫的DVR,用于視頻存貯

資源截圖

代碼片段和文件信息

/*
???DVR?a?Digital?video?Recorder?for?Linux.
???
???Copyright?(C)?2001-2007?Pierre?Hebert?

???This?program?is?free?software;?you?can?redistribute?it?and/or
???modify?it?under?the?terms?of?the?GNU?Library?General?Public?License?as
???published?by?the?Free?Software?Foundation;?either?version?2?of?the
???License?or?(at?your?option)?any?later?version.

???This?program?is?distributed?in?the?hope?that?it?will?be?useful
???but?WITHOUT?ANY?WARRANTY;?without?even?the?implied?warranty?of
???MERCHANTABILITY?or?FITNESS?FOR?A?PARTICULAR?PURPOSE.??See?the?GNU
???Library?General?Public?License?for?more?details.

???You?should?have?received?a?copy?of?the?GNU?Library?General?Public
???License?along?with?this?program;?if?not?write?to?the
???Free?Software?Foundation?Inc.?59?Temple?Place?-?Suite?330
???Boston?MA?02111-1307?USA.

?*/

#include?
#include?
#include?
#include?
#include?
#include?
#include?

#include?“device_selection.h“

DeviceSelection::DeviceSelection(QWidget?*parent?const?char?*name)?:?UIDeviceSelection(parent?name)?{}

DeviceSelection::~DeviceSelection()?{}

int?DeviceSelection::exec()?{
??QDir?d(“/sys/class/video4linux“);
??if(d.exists())?{
????d.setFilter(QDir::Dirs);

????QStringList?list=d.entryList(“video*“);

????//?look?for?all?dir?entries?in?/sys/class/video4linux
????for(QStringList::Iterator?it=list.begin();?it!=list.end();?++it)?{
??????QString?filename=d.path()+“/“+(*it)+“/dev“;
??????FILE?*f=fopen(filename?“r“);
??????if(f)?{
????????int?major?minor;
????????QString?device_name?device_filename;

????????if(fscanf(f?“%d:%d“?&major?&minor)==2)?{
??????????fclose(f);

??????????//?look?for?a?device?file?with?the?specified?major/minor?numbers
??????????device_filename=findVideoDevices(“/dev“?makedev(major?minor));

??????????//?a?device?file?has?been?found?find?its?name
??????????if(device_filename!=““)?{
????????????filename=d.path()+“/“+(*it)+“/name“;
????????????f=fopen(filename?“r“);
????????????if(f)?{
??????????????char?tmp[200];
??????????????int?len=fread(tmp?1?sizeof(tmp)?f);
??????????????tmp[len-1]=‘\0‘;?//?-1?->?remove?trailing?\n
??????????????device_name=tmp;
????????????}?else?{
??????????????device_name=QString(tr(“Unnamed?device?\““))+device_filename+“\““;
????????????}
??????????}?else?{
????????????fprintf(stderr?tr(“A?video?device?is?reported?in?/sys?(%s)?but?not?matching?file?was?found?in?/dev\n“)?filename.latin1());
??????????}

??????????qcb_device->insertItem(device_name);
??????????devices_list.push_back(DeviceDesc(device_name?device_filename));
????????}?else?{
??????????fclose(f);
????????}
??????}
????}
??}

??if(qcb_device->count()==0)?{
????qcb_device->insertItem(tr(““));
????qcb_device->setEnabled(false);
????qpb_list->setEnabled(false);
??}

??return?UIDeviceSelection::exec();
}

/*?Find?the?first?char?device?file?name?matching?rdev?*/
QString?DeviceSelection::fin

評論

共有 條評論