Html5 canvas 基于Webrtc的firefox和Chrome CaptureStream API中的Alpha透明性

Html5 canvas 基于Webrtc的firefox和Chrome CaptureStream API中的Alpha透明性,html5-canvas,webrtc,Html5 Canvas,Webrtc,我正在尝试使用Capturestream API将canvas流发送到Peerconnection。我遇到了一个问题,画布上的透明像素(alpha通道)没有通过Webrtc发送,将被黑色像素替换。我知道这是Webrtc上的一个已知问题,这里有一个链接[。由于Webrtc技术正在高速迭代,我想知道是否有人知道解决这个问题的方法 显然,有一个解决方案,其中指出: 此CL更改画布捕获中的输出帧格式 I420至YV12A,以便保留alpha通道 不幸的是,我找不到实现的方法。这是正常的,因为WebRTC

我正在尝试使用Capturestream API将canvas流发送到Peerconnection。我遇到了一个问题,画布上的透明像素(alpha通道)没有通过Webrtc发送,将被黑色像素替换。我知道这是Webrtc上的一个已知问题,这里有一个链接[。由于Webrtc技术正在高速迭代,我想知道是否有人知道解决这个问题的方法

显然,有一个解决方案,其中指出:

此CL更改画布捕获中的输出帧格式 I420至YV12A,以便保留alpha通道


不幸的是,我找不到实现的方法。

这是正常的,因为WebRTC还不支持alpha通道。WebRTC将把像素块转换成I420像素格式,该格式有24位通道,不支持alpha通道。另一端,流将转换回另一个像素,但alpha通道信息离子会丢失

链接显示了Chromium项目的一些私有API实现。我认为它与WebRTC无关

如果Alpha频道是目前必须具备的功能,我建议使用web套接字