用于firefox和Chrome over Webrtc的CaptureStream API中的Alpha透明度

时间:2016-12-05 11:04:54

标签: html5-canvas webrtc

我正在尝试使用Capturestream API将画布流发送到Peerconnection。我遇到了一个问题,即Canvas的透明像素(alpha通道)不是通过Webrtc发送的,而是被黑色像素取代。我知道这是Webrtc上的一个已知问题,这里有一个链接[https://bugs.chromium.org/p/chromium/issues/detail?id=524218 ]。由于Webrtc技术正在高速迭代,我想知道是否有人知道这个问题的解决方法?

显然,here有一个修正案,在那里说:

  

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

不幸的是我找不到如何实现它的方法。

1 个答案:

答案 0 :(得分:1)

这是正常的,因为WebRTC还不支持alpha通道。 WebRTC将像素块转换为I420像素格式,具有24位通道,不支持Alpha通道。另一方面,流将转换回另一个像素,但alpha通道信息将丢失。

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

如果现在必须使用Alpha通道

,我建议使用网络套接字