播放加密的MP4

时间:2016-10-06 10:37:47

标签: encryption mp4 mpeg-dash

我正在制作一个(本地 - 多平台)视频保护应用但我不知道什么是正确的解决方案首先“加密 - >保存硬盘“然后”加载来自HDD-> decrypt->播放“加密视频。

我读到了关于MPEG-DASH和一些DRM并发现了这个Bento4命令:

mp4dash --encryption-key=000102030405060708090a0b0c0d0e0f:00112233445566778899aabbccddeeff --encryption-args="--property 1:ClearLeadFragments:10 --property 2:ClearLeadFragments:10" movie.mp4

但我不确定MPEG-DASH是否可以成为解决方案的一部分。

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

HLS + S3 + CloudFront + MediaConvert + VideoJS。

答案 1 :(得分:0)

在google上进行了多次搜索后,我在这里找到了@erti-chris-eelmaa的答案:

Playing encrypted video

  

我使用openGL + FFMPEG编写自己的Videoplayer,可以播放mp4和   使用着色器解密GPU中的每个帧。我也尝试过   另一种可能的解决方案,例如使用网络服务器传输   VLC。 (VLC在处理时提供某种加密/解密功能   溪流)和yada yada yada。

     

另一种解决方案是使用4个媒体元素(WPF)和实际视频   实际上分为4个区域,每个区域都旋转了   视频无法观看。将视频加载到4后   mediaelements,你可以找出你想要展示的部分和   也将它旋转回来。但说实话,MediaElement很糟糕。

     

然而,我最终完全接受了RomanR所说的话。我建立了DirectShow   使用mp4splitter,ffdshow,videorenderer和我修改过的图形   mp4splitter sourcefilter。阅读发生在   BaseSplitter / AsyncReader.cpp(只修改SyncRead函数)即可   mp4splitter使用。

     

如果您想自己实施,只需使用MPC-HC项目   并根据需要修改过滤器。我花了一些时间才能到处走走   DirectShow概念,但一旦你理解了它,它就会变得很棒   武器。