|
Hi, I'm pretty new to GStreamer but I've been compiling sample application and playing with various pipelines and elements, etc. so I am somewhat up to speed.
Now I am looking to start the real target of this research my new application.
I have a large number of incoming rtsp streams (IP Security cameras but this is not a security application). I may have between 10 and 30 streams at any given site.
I need three components:
1) I need a sort of DVR to to record these h264 streams at > 720p 30fps.
2) I need to be able to extract clips based on very precise real world clock times.
i.e "From camera a get from 12:10:01.000 to 12: 11:15.050 and store to output file a.bcd"
3) I need to be able to assemble these clips into a final video. sort of a souvenir compilation
of clips taken from several cameras.
Due to the limited CPU resources I'm aiming to do this whole process with only one or two transcoding steps.
eg.
- Store streams in their native codec (H264 or MPEG4)
- get clips only at I frame boundaries (is this possible? So If I take clips form IFrame to IFrame then transcoding is not required?
- reassemble the clips with something like Gstreamer editing services or AVI Sythn. And store to final output file with the same codec as the original input stream.
So, Here are the questions:
- Please comment: is this a reasonable/doable approach?
- If I have to re-encode the streams during the DVR stage, what would be the best codec/container in order to let GStreamer Editing Services process these files later without transcoding.
- Any other general suggestion on the right pipelines / elements to use to make all this click.
Thanks very much for any help you can offer.
Garth Tissington
|