On 20.04.2012 23:58, Roland Tapken wrote:
Hi,
there is a long discussion at http://www.vdr-portal.de/board16-video-disk-
recorder/board55-vdr-plugins/111788-wunschkonzert-livebuffer-plugin/ (german)
about the old livebuffer patch and how a new one could look alike.
Since I'm missing some features of a "real" livebuffer very much and have some
ideas how this could be implemented in an effective and less-invasive way I
started to familiarize myself into the VDR source.
I still have problems to understand the way the stream data takes from the the
dvb device to the screen. I would be very thankfully if you can help me to get
the "big picture". These are my assumptions. Please correct me where I'm
wrong, and complete where I missed some point.
There's a cDevice, I think that's an abstraction of the real hardware.
Right.
cReceiver controls the device by selecting a channel and transportings stream
data to the player.
Not quite. A cReceiver receives data from the cDevice it has been attached to.
It can write that data to disk, stream it to some remote location, or send it
to a cPlayer (or do whatever else it finds useful).
This means, if you watch a show and record another on the
same device there would be one device and two receivers.
A device could also be a foreign source, e.g. in streamdev.
A special receiver is cRecorder. It just selects a channel and writes the
stream data into a file.
What is cPlayer? As cTransfer implements both cReceiver and cTransfer
Typo? It should read "cTransfer implements both cReceiver and *cPlayer*":
class cTransfer : public cReceiver, public cPlayer {
...
};
I thought about it as some kind of frontend abstraction (FF-output, xine,
streamdev-server). But it seems that cPlayer directly acts on cDevice, and
that doesn't make sense to me at the moment.
cPlayer sends data to the cDevice - what's not to understand here?
Furthermore, I'm still not quote sure where all these components where
attached to each other.
Use the source, Luke! ;-)
You might also want to take a look at PLUGINS.html, especially the sections
on "Players", "Receivers" and "Devices"
Klaus
_______________________________________________
vdr mailing list
vdr@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr