问题标签 [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.
python - webrtc 的 libvpx KeyError
我正在使用 gyp 生成 webrtc 项目,在生成东西时,出现以下错误:
文件“/home/rtcdev/Nishant/src/webrtc/build/gyp_webrtc”,第 102 行,在 gyp_rc = gyp.main(args) 文件“/home/rtcdev/Nishant/src/tools/gyp/pylib/gyp/ init .py”,第 526 行,在主要返回 gyp_main(args) 文件“/home/rtcdev/Nishant/src/tools/gyp/pylib/gyp/ init .py”,第 502 行,在 gyp_main 参数中,options.check,options .circular_check) 文件“/home/rtcdev/Nishant/src/tools/gyp/pylib/gyp/ init.py",第 129 行,加载参数 ['parallel'],参数 ['root_targets']) 文件 "/home/rtcdev/Nishant/src/tools/gyp/pylib/gyp/input.py",第 2756 行,在加载 RemoveLinkDependenciesFromNoneTargets(targets) 文件“/home/rtcdev/Nishant/src/tools/gyp/pylib/gyp/input.py”,第 1501 行,在 RemoveLinkDependenciesFromNoneTargets if targets[t].get('variables', {}) .get('link_dependency', 0): KeyError: 'third_party/libvpx/libvpx.gyp:libvpx_obj_int_extract#host'
问题:
我没有得到这个错误想要告诉的内容以及如何克服这个错误?
c++ - 如何在 libvpx (webm) 中编码灰度视频?
我有来自我们正在开发的网络灰度相机的原始图像流。在这种情况下,我们的图像是 8 位像素 (640x480) 的数组。由于这台相机每秒输出超过 200 帧,我需要尽快将这些图像存储为 WebM 视频,以免丢失任何帧。
使用 libvpx 的最佳方法是什么?
linux - 构建 libvpx 时未定义的引用
我正在尝试将 libvpx 构建为静态库,以便稍后在 FFmpeg 构建中使用,但我遇到了麻烦。我使用的 libvpx 版本是 1.6.0。
这是我的配置: ./configure --prefix=/home/test/Dev/build-x64/libvpx/ --enable-static --disable-shared --target=x86_64-linux-gcc
在制作过程中,屏幕上会显示很多错误:
认识到错误始于测试,我尝试禁用单元测试: ./configure --prefix=/home/test/Dev/build-x64/libvpx/ --enable-static --disable-shared --target=x86_64- linux-gcc --disable-unit-tests
而是得到了这个:(......很多行......)[CC]示例/resize_util.co [LD]示例/resize_util示例/resize_util.co:在函数main':
resize_util.c:(.text.startup+0x1e8): undefined reference to
vp9_resize_frame420'collect2中:错误:ld返回1退出状态[1]:* [examples/resize_util] 错误 1 制作:* [.DEFAULT] 错误 2
我的电脑上有 libogg 1.3.1 和 libvorbis 1.3.2。(不确定它们是否被使用过。)
我很难过,我真的很感谢这里的一些指导。
ffmpeg - ffmpeg 更喜欢在 VP9 中编码,但我正在尝试在 VP8 中编码
我正在尝试专门在 VP8 中编码 webm 视频文件,但 ffmpeg 正在强制使用 VP9。我正在使用-c:v libvpx
,据我所知应该是 VP8,但是当它编码时,我看到它在 VP9 中编码:
我拥有的构建确实有--enable-libvpx
和--enable-libvpx-vp9
标志。它也是最新的默认静态构建,我没有做任何更改,只是提取它:ffmpeg-20160828-a37e6dd-win32-static.zip
我使用过时的版本很长时间了,今天更新了。我在网上找不到任何文档来帮助我解决这个问题。
video - FFmpeg CRF 控制使用 x264 与 libvpx-vp9
我有一些使用 x264 的 ffmpeg 的经验,我想与 libvpx-vp9 进行比较。我测试了一个简单的原始视频单通道编码,使用 x264 和 libvpx-vp9 改变 crf 设置和预设。我是 libvpx 的新手,我仔细地遵循了这一点,但我可能仍然指定了错误的参数组合,因为我得到的结果对我来说没有多大意义。
对于 x264,我做了:
并得到以下结果:
这对我来说很有意义,给定一个 crf 值,您会得到一个 PSNR 值,并且更改预设可以降低比特率,但会增加编码时间。
对于 libvpx-vp9 我做了:
首先,我从在线教程中认为该-cpu-used
选项相当于-preset
x264 中的选项。那是对的吗?如果是这样,有什么区别-quality
?此外,由于范围从 -8 到 8,我假设负值是快速选项,而正值是最慢的选项。我得到的结果非常令人困惑:
比特率非常低,PSNR 似乎不受crf
设置的影响(与 x264 相比非常低)。该-cpu-used
设置的影响非常小,而且似乎 -2 和 2 是相同的选项。我错过了什么?我希望 libvpx 需要更多时间来编码(这绝对是真的),但同时转码质量更高。我应该使用哪些参数来与 x264 进行公平比较?
编辑:感谢@mulvya 和这个文档,我认为要使用 libvpx 在 crf 模式下工作,我必须添加-b:v 0
. 我重新运行了我的测试,我得到:
通过添加 PSNR 和比特率显着提高-b:v 0
linux - 当ffmpeg等待重新连接到相机时,添加空白帧?
我正在使用的命令就是这个。
它需要一个 MJPEG 流并将其保存到 WEBM 用于一个输出,另一个输出直接到 stdout,因为我将它用于其他用途。
它工作得很好。唯一的问题是,当连接断开到相机时,它只是从重新连接的位置缝合在一起。
我想在断开连接的位置之间添加空白帧。有没有选择或方法来检测它?那么也许我可以用标准输入推送一些数据?
添加空白帧的目的是使其具有适当的长度,即使它来自实际流本身的“丢失帧”。
cmd - 使用 ffmpeg 和 libvpx 从许多图像中编码 webm 时出错
我使用的命令是:
输出是:
错误是:
和
我不确定到底是什么导致了这个问题,我按照本教程进行操作,但是他们没有提到错误。我应该提到我没有使用音频,所以我没有使用音频编码器(我确实尝试使用音频编码器来确保,这不是问题)
encoding - VP9 编码限制为 4 个线程?
我正在考虑在未来使用 VP9 对我的 BluRays 进行编码,因为它是一个开源编解码器。但是我不能让 Handbrake 或 ffmpeg 使用超过 50% (4) 我的 (8) 个内核。因此,编码时间比使用所有内核的 x264/5 差得多。
在手刹中,我只是将编码器设置为 VP9 和 CQ19。threads 8
如果我添加,threads 16
或threads 64
在参数字段中没有区别。
在命令行 ( -c:v libvpx-vp9 -crf 19 -threads 16 -tile-columns 6 -frame-parallel 1 -speed 0
) 中测试 ffmpeg 也不再使用任何 cpu 线程。
当前的编码器是否无法在超过 4 个线程上进行编码,或者我做错了什么?
- Linux 薄荷 18
- 手刹 0.10.2+ds1-2build1
- ffmpeg 2.8.10-0ubuntu0.16.04.1
- libvpx3 1.5.0-2ubuntu1
gstreamer - gstreamer中vp8enc的实时视频可以使用哪些设置?
我正在研究使用此元素对实时视频进行编码,并且在大多数情况下,输入视频相对简单,它可以正常工作。然而,对于我们的某些场景,编码器落后了。(特别是我们有一个测试场景,其中有一群鸟,编码器适合。)
查看输出,我相信这是因为该元素似乎没有针对复杂场景调整 QP。不过,我没有看到针对“实时”视频的特定调整。有没有人有什么建议?
ffmpeg - FFmpeg - 为 VP9 编码选择合适的比特率
我希望在 VP9 中以最佳质量编码使用 iPhone 6s 拍摄的 4k 视频。
作为参考,我想通过以下方式编码的视频流数据ffprobe
:
我正在使用以下 FFmpeg 命令,基于这些说明(参见Best Quality (Slowest) Recommended Settings
章节)。
ffmpeg -i INPUT.mov -c:v libvpx-vp9 -pass 1 -b:v 46000K -threads 4 -speed 4 -g 9999 -an -f webm -y /dev/null
ffmpeg -I INPUT.mov -c:v libvpx-vp9 -pass 2 -b:v 46000K -threads 4 -speed 0 -g 9999 -an -f webm OUTPUT.webm
是否有最佳实践来选择最佳-b:v
值,以使生成的视频在视觉上与原始视频无法区分?我尝试了从 36000K 到 46000K 的值,但这些值会导致总比特率超过目标比特率的海量文件。
提前致谢!