LINUX.ORG.RU

FreshPlayerPlugin — PepperFlash в Firefox

 , , , , ppapi


55

41

Flash плеер всё заменяют и заменяют, но никак не заменят полностью. Новые и сверхновые фичи браузеров это замечательно, но Flash бывает всё ещё нужен. К сожалению, доступная NPAPI браузерам версия застыла на 11.2, а новые версии выходят только в составе Chrome. Поэтому я делаю адаптер, который сможет быть посредником между PPAPI плагином и NPAPI браузером. Это такая штука, которая позволит использовать свежий Flash в Firefox, Opera и других браузерах, в которых работают плагины.

https://github.com/i-rinat/freshplayerplugin

★★★★★

Последнее исправление: i-rinat (всего исправлений: 6)
Ответ на: комментарий от hizel

при переключении между ними

Тут уже вряд ли что-то можно сделать.

Сейчас попробовал на Youtube переключать качество. PepperFlash просто запрашивает новый декодер, а старые так и остаются висеть в рабочем состоянии. При перемотке он хотя бы старые сбрасывает, где я могу корректно завершить. Тут вроде как этого делать нельзя, да и определить нужный момент сложно.

Кстати, если запустить два и более MPlayer'а (или mpv) с декодированием 1080p фильмов одновременно, нормально работает?

(Влил изменения из use-one-output-surface в основную ветку.)

i-rinat ★★★★★
() автор топика
Последнее исправление: i-rinat (всего исправлений: 1)
Ответ на: комментарий от i-rinat

PepperFlash просто запрашивает новый декодер, а старые так и остаются висеть в рабочем состоянии.

А еслм принудительно килять? Один фиг в момент времени пашет только один.

devl547 ★★★★★
()
Ответ на: комментарий от devl547

Один фиг в момент времени пашет только один

StageVideo поддерживает несколько видео одновременно, поэтому вполне возможно, что какое-то приложение захочет сразу четыре потока декодировать аппаратно. С несколькими встроенными видео на странице тоже возникнет проблема.

i-rinat ★★★★★
() автор топика
Ответ на: комментарий от i-rinat

Тут уже вряд ли что-то можно сделать.

Сейчас попробовал на Youtube переключать качество. PepperFlash просто запрашивает новый декодер, а старые так и остаются висеть в рабочем состоянии. При перемотке он хотя бы старые сбрасывает, где я могу корректно завершить. Тут вроде как этого делать нельзя, да и определить нужный момент сложно.

Я не совсем понял... Т.е. в гуглохроме оно работает нормально, а тут старые декодеры остаются висеть? Или как?

mvitamin
()
Ответ на: комментарий от mvitamin

Т.е. в гуглохроме оно работает нормально, а тут старые декодеры остаются висеть? Или как?

Во-первых, в настольном Google Chrome код для поддержки аппаратных декодеров не компилируется вообще, там этой проблемы нет. Во-вторых, в этом коде есть только поддержка VA-API, он нацелен на интегрированные адаптеры Intel, которые хорошо себя чувствуют даже когда приложение создаёт много декодеров.

Кстати, интересно посмотреть, на скольки декодерах и на скольки видеоповерхностях посыпятся ошибки.

i-rinat ★★★★★
() автор топика
Ответ на: комментарий от i-rinat

на скольки декодерах и на скольки видеоповерхностях посыпятся ошибки

Получилось создать 65445 декодеров с 18-ю видеоповерхностями каждый. На 65446-м вывалилось с «intel_batchbuffer.c:63: intel_batchbuffer_reset: Assertion `batch->buffer->virtual' failed.»

i-rinat ★★★★★
() автор топика
Ответ на: комментарий от i-rinat

Кстати, если запустить два и более MPlayer'а (или mpv) с декодированием 1080p фильмов одновременно, нормально работает?

mpv на 6-ом ломается, но если посмотреть, у него какая-то другая логика вывода через opengl: https://github.com/mpv-player/mpv/blob/master/video/out/gl_hwdec_vdpau.c

hizel ★★★★★
()
Ответ на: комментарий от hizel

но если посмотреть, у него какая-то другая логика вывода через opengl

Там используются функции из `GL_NV_vdpau_interop`. Надо бы попробовать сделать и через него.

i-rinat ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.