C# DLNA/UPNP Media Playback
Я пытаюсь транслировать определенные медиа на устройства, совместимые с dlna/upnp. Я уже узнал, как отправлять команды на устройства с помощью C#(например, воспроизведение, пауза, остановка и т. Д.).
Итак, я могу воспроизводить мультимедиа на устройстве. Тем не менее, мне неясно, как я могу сообщить устройству, какой носитель воспроизводить. Есть ли определенная команда для этого?
Я видел команду "SetAVTransportURI", но это требует URI, я просто хочу воспроизвести видеофайл из общего каталога в моей сети. Как мне сообщить устройству, какой носитель воспроизводить?
2 ответа
Согласно спецификации UPnP MediaRenderer (общедоступно, посмотрите на http://www.upnp.org/), сервис AVTransport должен принимать схему URI file:
только для внутреннего протокола, который в значительной степени не указан и зависит от устройства (как написано в спецификации). Другими словами, вам разрешено SetAVTransportURI
с file:
только для таких вещей, как "1-я дорожка на CD" или "Tuner Station X". Если вы хотите удаленное соединение, вы должны использовать протокол http-get, то есть схему URI http:
, Настройка простого веб-сервера, который будет публиковать ваш общий каталог, должна помочь.
Для этой изолированной части UPnP (то есть для установки единого, уже известного URI мультимедиа, отсутствия просмотра и метаданных, таких как имя видео и т. Д.) Вам не требуется, чтобы ваш сервер знал какие-либо специальные службы DLNA/UPnP. Как только вы захотите получить лучший пользовательский опыт, ищите полноценный UPnP MediaServer. Некоторые написаны на C# тоже.