How to use a DVB FRONTEND in read only?
Hi,
I have a question about multiple access to the dvb framework.
I would like to open the dvb in readonly and take whatever frequency is currently tuned:
1) I open the frontend in read only
2) query the current frequency to check is there is a lock
3) I open the demux, set some filters and read from the demux.
There is a *big* issue here:
The card streams packets *only* and *as long* as the frontend is opened in read/write (by some other application) and tuned.
If my application opens the frontend in readonly and there is no other application running, the ioctl FE_GET_INFO still returns FE_HAS_LOCK but no data goes through the demux.
As soon as the frontend is tuned, the data arrives.
Am I correct? How can I detect if the dvb is running or not?
Andrea
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 8 lines · Andrea
I would like to open the dvb in readonly and take whatever frequency is currently tuned:
1) I open the frontend in read only
2) query the current frequency to check is there is a lock
3) I open the demux, set some filters and read from the demux.There is a *big* issue here:
Quoted 7 lines
The card streams packets *only* and *as long* as the frontend is opened in read/write (by some other application) and tuned.
If my application opens the frontend in readonly and there is no other application running, the ioctlFE_GET_INFOstill returnsFE_HAS_LOCKbut no data goes through the demux.
As soon as the frontend is tuned, the data arrives.Am I correct? How can I detect if the dvb is running or not?
Check for open filehandles on demux device:
root@iptv:~# ls -l /proc/*/fd/* | grep demux lrwx------ 1 vlc vlc 64 2008-06-14 14:02 /proc/19876/fd/6 -> /dev/dvb/adapter0/demux0 lrwx------ 1 vlc vlc 64 2008-06-14 14:02 /proc/19892/fd/6 -> /dev/dvb/adapter1/demux0
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 10 lines · Claudio Luck
Andrea wrote:
Check for open filehandles on demux device:
root@iptv:~# ls -l /proc/*/fd/* | grep demux lrwx------ 1 vlc vlc 64 2008-06-14 14:02 /proc/19876/fd/6 -> /dev/dvb/adapter0/demux0 lrwx------ 1 vlc vlc 64 2008-06-14 14:02 /proc/19892/fd/6 -> /dev/dvb/adapter1/demux0
I will try that, but it sounds to me a very non natural solution.
Should the dvb framework tell the clients if it is streaming or not? via an ioctl like FE_GET_INFO?
Andrea
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
Quoted 3 lines · Andrea
Quoted 1 line
Check for open filehandles on demux device:
...
I will try that, but it sounds to me a very non natural solution.
Everything is a file :)
Quoted 2 lines
Should the dvb framework tell the clients if it is streaming or not? via an ioctl like
FE_GET_INFO?
IMHO if we realize that any streaming happens through open file handles, we also realize that there is no need for a custom query in Linux DVB API for the same information (circumventing or reinventing user access control). Query the Kernel about process information.
FE_GET_INFO is specific to the frontend, not the demux.
A design question might be raised through: should readonly demux file handles stop streaming after the readwrite demux filehandle is closed? This behavior is different compared to frontends remaining tuned even after closing the controlling frontend file handles.
Signature · 7 lines
Best Regards Claudio _______________________________________________ linux-dvb mailing list [email protected] http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb