Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[vdr] VDR/Xine video integration (was ANNOUNCE vdr-xine-0.4.3 plugin)
Hi!
In the other thread we ended up with this discussion:
I wonder, however, if its possible/planned to enhance the plugin to
play also other media types like divx or mp3?
It would be cool to have a plugin similiar to the mplayer-plugin to
watch movies. Reencoding (mpeg-pes) wouldnt be needed anymore,
so performance should be better compared to the current mplayer
approach.
Such thing I would like too. To enable this cDevice should be
extended to selectCodec (vcodec,acodec), so that we vdr-xine and
vdr-softdevice
may select all of ffmpegs available codecs.
Well, it's not that easy. xine has a multistage plugin architecture:
input-, demuxer-, decoder-, postprocess- and output-plugins.
I've written a new input plugin which interfaces VDR. All other stages
are handled by already available plugins in xine. Typically, at least
the input plugin is selected by the mrl (vdr:) and optionally the
demuxer might be selected (#demux:mpeg_pes). Otherwise it is detected
by looking on some sample data, which the input plugin must provide in
that case. The demuxer relies on the input plugin to provide data in a
certain format (e. g. MPEG PES packets) and then decides, which data
is contained in the packets (e. g. BUF_VIDEO_MPEG, BUF_AUDIO_MPEG,
BUF_AUDIO_A52). After that, xine decides which decoder to use.
...
Finally, I hope that I could point out, why it is not that easy to
support other formats transparently. But if someone finds a solution,
I'll do my best to include it into my plugin.
Well, can think of a possible approach to do it:
We modify the Input Plugin and Xine-UI.
The UI must be completely controlable from within vdr. Also we need some
feedback from the UI. Hence there needs to be a bidirectional
communication channel in some form (domain socket, tcpip, shared mem,
whatever). All of the current xine plugin OSD code has to go into the
new UI as well.
After this work, the Input Plugin is only needed to transfer VDR video
(TV and Records) to the frontend. For Video/MP3 mode we could implement
a vdr plugin to "switch" the ui to another MRL. The OSD would still be
usable because of the separated control/communication channel.
@Reinhard: Do you think this is possible? Is it worth a try?
Greetings,
--
Thomas Weber
Home |
Main Index |
Thread Index