问题标签 [libvpx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
181 浏览

c++ - 如何在通用 Windows 平台应用程序中播放 vp8 编码数据?

我正在尝试在 Windows 应用程序中播放 VP8 编解码器视频。我已经完成了Vpx Building for Windows中给出的 Windows 的 Libvpx 编译。但它不适用于通用 Windows 应用程序。它编译为普通的 Windows (Win32 exe) 二进制文件。libvpx 库中的示例也与 UWP 应用不兼容。我正在寻找通用 Windows 平台中的示例(C++ 示例会更好)。

我试图将“vpxmt.lib”(通过使用 Cygwin 编译 lipvpx 代码创建)添加到通用 Windows 应用程序项目中。它返回错误“无法添加对“vpxmt.lib”的引用,因为它不是当前项目可以使用的类型或版本”

请建议是否有另一种在 Windows 中播放 vp8 视频的方法(如 Android 中的 MediaCodec)。我在 Windows 10 上使用 Visual Studio Community 2015。

0 投票
1 回答
9585 浏览

ffmpeg - FFmpeg - 将 MP4 转换为 Webm 非常慢

我需要使用 ffmpeg 将 MP4 转换为 webm。所以,我使用:

但它很长。

有更快的吗?

0 投票
1 回答
2843 浏览

c++ - 使用 Bash 在 Windows 10 上使用 Visual Studio 2015 构建 libvpx

我在 libvpx 中发现了一个错误,它阻碍了我在视频中使用 alpha。我已经修复了这个错误,但这意味着我必须重建 libvpx(之前的构建在时间的迷雾中丢失了,除了头文件和库)。我已获取版本 1.6.1 并按照此处的说明https://github.com/webmproject/libvpx,在 Windows 10 上的 Bash 中使用此命令行生成 Visual Studio 2015 解决方案:

一切看起来都很好:我在 Visual Studio 2015 中打开了解决方案并尝试构建 vpx 项目,该项目产生了许多目标文件和组装的程序集源,但最终我收到以下错误:

没有同名的源文件,所以没有对应的obj文件。查看项目,有许多 .mk 文件,其中一个名为 vpx_ports 并包含以下文本:

在我看来,这就像某种我不熟悉的 makefile 魔法。项目中没有其他 vpx_ports_* 文件。项目中还有其他几个 .mk 文件。

推荐使用 Cygwin,我尝试在 Windows 上使用它而不是 Bash,但获得了相同的结果。最终,我想修复这个错误并继续我的生活。欢迎任何帮助,无论是向我解释如何解决链接器错误或建议替代构建机制。

[编辑 1]
进度:构建脚本为 asm 文件创建自定义构建命令,例如

但是,在最新版本的 yasm 中,-o 指定了输出目录,而不是输出文件名(尽管文档可能会这样说);该文件确实已成功组装到 emms.obj。可悲的是,似乎没有指定输出文件名的选项。

0 投票
1 回答
448 浏览

c++ - 使用 libvpx 编译项目时未定义的引用

我已经使用 MSYS(用于 MinGW)构建了 libvpx.a 和标头。当我试图编译一个示例时,会出现很多对 vpx 成员的未定义引用:

所有包括制作,lib 已链接...那我做错了什么?

PS:可能链接libvpx.a文件还不够,我还需要源码自带的.c文件(如果是的话,我不明白.a lib文件需要什么)?

0 投票
1 回答
536 浏览

windows - 如何使用 Cygwin 在 Windows 中构建 vpxenc.exe?

我已经在 v1.6.1 标签上克隆了libvpx 存储库,并尝试使用 Cygwin 在 Windows 系统中构建它。

Cygwin 软件包:

Cygwin 构建命令:

构建成功,但我看不到vpxenc.exe任何地方。作为记录,这是构建文件夹的内容。

构建先决条件自述文件没有说明任何关于构建的内容vpxenc.exe。似乎还有一个关于二进制下载的页面上的讨论,但似乎该链接已失效。

我希望vpxenc.exe为另一个项目构建一个静态二进制文件。我错过了争论吗?我的构建步骤错了吗?

0 投票
1 回答
253 浏览

c++ - 将原始视频图像转换为 I420 用于 vpx 编码器

我试图将原始视频帧提供给 libyuv 以将 UYVY 视频转换为 I420,但是当我使用 libyuv 转换帧时,我只能得到视频的左手角,我试图从我的 decklink 卡中捕获。

这是我使用的函数的代码

我怎样才能让它显示整个框架?谢谢你!!!

0 投票
1 回答
597 浏览

ffmpeg - ffmpeg vp9未设置恒定质量

我正在运行 ffmpeg 将 4k hevc 视频转换为 vp9,但无论我使用什么设置,它总是会出现可怕的质量和相同的文件大小。

命令:

我在 docker 上使用 ffmpeg:latest。

0 投票
0 回答
309 浏览

ffmpeg - ffmpeg 转换为 webm 错误“太多不可见帧”

我需要使用自己的 ioContext 将任何格式(例如,mp4、avi 等)转换为 .webm。我用 vpx、ogg、vorbis、opus 构建 ffmpeg 并创建简单的项目。但是当我写任何帧时,我得到错误“太多不可见的帧。无法发送数据包以过滤流 0 的 vp9_superframe”

我已经尝试使用带有 avcodec_parameters_copy 的复制编解码器参数从 webm 转换为 webm,这很有效。

0 投票
0 回答
296 浏览

ruby-on-rails-4 - Rails FFMPEG - 转换为 webm 为编码器“libvpx-vp9”提供错误

我正在测试视频转换以将视频文件转换为 mp4 和 webm。我还设置了ffmpeg并正确编译。Mp4转换成功但webm中断总是抱怨-

这很奇怪,因为我已经有 vp8 -

我的模型..video.rb 看起来像 -

我在下面分享我的完整输出(突出显示错误:))-

0 投票
1 回答
148 浏览

c++ - MediaFoundation + VP8 + 颜色格式

我的最终目标是为我的虚拟课堂应用程序添加视频支持。我的方法是:

  • 使用 Media Foundation 捕获帧
  • 使用LibVPX使用 VP8 进行编码
  • 使用 UDP 传输
  • 在接收站点解码
  • 在窗口中显示框架

第一个问题出现在我的网络摄像头支持的颜色编码上。网络摄像头媒体类型仅包含 MFVideoFormat_NV12。我的第一次调试尝试将接收图像保存到位图,以便我可以测试它是否被正确捕获(删除了错误处理):

SaveSampleNV12 使用此处的代码将 NV12 转换为 RGB,然后:

这会返回一个奇怪的充满粉红色的图像。我做错了什么,但是什么?

非常感谢。