2015-08-28 8 views
0

Я хочу закодировать SmoothStreaming Player в NodeJS. Я смотрю телевизор на потоковой платформе, но я бы хотел использовать мою малину Pi для просмотра телевизора с помощью HDMI. Игрок написан на C# и является игроком Silverlight.SmoothStreaming Player в NodeJS

Я хочу реализовать LicenseAcquirer и SmoothStreamingMediaElement of C# для воспроизведения видео с помощью малины Pi. Я думаю, что это должно быть возможно, но я не знаю, как начать, я не знаю, как работает LicenseAcquirer для подготовки запроса на сервер лицензий и как использовать ключ DRM для дешифрования видео.

Идея состоит в том, чтобы получить лицензию, загрузить видеокубки, расшифровать фрагменты видео и играть с использованием omx-плеера, например.

Возможно ли это? Где я могу получить информацию о LicenseAcquirer и SmoothStreamingMediaElement?

Спасибо! :)

ответ

0

Я не совсем уверен, что вы пытаетесь сделать, но вы не можете расшифровать куски видео сами - вот и вся цель защиты DRM.

DRM - это черный ящик, поставляемый с платформой. Silverlight оснащена Microsoft PlayReady DRM и может расшифровать и отобразить защищенный контент для вас. Вы не должны получать доступ к расшифрованному контенту.

LicenseAcquirer - это класс в сборке Silverlight's System.Windows.dll. Если вы хотите увидеть его контент, вы можете использовать какой-то инструмент для обратного проектирования, например Reflector или DotPeek. Его целью является интерфейс для Silverlight для запроса лицензии с сервера. Он не генерирует сам запрос на лицензию, и сам он не обрабатывает сам ответ на лицензию. Это всего лишь оболочка для собственного кода, реализованного в файле agcore.dll.

Целесообразно изменить логику LicenseAcquirer и добавить дополнительные данные. Например, для потоковой службы требуется некоторая информация, идентифицирующая клиента, чтобы узнать, имеет ли клиент доступ к лицензионному контенту или нет.

SmoothStreamingMediaElement - это плеер Silverlight, реализующий Microsoft Smooth Streaming Protocol и использующий Microsoft PlayReady, уже реализованный в Silverlight. Вам просто нужно указать URL-адрес манифеста Smooth Streaming для защищенного контента, и он может воспроизводить его (если только не существует дополнительной защиты для доступа к лицензии).

SmoothStreamingMediaElement не является стандартной частью Silverligh. Он является частью Smooth Streaming Client SDK, который доступен как исходный код (не поддерживается).