Opus encoder with channels=8 and mpegtsmux is not working

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Pipeline: gst-launch-1.0 v4l2src device=/dev/video0 io-mode=4 num-buffers=3600 ! video/x-raw, width=3840, height=2160, format=NV12, framerate=60/1 ! omxh265enc gop-mode=basic gop-length=60 b-frames=0 target-bitrate=60000 max-picture-size=1100 num-slices=8 control-rate=constant prefetch-buffer=true low-bandwidth=false filler-data=true cpb-size=1000 initial-delay=500 ! video/x-h265, profile=main, alignment=au ! queue max-size-bytes=0 ! mux. alsasrc device=hw:1,1 ! queue ! audioconvert ! audioresample ! audio/x-raw, format=S16LE, rate=48000, channels=8, layout=interleaved ! queue ! opusenc ! opusparse ! queue max-size-bytes=0 ! mpegtsmux name=mux ! filesink location=”/run/test.ts”
Above pipeline is not working, However if channels=7 it is working.
Below are GST_DEBUG=3 logs of the pipeline:
0:00:00.150296457 [336m14963[00m 0x5569e15a80 [33;01mWARN [00m [00m v4l2 gstv4l2object.c:4382:gst_v4l2_object_probe_caps:<v4l2src0:src>[00m Failed to probe pixel aspect ratio with VIDIOC_CROPCAP: Invalid argument
0:00:00.150388856 [336m14963[00m 0x5569e159e0 [32;01mFIXME [00m [00;04m default gstutils.c:3980:gst_pad_create_stream_id_internal:<alsasrc0:src>[00m Creating random stream-id, consider implementing a deterministic way of creating a stream-id
0:00:00.151335541 [336m14963[00m 0x5569e15a80 [33;01mWARN [00m [00m v4l2 gstv4l2object.c:3205:gst_v4l2_object_save_format:<v4l2src0>[00m format NV16_10LE32 has a pstride of 0, cannot compute padded with
0:00:00.153998227 [336m14963[00m 0x5569e15a80 [33;01mWARN [00m [00m omxvideoenc gstomxvideoenc.c:833:gst_omx_video_enc_set_transfer_characteristics:<omxh265enc-omxh265enc0>[00m Provided transfer characteristics 11 (bt2020) are not supported
0:00:00.154525200 [336m14963[00m 0x5569e15a80 [33;01mWARN [00m [00m v4l2 gstv4l2object.c:3205:gst_v4l2_object_save_format:<v4l2src0>[00m format NV16_10LE32 has a pstride of 0, cannot compute padded with
0:00:00.173773953 [336m14963[00m 0x5569e159e0 [33;01mWARN [00m [00m alsa pcm_hw.c:1359:snd_pcm_hw_get_chmap:[00m alsalib error: Cannot read Channel Map ctl
: No such file or directory
0:00:00.181625698 [336m14963[00m 0x5569e15b20 [33;01mWARN [00m [00m audio-resampler audio-resampler.c:274:convert_taps_gint16_c:[00m can’t find exact taps
0:00:00.340288901 [336m14963[00m 0x5569e15ad0 [32;01mFIXME [00m [00m mpegtsmux mpegtsmux.c:748:mpegtsmux_create_stream:<mux:sink_66>[00m Opus channel mapping not handled
0:00:00.340399272 [336m14963[00m 0x5569e15ad0 [33;01mWARN [00m [00m mpegtsmux mpegtsmux.c:1010:mpegtsmux_create_streams:<mux>[00m error: Could not create handler for stream
0:00:00.360425263 [336m14963[00m 0x7f94003800 [33;01mWARN [00m [00m omxvideo gstomxvideo.c:223:gst_omx_video_find_nearest_frame:<omxh265enc-omxh265enc0>[00m Difference between ts (0:00:00.000000000) and frame 1 (0:00:00.101057829) seems too high (0:00:00.101057829)
0:00:00.360559206 [336m14963[00m 0x7f94003800 [33;01mWARN [00m [00m omxvideo gstomxvideo.c:223:gst_omx_video_find_nearest_frame:<omxh265enc-omxh265enc0>[00m Difference between ts (0:00:00.000000000) and frame 1 (0:00:00.101057829) seems too high (0:00:00.101057829)

It seems that there is some issue with mpegtsmux – Opus channel mapping not handled, so guessing if we provide channel-positions using rawaudioparse then it might fix the issue. But, channel-positions is expecting GValueArray type input, so how can we provide that I am not sure.
Also not sure, if any other particular fix required in pipeline.

X ITM Cloud News

Marisa

Leave a Reply

Next Post

Where can I find a list of the default core installation libraries?

Fri Sep 11 , 2020
Spread the love          I installed Ubuntu 18.04 LTS some years ago and since it has obviously been through many software updates and now I have found some libraries I didn’t install, that is not directly, they could have been installed as dependencies for apps I installed. Anyway as my system performance […]
X- ITM

Cloud Computing – Consultancy – Development – Hosting – APIs – Legacy Systems

X-ITM Technology helps our customers across the entire enterprise technology stack with differentiated industry solutions. We modernize IT, optimize data architectures, and make everything secure, scalable and orchestrated across public, private and hybrid clouds.

This image has an empty alt attribute; its file name is x-itmdc.jpg

The enterprise technology stack includes ITO; Cloud and Security Services; Applications and Industry IP; Data, Analytics and Engineering Services; and Advisory.

Watch an animation of  X-ITM‘s Enterprise Technology Stack

We combine years of experience running mission-critical systems with the latest digital innovations to deliver better business outcomes and new levels of performance, competitiveness and experiences for our customers and their stakeholders.

X-ITM invests in three key drivers of growth: People, Customers and Operational Execution.

The company’s global scale, talent and innovation platforms serve 6,000 private and public-sector clients in 70 countries.

X-ITM’s extensive partner network helps drive collaboration and leverage technology independence. The company has established more than 200 industry-leading global Partner Network relationships, including 15 strategic partners: Amazon Web Services, AT&T, Dell Technologies, Google Cloud, HCL, HP, HPE, IBM, Micro Focus, Microsoft, Oracle, PwC, SAP, ServiceNow and VMware

.

X ITM