Просмотр телевидения на Линуксе (IPTV плеер)
Модератор: Модераторы разделов
-
- Сообщения: 133
Просмотр телевидения на Линуксе (IPTV плеер)
Astroncia IPTV - плеер для просмотра интернет-телевидения с поддержкой EPG
Исходный код в репозитории: https://gitlab.com/astroncia/iptv
Понравилась программа? Поставьте звёздочку репозиторию!
Возможности:
Просмотр IPTV (из m3u/m3u8 плейлиста)
Просмотр незашифрованных потоков UDP (мультикаст), HTTP, HLS (m3u8)
Добавление каналов в избранное
Запись телепередач
Горячие клавиши
Поиск по каналам
Поддержка телепрограммы (EPG) в форматах XMLTV и JTV
Отображение технической информации - видео/аудио кодек, битрейт, разрешение
Группы каналов (из плейлиста и кастомные)
Скрытие каналов
Сортировка каналов
Настройки видео для каждого канала - контраст, яркость, оттенок, насыщенность, гамма
Смена user agent для каждого канала
Таймшифт
Поддержка русского и английского языка
Настройки канала открываются так: ПКМ по названию канала в плейлисте -> Настройки канала
Баг-репорты слать сюда: https://gitlab.com/astroncia/iptv/-/issues
Последний раз редактировалось astroncia 16.10.2021 23:27, всего редактировалось 9 раз.
-
- Модератор
- Сообщения: 20975
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Просмотр телевидения на Линуксе (IPTV плеер)
Что-то в requrements.txt пустовато.
Одновременно использовать Qt и Tk — зачем?
Изобрести велосипед для локализации, видимо, каждый считает своим долгом. Советую слезть с него поскорее, пока грабли в лоб не полетели.
Одновременно использовать Qt и Tk — зачем?
Изобрести велосипед для локализации, видимо, каждый считает своим долгом. Советую слезть с него поскорее, пока грабли в лоб не полетели.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
- Сообщения: 133
Re: Просмотр телевидения на Линуксе (IPTV плеер)
Я не волшебник программист, я только учусь
https://gitlab.com/astroncia/iptv/-/blob/master/requirements.txt
вроде всё, что нужно указано?
Tk - для показа эксепшенов (которые могут возникнуть в.т.ч. до инициализации Qt) в messagebox:
https://gitlab.com/astroncia/iptv/-/blob/02c7222180d85e2779928c302a908bc401240c04/astroncia_iptv.py#L137
А как же Принцип KISS?
Сейчас используется решение со словарём: https://gitlab.com/astroncia/iptv/-/blob/master/data/modules/astroncia/lang.py
Или надо ещё цепляться к дополнительным зависимостям, например python-i18n?
-
- Модератор
- Сообщения: 20975
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Просмотр телевидения на Линуксе (IPTV плеер)
Ну по крайней мере, уже больше похоже на правду. Я не питонщик, так что Вам виднее.
А чего их показывать? В stderr и всех дел. Два графических тулкита — это перебор.
К чему конкретно лучше цепляться, мне сказать сложно, опять-таки, потому что не питонщик. Но в Вашем решении масса недостатков. Переводчикам неудобно будет работать (а переводчик не обязан быть программистом, и его просто опасно допускать до кода). Не учитываются разные варианты языков (например, американский и британский английский, португальский и бразильский португальский, варианты китайского). Ну и самые распространённые грабли, на которые Вы ещё не успели наступить, но обязательно наступите, — согласование с числительными.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
- Сообщения: 1369
- ОС: Mageia 5.1 & 8 x86_64, KDE
Re: Просмотр телевидения на Линуксе (IPTV плеер)
astroncia, соберите пожалуйста пакет-rpm, если можете и прислушайтесь к совету Bizdelnick по поводу переводов, я хоть и чайник, но видел что используют именно -i18n
Сам пока не могу посмотреть, но гляньте плеер Tano, он очень удобен и прост для просмотра именно IPTV, жаль что автор его забросил
Сам пока не могу посмотреть, но гляньте плеер Tano, он очень удобен и прост для просмотра именно IPTV, жаль что автор его забросил
-
- Сообщения: 133
Re: Просмотр телевидения на Линуксе (IPTV плеер)
Проверяйте: https://gitlab.com/astroncia/iptv-binaries/-/raw/master/astroncia-iptv.rpm
Только зависимости придётся поставить вручную:
Список необходимых зависимостей
Python 3 (3.6 или более новая версия)
Qt 5
mpv
libmpv1 / lib64mpv1 (>= 0.27.2)
PyQt5 (python3-pyqt5)
Pillow (python3-pil)
pandas (python3-pandas)
PyGObject (python3-gi)
Python D-Bus (python3-pydbus)
python3-unidecode
python3-requests
ffmpeg
Добавлено (19:58):
Смотрите - программа запускается через .desktop файл и stderr отправляется прямиком в /dev/nullBizdelnick писал: ↑21.04.2021 16:05А чего их показывать? В stderr и всех дел. Два графических тулкита — это перебор.
Получается - пользователь запускает программу, и ничего не происходит. Некрасиво.
А так хоть в GUI эксепшеном плюнет.
Последний раз редактировалось astroncia 20.05.2021 21:59, всего редактировалось 2 раза.
-
- Сообщения: 2913
- ОС: Gentoo
-
- Модератор
- Сообщения: 20975
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Просмотр телевидения на Линуксе (IPTV плеер)
Совершенно нормальная ситуация. Только stderr отправляется не в /dev/null, а в ~/.xsession-errors. Все графические приложения так работают.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
- Сообщения: 352
- ОС: openSUSE Leap 15.4
Re: Просмотр телевидения на Линуксе (IPTV плеер)
Истинно так. Переводчик с не замутнённым питоном сознанием запросто загрузит файл в Ворд, последний втихую напихает всякой дряни. Результат может быть плачевным.Bizdelnick писал: ↑21.04.2021 16:05
Но в Вашем решении масса недостатков. Переводчикам неудобно будет работать (а переводчик не обязан быть программистом, и его просто опасно допускать до кода).
Ещё плохо то, что все языки собраны в одном файле. А вдруг случится чудо — программу поставят миллионы пользователей, для которых потребуется сотня языков?
В общем, не знаю, как там в питонских программах, не разбирался, но по уму надо делать по-явашному: отдельные файлы, желательно что попроще, типа ключ=значение. Пусть переводчик переводит, а уже кодер заботится о том, как это прикрутить.
Насколько я понимаю, в данном случае идентификатор языка — просто строка типа xx (=код языка). Вероятно, не такая большая проблема использовать xx_YY (=язык_СТРАНА).Не учитываются разные варианты языков
Увы, с этим проблемы и у крупных проектов бывают.согласование с числительными.
-
- Модератор
- Сообщения: 20975
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Просмотр телевидения на Линуксе (IPTV плеер)
Судя по Вашему описанию, «по-явашному» — это тоже не по уму. ☺
Есть специальные форматы для переводов, с которыми удобно работать в специально для того предназначенных программах. И перед использованием они «компилируются» в бинарный формат, обеспечивающий эффективный поиск строки. Типа po/mo в gettext, ts/qm в Qt и т. п.
Это не повод, чтобы отказываться от борьбы с такими проблемами. Тем более что во всех сколько-нибудь продуманных библиотеках для локализации они уже решены.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
- Сообщения: 1369
- ОС: Mageia 5.1 & 8 x86_64, KDE
Re: Просмотр телевидения на Линуксе (IPTV плеер)
Именно так.Bizdelnick писал: ↑21.04.2021 22:33И перед использованием они «компилируются» в бинарный формат, обеспечивающий эффективный поиск строки. Типа po/mo в gettext, ts/qm в Qt
-
- Сообщения: 2913
- ОС: Gentoo
Re: Просмотр телевидения на Линуксе (IPTV плеер)
Да есть, но тогда ему ещё нужно будет организовать сборку в этот формат. Например используя Linguist для создания переводов. Т. е. наличие setup.py обязательно. А тут используется просто скрипт python. Но в принципе идея не плохая.Bizdelnick писал: ↑21.04.2021 22:33Есть специальные форматы для переводов, с которыми удобно работать в специально для того предназначенных программах. И перед использованием они «компилируются» в бинарный формат, обеспечивающий эффективный поиск строки. Типа po/mo в gettext, ts/qm в Qt и т. п.
-
- Сообщения: 133
Re: Просмотр телевидения на Линуксе (IPTV плеер)
А если используется Wayland?Bizdelnick писал: ↑21.04.2021 21:10stderr отправляется не в /dev/null, а в ~/.xsession-errors. Все графические приложения так работают.
Добавлено (05:39):
А вдруг случится чудо — в нашу планету врежется 500 км астероид, и всем будет не до программ? Нереалистичные сценарии такие нереалистичные.
Добавлено (06:23):
Оказывается, python-i18n идёт под лицензией MIT, а мой проект под лицензией GPLv3, так что мне это не подходит.Добавлено (06:24):
Избавился от Tkinter: https://gitlab.com/astroncia/iptv/-/commit/7225ff88449a9d57618da93b21d19219ed797e11Добавлено (06:37):
Так ведь переводчику никто права на коммит в основной репозиторий давать не собирается
Или предполагается, что программист ничтоже сумняшеся загрузит сломанный код в основную ветку?)
-
- Модератор
- Сообщения: 20975
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Просмотр телевидения на Линуксе (IPTV плеер)
Так пишете, как будто это сложно.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
- Сообщения: 352
- ОС: openSUSE Leap 15.4
Re: Просмотр телевидения на Линуксе (IPTV плеер)
ТакBizdelnick писал: ↑21.04.2021 22:33
Судя по Вашему описанию, «по-явашному» — это тоже не по уму. ☺
Есть специальные форматы для переводов…
Код: Выделить всё
ключ=значение
А что так пессимистично? Примеры Столлмана и Торвальдса не вдохновляют? Или Вам безразлична судьба программы? Если нет, рекомендую всё же уже принять меры по облегчению процесса локализации.
Повторюсь, я не очень хорошо понимаю нюансы на стороне разработки. Допускаю, что всё, что я написал, кажется Вам чушью (и таковой и является).Так ведь переводчику никто права на коммит в основной репозиторий давать не собирается
Или предполагается, что программист ничтоже сумняшеся загрузит сломанный код в основную ветку?)
-
- Модератор
- Сообщения: 20975
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Просмотр телевидения на Линуксе (IPTV плеер)
По идее, всё должно быть точно так же. Это определяется не графическим сервером, а тем, что запускает графическую сессию (то есть DM, если я не ошибаюсь).astroncia писал(а): ↑22.04.2021 05:22А если используется Wayland?Bizdelnick писал: ↑21.04.2021 21:10stderr отправляется не в /dev/null, а в ~/.xsession-errors. Все графические приложения так работают.
Почему? Лицензии совместимы. Но можете посмотреть в сторону gettext или того же PyQt5. И дополнительные зависимости тащить не потребуется в обоих случаях.astroncia писал(а): ↑22.04.2021 05:22Оказывается, python-i18n идёт под лицензией MIT, а мой проект под лицензией GPLv3, так что мне это не подходит.
И вообще погаными тряпками гнать этих переводчиков. Ишь чего удумали — переводить. Да ещё, чтоб удобно им было, хотят. ☺
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
- Сообщения: 3684
- ОС: calculate linux, debian, ubuntu
Re: Просмотр телевидения на Линуксе (IPTV плеер)
оффтопик
Можно задать вопрос. А почему просто плейлист не распространять и смотреть в vlc?
Можно задать вопрос. А почему просто плейлист не распространять и смотреть в vlc?
-
- Сообщения: 133
Re: Просмотр телевидения на Линуксе (IPTV плеер)
В моём плеере есть поддержка телепрограммы (EPG) в форматах XMLTV и JTV
-
- Модератор
- Сообщения: 20975
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Просмотр телевидения на Линуксе (IPTV плеер)
Специальный — значит специально предназначенный для этой цели. Формат properties, или как там его, (вы о нём же?) имеет куда более широкую сферу применения. Это значит, что программист в какой-то степени занимается изобретением велосипеда. Отсюда все те же недостатки: надо переизобретать согласование числительных, не все стандартные инструменты перевода смогут работать с таким форматом, а какие смогут — те будут иметь ограниченные возможности из-за ограниченности самого формата.gabix писал: ↑22.04.2021 09:56ТакBizdelnick писал: ↑21.04.2021 22:33
Судя по Вашему описанию, «по-явашному» — это тоже не по уму. ☺
Есть специальные форматы для переводов…и есть такой формат, типичный KISS.Код: Выделить всё
ключ=значение
Как, скажем, внести изменения в некую строку? Одновременно править все переводы — не вариант, языков может стать больше, чем в состоянии осилить один человек. Надеяться, что переводчики будут каждый раз сверяться с изменениями в эталонном переводе, несколько наивно. Менять ключ — значит потерять связь с прежним переводом, и даже при незначительной правке придётся переводить строку на все языки с нуля.
Затраты тут разовые — на интеграцию в проект. В дальнейшем, наоборот, и разработчику станет проще, потому что не надо будет одновременно править два места — код, где указывается ключ, и соответствующее ему значение в эталонном переводе.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
- Сообщения: 3728
- Статус: Многоуважаемый джинн...
- ОС: Slackware64-14.1/14.2
-
- Модератор
- Сообщения: 20975
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Просмотр телевидения на Линуксе (IPTV плеер)
Неужели ни разу ngettext() пользоваться не приходилось?Hephaestus писал: ↑22.04.2021 13:54А можете пояснить, что там нужно переизобретать с согласованием числительных?
И что там вообще можно сделать?
Например, в том же gettext (в po-файлах) я ничего специфического не замечал.
Делится текст на блоки, каждому блоку соответствует перевод. Ну и всё.
А это другие грабли. Для борьбы с ними давно придумали контексты (pgettext()).Hephaestus писал: ↑22.04.2021 13:54Более того, в aisleriot, например, в подсказках не согласованы падежи.
Хотел поправить, а там слово-то одно, а используется в разных местах (и падежи должны быть разные).
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
Спасибо сказали:
-
- Сообщения: 133
Re: Просмотр телевидения на Линуксе (IPTV плеер)
Просто из принципа, не хочу
gettext мне нравится, воспользуюсь им.
Последний раз редактировалось astroncia 22.04.2021 17:33, всего редактировалось 1 раз.
-
- Сообщения: 133
-
- Сообщения: 1369
- ОС: Mageia 5.1 & 8 x86_64, KDE
Re: Просмотр телевидения на Линуксе (IPTV плеер)
Это его последняя версия, но к сожалению она хуже предыдущей, вот ссылка на вин-версию Tano 1.2.1 https://soft.mydiv.net/win/download-Tano.html
Так возьмитесь Вы.
Многие плееры могут транслировать IPTV, но они заточены под другие задачи, гораздо медленнее переключают каналы и вообще по сравнению с Tano они комбайны, очень неудобны.
Tano заточен именно под IPTV, ничего лишнего, но очень удобен, лучше его на данный момент пока ничего нет.
Извините, Ваш не могу пока посмотреть и сравнить с Tano (никак не дойдут руки до системника, надо почистить после ремонта квартиры)
-
- Сообщения: 133
-
- Сообщения: 133
Re: Просмотр телевидения на Линуксе (IPTV плеер)
Ссылка на rpm пакет обновлена: https://gitlab.com/astroncia/iptv-binaries/-/raw/master/astroncia-iptv.rpm
Обновлённый список необходимых зависимостей
Python 3 (3.6 или более новая версия)
Qt 5
mpv
libmpv1 / lib64mpv1 (>= 0.27.2)
PyQt5 (python3-pyqt5)
Pillow (python3-pil)
pandas (python3-pandas)
PyGObject (python3-gi)
Python D-Bus (python3-pydbus)
python3-unidecode
python3-requests
ffmpeg
Qt 5
mpv
libmpv1 / lib64mpv1 (>= 0.27.2)
PyQt5 (python3-pyqt5)
Pillow (python3-pil)
pandas (python3-pandas)
PyGObject (python3-gi)
Python D-Bus (python3-pydbus)
python3-unidecode
python3-requests
ffmpeg
Последний раз редактировалось astroncia 20.05.2021 21:59, всего редактировалось 2 раза.
-
- Модератор
- Сообщения: 20975
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Просмотр телевидения на Линуксе (IPTV плеер)
А зачем класть пакеты в git? Он не для того предназначен и крайне неэффективно работает с большими бинарными файлами. Для таких вещей в гитлабе есть артефакты CI. Или pages. Ну или хотя бы в LFS положили бы.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
- Сообщения: 133
Re: Просмотр телевидения на Линуксе (IPTV плеер)
Положил в LFS.
-
- Сообщения: 2076
-
- Сообщения: 1369
- ОС: Mageia 5.1 & 8 x86_64, KDE