从流中录制视频,从 USB 设备录制音频,然后混合在一起

从流中录制视频,从 USB 设备录制音频,然后混合在一起

我需要录制视频流并将其与来自外部设备(USB 声卡)的音频混合。我设法使用以下命令分别录制视频和音频。

视频 ffmpeg -i rtsp://192.168.0.192 -acodec copy -vcodec copy ~/out.mp4

声音的 ffmpeg -f alsa -i hw:1 -t 30 out.wav

现在我需要同时录制两者并创建一个 mp4 文件。

我尝试了这个命令,但是它给出了一个错误。

ffmpeg -f alsa -i hw:1 -i rtsp://192.168.0.192  -acodec copy -vcodec copy ~/out.mp4

Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument

编辑:使用 mkv 容器代替 mp4 是可行的。我应该如何编码视频才能将其存储为 mp4?

答案1

MP4 不支持 PCM 音频(WAV 文件中常见的格式系列)。

控制台输出在您显示的行上方立即指示了这一点,但您省略了它:

[mp4 @ 0x559e59ef2360] Could not find tag for codec pcm_s16le in stream #0, codec not currently supported in container

您的选择是:

  • 输出到不同的输出容器格式,例如您已经发现的 .mov 或 Matroska (.mkv),或者
  • 将音频编码为 MP4 支持的格式,例如 AAC,方法是将其替换-acodec copy-c:a aac

相关内容