Русский
Русский
English
Статистика
Реклама

Перевод - recovery mode Как написать видео плагин для Kodi

1. Введение


Узнайте, как написать ваше первое видео расширение для Kodi/XBMC из этого урока!

2. Инструменты


Если вы делали урок про то, как написать скрипт HelloWorld, то у вас уже, наверное, установлен текстовый редактор, который нам понадобится и в этом уроке. Может быть, стоит установить еще и видео плеер, раз мы теперь имеем дело с видео. Вдобавок к Kodi установите vlc, такой же замечательный и открытый.

VLC www.videolan.org/vlc

3. Установка


В этом уроке нам понадобятся два достаточно простых видео плагина. Найдите их в git-репозитории.

Можете загрузить себе на компьютер оба zip-файла и установить видеодополнения из zip-файла внутри интерфейса Kodi. Также можете распаковать их в папку userdata/addons.

4. Первый запуск


Выполните команду Система >> Дополнения >> Мои дополнения >> Видео дополнения >> Example Kodi video Plugin и вы увидите несколько тестовых видео с некоего интернет-сервера.



5. Что это было


Видео плагин сделал свое дело. Как?

По существу он проверяет веб-сайт на наличие размещенных видео. В этом примере мы напрямую ссылаемся на видео, а могли бы искать и вычищать контент из нашего онлайн-источника.

Отправив видеогиперссылку в Kodi, мы передаем управление нашему видеоплееру, который буферизует видео и затем воспроизводит его так же, как из любого другого источника.

6. Структура


main.py вот она, ваша программа на Python.

addon.xml а это ее описание в формате xml.

icon.png значок для вашего плагина. Нарисуйте его в квадрате величиной 256 или 512 пикселей, сделайте это красиво.

Readme.md прочтите это на странице используемого в этом уроке видеодополнения на GitHub, чтобы знать, что и как в общем оно делает, а также откуда его можно скачать.

7. Текст программы


Скоро вы увидите текст видеодополнения. Код на Python, который составляет большую его часть, хранимый в простом текстовом файле.

Дадим Kodi понять, что нам нужно.



Сделаем еще кое-что



Чтобы не заморачиваться с парсингом или API ради ссылок на видеофайлы/потоки с какого-либо веб-сайта или онлайн-ресурса, как это делается в настоящих расширениях Kodi (потому что совсем не за тем был написан этот плагин), берем фиксированный набор свойств.



А теперь объявим это



Сообщим Kodi еще кое о чем



Без списка категорий никуда.



Расскажем Kodi, как мы перечислим наши видео



и где они находятся.



Добавим маршрутизацию в наш плагин



и передадим это Kodi.



8. Изменим код!


Умея запускать ваше расширение, понимая его структуру и зная, что оно делает, изменим его!

Откройте папку с вашим видео плагином, исправьте код. Будьте готовы запустить его с помощью Kodi, когда сделаете это. Для этого переключитесь между текстовым редактором и Kodi.

Откройте main.py из вашей папки userdata и как следует его исправьте.



Не стесняйтесь сделать ссылки на другие файлы в формате jpeg или другие онлайн-видео. Создайте новый жанр и посмотрите, что после этого будет в Kodi.

Сохраните файл с помощью вашего текстового редактора и запустите видеодополнение из Kodi. Обратите внимание, как изменились видео в видеодополнении и его структура.

Поздравляем с тем, что ваше видеорасширение теперь воспроизводит новые видео из интернета!

9. Потоковое видео


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

Во-первых, я бы им не стал без документации на codedocs.xyz, которая поможет и вам не хуже какой-нибудь вики-энциклопедии.

codedocs.xyz/xbmc/xbmc

Кстати о документации. Руководство по ListItem будет вам все время помогать, если вы свяжетесь с потоковым видео.

codedocs.xyz/xbmc/xbmc/group__python__xbmcgui__listitem.html#gac31a08def90f50295146753353cb9541

Сами по себе вы мало что сделаете, полагаясь на стриминговую платформу, которая вам и передаст данные для вывода в Kodi элементов с URL-адресами видео. Когда вашим видео понадобится DRM, полагайтесь на InputStream.Adaptive.

Смотря какие у вас данные, можете соответствующим образом использовать ваш модуль запросов. В Kodi заявлена полная его поддержка, включая файлы куки и сеансы. В двух словах, с ним вы будете

получать необходимую информацию из интернета (пусть для начала это будут заголовки и url-адреса);

создавать элементы, которые Kodi будет рассматривать как источники видео (см. об этом xbmcplugin.addDirectoryItem() and xbmcgui.ListItem()).

Знакомство с написанием плагинов для работы с потоковым видео будет неполным без чтения исходников этих самых расширений, таких как AsciiDisco для Nexflix или Sandmann79 для Amazon/AmazonVOD.

Хотите прочитать об этом больше? Идите на ветку форума.

10. Заключительные соображения


На самом деле, написание видеодополнений дело довольно простое, как только вы получите хорошую базовую структуру. Можете парсить с помощью Regex многие онлайн-источники, либо размещать там свои собственные видео. С помощью простых в использовании дополнительных модулей у вас в Kodi появятся видеоклипы с youtube или vevo-видео.

Не стесняйтесь обсуждать этот урок на ветке форума, если у вас есть какие-либо вопросы.

11. Кое-что еще


Никогда не вводите табуляцию вместо пробелов в Python. Не спрашивайте почему. Просто запомните это.
Источник: habr.com
К списку статей
Опубликовано: 08.05.2021 10:22:37
0

Сейчас читают

Комментариев (0)
Имя
Электронная почта

Работа с видео

Python

Kodi

Xbmc

Add-ons

Helloworld

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru