GStreamer中复用器(Muxer)

在 GStreamer 中,复用器(Muxer) 用于将编码后的音视频流 封装到容器格式(如 MP4、MKV、AVI 等)。

一、常用复用器(Muxer)

1. 常用复用器(Muxer)列表

(1) MP4 容器

元素 描述 关键参数 适用场景
mp4mux 标准 MP4 封装(支持 H.264/AAC) faststart=true(流式优化) 视频录制、点播文件
qtmux QuickTime 兼容封装(.mov) fragment-duration=1000 iOS 兼容、流媒体分片

示例

bash

# 生成 MP4 文件(H.264 + AAC)
gst-launch-1.0 
    videotestsrc ! x264enc ! mp4mux name=mux ! filesink location=output.mp4 
    audiotestsrc ! voaacenc ! mux.

(2) Matroska / WebM 容器

元素 描述 关键参数 适用场景
matroskamux MKV 封装(支持多轨道) writing-app=GStreamer 高清视频、多字幕/音轨
webmmux WebM 封装(VP9/Opus) 网页视频(HTML5)

示例

bash

# 生成 MKV 文件(VP9 + Opus)
gst-launch-1.0 
    videotestsrc ! vp9enc ! matroskamux name=mux ! filesink location=output.mkv 
    audiotestsrc ! opusenc ! mux.

(3) AVI 容器

元素 描述 关键参数 适用场景
avimux AVI 封装(旧格式) index=TRUE 兼容旧设备/软件

示例

bash

# 生成 AVI 文件(MPEG-4 + MP3)
gst-launch-1.0 
    videotestsrc ! mpeg4videoparse ! avimux name=mux ! filesink location=output.avi 
    audiotestsrc ! lamemp3enc ! mux.

(4) MPEG-TS / MPEG-PS 容器

元素 描述 关键参数 适用场景
mpegtsmux MPEG-TS 封装(直播流) alignment=7 数字电视、DVB 直播
mpegpsmux MPEG-PS 封装(DVD/VOB) DVD 视频制作
© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容