从音频缓冲区和视频缓冲区 C++ Windows 构造 mp4 文件
Posted
技术标签:
【中文标题】从音频缓冲区和视频缓冲区 C++ Windows 构造 mp4 文件【英文标题】:Construct mp4 file from audio buffer and video buffer C++ Windows 【发布时间】:2015-06-08 05:31:42 【问题描述】:目前,我正在从远程端接收视频流(H264 编码缓冲区)和音频流(PCMU 编码缓冲区),我可以将它们解码并呈现为音频和视频。现在我想提供一些 API,比如 -
string fileName = "dir/dir2/..../rec.mp4";
startRecord()
stopRecord()
用户可以随时开始录制并停止录制,视频和音频流将被写入组合的 mp4 文件。我可以使用ffmpeg
,通过它我可以将.h264
和.wav
文件合并为.mp4
文件。但我想使用任何库直接从流(不是 .h264 或 .wav 文件)以编程方式执行此操作或编写我自己的库。有可能吗?
【问题讨论】:
【参考方案1】:详情请参阅this answer。但是,mp4
不支持 G.711 PCM mu-law 编码数据,可以使用 avi
或 mov
或将数据从 pcm 转码到 aac 将起作用。
【讨论】:
以上是关于从音频缓冲区和视频缓冲区 C++ Windows 构造 mp4 文件的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Windows 10 上使用 C++ 将连续的原始音频数据记录到循环缓冲区中?
在 C++ 中处理音频缓冲区时,如何执行从 float -> double -> float 的转换