McMCC Posted February 26, 2017 Share Posted February 26, 2017 Решил открыть тему для обсуждения поддержки DVB-T/T2/C USB TV-тюнеров на роутерах семейства Keenetic. В свете того, что сейчас в России, и не только, большими темпами идет внедрение цифрового эфирного вещания в стандарте DVB-T2, то думаю эта тема будет многим интересна и актуальна. По сути цель этой темы заключается в том, что бы наши кинетики могли принимать цифровое телевидение в стандарте DVB-T/T2/C и раздавать его под видом IPTV на различные медиа устройства, будь то планшетники, мобильники, ПК или различные медиаприставки с телевизорами. Мне это решение пригодилось на даче, смотрел футбол на планшетнике, когда готовил шашлыки . Конечно, уже существуют специализированные проекты типа OpenELEC для устройств, которые лучше справляются с подобными задачами, но ведь такие решения не требуют больших мощностей процессоров, почему бы это не реализовать на роутерах? Собственно это я и решил проверить на практике, полученные результаты сильно обнадежили и подтолкнули на идею создать эту тему. В прошивку роутера добавить эту поддержку пока не реально, да и во многие роутеры все не влезет физически, поэтому имеет смысл пропихнуть ее под видом opkg, как установку дополнительных пакетов. В данный момент я пока только опишу, чего мне удалось сделать и чего достичь. Т.к. в наших роутерах используется довольно старые ядра Linux, в которых отсутствует полноценная поддержка DVB донглов, особенно современных, то мне пришлось создать свой проект на GitHub'е - Backports Linux и привязать его к нашему ядру версии 3.4.ххх, с целью разогнать наше ядро до более современных версий 4.х, в конкретном случае до версии ядра 4.4.2, в которой вполне сносно поддерживаются DVB донглы после доработки. Естественно, мне так же пришлось перенести различные патчи и исправления из апстрима, что бы добиться стабильной работы и добавить новые устройства. Весь этот проект разрабатывается в рамках деволоперской версии прошивки 2.09, ниже работать не будет из-за специфики Backports Linux и новых дополнений в нашем ядре! В качестве подопытных DVB донглов я выбрал те, что продаются на AliExpresse по доступным ценам:AstroMeta Digital TV USB ТВ-тюнер - AMDVBT2 BDA (VID_15F4_PID_0131)AstroMeta Hybrid TV USB ТВ-тюнер - AMDVBT2 Hybrid (VID_15F4_PID_0135) - этот я добавил благодаря информации Андрея(Pаdavan).GENIATECH MyGica T230/T230C USB ТВ-тюнерGENIATECH MyGica PT360 USB ТВ-тюнер - для этого тюнера придется искать переходник. В качестве сервера для IPTV использовался minisatip, а что бы еще раздавать через DLNA - xupnpd. В качестве клиентов VLC и Kodi, ну или любой другой, который поддерживает satip/http/rtsp потоки, либо DLNA. Список каналов я подготовил заранее в формате M3U - moscow_dvb-t2_satip.m3u, но в принципе это сделать не сложно с помощью утилиты w_scan на самом роутере. Не обошлось, конечно, и без проблем, особенно мешают различные наводки на качество приема TV, я пока этой проблемой не озадачивался, но думаю решения найдутся. Пока просто предлагаю обсудить эту тему и выяснить, на сколько она будет востребованной... 8 Quote Link to comment Share on other sites More sharing options...
vadimbn Posted February 26, 2017 Share Posted February 26, 2017 21 минуту назад, McMCC сказал: AstroMeta Hybrid TV USB ТВ-тюнер Как ими управлять? Через Web-интерфейс? А так-то да, интересная штука... Quote Link to comment Share on other sites More sharing options...
McMCC Posted February 26, 2017 Author Share Posted February 26, 2017 10 минут назад, vadimbn сказал: Как ими управлять? Через Web-интерфейс? А так-то да, интересная штука... Никакого управления не требуется, даже настраивать ничего не нужно. Все находится в плейлисте, скачайте его и посмотрите. Для первого мукса, правда, потребуется дополнительно указать номер PLP, но только там, где он отличается от 0. Для создания этого списка я использовал утилиту w_scan, она умеет экспортировать в XSPF/M3U формат для VLC, этот же плейлист я подсунул xupnpd... Quote Link to comment Share on other sites More sharing options...
KorDen Posted February 26, 2017 Share Posted February 26, 2017 (edited) Было бы интересно, принимал бы активное участие (DVB-C, Geniatech). Только еще добавить в список популярный ранее Geniatech T220/T220A - не помню как со вторым в линуксе дела, но с первым сам на ixbt принимал активное участие в тестировании экспериментов CrazyCat69 и в итоге его поддержка тоже есть в V4L2. У самого есть и T220 и T230, и было бы интересно перевести оба свистка на с малины на роутер, чтобы использовать малину только в качестве медиаплеера и не держать включенной для работы второго плеера. В идеале хотелось бы видеть умный режим с возможностью использования двух свистков - т.е. смотреть разные каналы с одного мультиплекса, принимаемые по одному свистку, либо до двух разных мультиплексов на двух донглах. Но это совсем уже мечты. Ах да, и конечно запись потока на подключенный HDD по расписанию! Впрочем, если будет реализована поддержка в ядре, дальше уже можно будет поставить TVheadened и делать все то же, что сейчас у меня на малине. Edited February 26, 2017 by KorDen Quote Link to comment Share on other sites More sharing options...
McMCC Posted February 26, 2017 Author Share Posted February 26, 2017 Если вы хотите смотреть разные каналы с одного донгла, то в рамках одного мультиплекса нет проблем, но при этом номер PLP тоже должен совпадать, а так, у нас в России, первый мультиплекс разбит на 3 PLP, а второй мультиплекс весь в PLP0. Со вторым мультиплексом, как раз тот случай, когда не будет проблем, а вот с первым понадобится 3 донгла, итого 4 донгла для полноценного IPTV, что бы каждый в доме cмог смотреть свой канал не мешая другим, иначе, кто первый встал, того и тапки, особенно это касается каналов Россия 24 или Россия-1... Что касается других DVB донглов, то советую взять мою версию Backports Linux из git, сделать патч и прислать мне, если конечно это потребуется.. Quote Link to comment Share on other sites More sharing options...
KorDen Posted February 26, 2017 Share Posted February 26, 2017 По поводу PLP в курсе (активно интересовался еще когда первый мультиплекс на 4 PLP был разбит, хоть сейчас и подзабыл многое уже), меня в данном случае интересует DVB-C (провайдер не шифрует бОльшую часть каналов, и сгруппированы они более-менее адекватно). По поводу патча - уже почти все позабыл, отойдя от активного программирования, но попробую вспомнить и разобраться. В любом случае жду реализации хотя бы для T230. Quote Link to comment Share on other sites More sharing options...
McMCC Posted February 26, 2017 Author Share Posted February 26, 2017 T230 поддерживается в 2х версиях, с буковкой C и без. У меня как раз новая версия с буковкой C. Работает хорошо, но пришлось отключить в драйвере поддержку управления по ИК, вешается драйвер, к тому же еще существует аппаратная или программная проблема с USB-3.0 хостами, почему-то он не работает c ними, даже на обычном ПК с Linux. Если кто-то надумает покупать для этих целей DVB донгл, то советую выбрать из моего списка первые 2-а. Не смотря на то, что на них не указан производитель, его успешно вычислили, из плюсов - они не имеют проблем с USB-3.0 портами, а значит будут нормально работать с Giga-3 и Ultra-2, а из минусов - радио часть никак не защищена от помех, сэкономили на всем, чем смогли. Второй донгл, тот что идет под названием AstroMeta Hybrid TV USB ТВ-тюнер - AMDVBT2 Hybrid (VID_15F4_PID_0135), я добавил самостоятельно благодаря подкинутой мне информации Андреем(Padavan) на Conexant cx23102, так что его поддержки для Linux, кроме как у меня, нигде еще нет, но поддерживает он только работу цифрового телевидения, работу ИК управления попробую добавить чуть позже. Связываться с аналоговым телевидением в данном проекте не имеет смысла, поэтому рассматриваться не будет... Quote Link to comment Share on other sites More sharing options...
AndreyUA Posted February 27, 2017 Share Posted February 27, 2017 Заказал по второй ссылке. Под LTE соберете? Quote Link to comment Share on other sites More sharing options...
McMCC Posted February 27, 2017 Author Share Posted February 27, 2017 3 часа назад, AndreyUA сказал: Под LTE соберете? Думаю, без проблем.... 1 Quote Link to comment Share on other sites More sharing options...
Александр Рыжов Posted February 27, 2017 Share Posted February 27, 2017 Прикольное начинание, когда-то сам думал его развивать, да как-то всё было не досуг: было влом тянуть кабель от тарелки (DVB-S) или от телека (DVB-C). 20 часов назад, McMCC сказал: В качестве сервера для IPTV использовался minisatip, а что бы еще раздавать через DLNA - xupnpd. tvheadend помимо основного функционала по трансляции может служить DVR'ом с EPG для IPTV- и DVB-эфира одновременно. Плагины для получения программы передач российских каналов когда-то коллективно писали. 1 Quote Link to comment Share on other sites More sharing options...
McMCC Posted February 27, 2017 Author Share Posted February 27, 2017 Tvheadend немного тяжеловат, хотя не вижу причин его не использовать, но это уже будет делом вкуса. Мне связки minisatip+xupnpd для экспериментов было достаточно, к тому же, там ничего настраивать не нужно, кроме подсунуть плейлист xupnpd. Я это решение чисто для дачи использовал, что бы можно было по wifi на участке смотреть TV, т.к. сигнал от ретранслятора слабый, пришлось ставить стационарную антенну на крыше дома, да еще и точно ее настраивать, ну, а функции записи меня не особо пока интересовали... Quote Link to comment Share on other sites More sharing options...
KorDen Posted February 27, 2017 Share Posted February 27, 2017 Не знаю как с minisatip, но на tvheadend очень просто настраивать в частности DVB-C (в котором обычно минимум десяток мультиплексов, если не 20-30) - достаточно указать стартовую частоту поиска (на которой передается список других мультиплексов), и он сам подхватит и настроит все (и будет обновлять при необходимости), как и на обычных ТВ. Quote Link to comment Share on other sites More sharing options...
Александр Рыжов Posted February 27, 2017 Share Posted February 27, 2017 @KorDen, он правда тяжеловат. Проверено на отнюдь не самом слабом железе. Quote Link to comment Share on other sites More sharing options...
KorDen Posted February 27, 2017 Share Posted February 27, 2017 @Александр Рыжов, не спорю, но что есть альтернативного, что будет корректно работать с парой клиентов (Kodi на OSMC и Android, можно еще ProgDVB подцепить) при наличии пары тюнеров и DVB-C на 20+ мультиплексов (150-200 каналов с EPG), с возможностью настроить запись с клиента, но записывать на роутере? Под корректностью работы я понимаю адекватный разбор что на чем открывать (смотрят с одного мультиплекса - идет на одном тюнере, с разных - на двух, либо если запись, то если второй клиент попытается переключиться на другой мультиплекс, будет ошибка, а не перетягивание одеяла) и относительную простоту настройки в случае обновления списка каналов. Quote Link to comment Share on other sites More sharing options...
plagioklaz Posted February 27, 2017 Share Posted February 27, 2017 Есть MyGica PT360 можно будет попробовать, как решение для зон без интернета. Покупал сразу с переходниками на усб и нормальную антенну )) работет на компе и на телефоне отлично, правда греется сильно. Интересная тема, хотя эдемтв уже разленил , не сочтите за рекламу)) и используется как дома на тв, так и на телефоне повсеместно )) 1 Quote Link to comment Share on other sites More sharing options...
McMCC Posted February 27, 2017 Author Share Posted February 27, 2017 4 часа назад, KorDen сказал: @Александр Рыжов, не спорю, но что есть альтернативного, что будет корректно работать с парой клиентов (Kodi на OSMC и Android, можно еще ProgDVB подцепить) при наличии пары тюнеров и DVB-C на 20+ мультиплексов (150-200 каналов с EPG), с возможностью настроить запись с клиента, но записывать на роутере? Под корректностью работы я понимаю адекватный разбор что на чем открывать (смотрят с одного мультиплекса - идет на одном тюнере, с разных - на двух, либо если запись, то если второй клиент попытается переключиться на другой мультиплекс, будет ошибка, а не перетягивание одеяла) и относительную простоту настройки в случае обновления списка каналов. minisatip+xupnpd+w_scan вполне себе альтернатива Tvheadend, при этом гораздо меньше кушает процессор и память. Я пробовал все это запускать на Extra2 и смотреть на 4х клиентах одновременно разные каналы, в пределах одного мультиплекса, так вот, заняло это в памяти меньше 45% и процессор был нагружен менее 25%, что вполне считаю приемлемым для MT7628, скажем так, не самом быстром процессоре и железки в общем. На Giga2 и Giga3, так вообще не заметно. На счет конкретной работы, minisatip поддерживает работу нескольких донглов, но я не пробовал его в таком варианте, разруливать эти донглы можно с помощью плейлиста, либо это должно делаться динамически, так что тут я тоже не вижу особых проблем... 1 Quote Link to comment Share on other sites More sharing options...
KorDen Posted March 27, 2017 Share Posted March 27, 2017 (edited) @McMCC, можете привести пример порядка загрузки модулей для гениатечей, в частности T230? Или он не собирался в 2.09.A.5.0-1? [Edit-2] Пока у меня навскидку начинается как-то так: rmmod i2c_dev rmmod i2c_core insmod compat.ko insmod media.ko insmod dvb-core.ko insmod rc-core.ko insmod dvb-usb.ko insmod si2168.ko insmod dvb_usb_v2.ko insmod dib0070.ko insmod dvb-usb-cxusb.ko (тут наверное лишнее, но пока пытаюсь разобраться что грузить..) Edited March 27, 2017 by KorDen Quote Link to comment Share on other sites More sharing options...
McMCC Posted March 27, 2017 Author Share Posted March 27, 2017 i2c вообще грузить не нужно, он интегрирован в модуль compat. Порядок загрузки в данном случае не пойдет, нужно использовать depmod и modprobe, без этого ничего работать не будет. Я создал репозиторий в рамках проекта Entware-ng-3x - https://github.com/Entware-for-kernel-3x/entware-dvb-3x , в нем есть kmod-ndms пакет, вот нужно его собрать и установить, тогда модули будут автоматически грузится... Quote Link to comment Share on other sites More sharing options...
KorDen Posted March 27, 2017 Share Posted March 27, 2017 8 минут назад, McMCC сказал: i2c вообще грузить не нужно, он интегрирован в модуль compat. Так я выгружаю i2c, иначе compat не грузится.. Nevermind, раз сходу не удастся, значит уже следующей ночью буду играться со сборкой.. Quote Link to comment Share on other sites More sharing options...
McMCC Posted March 27, 2017 Author Share Posted March 27, 2017 В модулях имеются зависимости, из ядра дергают modprobe и грузят нужные модули демодуляторов и тюнеров, еще и прошивки нужны. Поэтому тупо через insmod не получится заставить работать тюнеры. P.S. Скоро все необходимые модули будут доступны в выборе компонентов прошивок... Quote Link to comment Share on other sites More sharing options...
TheBB Posted March 28, 2017 Share Posted March 28, 2017 (edited) Пакеты на тест мирно расположились: для mips (DSL,LTE,VOX) - здесь, и для mipsel (остальные) - здесь. В текущую синхронизацию с owrt/LEDE будут лежать по привычным путям (в основной репе). + пакет scan-s2 пересобран. Edited March 29, 2017 by TheBB + 1 Quote Link to comment Share on other sites More sharing options...
plagioklaz Posted March 29, 2017 Share Posted March 29, 2017 После новости о появлении модулей для тюнеров в прошивке, решил опробовать свой свисток MyGica PT360 Уставил 3 пакета minisatip_0.7_mipsel-3x.ipk, libdvbcsa_1.1.0-1_mipsel-3x.ipk и w_scan_20170107-1_mipsel-3x.ipk Встали без проблем на entware-3x. Попробовал запустить скрипт minisatip и получил ошибку. ~ # /opt/etc/init.d/S59minisatip start Starting minisatip... failed. ~ # Модули ядра стоят, пробовал перезагружать роутер - тот же эффект - ошибка. В первом посте тюнер заявлен как поддерживаемый, подскажите, что-то ещё надо установить кроме этих программ и модулей? Спасибо. Quote Link to comment Share on other sites More sharing options...
TheBB Posted March 29, 2017 Share Posted March 29, 2017 Обновите пакет `opt-ndmsv2` Quote Link to comment Share on other sites More sharing options...
plagioklaz Posted March 29, 2017 Share Posted March 29, 2017 10 минут назад, TheBB сказал: Обновите пакет `opt-ndmsv2` я обновлял перед установкой все пакеты. Сейчас специально перепроверил: ~ # opkg install opt-ndmsv2 Package opt-ndmsv2 (1.0-6b) installed in root is up to date. Стоит последняя версия Quote Link to comment Share on other sites More sharing options...
McMCC Posted March 29, 2017 Author Share Posted March 29, 2017 8 часов назад, plagioklaz сказал: После новости о появлении модулей для тюнеров в прошивке, решил опробовать свой свисток MyGica PT360 Уставил 3 пакета minisatip_0.7_mipsel-3x.ipk, libdvbcsa_1.1.0-1_mipsel-3x.ipk и w_scan_20170107-1_mipsel-3x.ipk Встали без проблем на entware-3x. Попробовал запустить скрипт minisatip и получил ошибку. ~ # /opt/etc/init.d/S59minisatip start Starting minisatip... failed. ~ # Модули ядра стоят, пробовал перезагружать роутер - тот же эффект - ошибка. В первом посте тюнер заявлен как поддерживаемый, подскажите, что-то ещё надо установить кроме этих программ и модулей? Спасибо. Этого недостаточно. Нужно установить пакеты kmod-ndms, dvb-firmware, libdvbcsa, scan-s2 и minisatip - это основные базовые пакеты, можно конечно xupnpd, w_scan и далее по вкусу, но они уже будут не основными. После установки нужно вручную запустить скрипт /opt/etc/init.d/S00kmod_config без параметров, этот скрипт создаст директорию /opt/lib/modules/3.4.113, сделает линк на модули прошивки в директорию /opt/lib/modules/3.4.113/kernel и запустит depmod -a, что бы сгененрить базу зависимостей для modprobe. Вот после этого можно вставлять донгл в роутер и запускать поиск каналов, делается это тоже вручную, в начале нужно выполнить команду ldconfig, затем запустить scan-s2 -o m3u -M -H http://[ip роутера]:[порт, например 8080] /opt/share/dtv-scan-tables/dvb-t/dvb-t2_All > /opt/root/playlist.m3u И наконец запустить minisatip -R /opt/share/minisatip/html , по умолчанию порт 8080, нужно другой, смотрите подсказки minisatip -h. P.S. Сразу предупреждаю, я об этом писал выше, что MyGica T230/C и PT360 не работают с контроллером USB 3.0 xHCI, т.е. на всех роутерах с MT7621 без исключения. Если у вас Giga3 или UltraII, то вам придется приобрести другой донгл, я их выше упомянул... P.P.S. В компонентах не выбирайте установку модулей для видео, поддержка UVC Video есть в модулях для DVB тюнеров, так же отметьте для установки модулей аудио, больше вам из этого ничего не нужно, главное что бы модулей видео не было, они конфликтуют с модулями для DVB. Не знаю, сделали ли проверку установки модулей, по идее выбрать модули видео и dvb вместе должны были запретить.... 1 Quote Link to comment Share on other sites More sharing options...
KorDen Posted March 30, 2017 Share Posted March 30, 2017 (edited) 12 часа назад, McMCC сказал: MyGica T230/C и PT360 не работают с контроллером USB 3.0 xHCI, т.е. на всех роутерах с MT7621 без исключения У нового T230C, vid/pid насколько я понимаю, 0572:c688, как и у PT360? Или у старого T230 такие же? [EDIT: стоп, linuxtv говорит что у T230C 0572:c689...?] Похоже, планы запустить второй тюнер на роутере на этом завершились, я думал у меня старый T230 Теперь кажется я понял, почему этот тюнер у меня BSOD на винде выдавал... dvb-usb: found a 'Mygica T230 DVB-T/T2/C' in warm state. dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer. DVB: registering new adapter (Mygica T230 DVB-T/T2/C) dvb-usb: recv bulk message failed: -145 si2168: probe of 0-0064 failed with error -140 dvb-usb: no frontend was attached by 'Mygica T230 DVB-T/T2/C' dvb-usb: Mygica T230 DVB-T/T2/C successfully initialized and connected. Реквестирую по возможности поддержку T220 (1f4d:d220, Sony CXD2820R / NXP TDA18271HD/C2 / Cypress CY7C68013A) Edited March 30, 2017 by KorDen Quote Link to comment Share on other sites More sharing options...
plagioklaz Posted March 30, 2017 Share Posted March 30, 2017 Цитата MyGica T230/C и PT360 не работают с контроллером USB 3.0 xHCI, т.е. на всех роутерах с MT7621 без исключения. Если у вас Giga3 или UltraII, то вам придется приобрести другой донгл, я их выше упомянул... похоже, везёт как утопленнику... У меня ультра2 Спасибо за столь подробные разъяснения. Сложу свой PT360 обратно в коробочку, да на полку.... Quote Link to comment Share on other sites More sharing options...
McMCC Posted March 30, 2017 Author Share Posted March 30, 2017 KorDen, да, это типичный лог с контроллером USB 3.0, у меня так же на Mygica T230, думаю с T220 будут те же проблемы, так как бридж то же от Cypress. Люди на форуме пишут, что это проблема USB стека Linux'а, типа под Windows все нормально работает, я пока не могу проверить эти данные, т.к. у меня Windows работает на компах, где нет USB 3.0... Quote Link to comment Share on other sites More sharing options...
KorDen Posted March 30, 2017 Share Posted March 30, 2017 @McMCC, у меня получается так: T220 работает с DVB-C на Windows 7 нормально, T230 при установке драйвера выбивает BSOD. У других этот же тюнер с этим же драйвером работает. Материнка на чипсете Intel Z97. Первоначально связывал эти проблемы с причудами ОС, надо попробовать на ноуте, где только USB2.0, там практически ОС с теми же обновлениями. Как будет возможность, попробую в разных комбинациях [Win/Linux] [T220/T230] [USB3.0/USB2.0@Z97/USB2.0 на обычном 2.0] Quote Link to comment Share on other sites More sharing options...
McMCC Posted March 30, 2017 Author Share Posted March 30, 2017 @KorDen я собрал драйвера для T220 для Giga3/Ultra2, попробуйте с ними... Установите по путям, как в архиве, после запустите depmod -a, ну и проверяем t220_mt7621_3.4.113.tar.bz2 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.