Muxing halts when no audio stream
pettair at gmail.com
Sat Mar 19 14:43:25 UTC 2022
I have the following pipeline:
udpsrc multicast-group=<DCL_FILEWRITER_UDP_SOURCE_IP> auto-multicast=true port=<DCL_FILEWRITER_UDP_SOURCE_PORT>
! application/x-rtp,media=video,encoding-name=VP8,payload=96 ! rtpjitterbuffer ! rtpvp8depay ! tee name=video_stream_spilt
! rtpL24depay ! audioconvert ! audioresample ! queue name=file_sink_audio_queue ! voaacenc ! video_mux.
video_stream_spilt. ! queue name=file_sink_video_queue ! omxvp8dec ! videoconvert ! omxh264enc bitrate=<DCL_RECORD_VIDEO_BITRATE> control-rate=2 insert-sps-pps=true ! matroskamux name=video_mux
! filesink name=file_sink location=<DCL_FILEWRITER_INITIAL_TEMP_FILE_NAME>
video_stream_spilt. ! fakesink
My problem with this is that if the audio stream stops (during operation due to some error) the file writing stops I assume the muxer is waiting for the audio stream which is not arriving (if I recover the audio stream it will continue to write the file).
I want to improve the reliability by making the file writing continuous regardless if I have the audio or not (by making the audio is optional). I already tried to add an audio mixer which would mix a muted audio stream (audiotestsrc wave=silence) but that adds extra resource usage and I feel that its more like a workaround since the root cause is that the muxer is waiting for the audio stream.
Do you know any setting or any way how could I get this behaviour?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the gstreamer-devel