问题标签 [vp8]
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.
javascript - 从 webP 或 webM 渲染 VP8 帧
基本上 webM 和 webP 是用 VP8 数据编码的。但此时我只需要 VP8 数据。我试图从 whammy 和 MediaRecorder 渲染 VP8 数据,但一切都是徒劳的。
那么,有没有办法在 javascript 中从 webP 图像渲染 VP8 帧?
video-streaming - 使用 WebRTC 时是否值得将 H.264 转码为 VP8?
您好,我目前正在构建一个实时流媒体解决方案,该解决方案通过 RTSP 获取 H.264 编码视频,将其转换为 WebRTC,然后将其发送到 HTML5 浏览器。WebRTC 支持 H.264,几乎所有浏览器似乎都支持 H.264 解码,所以我认为不需要任何转码。但是,我正在尝试做的许多实现似乎都涉及将 H.264 转码为 VP8,我想知道为什么这是必要的。这样做有什么好处?有没有我可以查看的统计数据来确定由于这种转码而会增加多少延迟?
google-chrome - webrtc:视频流未在 chrome 中播放
我已经预先录制了 opus 和 vp8 文件。在 webrtc 通话中,我正在尝试将音频/视频流式传输到 chrome。
虽然音频在 chrome 中播放,但无法显示视频。
我从谷歌搜索中读到我需要作为 i 帧发送的第一个视频帧。我对视频的东西有点陌生。有人可以帮助我学习如何在视频的情况下发送 i-frame。
是否还有其他潜在问题,为什么 chrome 不喜欢视频帧。请注意,ICE 和 Dtls 握手进行得很好。
webrtc - vp8 rtp 打包数据被 srtp_protect 覆盖
我在 webrtc 调用中使用 libsrtp 进行 srtp 加密。
准备好 RTP 数据包后,我调用 srtp_protect 对其进行加密。它对数据部分进行加密并保持 RTP 标头不变。到目前为止,这在仅音频呼叫的情况下运行良好。
现在我支持VP8。根据 RFC 7741(RTP VP8 打包),RTP 数据包就像 RTP 标头 + VP8 打包数据 + 有效负载。
因此,当我将整个缓冲区提供给 srtp_protect 时,它正在加密 VP8 打包部分和有效负载。我的理解是RTP标头,VP8打包部分不应该加密。只有有效载荷应该被加密。
我的理解正确吗?
在 RTP VP8 数据包化的情况下,如何使用 srtp_protect?
任何提示高度赞赏。
video-streaming - "trackPublished" event not firing in twilio-video Javascript SDk
I have the following code:
According to the documentation, the "trackPublished" event is fired when a participant publishes media to a room and the "trackPublicationFailed" event is fired when the publication fails. However none of the events seem to fire in my case.
I can verify that the tracks were in fact published to the room and still the "trackPublished" event was not fired.
twilio-video at 1.6.1 Chrome: 63 Ubuntu: 16.04
ubuntu - ffmpeg avcodec_open2() 仅在 ubuntu 中返回错误 -22
如题,
我正在使用 ffmpeg 在 Mac 上开发一个项目。它在我的 Mac 上运行,将帧编码为 vp9 和 vp8。但是当我在 ubuntu 中的 docker 映像上运行它时,函数avcodec_open2()
返回-22
错误。(仅适用于 vp9&vp8,h264 有效)。
我想知道错误是否来自设置参数部分?但是让它在mac上运行但在ubuntu中运行仍然很奇怪。
有没有人有类似的经历?
编辑:有谁知道ffmpeg-linux是否使用不同的参数名称从其他平台(如Mac)进行设置?
Eidt2:似乎即使我没有设置任何选项参数,它仍然给我-22
错误。前任:ret = avcodec_open2(c, codec, NULL)
java - 如何在 Java 中使用 opencv 或 ffmpeg 在网络摄像头流上覆盖视频
在我的项目中,我在 Java 桌面应用程序的屏幕上预览网络摄像头捕获和视频(webm
采用编解码器格式vp8
)捕获。目前我使用VideoCapture
类来检索网络摄像头和视频帧在帧上执行一些绘图,然后将它们显示给用户。我想将视频放在网络摄像头捕获上,因为我的视频有 alpha 通道。因此,我将视频和网络摄像头的每一帧作为 OpenCV Mat 检索,然后尝试将 mat 相互叠加。但是我收到错误,因为从培训师捕获中检索 Mat 会删除 alpha 通道。VideoCapture
逐帧处理视频并能够将帧检索为 OpenCV Mat的最佳替代类是什么?
webrtc - WebRTC H264/VP8
我使用 Janus-Gateway,在 H264 / VP8 之间选择编解码器时遇到问题。当我选择 H264 编解码器在 IOS 上工作但在 Chrome 71 (Android) 上不工作时,或者当我选择 VP8 在 Chrome 71 (Android) 上工作但在 IOS 上工作时,有没有一种方法可以正常工作? ?
问候
google-chrome - Why does Firefox produce larger WebM video files compared with Chrome?
I and my team have been struggling lately to find an explanation why does Firefox produce larger WebM/VP8 video files compared with Chrome when using the MediaRecorder API in our project.
In short, we record a MediaStream
from a HTMLCanvas
via the captureStream
method. In attempt to isolate everything from our app that might affect this, I developed a small dedicated test app which records a <canvas>
and produces WebM files. I've been performing tests with the same footage, video duration, codec, A/V bit rate and frame rate. However, Firefox still ends up creating up to 4 times larger files compared with Chrome. I also tried using a different MediaStream
source like the web camera but the results were similar.
Here is a fiddle which should demonstrate what I am talking about: https://jsfiddle.net/nzwasv8k/1/ https://jsfiddle.net/f2upgs8j/3/.
You can try recording 10-sec or 20-sec long videos on both FF and Chrome, and notice the difference between the file sizes. Note that I am using only 4 relatively simple frames/images in this demo. In real-world usage, like in our app where we record a video stream of a desktop, we reached the staggering 9 times difference.
I am not a video codec guru in any way but I believe that the browsers should follow the same specifications when implementing a certain technology; therefore, such a tremendous difference shouldn't occur, I guess. Considering my knowledge is limited, I cannot conclude whether this is a bug or something totally expected. This is why, I am addressing the question here since my research on the topic, so far, led to absolutely nothing. I'll be really glad, if someone can point what is the logical explanation behind it. Thanks in advance!