Hi, Johannes Stezenbach wrote:
This should not be necessairy anymore, once you set up the stream pipeline it should be possible to change paramteters in any stage.just a question: is there a well-documented, strict specified way of the
order while doing zapping?Unfortunately not.for example, WHEN to i have to issue which VIDEO_* command, when do i have to enable the pidfilters and so on.What works well for us is: - first establish a TS feed (i.e. tune the frontend and check for success) - then set filters (PES/sections) - then tell the MPEG decoder to start - before tuning: first stop the MPEG decoder, then stop all filters
Well, in theory. In reality it's a good thing to switch off the decoder while the filters may deliver trash. At least on hardware that can't deal with invalid input.
I think this is too much work to be done on the short run. For now it's better to do small changes only, I was thinking about things like the strange way we are going now with the DMX_SET_SOURCE ioctl right now.The driver IMHO has internal "before/after tuning" hooks that should take care of this, but... Some frontends automatically mute the TS output when the signal is invalid to avoid feeding crap to the demux/MPEG decoder, but an invalid PES filter might still feed section data to the MPEG decoder, which won't do no good. --------------------- My 2� demux API rant: As I explained in http://www.linuxtv.org/mailinglists/linux-dvb/2002/10-2002/msg00013.html, the API was initially developed by Nokia, and we didn't dare to make substantial changes to it for a long time. One thing the driver does which I think it shouldn't is emulating demux features in software that the hardware doesn't have. E.g. the AV7110 does not give us the TS, thus the output for the dvr device must be recreated in software from PES packets. IOW, there's a complete TS multiplexer implementation in the driver. IMHO this should not be done in the kernel, but in a userspace library: - DMX_GET_CAPS must be defined properly - we need a libdvbdemux that looks at DMX_GET_CAPS and takes care of emulating features that the hardware does not have if the user requests them This is more a long-term project since the current driver is fairly stable and works well for many applicatons. But I would like to see DMX_GET_CAPS defined properly, and if someone would do some work on a libdvbdemux then someday we could remove the multiplexer stuff from the driver.
Holger
--
Info:
To unsubscribe send a mail to [EMAIL PROTECTED] with "unsubscribe linux-dvb" as subject.
