Advice on implementing a DVR application

gimmeamilk gimmeamilkbttf at gmail.com
Tue Nov 6 08:27:52 PST 2012


Hi,

I'm looking at using GStreamer in a DVR application. The DVR platform
supports hardware decode/presentation of MPEG2 and h264 video in MPEG
transport stream container. 

Long-term, I plan to move the whole DVR record/playback engine into
GStreamer elements, but for now I would just like to use GStreamer to
support playback of other container types (still MPEG2/h264 codecs
underneath) and over arbitrary network protocols, eg HLS. The plan would
obviously be to construct a suitable acquire-and-remux pipeline, which would
present transport stream to my decoders.

I have a few questions. Apologies if these have already been answered
elsewhere; I did some searching but didn't find much info from later than
2009, so I want to be sure things are the same with the latest codebase:

1. Is there a bin available that can effectively work as a "convert anything
to transport stream" bin? I am currently playing with several static
pipelines, eg mp4-to-TS, avi-to-TS etc. Is there a bin that can be
configured to automatically select the right demuxer from a list, and ensure
that no codec transcoding will be performed (I only want remuxing)?

2. I would like to support high-speed trickplay using only I-pictures (ie
keyframes). What support do the various demuxers have for a) parsing a
container for the keyframe data in order to generate an index and b) using
the index to push just the keyframes to a sink? I realise "various demuxers"
is incredibly vague

3. Are the PTS/DTS values produced by a pipeline always relative to zero
(even if the source content has timestamps starting at an arbitrary value)?


I'm sure there will be many more questions to follow :) but for now any
help/advice on these would be greatly appreciated.

Many thanks
Kevin Thornberry



--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Advice-on-implementing-a-DVR-application-tp4656813.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.


More information about the gstreamer-devel mailing list