audio-video-cmd
audio-video-cmd
用于集中记录本地调试、播放、录制、转码等音视频相关命令。
RTSP 低延迟播放命令
场景:camera_svc 内嵌 RTSP demo,局域网使用普通 UDP 播放命令仍可能受到 ffplay 默认缓冲影响。
普通播放命令:
1 | ffplay -rtsp_transport udp rtsp://<BOARD_IP>:8554/live0 |
低延迟预览建议使用:
1 | ffplay \ |
验证结论:加上以上低延迟参数后,局域网预览主观感觉基本无延迟。
RTSP UDP 方式二:保留低延迟参数,增加 200ms 抖动缓冲
用途:当 UDP 播放出现 H.264 error while decoding MB、cabac decode 等错误时,保留低延迟方向,但给 RTP 乱序/抖动留 200ms 恢复窗口。
1 | ffplay \ |
说明:-max_delay 200000 单位是微秒,即 200ms。相比 -max_delay 0,延迟会增加,但对 Wi-Fi 抖动、RTP 包乱序和迟到更宽容。-sync ext 使用外部时钟同步,更倾向于对齐真实时间,减少卡顿后继续按旧视频时间戳慢慢播放导致的延迟累积。
T23 rtsp_svc RTSP TCP 播放
场景:rtsp_svc 独立模块在板端 8554 端口提供 Basic Auth RTSP;主码流为 /live/main,子码流为 /live/sub。
说明:Public 笔记不保存真实密码;本地使用时把 <PASSWORD> 替换为设备当前密码。
主码流:
1 | ffplay -rtsp_transport tcp -fflags nobuffer -flags low_delay -framedrop \ |
子码流:
1 | ffplay -rtsp_transport tcp -fflags nobuffer -flags low_delay -framedrop \ |
ffplay 连续播放文件
来源:原短笔记 ffplay,已合并。
1 | seq 1 70 | xargs -I {} ffplay -autoexit 0_{}.ts |
MP4 / CMAF / DASH 转码
来源:原短笔记 mp4转码,已合并。
1 | gpac -i input.mp4 -o output.mp4:cmaf=cmfc:store=frag:cdur=0.5 |
1 | gpac -i input.mp4 -o outdir/stream.mpd:segdur=2:cdur=0.5:profile=dashif.ingest:muxtype=mp4:cmfc |