Авторские статьи об OpenSource

Новая версия AceStreamPlayer в snap.


Прошло достаточно много времени и под натиском запросов пользователей пришлось снова засесть за AceStream. На сегодняшний день 18619 человек под различными Linux дистрибутивами установили snap пакет AceStreamPlayer, что даёт веские основания думать что данная технология хороша сама по себе, а для спасения старого софта от забытья и подавно. Почему я так думаю и с чего решил? Добро пожаловать к прочтению.

Статистика AceStreamPlayer в Snap Store

Первые звоночки от пользователей зазвучали, когда в своей почте начал находить письма с просьбой добавить интерфейс removable-media, чтобы можно было тяжёлую папку кэша AceStream расположить где-нибудь помимо ~/snap/acestreamplayer/. Без removable-media не будет нужных строк в профиле AppArmor и нельзя будет дефолтный путь к кэшу перенести в аля /media/my-big-disk/cache4ace/.

К этому времени администратор Benny с форума проекта ещё раз чётко и понятно разжевал то, что было предельно ясно из вики. У разрабов нет желания активно решать проблемы программы под Linux системами. Инструкции по установке программы даны для Ubuntu 12.04 и 14.04. Всё! Обнаружил их последнюю наработку bitbucket.org/AceStream/acestreamplayer/src где обитала последняя версия AceStreamPlayer на базе VLC 2.1.5, к которой подходили патчи проекта. Лично сам убедился в этом и перепробовал все версии VLC, но действительно патчи налагаются и всё нормально компилируется лишь с vlc 2.1.5. Тесты выявили крайне низкую стабильность плеера, ещё хуже чем в текущей 2.1.4. Эти проблемы в своё время пришлось сглаживать ключами --play-and-stop --no-playlist-tree --no-qt-recentplay, но для версии 2.1.5 они почти не помогали. Подробнее об этих мытарствах в AceStreamPlayer в snap. Решил отступиться и начал собирать новый пакет snap на тех же старых версиях программ.

Что же тогда нового в новой версии snap пакета?

  • У плеера теперь есть следующие интерфейсы для связи с системой
    plugs: [ home, unity7, x11, wayland, pulseaudio, desktop, desktop-legacy, alsa, network, network-bind, opengl, gsettings, optical-drive, removable-media, mount-observe, camera, screen-inhibit-control ]

    Изучить самостоятельно можете в файле /snap/acestreamplayer/current/meta/snap.yaml

    Часть интерфейсов типа removable-media не принадлежит к классу автоподключаемых и давать программе больше возможностей через connect'ы к таким интерфейсам вы сможете в графическом режиме GNOME Software или Discover KDE или в Терминале аля sudo snap connect acestreamplayer:removable-media :removable-media

  • Разработчики snap стараются максимально упростить работу снапкрафтера и есть вечно хорошеющий bash скрипт desktop-launch, новую версию которого мне хотелось заюзать. Не сразу, но получилось. Это дало улучшение внешнего вида программы AceStreamPlayer (vlc qt4) и Engine (python-gtk2). Не без гордости, особо хочется отметить, что AceStreamPlayer теперь так же хорошо будет выглядеть и в XFCE. Подробнее о проблеме.
  • Многие просили возможность указывать параметры к AceStreamPlayer, даже несмотря на ситуацию со стабильностью. Решил дать возможность и если плеер просто запускается без параметров, то он стартует с ключами --play-and-stop --no-playlist-tree --no-qt-recentplay. Если вы укажите свои, то, надеюсь, вы понимаете что делаете и мучайтесь с падениями сами. Самостоятельно изучить стартовый скрипт можно по адресу /snap/acestreamplayer/current/bin/run.sh
  • Engine, если не указано иного, стартует в графическом режиме из-за ключа --client-gtk. Если вы укажите другие ключи, например --client-console, то так же будет использоваться конфигурационный файл, который вы найдёте по адресу ~/snap/acestreamplayer/current/.ACEStream/acestream.conf
  • Вдохновившись скриптом aceplay.sh от Benny, решил сделать ход конём и представить его наработку в виде отдельного "приложения" внутри snap. Теперь в дополнение к Player и Engine будет MPV, использующий Engine по аналогии с Player. Запуская acestreamplayer.mpv --help, вы узнаете, что можно сразу начать просмотр видеопотока, используя файлы torrent или acelive. Можете указать InfoHash или конструкцию вида acestream://CID и немедленно начать просмотр. Видеоплеер MPV получит готовую URL к движку и начнёт его воспроизведение. Всё это вы могли сделать и раньше с помощью любого видеоплеера в вашей системе, имея на руках лишь запущенный движок, но мне захотелось избавить многих пользователей от лишних телодвижений и предоставить наработку Benny в виде mpv. Второй и последующие параметры передаются целиком плееру mpv, так что сохранена возможность получить доступ к параметрам собственно плеера mpv.

    acestreamplayer.mpv /home/vasilisc/antoshka.torrent

    Если скомандовать acestreamplayer.mpv /home/vasilisc/antoshka.torrent --fullscreen, то первый параметр всегда идёт обёртке, а остальные параметры идут прямиком в mpv и его параметр --fullscreen запустил бы его в полный экран. Надеюсь логика вам понятна.

  • Некоторые хейтеры PulseAudio просили доступ к чистой ALSA. Добавлен интерфейс alsa и всё подготовлено для использования конфигурационного файла ~/snap/acestreamplayer/current/.config/alsa.conf, но его заполнять вам придётся самим и я его не тестил. Если вы можете выпилить из системы звуковой сервер PulseAudio, то значит вы опытный пользователь и разберётесь со всем самостоятельно. Остальным пользователям, кто не трогает PulseAudio в системе, делать по умолчанию ничего не придётся и звук будет идти через PA.

Кажется так немного сделано, учитывая оставленные версии, но времени угрохано на тесты просто немеряно. В очередной раз понял, что snap можно смело назвать спасителем старого софта, как в случае с PAC. Сто́ит разработчикам программы перестать следить за изменениями в новых версиях Linux дистрибутива, как становится невозможным установить данную программу через механизм репозиториев. Невозможно удовлетворить зависимости, нет таких пакетов совсем или они не той версии. Snap пакет в силу своей самодостаточности, толстенький как Винни-Пух в гостях у Кролика, но зато он работает от Ubuntu 14.04 до моей разрабатываемой ещё 19.04! Поверьте, проверено лично! А самая первая картинка в статье повод для гордости и радости. Сделать что-то полезное для десятков тысяч людей - это здорово!

Оставлю здесь себе на память ...
Плейлисты для Torrent TV - pomoyka.win/trash/ttv-list/

    Twitter   


Разделы

Главная
Новости
Ворох бумаг
Видео Linux
Игры в Linux
Безопасность
Статьи о FreeBSD
Статьи об Ubuntu
Статьи о Snappy
Статьи об Ubuntu Phone
Статьи о Kubuntu
Статьи о Xubuntu
Статьи о Lubuntu
Статьи об Open Source
Карта сайта