如何命令 ffmpeg 输出在流上收到的元数据

如何命令 ffmpeg 输出在流上收到的元数据

我使用 ffmpeg 从安全摄像头接收 RTSP 流。摄像头有 3 个子流:

  Stream #0:0: Video: h264 (High), yuvj420p(pc, bt709, progressive), 2592x1944 [SAR 1887:1888 DAR 629:472], 15 fps, 100 tbr, 90k tbn
  Stream #0:1: Audio: aac (LC), 8000 Hz, mono, fltp
  Stream #0:2: Data: none

我已经很好地处理了音频和视频,但还没有弄清楚如何处理数据。这些数据包含运动警报、故障和其他数据。我使用以下映射选项来指定数据源:

-map 0:2

但我找不到它可以接受的输出格式。

答案1

要录制摄像机流,您可以使用接受数据流的 mpeg-ts 容器。
要在 mpeg-ts 容器中录制:
ffmpeg -i <input> -map 0 -c copy -f mpegts record.ts

然后读取/提取数据内容:
ffmpeg -i record.ts -map 0:2 -c copy -f data data.txt

相关内容