我正在尝试使用Android上的Azure媒体服务实现视频点播。
我已经上传了视频,将其编码为多比特率MP4,然后添加AES加密并发布它。
我收到了这个MPEG-DASH Url:http://prepladder-inct.streaming.media.azure.net/xxxx-xxxx-xxxx-xxxx-xxxxxxxx/sample-video.ism/manifest(format=mpd-time-csf)
但我无法在任何MPEG-DASH播放器(Android或web)上播放这个视频。
我甚至无法在Azure dash player上播放此视频链接:http://dashplayer.azurewebsites.net/
当我输入流url时,播放器可以显示视频的持续时间,但不能播放。
在Android上的ExoPlayer上,我可以播放所有在线可用的MPEG-DASH流进行测试。
此外,我还可以在ExoPlayer和iOS上为相同的媒体播放Azure提供的HLS流。
我没有在视频加密过程中添加任何令牌授权或DRM。
我是不是错过了什么?请帮帮忙。
发布于 2018-05-29 01:21:33
问题可能是您的视频文件名包含不支持的字符。这个问题记录在here中,我们指出不应该使用某些字符。尝试将源视频重命名为GM_1st_acid_fast_stain.mp4,将其上载到新资产,进行编码,然后创建流URL。
发布于 2018-06-01 10:07:11
对于FairPlay/HLS,向播放器提供应用程序证书(仅限公钥)至关重要。Apple推荐的方式是将此App Cert托管在web服务器上,并将URL传递给播放器。
SPC/CKC协商在播放器内部进行。
我建议使用这个测试/诊断工具http://aka.ms/amtest,它支持所有3种DRM (FairPlay,Widevine,PlayReady)和AES-128。如果您展开"player_settings“,您将看到一个名为"FPS AC Path”的条目,您可以将其粘贴到App Cert URL中。在protectionInfo.type下也放入"FairPlay“。当然,您需要在macOS上的Safari中运行测试。
希望这能有所帮助。威廉
https://stackoverflow.com/questions/50568696
复制相似问题