Здравствуй, чуть сбрехал строка правила была: <rule name="rutube" filename=".*rutube\.ru.*" player="GstPlayer" /> и правило сработало из userdata. Кажется когда я создаю конфиг <defaultplayer>GstPlayer</defaultplayer> появляется меню: проиграть с помощью... а, там gstplayer по умолчанию, videoplayer,Enigma2Player который перебрасывает на Videoplayer, E2player и E2player1 которые запускают exteplayer3 видимо из-за serviceapp, правда exteplayer3 работает криво, надеялся что осилит av1, но программно не тянет, хотя открывает Videoplayer. Получается что kodiext это exteplayer3.
root@zgemmah17combo:~# ls -ld /tmp/kodi lrwxrwxrwx 1 root root 10 Oct 20 13:58 /tmp/kodi -> /media/hdd root@zgemmah17combo:~#
root@zgemmah17combo:~# df -h /tmp Filesystem Size Used Available Use% Mounted on tmpfs 501.8M 552.0K 501.3M 0% /var/volatile
root@zgemmah17combo:~# free -m total used free shared buff/cache available Mem: 1003 820 189 2 21 182 Swap: 767 93 674
Нашёл баг, плагин обновил, версия 2.7.1; баннеры витрины (widget_type=banner) отдают HTML и скрыты; кэш в Kodi 22 настраивается в GUI, а не в advancedsettings.xml.
Про правило. Лог с Debug подтверждает твоё уточнение. Строки: `matches rule: rutube → adding player: GstPlayer for rule: rutube`. Правило из userdata выбрало GstPlayer, а `E2Player` и `E2Player1` в этой сборке по-прежнему «no such player». Так что мой совет с `E2Player` был неверным, рабочий вариант именно `GstPlayer`, как у тебя.
Про `filecache000.cache`. Загадка не решена. Ошибка повторилась с новым номером (`filecache001.cache`), воспроизведение при этом стартует за секунду. Путь `/tmp/kodi/…` по твоему `ls` ведёт на `/media/hdd`, то есть это диск, а не память. Почему GstPlayer не может добраться до файла, лог не говорит. Раз видео играет, пока не трогаем. Заодно: лог показывает, что в Kodi 22 кэш настраивается в GUI (Buffer Mode 4, 64 МБ), а секция `<cache>` в advancedsettings больше не работает. Прежний совет про 20 МБ был бесполезен.
По памяти. `free -m`: используется 820 из 1003 МБ, доступно 182 МБ, и неизвестно, снимал ли это во время просмотра. В обоих логах работает демон Elementum (Go и libtorrent). Он мог влиять на нехватку памяти в старом сценарии, но это предположение. Если Elementum не нужен, можно проверить, как поведёт себя система без него.
Что исправить: - Правило `netflix` с `*manifest*` невалидно. PCRE ругается на него на каждой ссылке, а оно «срабатывает» и добавляет VideoPlayer как запасной плеер. Нужно `.*manifest.*` или удалить правило. - Наше правило `rutube` ловит и `.mkv` и `.avi` с rutube, но локальные файлы идут по правилам `mkv` и `mp4`. Здесь всё в порядке. - В конце лога радио через VideoPlayer сыпет `CDVDAudio timeout` и ALSA `-5 I/O error`. К плагину это не относится, но звук после GstPlayer стоит проверить.
Найден баг в плагине. Подборка «Баннер Премьер» на вкладке «Фильмы» запрашивает `https://rutube.ru?widget_type=banner-premier…` и получает HTTP 200 с HTML-страницей на 1,3 МБ вместо JSON. Плагин пишет «ответ не является JSON», пользователь видит пустую папку, а запрос тянет 1,3 МБ (на приставке около 3 секунд).
Версия плагина стала 2.7.1 (на базе предыдущей 2.7.0, `py_compile -Werror` проходит, реальный тест пройден, `testzip()` чистый): - Подборки с `widget_type=banner` не показываются, в лог пишется «пропускаю баннер». - Остальное не менялось.
Что не проверено. Настоящий эндпоинт баннера я не знаю: если он есть, он скрыт. Чтобы выяснить, нужен `diag_feed_main` из диагностики.
Сообщение отредактировал edemagobi - Четверг, 22.10.2026, 09:23
Предположил что проблема в создании файла создал пустой файл filecache000.cache, коди проигнорировал его, в каталоге filecache001.cache не появлялся. плеер описан так: <player name="E2Player" type="Enigma2Player" audio="true" video="true"> <filename>kodiext</filename> <args>-U "{1}" -S "{3}" -P "$PPID"</args> <filenamemeta>/tmp/kodiextin.json</filenamemeta> <hidexbmc>true</hidexbmc> <hideconsole>true</hideconsole> <warpcursor>none</warpcursor> </player> </players> /usr/bin/kodiext существует в системе Как быть не знаю.
total used free shared buff/cache available Mem: 1003 951 12 1 68 51 Swap: 767 254 513 Во время фильма из rutube. Свопится нехило.
Закоментировал, <!-- <rule name="netflix" filename="*manifest*" player="VideoPlayer" /> --> в playercorefactory из system.
звук после GstPlayer стоит проверить. пропадает звук по плееру аудио PAPlayer по GstPlayer звук восстанавливает.
Теперь баннера невидно - он был пустой. Про `diag_feed_main непонял, вот лог.
Открой в меню плагина пункт "диагностика", набери в строке канал или видео, которое выдаёт баннер и приложи файл диагностики сюда. E2Player существует и запускает Enigma2 через kodiext, а правило rutube → GstPlayer проверено.
Сначала поправка к тому, что я писал раньше. Я утверждал, что E2Player в этой сборке не существует. Это неверно. Предупреждения «no such player» в логе идут при загрузке файла, а дальше E2Player и E2Player1 попадают в список кандидатов. Ты тоже видишь их в контекстном меню «Играть с помощью». Так что E2Player существует. Просто он запускает kodiext, и дальше играет Enigma2. Про filecache000.cache. Твой эксперимент ничего не дал: файл Kodi проигнорировал, filecache001.cache не появился. Значит, дело не в отсутствии файла. Видео играет, поэтому тему можно закрыть. Выяснить причину могли бы только авторы этой сборки Kodi для Enigma2, и это не про наш плагин. Про kodiext. Вывод «kodiext это exteplayer3» я подтвердить не могу. По описанию плеера видно только, что он передаёт ссылку Enigma2 (-U это URL). Какой бэкенд играет, зависит от настроек Enigma2 и ServiceApp, а не от Kodi. Для Rutube нам это и не нужно: поток в этом фильме H.264 (в ссылке avc1.640029), GstPlayer его тянет аппаратно. Про память. Это важнее остального. Во время фильма с Rutube на GstPlayer занято 951 из 1003 МБ, свободно 12 МБ, доступно 51 МБ, в своп ушло 254 МБ. Это серьёзная нехватка памяти, и она может вернуть тормоза. В выводе не видно, кто память занимает: Kodi, Enigma2 или Elementum. Угадывать я не буду. Про звук. Звук через PAPlayer пропадает, а после GstPlayer возвращается. Это похоже на конфликт за звуковое устройство между Kodi и Enigma2: в логе после GstPlayer были ActiveAE::Resume - failed to init и ALSA -5 I/O error. Чтобы проверить это: направить на GstPlayer и аудио. Для этого в advancedsettings.xml добавить <audio><defaultplayer>GstPlayer</defaultplayer></audio>. Тег <video><defaultplayer> в логе точно сработал («Default Video Player: GstPlayer»), а для аудио я не знаю. Баннер. Ты подтвердил, что он был пустой, в 2.7.1 его больше нет. Правило netflix закомментировано, значит, ошибка PCRE должна исчезнуть из лога. Это надо проверить. Что нужно от тебя. Ввести команду во время просмотра фильма с Rutube: ps -eo pid,rss,args --sort=-rss | head -8 Она покажет, кто занимает больше всего памяти. Если это Elementum, его можно отключить. Если Kodi, будем искать, что у него в фоне.
Сообщение отредактировал edemagobi - Четверг, 22.10.2026, 19:37
Обновил плагин2.7.2 (на базе 2.7.1 с баннером) показывает диалог «Нужна подписка» с текстом Rutube («Смотрите по подписке RUTUBE x PREMIER»).. Теперь для платного контента показывает, что нужна подписка. Фильм с PREMIER Rutube не отдаёт. В diag_play_options.json HTTP 200, потока нет, вместо него detail с type: common_subscription и product_codes подписки PREMIER. Это платный контент, не баг плагина и не сеть.
Память: поправка к моему предположению. Я подозревал Elementum, но он занимает всего около 13 МБ, а Kodi около 171 МБ. Сумма всех процессов из ps примерно 220 МБ, тогда как free показывал занято 951 МБ. Основная часть памяти, около 700 МБ, не принадлежит процессам: это может быть ядро или драйверы, из ps этого не видно. Снимок ps сделан не обязательно во время просмотра. Своп 254 МБ при 12 МБ свободной памяти говорит о реальной нехватке, но симптома пока нет: видео играет нормально.
Нужно проверить: досматривается ли фильм с Rutube до конца без тормозов и «слайд-шоу» (при том, что свопа много)? Если нет, пришли cat /proc/meminfo, снятый во время просмотра, он покажет, куда уходит память.
edemagobi, спасибо за помощь. Теперь понятно как можно пробрасывать контент на нужный плеер. Пробовал установить чистый имидж от команды openvix. Уже с нуля свободных 25мб. openatv по скромнее. Думаю перебросить своп на usb-sata. По плагину фильм смотрится до конца без проблем. Интересно что премьер отдаёт некоторые сериалы. Но видимо пока запрос не сделаешь не определишь. К примеру истребители (2026). На всякий случай отладка:
Сообщение отредактировал valery192 - Пятница, 23.10.2026, 07:28
Обновил плагин, версия 2.8.2. Устанавливать с полным удалением предыдущей версии. Убрана пустая подборка «Баннер Премьер» на вкладке «Фильмы». При отсутствии подписки показывается диалог «Нужна подписка» вместо общего «см. лог». Серии, требующие подписку, помечены в списках [Подписка]. (Признак: поле common_subscription_product_codes в данных Rutube. Подтверждено на двух видео.) Эфиры помечены [LIVE]. При отказе в доступе (подписка) Kodi больше не перебирает следующие видео из списка. Автопереход на следующую серию при обычном воспроизведении не затронут.
Хорошо, что фильм досматривается до конца. Исходная проблема решена. Про «Истребителей» и PREMIER. Определить доступность заранее, не запуская видео, можно:
Поле is_paid бесполезно: во всех присланных списках оно False, в том числе у «Отряда 731», который не играется без подписки.
Зато у «Отряда 731» в списке есть поле common_subscription_product_codes с теми же кодами PREMIER_RUTUBE_*, что и в ответе о подписке из diag_play_failed.json.
У «Истребители (2026), 1 сезон, 1 серия» этого поля нет, и play_options разрешает просмотр (acl_access.allowed: true, поток отдаётся).
У серий 2, 3 и 4 того же сериала поле есть.
Сходится как «поле есть, значит нужна подписка» Если появится «Нужна подписка», добавляю в плагин пометку в списках (например, префикс у платных серий), чтобы не заходить в каждую. Остальные новые файлы. Это второй прогон диагностики на другом канале: плейлистов нет (results: []), список плейлиста с HTTP 200 по обоим вариантам. Ничего необычного, изменений API не видно. Про память и своп на USB-SATA. Данных, что это нужно, нет: фильм смотрится до конца. Если захочется подстраховаться, своп на диске поможет, но обязательным я бы это не считал. По итогу:
Enigma2 с 1 ГБ ОЗУ: VideoPlayer не тянет 1080p программно, решение внешнее — правило rutube → GstPlayer в userdata/playercorefactory.xml.
is_paid ненадёжен для подписочного контента; отсев по признаку — common_subscription_product_codes
Сообщение отредактировал edemagobi - Пятница, 23.10.2026, 09:32