libavformat相关内容

如何使用 libavformat 连接 2 个具有相同编解码器的视频文件(重新混合)?

我已经从 CDN 下载了 flv 格式的视频(视频 H264 和音频 AAC)并将它们重新混合为 MP4 格式.但是视频有长度限制.所以我将每个视频分几个部分下载:从起点开始,在点 1,在点 2(通过在 url 中使用 seek 参数).每个点的开始都比前一个点的结束早一点. 使用 av_read_frame 我扫描了所有部分,发现相交的数据包不仅具有相同的大小和顺序,而且它们的 dts/pts ..
发布时间:2021-12-26 19:08:58 其他开发

使用 libavformat 不播放的 H.264 混合到 MP4

我正在尝试将 H.264 数据复用到 MP4 文件中.将此 H.264 Annex B 数据保存为 MP4 文件似乎没有错误,但该文件无法播放. 我对文件进行了二进制比较,问题似乎出在写入 MP4 文件页脚(预告片)的内容中. 我怀疑它必须与创建流的方式有关. 初始化: AVOutputFormat* fmt = av_guess_format( 0, "out.mp4", 0 ..
发布时间:2021-12-26 19:04:04 C/C++开发

使用 FFmpeg libavformat 记录 RTSP 流

我正在尝试使用 FFmpeg libavformat 录制来自安讯士相机的 RTSP 流.我可以从文件中抓取视频,然后将其保存到另一个文件中,这没问题.但是相机发送奇怪的数据,FPS 为 100,相机每 4 帧发送一次,因此结果 FPS 约为 25.但 libavformat 将数据包 dts/pts 设置为 90000 fps(默认?),新文件流具有 100fps.结果是一小时的视频,只有 10 ..
发布时间:2021-12-26 19:02:48 其他开发

如何确定编解码器/容器组合是否与 FFmpeg 兼容?

我正在考虑重新混合一些包含音频和视频的容器,以便我提取最好的第一个音频流,并将其存储在一个新容器中,例如仅存在音频流. FFmpeg 的输出上下文是这样创建的: AVFormatContext* output_context = NULL;avformat_alloc_output_context2( &output_context, NULL, "mp4", NULL ); 我有一个可 ..
发布时间:2021-12-20 23:55:27 其他开发

libavformat/libavcodec提供了无效的容器头

我正在使用libavcodec将流编码为h264,并使用libavformat将其存储在mp4中.产生的容器具有无效的标头,可以在VLC中播放,但不能在任何其他播放器上播放. 我发现使用mp4容器和"mpeg4"编解码器会生成有效的mp4文件,但是使用libx265(HEVC)或libx264编解码器会生成无效的mp4. 我可以使用 ffmpeg -i invalid.mp4 -vco ..
发布时间:2021-05-06 20:42:52 其他开发

如何确定编解码器/容器组合是否与FFmpeg兼容?

我正在考虑重新混合一些容纳音频和视频的容器,以便提取最佳的第一个音频流,并将其存储在新的容器中,例如仅存在音频流. 创建FFmpeg的输出上下文如下: AVFormatContext * output_context = NULL;avformat_alloc_output_context2(& output_context,NULL,"mp4",NULL); 我有一个可接受的输出清 ..
发布时间:2021-04-12 19:31:03 其他开发

MP4碎片-在浏览器中播放时出现问题

我尝试从原始H264视频数据创建片段MP4,以便可以在Internet浏览器的播放器中播放它.我的目标是创建实时流式传输系统,在该系统中,媒体服务器会将碎片化的MP4片段发送到浏览器.服务器将缓冲来自RaspberryPi摄像机的输入数据,该摄像机以H264帧的形式发送视频.然后,它将多路复用该视频数据并将其提供给客户端.浏览器将使用Media Source Extensions播放媒体数据(由服 ..
发布时间:2020-11-04 02:19:03 C/C++开发

C ++ FFmpeg创建mp4文件

我正在尝试使用FFmpeg和C ++创建mp4视频文件,但结果我收到了损坏的文件(Windows Player显示“无法播放... 0xc00d36c4").如果我创建.h264文件,则可以使用"ffplay"播放该文件,并通过CL成功将其转换为mp4. 我的代码: int main() { char *filename = "tmp.mp4"; AVOutputFor ..
发布时间:2020-11-04 02:16:19 C/C++开发

阅读H264 SPS&使用libavformat API的PPS NAL字节

如何阅读H264 SPS&使用libavformat API的PPS NAL字节? 我尝试从.mp4视频(编解码器为h264)文件中使用"av_read_frame(input_avFormatContext,& avPkt)" API将视频数据读取为"AVPacket"结构. 我将avPkt->数据转储到文件中.但是读取的第一帧是IDR帧. 使用"ffmpeg -i video ..
发布时间:2020-06-29 19:56:45 其他开发

在Visual Studio 2010中链接libavformat

我正在尝试围绕libavformat构建一些视频阅读代码.在此处获取编译的DLL和.lib文件之后,我将构建我的代码和链接器即使我已链接到提供的.lib文件中,也找不到任何libavformat符号. 用dumpbin -headers检查libavformat.lib会发现它导出带有下划线前缀的所需功能.例如,当我想调用avformat_open_input时,.lib文件给出了_avfo ..
发布时间:2020-06-29 19:56:39 C/C++开发

即使存在libav 53库,JavaFX Media Player在打开MP3时也会崩溃?

构建一个在linux下使用JavaFX媒体播放器的java 8(oracle)应用程序。需要MP3支持我发现我需要确保在系统上安装了libavformat53和libavcodec53。 现在即使它们已经安装在系统上,所有的相关内容都是.so文件链接在正确的位置。打开MP3时,JavaFX仍会崩溃。 为什么会出现这种情况的任何想法? 解决方案 研究 深入研究我发现的目标系 ..
发布时间:2019-01-14 12:15:03 Java相关

从libavformat获取TS数据包到缓冲区

我想捕获视频,压缩和复制它作为一个mpeg2 ts。所有这些都是非常简单的ffmpeg库,但我想做的,而不是写入一个文件,捕获ts数据包在一个缓冲区,并以其他方式使用这个流。有没有一个简单的方法呢? 要将编码的帧写入文件,我使用av_interleaved_write_frame(oc,& pkt)。 OC是具有定义文件名和格式的输出上下文。 pkt是包含压缩帧的AVPacket。 av_i ..
发布时间:2017-10-24 01:19:23 其他开发

如何使用ffmpeg和c ++将自制流发布到rtmp服务器?

我正在为Windows编写一个应用程序,捕获屏幕,并通过rtmp将流发送到Wowza服务器(for广播)。我的应用程序使用ffmpeg和Qt。 我使用WinApi捕获屏幕,将缓冲区转换为YUV444(因为它最简单)并按照decode_encoding.c(从FFmpeg示例)中所述编码帧: //////////////////////// //编码器初始化 //////////// ..
发布时间:2017-10-23 23:57:23 其他开发

复制H.264附件B&使用libavformat与vcopy / acopy的AAC流

我正在使用来自IP摄像头的视频(H.264)和音频(AAC)进行一些集成工作。 我已经取得了一些进展我可以存储视频&音频流独立具有使用VLC播放器播放的能力。 H.264正在以附件B格式存储,音频使用格式为格式的文件。 我现在正在尝试将流复制到MP4文件中,而无需做任何解码或编码,但到目前为止还没有找到答案。 我可以使用ffmpeg手动执行此操作: ffmpeg -i reco ..
发布时间:2017-10-23 23:50:54 C/C++开发

FFMpeg没有转码复制流

我正在尝试将所有流从多个文件复制到一个文件中,而无需转码流。你通常使用 ffmpeg 实用程序通过 ffmpeg -i“file_with_audio.mp4”-i“file_with_video.mp4”-c copy -shortest file_with_audio_and_video.mp4 这是代码: int ffmpegOpenInputFile(const char * ..
发布时间:2017-10-23 23:36:17 其他开发

解码MP3,然后增加音频音量,然后对新音频进行编码

我想首先解码一个MP3音频文件,然后增加音频的音量,然后再次将其编码成一个新的MP3文件。我想为此使用libavformat或libavcodec。你能帮我一下吗任何一个例子? 解决方案 您可以使用“-filter”参数与“volume”选项来设置一个“ 为音频。更多信息: http://ffmpeg.org/ffmpeg-filters.html#volume 由于您只处理MP3文 ..
发布时间:2017-10-23 23:05:27 其他开发