C# NodeJS中的SmoothStreaming播放器

C# NodeJS中的SmoothStreaming播放器,c#,node.js,video,drm,smooth-streaming,C#,Node.js,Video,Drm,Smooth Streaming,我想在NodeJS中编写一个SmoothStreaming播放器。我正在流媒体平台上看电视,但我想用我的Raspberry Pi在HDMI上看电视。该播放器是用C编写的,是一个Silverlight播放器 我想实现C的LicenseAcquisitor和SmoothStreamingMediaElement,用Raspberry Pi播放视频。我认为这应该是可能的,但我不知道如何开始,我不知道LicenseAcquisitor如何准备对许可证服务器的请求,以及如何使用DRM密钥解密视频 例如,其

我想在NodeJS中编写一个SmoothStreaming播放器。我正在流媒体平台上看电视,但我想用我的Raspberry Pi在HDMI上看电视。该播放器是用C编写的,是一个Silverlight播放器

我想实现C的LicenseAcquisitor和SmoothStreamingMediaElement,用Raspberry Pi播放视频。我认为这应该是可能的,但我不知道如何开始,我不知道LicenseAcquisitor如何准备对许可证服务器的请求,以及如何使用DRM密钥解密视频

例如,其想法是获得许可证、下载视频块、解密视频块并使用omx播放器播放

可能吗?我在哪里可以获得有关许可证收单机构和SmoothStreamingMediaElement的信息


谢谢

我不太确定您想做什么,但您自己无法解密视频块-这就是DRM保护的全部要点

DRM是平台附带的一个黑匣子。Silverlight捆绑了Microsoft PlayReady DRM,它可以为您解密和呈现受保护的内容。您不应该访问解密的内容

是Silverlight的System.Windows.dll程序集中的类。如果你想看到它的内容,你可以使用一些反向工程工具,比如Reflector或DotPeek。它的目的是作为Silverlight从服务器请求许可证的接口。它本身不生成许可证请求,也不处理许可证响应。它只是agcore.dll中实现的本机代码的包装器

更改被许可方收单机构逻辑的全部要点可能是添加一些附加数据。例如,流媒体服务需要一些识别客户的信息,以了解客户是否有权访问许可内容

整个Silverlight播放器是否已在Silverlight中实现Microsoft Smooth Streaming协议并使用Microsoft PlayReady。您只需要为它提供受保护内容的平滑流媒体清单的URL,它就可以播放它,除非有一些额外的保护来访问许可证

SmoothStreamingMediaElement不是Silverligh的标准部件。它是其中的一部分,作为未维护的源代码提供