Android 具有透明度的视频,如何在每个设备上正确显示webm文件的alpha通道;VP9还是VP8编码?

Android 具有透明度的视频,如何在每个设备上正确显示webm文件的alpha通道;VP9还是VP8编码?,android,css,html5-video,webm,alpha-transparency,Android,Css,Html5 Video,Webm,Alpha Transparency,关于如何通过alpha通道使用webm视频获得透明背景, 这里有一个人说你应该用VP8而不是VP9编码 这里有另一个人说这是相反的事情,就像它应该是VP9而不是VP8 有没有办法让每个设备正确显示包含alpha通道的webm文件 编辑1: 这里有一些测试结果!我已经生成了同一个webm文件的两个版本,一个采用VP8编码,另一个采用VP9编码。我已经在不同的设备上运行了测试来查看它们。在索尼手机(android/Chrome74)上,采用VP8编码的手机以透明背景正确显示,而采用VP9编码的手

关于如何通过alpha通道使用webm视频获得透明背景, 这里有一个人说你应该用VP8而不是VP9编码

这里有另一个人说这是相反的事情,就像它应该是VP9而不是VP8

有没有办法让每个设备正确显示包含alpha通道的webm文件

编辑1: 这里有一些测试结果!我已经生成了同一个webm文件的两个版本,一个采用VP8编码,另一个采用VP9编码。我已经在不同的设备上运行了测试来查看它们。在索尼手机(android/Chrome74)上,采用VP8编码的手机以透明背景正确显示,而采用VP9编码的手机则以纯黑背景代替透明背景。在华为手机(android/Chrome74)上,情况正好相反!带有VP9的屏幕显示正确,而带有VP8的屏幕背景为纯黑色而非透明。在华硕平板电脑上,VP8和VP9都能正确显示。在小米手机上,VP8和VP9均未正确显示

EDIT2:这是一页很好的解释,我不完全理解, 我敢肯定,这一切都是为了让这些参数正确,使其在所有android设备上工作。喜欢电视上的足球/足球运动员视频


…在我的桌面(chrome/windows)、平板电脑(chrome/android)和索尼手机(chrome/android)上,舞者和足球运动员的视频都可以通过alpha通道以透明背景正确显示(这是预期的)。但在华为和小米手机上,只有足球/足球运动员视频按预期工作,而奇怪的是,舞者的背景充满了纯色灰色。该足球运动员的视频如何在所有android设备上工作;我希望我的webm文件也能做到这一点,但我不知道如何做到这一点。

我终于找到了部分解决方案

通过使用动画“webp”文件而不是“webm”文件,我能够在各种设备上实现一致的透明度。 因为我的视频很短,没有音频,所以使用动画webp文件对我来说是最好的解决方案

使用这种方法,您希望将视频的每一帧保存为单独的文件(如未压缩的带有alpha的PNG),然后从中获取Photoshop的webp插件。 最后,将每一帧放在Photoshop中的一层上,并将每一层命名为
(50 ms)
(100 ms)
(包括括号)。和“另存为”webp,感谢您的新插件。在我的测试中,它在每台设备上都起作用。

我发现(至少在我的情况下)显示透明度的问题与webm视频分辨率有关

屏幕上显示的分辨率为640x360的webm在低端设备上运行良好,事实上,两个带有alpha的webm视频的分辨率都有许多缺点

如果更改nHD分辨率,alpha通道将停止在低端设备上工作。
这可能取决于设备的处理能力(可能与webm在GPU驱动程序内部的工作方式有关,如中所述)。

我一直在使用Adobe Media Encoder生成我的webm文件。那个足球运动员的视频文件一定是用一些好的设置和好的方法编码的,我希望我知道。我将尝试ffmpeg并发布结果。我尝试使用ffmpeg而不是Adobe Media Encoder。结果完全相同。接下来,我将尝试在mediacoderhq.comResult上找到的另一个名为MediaCoder的软件:我无法使用MediaCoder获得任何令人满意的结果。好吧,即使这是真的,我的测试表明分辨率可能不是失败的唯一原因。有时,结果似乎只取决于移动设备的品牌(如相同的浏览器、不同的设备)。我还记得在三星手机上测试时,Chrome for mobile没有显示alpha,而三星互联网浏览器显示alpha。那是同一台设备,只是不同的浏览器。