Tee and pad programming
Michael Gruner
michael.gruner at ridgerun.com
Wed Jun 6 17:05:02 UTC 2018
Hi Akmal
Another easy approach is to use gst_parse_launch:
https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstParse.html#gst-parse-launch
You can build the pipeline using the same description as the one you would use with gst-launch.
Michael
> On Jun 6, 2018, at 10:46, Ian Davidson <id012c3076 at blueyonder.co.uk> wrote:
>
> Hi Akmal,
>
> That pipeline indicates that there is no link between filesink and nvcamerasrc. So, filesink is the end of a line and nvcamerasrc is the start of a new line.
>
> The same thing happens after h264parse ! mux.video_0
>
> Ian
>
>> On 06/06/18 13:10, Akmal Hisyam wrote:
>> Hello GStreamer Team!
>>
>> I referred to this webpage https://www.jetsonhacks.com/2014/10/28/gstreamer-network-video-stream-save-file/ on how to get preview, how to do recording and how to send stream to network by TCP.
>>
>> As I'm on Jetson TX2, I tried the pipeline with 'nvcamerasrc' as the video source element and it works! I also modified the pipeline for video recording and for sending stream over network by TCP only without the preview queue. So, it goes like this :
>>
>> gst-launch-1.0 avimux name=mux
>> ! filesink location=/media/nvidia/SSDJetson/test.mp4 nvcamerasrc fpsRange="30.0 30.0"
>> ! 'video/x-raw(memory:NVMM), width=(int)1920, height=(int)1080, format=(string)I420, framerate=(fraction)30/1' ! omxh264enc bitrate=14000000 control-rate=variable ! tee name=tsplit
>> ! queue ! h264parse ! mux.video_0 tsplit.
>> ! queue ! h264parse ! queue ! matroskamux
>> ! queue leaky=2 ! tcpserversink host=192.x.x.x port=7001
>>
>> Thanks to this guide, I managed to launch this on command line. I'm used to transform gstreamer pipeline into C/C++ programming code but I'm still a beginner. However, this is my first time I saw this form of pipeline where it starts with the muxer and then the "filesink" and "nvcamerasrc" elements are bordered in the same "! ...!" like this "! filesink location=/media/nvidia/SSDJetson/test.mp4 nvcamerasrc fpsRange="30.0 30.0" !". I'm not familiar at all with this form of pipeline but I wanted to transform this into code.
>>
>> I have two problems, I don't know how to create the "filesink" and "nvcamerasrc" elements in the same 'gst_element_factory_make'.
>> Plus, I don't know how to transform "mux.video_0 tsplit." to code.
>>
>> Do you have any examples on this? So far, I haven't managed to find any code examples related to this on internet.
>>
>> Thanks in advance!
>>
>> Akmal
>>
>>
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20180606/3d61a718/attachment-0001.html>
More information about the gstreamer-devel
mailing list