20 сентября | 2024г. | 10:41:08

АвторТема: Плагин YouTube  (Прочитано 631848 раз)

0 Пользователей и 101 Гостей смотрят эту тему.

Оффлайн ruDREAM

  • Джедай X
  • ***
  • Сообщений: 1259
  • Поблагодарили: 710
  • Уважение: 0
Плагин YouTube
« Ответ #225: 06 августа | 2015г. | 11:28:51 »
0
Спасибо за информацию athoik.
Отставания в hls стримах исправлено в 1.5 версий гстреамера.
Теперь надо дожидаться пока имиджи начнут использовать 1.5 версию.

Проверил этот канал на версии GSreamer 1.5.2, в части отставания на 4 часа, результат отрицательный - отстает!

P'S'
Судя по всему пока авторы не поправят GSreamer проблема будет иметь место быть, так как в API YouTube вроде бы нет возможности указать часовой пояс для Live канала.

Оффлайн TaapatАвтор темы

  • Мастер Джедай
  • ***
  • Сообщений: 3543
  • Поблагодарили: 10700
  • Уважение: +60
Плагин YouTube
« Ответ #226: 06 августа | 2015г. | 12:42:01 »
0
ruDREAM, я у Lenina11, спросил показать версий gst по тому что правки именно в gst-plugins-bad. Правда я думаю что если кто то обновляет сам гстреамер также он обновляет и все его плугини, особо это не указывая.
Проблема не в api. Силку ffmpeg показывает без сдвига. Проблема в том что гстреамер для live hls не использует 3 сегмент от конца, как указанно в документаций.
По моему выход есть. Скачивать не малый файл m3u8, парсить его и подсоивать гстреамеру правильный сегмент, в надежде что осталние он подхватит. Как я понял что то подобное делает ливестреамер.
Но если это действительно поправили, и смотря коммит мне кажется что это так, то не хочется на это тратить время.
  • Zgemma H7S | Zgemma H.S | Edision OS mini + | Amiko SHD-8900 Alien | VU+ Solo2 | Gi ET11000 4K
taapat.blogspot.com

Оффлайн Lenina11

  • Падаван
  • *
  • Сообщений: 28
  • Поблагодарили: 4
  • Уважение: 0
Плагин YouTube
« Ответ #227: 06 августа | 2015г. | 14:44:41 »
0
Lenina11, покажите что у вас в телнете выдаёт:
Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
Только что увидел этот ваш пост. Вечеро выдам.

Оффлайн ruDREAM

  • Джедай X
  • ***
  • Сообщений: 1259
  • Поблагодарили: 710
  • Уважение: 0
Плагин YouTube
« Ответ #228: 06 августа | 2015г. | 16:10:41 »
0
Taapat,

Я вроде бы написал, что версия 1.5.2, вот список установленных пакетов:

Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.

P'S'
Я уже писал, что понятно, что API тут не причем, дело в GSreamer,
специально сейчас посмотрел, компилируемые исходники GSreamer версии 1.5.2, в них действительно присутствует обозначенные вами исправления в пакете gstreamer1.0-plugins-bad-fragmented,
но увы это не работает.

Оффлайн TaapatАвтор темы

  • Мастер Джедай
  • ***
  • Сообщений: 3543
  • Поблагодарили: 10700
  • Уважение: +60
Плагин YouTube
« Ответ #229: 06 августа | 2015г. | 16:31:19 »
0
специально сейчас посмотрел, компилируемые исходники GSreamer версии 1.5.2, в них действительно присутствует обозначенные вами исправления,
но увы это не работает.
Тогда очень жаль.
Я ещё просил Lenina11 попробовать пустить силку через livestreamer, но он не разобрался.
Может вы найдёте времени попробовать? Может не надо мутит не какой парсинг, а достаточно использовать livestreamer?
  • Zgemma H7S | Zgemma H.S | Edision OS mini + | Amiko SHD-8900 Alien | VU+ Solo2 | Gi ET11000 4K
taapat.blogspot.com

Оффлайн ruDREAM

  • Джедай X
  • ***
  • Сообщений: 1259
  • Поблагодарили: 710
  • Уважение: 0
Плагин YouTube
« Ответ #230: 06 августа | 2015г. | 17:17:30 »
0
Может вы найдёте времени попробовать? Может не надо мутит не какой парсинг, а достаточно использовать livestreamer?

Возможно c помощью этого "костыля" это и заработает, но думаю это путь в тупик, так как на сегодняшний день версия GStreamer прекрасно воспроизводит hls потоки без заминок и т.п. (ради чего кстати задумывался livestreamer), а вот словленный баг лучше фиксить в GStreamer, хотя я не понимаю как, так как глубоко не знаком с этим пакетом. Возможно еще раз обратить на эту информацию на форуме OpenPli c указанием конкретной ссылки на канал и подробным описанием проблемы -4 часа, они там достаточно хорошо продвинулись в вопросе GStreamer и им это будет сделать ИМХО не так затратно по времени. Возможно нужно будет внести правки в бинарник enigma2 для указания использования конвейером именно fragmented для воспроизведения этих типов потоков, так как вполне вероятно он не задействуется (это чисто одно из не проверенных предположений). Для разбора полетов нужно запускать GStreamer в режиме debug из командной строки, информация как сделать есть на форуме OpenPli, нужно разбираться, но к сожалению пока тоже не хватает времени.

А вот мутить с парсингом точно не нужно, так как это не проблема плагина YouTube!

Оффлайн TaapatАвтор темы

  • Мастер Джедай
  • ***
  • Сообщений: 3543
  • Поблагодарили: 10700
  • Уважение: +60
Плагин YouTube
« Ответ #231: 06 августа | 2015г. | 17:57:00 »
0
Я вообще тоже не знаток работы gstreamer, но также подумал, что может этот правленый gst-plugins-bad не используется. Я конечно напишу на форуме опенпли, но вижу что там все ответы сводится к костылям для gstreamer.
Конечно фиксить надо его, но на мой взгляд это тоже проблема плагина YouTube. Выходит что он даёт силку, которую не может правильно воспроизвести кривой gstreamer. Если это возможно, то надо давать такую силку, которую он воспроизводит правильно.
  • Zgemma H7S | Zgemma H.S | Edision OS mini + | Amiko SHD-8900 Alien | VU+ Solo2 | Gi ET11000 4K
taapat.blogspot.com

Оффлайн ruDREAM

  • Джедай X
  • ***
  • Сообщений: 1259
  • Поблагодарили: 710
  • Уважение: 0
Плагин YouTube
« Ответ #232: 06 августа | 2015г. | 18:57:14 »
0
Taapat,

Провел небольшие изыскания, вот команда для теста:
Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
Вот кусок выводимого лога:
Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
Последний код из libgstfragmented:

Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
Наибольший интерес представляет вот эта строка отладчика:
Setting first sequence at 2194818

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

Код макроса достаточно просто и не понятный:
Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.

Вот кусок получаемого плейлиста m3u8 по ссылке, к сожалению так как он динамический определить какой именно берется MEDIA-SEQUENCE не возможно (толи из заголовка, толи иной), так как действия мои разнесены по времени:

Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.

P"S"
получается, что код фикса добавленный для HLS LIVE выполняется, но не понятно насколько он корректно определяет требуемую SEQUENCE для воспроизведения

Изучил еще немного вопрос и пришел к выводу, что макрос отрабатывает правильно GST_M3U8_CLIENT_IS_LIVE, так как есть в логе сообщение fragmented m3u8.c:763:gst_m3u8_update: Live playlist range 0:00:15.000000000 -> 4:00:15.629000000 вот этого кода:

Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.


Добавлено  06 августа | 2015г. | 19:58:59

Ну вот в принципе вычисления нужной последовательности похоже тут и есть, но увы что то не работает:

Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.



Добавлено  06 августа | 2015г. | 20:22:52
Вот еще обнаружил в плейлисте ссылку на последовательность, она действительно практически в конце файла:

Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
Причем её номер 2194818 совпадает с первым логом, это конечно не 3-й с конца но учитывая разнесенное время получения плейлиста - очень близко!

Оффлайн TaapatАвтор темы

  • Мастер Джедай
  • ***
  • Сообщений: 3543
  • Поблагодарили: 10700
  • Уважение: +60
Плагин YouTube
« Ответ #233: 06 августа | 2015г. | 20:25:43 »
0
Код макроса достаточно просто и не понятный:
Цитата samsamsam из форума опенпли:
Цитировать
If the list m3u8 has no marker END it means that this is live stream, so gstreamer similart to IPTVPlayer in buffering mode should start at the end of list.
То есть если в m3u8 файле нету маркировки END то это live stream и должен открывать от последнего (верней 3) сегмента.
Это по моему как раз и указывает (c)->current->endlist

athoik думает что может это какой то другой баг, посмотрю что он ответит.
  • Zgemma H7S | Zgemma H.S | Edision OS mini + | Amiko SHD-8900 Alien | VU+ Solo2 | Gi ET11000 4K
taapat.blogspot.com

Оффлайн ruDREAM

  • Джедай X
  • ***
  • Сообщений: 1259
  • Поблагодарили: 710
  • Уважение: 0
Плагин YouTube
« Ответ #234: 06 августа | 2015г. | 20:56:16 »
0
Еще изучил лог и вот что заметил, это выкопировка некоторых записей из лога в последовательности их появления:

Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
Исходи из лога, в начале правильно определяется нужная последовательность из конца плейлиста 2194818, на это указывает первая строка, при этом далее в функции gst_m3u8_client_get_next_fragment, есть дебаг код:

Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
получается, что последовательность у плейлиста file равна 2191939, а последовательность client равна нужной нам 2194818

И ВОТ САМОЕ ИНТЕРЕСНОЕ, в конце функции gst_m3u8_client_get_next_fragment есть код:

Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
Тоесть мы в client меняем последовательность на не правильно определенную 2191939 из file и далее из лога уже видно, что далее по циклу поехала не правильная последовательность 2191939 из начала, вот и отставание на -4 часа


Добавлено  06 августа | 2015г. | 21:43:57



В итоге после разбора кода наиболее вероятная причина в не корректной работе функции find_next_fragment, точней в не корректно передаваемом ей параметре forward на стартовом этапе. Для подтверждения гипотезы добавил немного отладочного кода и компилирую новую библиотеку. Как будет результат отпишусь.

Оффлайн TaapatАвтор темы

  • Мастер Джедай
  • ***
  • Сообщений: 3543
  • Поблагодарили: 10700
  • Уважение: +60
Плагин YouTube
« Ответ #235: 06 августа | 2015г. | 21:51:08 »
0
ruDREAM, смотрю что client->sequence = file->sequence; добавили тут.
Но я не до конца понимаю этот коммит.
  • Zgemma H7S | Zgemma H.S | Edision OS mini + | Amiko SHD-8900 Alien | VU+ Solo2 | Gi ET11000 4K
taapat.blogspot.com

Оффлайн ruDREAM

  • Джедай X
  • ***
  • Сообщений: 1259
  • Поблагодарили: 710
  • Уважение: 0
Плагин YouTube
« Ответ #236: 06 августа | 2015г. | 22:02:21 »
0
После компиляции выяснено, что forward передается корректно, сейчас будем узучать работу непосредственно самой функции find_next_fragment, возможно, что то проясниться, отпишусь позже.

Добавлено  06 августа | 2015г. | 22:47:39
Решение вроде найдено, сейчас компилирую библиотеку для проверки, отпишусь по результатам.

Добавлено  06 августа | 2015г. | 23:21:05
ВОПРОС РЕШЕН, КОМПИЛИРУЮ БИБЛИОТЕКУ ДЛЯ БЕТА ТЕСТИРОВАНИЯ НА ПРОШИВКЕ LIVE X от ruDREAM
после положительного тестирования нашими членами клуба выложу патч в паблик, вот снимок экрана сделанный в 0:26
[ Гостям не разрешен просмотр вложений ]

Оффлайн Lenina11

  • Падаван
  • *
  • Сообщений: 28
  • Поблагодарили: 4
  • Уважение: 0
Плагин YouTube
« Ответ #237: 07 августа | 2015г. | 07:46:17 »
0
Rudream - браво!
Пошла прямая трансляция без отставания

Оффлайн ruDREAM

  • Джедай X
  • ***
  • Сообщений: 1259
  • Поблагодарили: 710
  • Уважение: 0
Плагин YouTube
« Ответ #238: 07 августа | 2015г. | 08:37:02 »
0
Вот обещанный патч:

Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.

Оффлайн Lenina11

  • Падаван
  • *
  • Сообщений: 28
  • Поблагодарили: 4
  • Уважение: 0
Плагин YouTube
« Ответ #239: 07 августа | 2015г. | 11:28:26 »
0
Lenina11, покажите что у вас в телнете выдаёт:
Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.
Rudream по этому вопросу все решил. А вот что выдает команда в имидже Open ATV 5.1.
Вам не разрешен просмотр кода. Войдите или Зарегистрируйтесь для просмотра.Ув. Taapat, можете донести до команды Open ATV, чтобы в версии 5.1 соответственно все сделали, версию повысили и все остальное.... ? Тем более здесь Rudream патч публично выложил.  Если, конечно, для Вас это не затруднительно.

Теги:
 

Похожие темы

  Тема / Автор Ответов Последний ответ
4 Ответов
5121 Просмотров
Последний ответ 26 мая | 2011г. | 20:47:39
от Wolf
2 Ответов
8665 Просмотров
Последний ответ 16 апреля | 2013г. | 00:15:35
от алексей1490
0 Ответов
39285 Просмотров
Последний ответ 16 июля | 2015г. | 11:39:15
от vodker
0 Ответов
2795 Просмотров
Последний ответ 21 марта | 2016г. | 02:19:41
от vodker
0 Ответов
3350 Просмотров
Последний ответ 01 января | 2018г. | 18:50:10
от alex622


X

Добро пожаловать!

Мы заметили, что у Вас установлено расширение AdBlock или ему подобное. Пожалуйста добавьте наш Клуб в белый список, внесите этим посильную лепту в его развитие. Спасибо!