http://duneip/cgi-bin/do?cmd=start_file_playback&media_url=http://ts://127.0.0.1:81/cgi-bin/scream.sh

Отправлено 20 April 2020 - 01:38
http://duneip/cgi-bin/do?cmd=start_file_playback&media_url=http://ts://127.0.0.1:81/cgi-bin/scream.sh
Dune HD TV-102W (190919_0242_r11) Сист.флешка присутствует
Отправлено 20 April 2020 - 12:36
Очеть интерестно, но чуть не понял как это работает?
Отправлено 20 April 2020 - 14:00
Там всё просто.
После установки драйверов на винду, появляется виртуальное звуковое устройство. Качество звука и количество каналов настраивается стандартными средствами системы. Выбор устройства для вывода звука тоже.
Устройства.PNG 31.32К
3 Количество загрузок:
Настройки.PNG 32.09К
2 Количество загрузок:
Переключение.PNG 192.79К
2 Количество загрузок:
Как только выбрали - драйвер начинает мультикастом передавать пакеты с несжатым звуком в сеть. Кстати, может и юникастом, если вдруг надо.
Пакеты, как я понял, у этого драйвера своего формата, поэтому со стороны принимающего устройства требуется декодер.
В нашем случае декодер на Дюне ловит пакеты из сети и выдает данные в stdout, откуда при помощи ffmpeg (из комплекта codecpack) они преобразовываются в формат, который воспроизводит Дюна. Фактически сейчас это уже полноценно рабочий комплект без всяких условностей. Надо только передачу настроек звука в скрипт через параметры в url сделать, а то сейчас у меня в нём жёстко задано 48kHz/24. Но это попозже сделаю, сначала хочу разобраться с форматами кодирования, и главное избавиться от перекодирования в ас3. А то и качество падает, и процессор грузится.
При перекодировании в flac, например, загрузка проца на Дюне всего 5%.
В целом очень удобно. У меня подписка Deezer HiFi, и в основном я сидя за компом слушаю музыку в наушниках, но бывает уши устают - пара кликов и музыка уже через ресивер на колонки летит.
Dune HD TV-102W (190919_0242_r11) Сист.флешка присутствует
Отправлено 20 April 2020 - 14:59
New feature: Support for playback of PCM audio streams via HTTP (streamed
PCM WAV), useful for some integrations.
В 161107_1958_r11 такое добавлено не получится просто убрать из цепочки ffmpeg? Использовал в плагине mpd.
Отправлено 20 April 2020 - 21:29
В 161107_1958_r11 такое добавлено не получится просто убрать из цепочки ffmpeg? Использовал в плагине mpd.
Dune HD TV-102W (190919_0242_r11) Сист.флешка присутствует
Отправлено 20 April 2020 - 22:15
А не могли бы вы собрать и под SMP87xx, хочу тоже попробовать
Думаю посты перенесу в отдельную тему.
Отправлено 20 April 2020 - 23:47
Вот, что-то родилось.. К сожалению, проверить не могу.
Если из винды запустить вещание, а на Дюне запустить эту прогу без параметров, то должно весь терминал загадить диким потоком неведомых символов (если вовремя не нажать Ctrl+C, то может потребоваться перезагрузка)
Если это произошло - значит всё работает. Дальше по инструкции.
Dune HD TV-102W (190919_0242_r11) Сист.флешка присутствует
Отправлено 21 April 2020 - 00:26
Ну запускается, так что похоже работает. Пока не понял как драйвер на винду запустить. Комп похоже перегружать надо или в биос лезть.
Отправлено 21 April 2020 - 00:40
Не, никакого биоса. Вот сделал выжимку из общего архива, тут только драйверы и их установщик.
Распаковать куда угодно, и запустить Install.bat под администратором.
Dune HD TV-102W (190919_0242_r11) Сист.флешка присутствует
Отправлено 21 April 2020 - 01:04
Ну так драйверы я установил но у меня они с треугольником с восклицатнльным знаком и выбрать их не могу или надо перегрузить комп (пока не могу выключаю раз в месяц только) или проблема в этом
Microsoft has recently tightened the rules for signing kernel drivers. These new rules apply to newer Windows 10 installations that were not upgraded from an earlier version. If your installation is subject to these rules, the driver will not install. Workaround: Disable secure boot in BIOS. For more information, see this issue.
Не удается проверить цифровую подпись драйверов, необходимых для данного устройства. При последнем изменении оборудования или программного обеспечения могла быть произведена установка неправильно подписанного или поврежденного файла либо вредоносной программы неизвестного происхождения. (Код 52)
Отправлено 21 April 2020 - 01:31
Тут, к сожалению, не подскажу. Я винду десятую руками потрогал впервые только неделю назад.
Возможно, такое в последних версиях. Я поставил LTSC (понятно какую ) У меня всё гладко. Железо - свежак совсем (z390).
winver.PNG 8.66К
1 Количество загрузок:
Dune HD TV-102W (190919_0242_r11) Сист.флешка присутствует
Отправлено 21 April 2020 - 13:15
Отправлено 21 April 2020 - 13:24
Отправлено 22 April 2020 - 03:39
TrippyCat
Спасибо за совет насчёт прошивки. А то у меня ранее сложилось ложное впечатление, что в новых прошивках добавили только некий платный функционал и не более. Потому и сидел на старой - типа всё работает, что ещё надо? А они оказывается проигрывание файлов из интернета без транспортных протоколов прикрутили.
Так что всё заработало в лучшем виде (хотя и не сразу).
slondon
Настройки96.PNG 24.97К
5 Количество загрузок:
96pcm.jpg 18.75К
4 Количество загрузок:
Ну а пока собрал всё в одном архиве, декодеры для mips и arm, драйвер, и новый скрипт для запуска.
Декодеры не менялись, а скрипт переписал. Теперь он ещё параметры потока поддерживает.
http://IP.адрес.вашей.Dune/cgi-bin/do?cmd=start_file_playback&media_url=http://127.0.0.1:81/cgi-bin/scream.sh?48000:24:2
в данном примере передаваемые параметры 48000:24:2 устанавливают режим потока, где
Dune HD TV-102W (190919_0242_r11) Сист.флешка присутствует
Отправлено 22 April 2020 - 12:36
Привет.
1. А зачем в схеме вообще нужен бинарник scream? Пусть ффмег сам слушает порт
ffmpeg -f s${BIT}le -ar $FREQ -ac $CH -i udp://@239.255.77.77:4010 -y -acodec copy -f wav pipe:1
2. Если к wav-потоку прицеплен заголовок, то разве нельзя слушать напрямую, без конверта?
http://192.168.0.102/cgi-bin/do?cmd=start_file_playback&media_url=udp://@239.255.77.77:4010
Dune HD 102 (190919_0242_r11)
Dune HD Neo 4K (tv173b 230929_0206_r21)
Dune HD Pro 4K (tv292b 200914_1539_r13)
Dune HD Pro 4K II (tv175h 230929_0206_r21)
Dune Magic 4K Plus (tv175r 230929_0206_r21)
Dune Hd Pro One 8K Plus (tv288b 240116_2340_r22)
Отправлено 22 April 2020 - 12:42
Также, как я уже писал, очень хочется вещать без вывода дюны из спячки.
У меня как то получалось запускать файлы без вывода из стендбая, но потом возникали проблемы с включением плеера. Точно не помню на каких плеерах, и каким способом.
Отправлено 22 April 2020 - 13:13
ddaaff
Привет,
1. Попробовал в первый же день - не получилось почему-то, возможно где-то недокрутил, хотя там вроде бы всё просто. Т.к. не было уверенности в том что вообще запустится, решил для начала пойти по пути, задуманному автором проекта. Теперь, когда всё работает можно и поэкспериментировать.
2. Заголовка нет, поэтому Дюна не знает с какими параметрам идёт сигнал. Так что этот вариант отпадает.
Пока вижу вариант с генерированием заголовка непосредственно в bash скрипте, с последующим выводом данных без ffmpeg, либо как в п.1. Даже не знаю что предпочтительнее. Попробую и то и то.
TrippyCat
Жалко. А то столкнулся с ещё одной проблемой. Дюна у меня завязана с телевизором как основное устройство для просмотра ТВ-программ. И сейчас такая ситуация получается, когда Дюна в стендбае и приходит команда на воспроизведение звукового потока, она включается, автоматически включая телевизор через CEC, да ещё запускает плагин от провайдера IPTV (он в автомате у меня стоит). При этом музыка не стартует. Приходится сворачивать ТВ и повторно давать команду на воспроизведение.
Dune HD TV-102W (190919_0242_r11) Сист.флешка присутствует
Отправлено 22 April 2020 - 13:27
ddaaff
Попробовал п.1 - поток идёт, но просто шум. Как я понял, всё же при передаче идут не чистые PCM пакеты, там ещё к ним какие-то мелкие заголовки прикручиваются.
Так что без декодера скорее всего не получится обойтись.
Dune HD TV-102W (190919_0242_r11) Сист.флешка присутствует
Отправлено 24 April 2020 - 21:32
Ну, в общем, пункт 2 тоже не сработал. Bash скрипт корректно выдавал заголовок wav, но после этого требуется секунда-другая для подготовки потока, и за это время Дюна почему-то впадала в бесконечную паузу, и даже когда поток уже шёл - тихо молчала мигая часиками. А вот если она получает, пусть и с задержкой, заголовок и сразу поток - то воспроизведение идёт гладко. В общем, не взлетело.
Ну это было на пользу, т.к. в этом случае я не придумал ничего лучшего, чем просто добавить данный функционал непосредственно в принимающую программу. Даже жалею, что сразу не пошёл этим путём, а потерял время, ломая голову с ffmpeg и bash.
В общем, теперь scream может отдавать и голый поток (как было ранее), и поток с wav заголовком, который полностью устраивает Дюну.
Более того, теперь не надо при запуске скрипта указывать параметры звукового потока - программа сама их получает из пакетов и прописывает в заголовок.
Количество каналов не только пишет в заголовок по количеству, но и по их расположению, как установлено в настройка винды. Расширенная спецификация wav это позволяет.
surround_conf.PNG 49.51К
4 Количество загрузок:
Правда, как выяснилось, Дюне это не очень интересно, похоже, что не умеет она с ними нормально работать. Сначала думал, что это у меня косяк где-то, но потом скачал готовые образцы многоканальных wav-ов и сравнил их заголовки с тем что на выходе scream - один в один. Так что дело скорее всего в самой Дюне. Или может на новых моделях корректно работать будет? Но на моей 102-й происходит даунмикс до стерео.
Впрочем мне это особо и не нужно было, остановился на 48kHz/24bit/stereo. Идеально по качеству и по маленькой нагрузке на сеть. Кстати, процессор теперь грузится меньше чем на 2% даже при 96kHz. Ну а чего ему грузиться?
В общем, вот релиз. В комплекте драйверы, облегчённый до предела скрипт запуска, и бинарники принимающей части для x64, mips и arm (последний не проверял в работе).
Запускать так:
http://IP.адрес.вашей.Dune/cgi-bin/do?cmd=start_file_playback&media_url=http://127.0.0.1:81/cgi-bin/scream.sh
Потом как-нибудь подумаю над добавлением воспроизведения потока в DTS формате без сжатия. Тут можно 48kHz/24bit/5.1 честные получить.
Dune HD TV-102W (190919_0242_r11) Сист.флешка присутствует