【发布时间】:2013-05-24 08:16:48
【问题描述】:
我正在尝试使用 libavformat、libavcodec 等对 RTSP 流进行解复用并将其重新混合为 TS 文件,复制视频并转码音频。如果我使用ffmpeg,命令大致是这样的:
ffmpeg -rtsp_transport tcp -re -fflags +genpts -i rtsp://10.0.0.42/channel1 -vcodec copy -copyts -bsf dump_extra -acodec libfdk_aac -b:a 16k -ac 1 -map 0:0 -map 0:1 -f mpegts out.ts
我查看了复用/解复用示例,但除了难以理解如何制作流副本之外,我找不到任何关于比特流过滤器的提及。我目前收到以下错误:
[mpegts @ 0x7ff20c009600] H.264 bitstream malformed, no startcode found, use the h264_mp4toannexb bitstream filter (-bsf h264_mp4toannexb)
如何创建比特流过滤器以及如何分配它?我将它分配给输入流还是输出流?
【问题讨论】:
-
请用-vbsf h264_mp4toannexb试试你的命令
-
对不起,我编辑了我的帖子以更清楚。我不再使用 ffmpeg,我正在编写自己的代码并直接使用库。
标签: c libavcodec libavformat