How to set pts for raspivid stream

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

How to set pts for raspivid stream

Abu Abdullah
Hi,

Raspberry Pi camera (raspivid) outputs a raw H264 stream, which has no
timing information. How to add pts to the pipeline to store it in mp4
format.

i tried may pipelines but non is working with me e.g.

raspivid -n -t 0 -w 640 -h 480 -fps 8 -pf high -o - | gst-launch-1.0
--gst-debug-level=2 -vvv fdsrc do-timestamp=true !
video/x-h264,width=640,height=480,framerate=8/1,stream-format=byte-stream
! h264parse ! splitmuxsink location=test_%03d.mp4
max-size-time=300000000

the error is:
/GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstFileSink:sink.GstPad:sink:
caps = video/quicktime, variant=(string)iso
0:00:08.480968094  2314  0x15678f0 WARN                   qtmux
gstqtmux.c:2982:gst_qt_mux_start_file:<muxer> Robust muxing requires
reserved-moov-update-period to be set
0:00:08.485114054  2314  0x15678f0 WARN                   qtmux
gstqtmux.c:4832:gst_qt_mux_add_buffer:<muxer> error: Buffer has no
PTS.
ERROR: from element
/GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstMP4Mux:muxer:
Could not multiplex stream.
Additional debug info:
gstqtmux.c(4832): gst_qt_mux_add_buffer ():
/GstPipeline:pipeline0/GstSplitMuxSink:splitmuxsink0/GstMP4Mux:muxer:
Buffer has no PTS.
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: How to set pts for raspivid stream

Tim Müller
On Fri, 2019-05-17 at 13:12 +0400, Abu Abdullah wrote:

Hi,

> Raspberry Pi camera (raspivid) outputs a raw H264 stream, which has
> no timing information. How to add pts to the pipeline to store it in
> mp4 format.
>
Use Jan's rpicamsrc element from here:

https://github.com/thaytan/gst-rpicamsrc/

It uses the same interface as raspivid, just from inside a GStreamer
element.

Cheers
 Tim

--
Tim Müller, Centricular Ltd - http://www.centricular.com

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: How to set pts for raspivid stream

Abu Abdullah
Thank you for your response. 
Is there a way to do it with normal pipeline. I tried rpicamsrc previously but found it not practical in my case. 

Thank you 

On Fri, 17 May 2019, 1:37 pm Tim Müller, <[hidden email]> wrote:
On Fri, 2019-05-17 at 13:12 +0400, Abu Abdullah wrote:

Hi,

> Raspberry Pi camera (raspivid) outputs a raw H264 stream, which has
> no timing information. How to add pts to the pipeline to store it in
> mp4 format.
>
Use Jan's rpicamsrc element from here:

https://github.com/thaytan/gst-rpicamsrc/

It uses the same interface as raspivid, just from inside a GStreamer
element.

Cheers
 Tim

--
Tim Müller, Centricular Ltd - http://www.centricular.com

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: How to set pts for raspivid stream

Abu Abdullah
scanning the code of rpicamsrc, it seems it sets gst_pts to
GST_CLOCK_TIME_NONE. the problem with the normal pipeline is the
missing pts. is there any way to set the pts to none in the normal
pipeline. i have seen some threads about setting pts from dts in
h264parse.

is there a way to overcome this with a standard pipeline

On Fri, May 17, 2019 at 1:56 PM Abu Abdullah <[hidden email]> wrote:

>
> Thank you for your response.
> Is there a way to do it with normal pipeline. I tried rpicamsrc previously but found it not practical in my case.
>
> Thank you
>
> On Fri, 17 May 2019, 1:37 pm Tim Müller, <[hidden email]> wrote:
>>
>> On Fri, 2019-05-17 at 13:12 +0400, Abu Abdullah wrote:
>>
>> Hi,
>>
>> > Raspberry Pi camera (raspivid) outputs a raw H264 stream, which has
>> > no timing information. How to add pts to the pipeline to store it in
>> > mp4 format.
>> >
>> Use Jan's rpicamsrc element from here:
>>
>> https://github.com/thaytan/gst-rpicamsrc/
>>
>> It uses the same interface as raspivid, just from inside a GStreamer
>> element.
>>
>> Cheers
>>  Tim
>>
>> --
>> Tim Müller, Centricular Ltd - http://www.centricular.com
>>
>> _______________________________________________
>> gstreamer-devel mailing list
>> [hidden email]
>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel