GStreamer 将音频转码为 AAC

GStreamer transcode audio to AAC

我有一个 RTSP 流,我正在使用 GStreamer 重新流式传输到 HLS,如下所示:

gst-launch-1.0 -v -e rtspsrc protocols=tcp location=rtsp://admin:1234@192.168.1.20:554/Streaming/channels/101  ! queue ! rtph264depay ! h264parse ! mpegtsmux  ! hlssink location="D:\wamp\www\stream\%06d.ts" playlist-location="D:\wamp\www\stream\play.m3u8" target-duration=5

RTSP 流包含使用 H.264 编码的视频和原始音频 (pcm_ulaw)。我的目标是将音频编码为 AAC,以便 HLS 支持它。将 ! audioconvert ! voaacenc 命令放入管道以实现此目标的正确顺序是什么?

基本上您在 RTSP 源和 MPEGTS 混合器之间有另一个分支。像这样:

gst-launch-1.0 -v -e rtspsrc protocols=tcp location=rtsp://admin:1234@192.168.1.20:554/Streaming/channels/101 name=rtsp ! queue ! rtph264depay ! h264parse ! mpegtsmux name=mux ! hlssink location="D:\wamp\www\stream\%06d.ts" playlist-location="D:\wamp\www\stream\play.m3u8" target-duration=5 rtsp. ! queue ! rtppcmudepay ! mulawdec ! audioconvert ! audioresample ! voaacenc ! aacparse ! mux.