Ace Stream в snap пакете

Запаковал Ace Stream (Engine + Player) в самодостаточный пакет snap. Кратко говоря, пакет snap несёт в себе программу и нужное ей, работая в профиле системы мандатного доступа AppArmor. Содержимое пакета сжато Squashfs и не распаковывается в систему по аналогии с deb. Софт в snap не зависит от наличия каких-либо библиотек в системе и их версий, что позволяет реализовать “сделал раз - работает везде”.

Пока работа не обкатана на 100%, поэтому пакет программы доступен только на канале beta в Ubuntu Store и ставить программу нужно так

sudo snap install --beta acestreamplayer

Нужна помощь сообщества в тестировании движка, как самостоятельной сущности. В Терминале запускайте

acestreamplayer.engine --client-console

Все ключи в официальной вики http://wiki.acestream.media/Streaming

Нужна помощь в обкатке Player, который основан на VLC. Желательно в Терминале вызывать с ключами

acestreamplayer -I qt4 -vvv

чтобы в случае проблем видеть сообщения об ошибке. Полный список ключей VLC
https://wiki.videolan.org/VLC_command-line_help

Сейчас борюсь со следующей бедой. При работе с плейлистом, нажатия на Следующий или Предыдущий (или горячие клавиши N и P) вызывают падение плеера.

[0xf1c7f8] qt4 interface debug: IM: Setting an input [0xf1c7f8] qt4 interface warning: This shouldn't happen: 1129 acestreamplayer: ../../../../vlc-2.1.4/modules/gui/qt4/input_manager.cpp:321: virtual void InputManager::customEvent(QEvent*): Assertion `0' failed. Аварийный останов (сделан дамп памяти)

Такие строки видели пользователи традиционных linux систем + ванильный vlc = поэтому пока не знаю “куда копать”. Рад любой помощи. Основная статья AceStreamPlayer в snap.


Рад вашим посещениям, лайкам, репостам!

vasilisc, спасибо за вклад в развитие проекта.

Вот тут подробнее - с плейлистом проблемы глобальные (т.е вплоть до того, что оно падает даже на плейлисте для пары локальных файлов, или только для определенных случаев/форматов - т.е падает на http:// ссылках, но не на acestream:// -и т.д).

Сделал папку test (избегаем русские буквы) и положил 2 файла. AceSteamPlayer заставили сделать плейлист и ванильный VLC так же!
Внутри их расхождение только в теге image … у “разных” плееров они “тянутся” в различные каталоги … удаляем тег image в обоих плейлистах!
Зацените разницу в загрузке одного и того же плейлиста!

<?xml version="1.0" encoding="UTF-8"?> Плейлист file:///home/vasilisc/test/labels.mp3 No Labels Akon Akon-No.Labels-(Bootleg)-2011-[NoFS] 1 [NoFS] 193251 0 file:///home/vasilisc/test/na.flac Right Now (Na Na Na) Akon Freedom 1 240746 1

Почему AceStreamPlayer(VLC 2.1.4) отображает в плейлисте 3 пункта? Возможно это как-то связано с проблемами с плейлистом.

Какая топовая версия AceStreamPlayer(VLC)? Где впредь лучше брать готовые бинарные сборки под платформу amd64? Пока не готов компилить из исходников.

Товарищи разработчики!
https://www.videolan.org/developers/vlc-branch/NEWS

Qt: * Fix crash when opening multiple items * Fix recent items appending when using a playlist

Перепроверил в Убунту 14.04 на AcePlayer (версия из репозитория) - аналогичный баг. Так что вины vasilisc при сборке snap-пакета нет - это наш (или VLC) баг.

На сейчас это единственный вариант самостоятельно собрать самую свежую версию.

В пакетах, свежее нет. Плеер в принципе давно не обновлялся - это справедливо как для винды, так и для линукса.
Копить/править баги по нему особого смысла нет, т.к в ближайших планах радикальное обновление плеера.

Как временное решение можно запускать плеер так

acestreamplayer -I qt4 -vvv --play-and-stop

это “выключает” поломку плейлиста … после каждой песни не происходит автоматического перехода на следующий трек и ручной запуск человеком не считается за “следующий”.

Спасибо за разработку.

У меня на Xubuntu 16.04 плеер запускается и работает с торрент-файлами нормально.

А вот с ТВ проблемы:

Не открывается Media-server (beta) ни из меню движка ни из web. Как я понял из-за этого я не могу со страницы тв-канала запустить поток в плеере. Например
TV XXI (TV21). При нажатии “Watch in another player” появляется пустой список, вместо списка установленных в системе плееров.

Хотя если на странице телеканала добавить его в список медиасервера (“Add to playlist”), скопировать адрес, для TV XXI (TV21) это http://content.asplaylist.net/cdn/70_all.acelive, и вставить этот адрес в ACE Player HD - то поток воспроизводится нормально.

Если добавить пару торрент-файлов в список, то при переключении предыдущий/следующий плеер не падает (у меня в списке был поток телеканала и два торрент-файла).

Я после установки acstreamengine 3.1.16 amd64 и всех зависимостей, описанных в вики убедился, что этот медиасервер плюс любой плеер может комфортно заменить ACE stream player HD. Я предпочитаю smplayer на основе mpv, в котором я добавляю телеканалы и торрент-файлы из списка медиасервера. Это конечно не так удобно, как “открыть торрнет-файл с помощью acestream player”, но не совсем уже и сложно как для пользователя линукс :slight_smile:

  • открыть плейлист из gtk клиента acestream engine
  • нажать кнопку “добавить контент”
  • открыть торрент-файл и написать для него название (любое)
  • нажать кнопку “воспроизвести”
    Зато свобода выбора плеера.
    При этом в функционале smplayer есть список ТВ, и создание плейлиста из списка, в которые можно добавить нужные потоки. Тогда для воспроизведения нужен только движок acestream

Ну и возможно, если в дальнейшем в функционал движка добавят функцию “открыть через медиасервер”, объединяющую вышеперечисленные 4 шага, то от Ace stream плеера как такового можно вообще отказаться, что наверное упростит разработку и сопровождение проекта.

Кстати может я чего-то не понял, но как запустить движок с gtk без плеера? А то он только в консольном варианте запускается:

tamer@tamer-desktop:~$ acestreamplayer.engine --client-gtk 
AceStreamEngine run with --client-console
usage: acestreamengine
                       [--client-console | --client-wx | --client-gtk | --stream-source-node | --stream-support-node | --stream-startup-node | --create-transport | --create-transport-multi | --create-hls-transport | --start-tracker | --get-infohash PATH | --get-file-info PATH | --get-file-info-with-id PATH | -v]
                       [--gui-wx | --gui-gtk] [--log-stdout | --log-stderr]
                       [--log-file PATH] [--log-max-size SIZE]
                       [--log-backup-count COUNT] [--log-file-buffer N]
                       [--log-file-encoding LOG_FILE_ENCODING]
                       [--log-syslog HOST] [--log-syslog-port PORT]
                       [--log-syslog-facility FACILITY]
                       [--log-syslog-buffer N] [--use-ffmpeg USE_FFMPEG]
                       [--download-limit DOWNLOAD_LIMIT]
                       [--upload-limit UPLOAD_LIMIT]
                       [--max-connections MAX_CONNECTIONS]
                       [--max-peers MAX_PEERS]
                       [--max-peers-limit MAX_PEERS_LIMIT]
                       [--max-timeshift-peers MAX_TIMESHIFT_PEERS]
                       [--max-upload-slots MAX_UPLOAD_SLOTS]
                       [--live-cache-type LIVE_CACHE_TYPE]
                       [--live-disk-cache-size LIVE_DISK_CACHE_SIZE]
                       [--live-mem-cache-size LIVE_MEM_CACHE_SIZE]
acestreamengine: error: argument --client-gtk: not allowed with argument --client-console

Насчёт возможности запуска движка с нужными параметрами
–client-gtk или --client-console решу завтра, а остальное мне нужно время разобраться =) только начал осваивать и многое ещё не понимаю =(

пока временно запускайте плеер и закрывайте его, оставляя движок запущенным.

Хотя я немного не прав был с любым плеером: любой может воспроизвести только один медиафайл, если в торрент файле их несколько - тогда только первый.

На эту минуту хотелось бы сказать следующее:

  1. Спасибо откликнувшимся и присоединившимся к тестированию. Судя по графикам в Ubuntu Store - тестеров 20 человек.
  2. Тестерам рекомендуется начинать день с
sudo snap refresh

так как постоянно заливается новая версия.
3) Дональд Кнут говорил, что “Преждевременная оптимизация — корень всех зол”. Не удивляйтесь размеру ~200мб. Сейчас добавляться будет в пакет всё приблизительно нужное, а вылизывать будем когда всё будет работать на 100%.
4) Прошу тестеров не смешивать программы из разных технологий и источников … в данной ветке проверяется работа ПО из снап пакета, поэтому выкатывайте проблему когда Player + Engine работают оба из снап пакета. Не запускайте Player или Engine из мира deb или скачанные в ручную.
5) Всегда запускайте ПО из Терминала … нужны ошибки.
6) Проблему с плейлистом обходите с ключом --play-and-stop или ищите лучший путь. Пока с плейлистом нянчится не буду - нужно двигаться дальше и тестировать другие опции-возможности.
7) с версии *-snap5 изменил запуск acestreamplayer.engine … просто acestreamplayer.engine запускает гуи, если нужна консоль и/или параметры, то запускайте явно acestreamplayer.engine --client-console -bla-bla

Ubuntu 16.10. Полет нормальный на двух ПК. Вчера смотрел футбол, добавив трансляцию по ID, сегодня скормил ему торрент-файл. Все без проблем. В логах ошибок нет, установка быстрая, проблем не было, работа стабильна. Доволен. Автору спасибо!
Кстати, забавно наблюдать за работой, если запустить с ключом -vvv или -I qt4 -vvv. Фиксирует все, вплоть до сокрытия мыши плеером.

Примерная дата обновления плеера есть?

Просто, если обкатаем текущую версию и проблема будет “только” с плейлистом, то может выкатить эту текущую версию с обходным параметром аля --play-and-stop (или что придумаем лучше)?

Есть статистика по официальному репозиторию сколько скачан раз пакет acestream-mozilla-plugin? Мне не даёт покоя мысль, что не смогу пока представить плагин внутри снап кроме как упаковать какой-либо совместимый с плагином браузер и представить всё аля acestreamplayer.browser. Просто не знаю - востребован плагин или нет.

3.0.2-snap6 - косметика … для движка и плеера свои значки

Мне интересно мнение разработчиков по поводу будущего плагина libace_plugin.so. Как я понимаю, он принадлежит классу NPAPI-плагинов в Firefox и в марте 2017 года им всем конец.

Почему Java, Silverlight, Adobe Acrobat и другие плагины больше не работают?
https://goo.gl/nD9MJO

Пока разработчики планируют обновить плеер, приходится работать с тем что есть. Заметил одну особенность. После запуска плеера у вас будут конфы в пути
~/snap/acestreamplayer/common/.config/.ACEStream/

если стереть конфы и запустить плеер так

acestreamplayer -I qt -vvv --play-and-stop --no-playlist-tree --no-qt-recentplay

То параметр --no-qt-recentplay не даёт “попадать” лишним пунктам в ваш плейлист … к примеру в папке 2 файла и вы увидите 2 позиции в плейлисте.

–play-and-stop заставляет останавливаться после каждой проигранной позиции в плейлисте. Так вот плеер падает, ТОЛЬКО если проигрывается трек и вы жмёте След или Пред. Стоит треку дойти до конца в своём проигрывании, он остановится и можно спокойно нажимать След и Пред (N или P).

С параметрами по умолчанию --play-and-stop --no-playlist-tree --no-qt-recentplay сделал *snap7 и запулил на канале stable.
Теперь должно быть больше тестеров =).

Так там же одна мега-важная функция Media-server, по крайней мере для ТВ, не работает. Терминал на попытку запуска никак не реагирует. И в браузере не возможно переключить тв-канал на плеер. Или вы это просто для увеличения количества тестеров? Тогда хорошо.
Мне выкладывать пока нечего, потому что ни одного сбоя я не увидел, все что работает, даже не заикается как раньше, тоесть картинка не рассыпается, трансляция не прерывается, и все это с буфером в 20 секунд.

Распространил ссылку в соцсетях G+ и FB. Может побольше народу подтянется.

Мне здесь почти никто не пишет … что работает, а что нет. Все опции не смогу проверить один.

Что пишется в журнале?
~/snap/acestreamplayer/common/.ACEStream/logs/acestream.log

Что мне сделать для теста MediaServer? Какие мои конкретные шаги?