Audio Pipelines

Multimedia User Guide (UG1449)

Document ID
UG1449
Release Date
2022-04-21
Revision
1.4 English

List of audio input devices:

File, HDMI-Rx, I2S-Rx and SDI-Rx

List of audio output devices:

File, HDMI-Tx, I2S-Tx, SDI-Tx and DP

Dual Channel Audio-Video Record Pipeline

In the followng example, the video source device generates video at 4kp resolution and 60fps. The video stream color format is NV12. The audio source device generates audio at 48KHz with S24_32LE format and dual channel from input device ID. The audio capture device ID is hw:2,1.
gst-launch-1.0 v4l2src device=/dev/video0 io-mode=4 
! video/x-raw, format=NV12, width=3840, height=2160, 
framerate=60/1 ! omxh265enc qp-mode=auto gop-mode=basic 
gop-length=60 b-frames=0 target-bitrate=60000 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 ! mux. alsasrc device=hw:2,1 
provide-clock=false ! audio/x-raw, format= S24_32LE, rate=48000, 
channels=2 ! queue ! audioconvert ! audioresample ! opusenc 
! opusparse ! mpegtsmux name=mux 
! filesink location = "/run/test.ts

Dual Channel Audio-Video Playback Pipeline

In the following example, the audio renderer renders the audio at 48KHz with S24_32LE format and dual channel at output device ID. The audio playback device ID is hw:2,0.

gst-launch-1.0 uridecodebin uri="file:///run/test.ts" 
name=decode ! queue max-size-bytes=0 
! kmssink bus-id="a0070000.v_mix" decode. 
! audioconvert ! audioresample ! audio/x-raw, 
rate=48000, channels=2, 
format=S24_32LE ! queue 
! alsasink device="hw:2,0"

8-Channel Audio-Video Serial Pipeline

In the following example, the video source device generates video at 4kp resolution and 60fps. The video stream color format is XV20. The audio source device generates audio at 48KHz with S24_32LE format and 8 channels from input device ID. The audio capture device ID is hw:1,1, and the audio playback device ID is hw:1,0.

gst-launch-1.0 v4l2src device=/dev/video0 io-mode=4 
! video/x-raw, width=3840, height=2160, format=NV16_10LE32, 
framerate=60/1 ! omxh265enc qp-mode=auto gop-mode=basic 
gop-length=60 b-frames=0 target-bitrate=60000 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-422-10, alignment=au 
! queue max-size-bytes=0 ! omxh265dec internal-entropy-buffers=5 
low-latency=0 ! queue max-size-bytes=0 ! fpsdisplaysink 
text-overlay=false 
video-sink="kmssink driver-name=xlnx async=false hold-extra-sample=true 
show-preroll-frame=false" 
alsasrc device=hw:1,1 provide-clock=false ! audio/x-raw, rate=48000, 
channels=8, format=S24_32LE ! queue max-size-bytes=0 
! alsasink device="hw:1,0"

For more information, see PL DDR SDI Audio Video Capture and Display.