Decoding output of omxh264enc in bytestream format

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

Decoding output of omxh264enc in bytestream format

Andrea Capirchio
Hello everyone,

I am trying to develop a real time streaming program between a Raspberry Pi Zero (provided with the Raspi camera) and my laptop.
On the raspberry pi I need to use the omx hardware accelerated encoder. Then the stream passes through a rtph264pay and is sent over the network through an appsink.
On the decoding side I am using (after the depayloader) avdec_h264. 

The problem now is that the "stream-format" property of the stream coming out from the encoder is of the "byte-stream" kind instead of the usual "avc". 
This, as I understood, prevents the sps/pps parameters from being stored in the stream caps, so at the decoding side the negotiation for the caps is failing and I dont get my video displayed.

So my questions are:
1. Is there a way to force the stream-format to be of the "avc" kind instead of "byte-stream"?
2. If this is not possible and I have to deal with bytestream, how can I configure my decoder and capabilities?

Notice: I need to have a variable bitrate stream, so that I can change the "target-bitrate" at runtime.

Thanks,
Andrea

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

Re: Decoding output of omxh264enc in bytestream format

Denis G
Hi Andrea,

I found your unanswered question regarding the issue you were having when
trying to decode a stream encoded with omxh264enc. I am having the same
issue and I wonder how you managed to decode this stream.

Outgoing stream from a Raspberry Pi:

gst-launch-1.0 v4l2src device=/dev/video0 !
video/x-raw,width=1280,height=480,framerate=30/1 ! omxh264enc
target-bitrate=5000000 control-rate=variable ! rtph264pay name=pay0 pt=96 !
gdppay ! tcpserversink host=192.168.1.78 port=5001

Stream decoding from a remote computer (this command fails):

gst-launch-1.0 -v tcpclientsrc host=192.168.1.78 port=5001 ! rtph264depay !
avdec_h264 ! videoconvert ! autovideosink sync=false

Thank you,

Denis.



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

Re: Decoding output of omxh264enc in bytestream format

Nicolas Dufresne-5
Hi Denis:

Le mardi 02 avril 2019 à 04:20 -0500, Denis G a écrit :

> Hi Andrea,
>
> I found your unanswered question regarding the issue you were having when
> trying to decode a stream encoded with omxh264enc. I am having the same
> issue and I wonder how you managed to decode this stream.
>
> Outgoing stream from a Raspberry Pi:
>
> gst-launch-1.0 v4l2src device=/dev/video0 !
> video/x-raw,width=1280,height=480,framerate=30/1 ! omxh264enc
> target-bitrate=5000000 control-rate=variable ! rtph264pay name=pay0 pt=96 !
> gdppay ! tcpserversink host=192.168.1.78 port=5001
>
> Stream decoding from a remote computer (this command fails):
>
> gst-launch-1.0 -v tcpclientsrc host=192.168.1.78 port=5001 ! rtph264depay !
You use gdppay on sender, but not gdpdepay on the receiver, I'm not
sure this is a great choice for streaming over non-packetize medium. In
RTP, there exist a standard payload format for passing RTP stream over
a TCP or other non-packetize medium. Search rtpstreampay/rtpstreamdepay
for more details.

> avdec_h264 ! videoconvert ! autovideosink sync=false
>
> Thank you,
>
> Denis.
>
>
>
> --
> Sent from: http://gstreamer-devel.966125.n4.nabble.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

signature.asc (201 bytes) Download Attachment