在阅读了大量的文档和教程之后,我仍然无法找到一种方法来向视频的每一帧添加一些图像或文本。 框架角上的徽标或文本水印之类的东西。 我知道如何使用 cli 中的 ffmpeg 执行此类操作,但对于这种情况,需要 C\C++ 代码。 看起来,ffmpeg 的 libav 允许我在解码阶段对帧做一些事情, ...
在阅读了大量的文档和教程之后,我仍然无法找到一种方法来向视频的每一帧添加一些图像或文本。 框架角上的徽标或文本水印之类的东西。 我知道如何使用 cli 中的 ffmpeg 执行此类操作,但对于这种情况,需要 C\C++ 代码。 看起来,ffmpeg 的 libav 允许我在解码阶段对帧做一些事情, ...
我正在尝试使用 FFmpeg/libAV 对 H.264 电影进行编码,当我尝试设置编解码器预设时,返回代码指示错误: 为了简洁起见,我在示例中省略了错误检查。 我尝试将preset为不同的值(“中”、“慢”、“非常慢”等) ...
我正在尝试使用 ffplay 播放传入的 RTP 音频 stream(或者,通过使用我自己的使用 libav 的代码)。 传入的 stream 正在复用 RTP 和 RTCP 数据包。 播出有效,但使用了两个本地 UDP 端口: 我请求的端口我请求的端口 + 1(我猜是 RTCP 端口) 这是 f ...
我在下面尝试过,但它只显示背景视频。 我还尝试将帧序列组装成 .webm/.mov 视频,但透明度丢失了。 视频以黑色为背景。 Ps - 帧大小与背景视频大小相同。 所以不需要缩放。 编辑我尝试了@Rotem 的建议首先尝试使用单个 PNG 图像 它不适用于 OpenCV 生成的帧,但适用于任何 ...
我只想提升 H.264 视频中的关键帧。 我一直在尝试查看在 C src 代码中我可以在哪里保存关键帧,以便对其进行缩放。 我很困惑是在解析数据包部分还是在解码部分应用缩放。 我也不知道放大 B & P 帧是否足以不损坏视频帧。 我希望你能指导我,因为没有足够的关于 FFmpeg 的文档。如 ...
我一直在尝试按照本教程http://dranger.com/ffmpeg制作 VideoPlayer,以自学如何使用 libav,但我想使用 Delphi VCL 和 DirectSound 而不是 SDL。 不幸的是,我在尝试将 YUV420P 帧转换为 RGBA 帧时卡住了,即使我可以在 TB ...
作为一个更大项目的一部分,我希望能够实时逐帧捕获和编码桌面。 我有以下测试代码来重现屏幕截图中显示的问题: 据我所知,编码过程的设置是正确的,因为它与官方文档中给出的示例的工作方式基本没有变化: https://libav.org/documentation/doxygen/master/encod ...
我是 FFMPEG 的新手,并试图用它对视频文件进行一些屏幕截图,但经过大量在线搜索后,我对自己做错了什么感到困惑。 基本上,我已经完成了通过 DirectX 捕获屏幕数据的工作,DirectX 以 BGR 像素格式存储,我只是试图将每一帧放入视频文件中。 有两个函数, setup完成所有 ffmp ...
我正在开发一种软件,它使用 OpenCV 获取帧,然后通过网络发送它们。 我为此使用了 RTMP 协议,我创建了一个中间 rtmp 服务器并解决了它。但是,我必须使用 TCP 解决问题。 在发送方我没有遇到任何问题,我可以顺利转换 From cv::Mat-> AVframe->Avp ...
我将使用 vaapi/ffmpeg 解码的视频帧转换为 VASurface。 现在我想使用 OpenGL 纹理来渲染它们。 我能够将帧加载到软件中(使用vaDeriveImage和vaMapBuffer )并使用接收到的数据更新纹理。 但这真的很慢,这不是我的目标。 然后我发现 EGL 在其他一些存 ...
我想使用 libav 库尽快从视频文件中读取音频。 一切正常,但似乎可以更快。 为了获得性能基准,我运行了这个 ffmpeg 命令并对其进行了计时: 在我的 M1 Macbook Pro 上的测试文件(带有 pcm_s16be 音频的 2.5gb 2hr .MOV)上大约需要 1.35 秒。 ...
我应该如何在解复用后和解码后验证 pts/dts? 对我来说,在数天甚至数周的连续流媒体中始终拥有有效的分数非常重要。 解复用后,我检查: dts <= pts prev_packet_dts < next_packet_pts 我还丢弃带有 AV_NOPTS_VA ...
我正在尝试根据官方说明安装 CVAT 的开发版本,但在应用 requirements.txt 的步骤中苦苦挣扎: ...出现以下错误: 我已经尝试过建议的修复,但没有成功: https://github.com/openvinotoolkit/cvat/issues/4406 环境: MacBo ...
我需要处理几个音频文件(MP3 和 WAV)的列表并将它们混合以生成要包含到 mp4 文件中的音频 stream(AAC 编解码器/fltp)(使用 Libav API)。 目前,我可以混合输入文件列表以使用过滤器成功生成 WAV 文件,但是当我尝试创建 MP4 文件时,我总是收到此错误消息:“资源 ...
我正在尝试使用libavformat录制 RTP stream,但是录制视频的 FPS 高得离谱,我得到数千 FPS,如果不是一万。 我尝试将 FPS 设置为 30 进行以下修改: 然后,在记录阶段,我在读取新数据包时执行以下操作: 我得到的错误日志如下,以重复的方式: 我使用的libav版本如下 ...
我正在尝试使用 libavformat 编写视频流应用程序。 虽然 ffmpeg 和 libavformat 提供 96 和 97 作为默认负载类型,但我想指定自定义 RTP 负载类型。 正如我在这里回答的那样,我已经知道如何在 ffmpeg 的命令行中设置它,但是我想在代码中给出它。 我尝试了以 ...
我一直在尝试将视频(来自我的网络摄像头)同时输出到文件('out.mkv')和管道:文件获取过滤帧,管道:获取未过滤的原始视频。 我的帧速率是 30 fps。 但是,我的文件输出中的帧速率要低得多。 附加的是 while 循环,它读取数据包并将它们写入输出: 'ifmt_ctx' 是网络摄像 ...
目前,我正在使用 Libav API 实现我的软件的一个新功能。这是要求:合并音频文件列表(MP3 和 WAV)并创建一个独特的音频文件(MP3)作为 output。注意:挑战是不是连接文件,而是合并它们。 当播放 output 声音时,所有输入的音频内容必须同时发声,就像在视频编辑器中合并多个文 ...
在我的项目中,我想保存 Hevc 文件中的一帧。 我在源代码中使用 FFmpeg 来解码 Hevc 文件并获取 AVFrame 和 AVCodecContext。 我需要的是将框架保存为图片(全色)。 我试图将它保存为 *.pgm 文件,所以图片只是灰色的,这不是我真正需要的。 有什么建议吗? 谢谢 ...
int stream_index = find_stream(AVMEDIA_TYPE_VIDEO, input); AVStream *s = input->container->streams[stream_index]; AVFrame *new_fra ...