Le Jeudi 03 Mars 2005 13:39, jmmercy a ?crit?: > Hi. > > Since my previous post, I found the dvb API which contains everything I > need to understand tha various elements of the device driver. The > documentation is daunting, though well made when you read it for the first > time. My previous question still hold , is it possible to use to use card > as the only video output device in a system ? Some of the API calls look > quite usefull for that like the possibility to display a still picture > (menus for example). Could someone give me a pointer to code examples > showing how it is used for displaying, let's say an mpeg stream ? (I would > prefer no to shuffle through mplayer code for that ...) > > Thanks in advance. Should be something like that : void setDemux(int fd,uint16_t pid, int type) { struct dmx_pes_filter_params pesFilterParams; pesFilterParams.pid = pid; pesFilterParams.input = DMX_IN_DVR; pesFilterParams.output = DMX_OUT_DECODER; if (type==1) pesFilterParams.pes_type = DMX_PES_VIDEO; if (type==2) pesFilterParams.pes_type = DMX_PES_AUDIO; pesFilterParams.flags = DMX_IMMEDIATE_START; ioctl(fd, DMX_SET_PES_FILTER, &pesFilterParams) } void main() { ........... ........... int fdDvr = open("/dev/dvb/adapter0/dvr0",O_WRONLY) int fdv = open("/dev/dvb/adapter0/demux0",O_RDWR) setDemux( fdv, vpid, 1); int fda = open("/dev/ost/demux",O_RDWR|O_NONBLOCK) setDemux( fda, apid, 2); while(1) { dataLen = read( fd_file, buf, len ); int n=0; while( n<dataLen) n+= write(fdDvr,buf+n, dataLen-n); } } -- Christophe Thommeret