Pull to refresh

Comments 5

Сисьняюсь спросить. А зачем это нужно?
Как известно, QtMultimedia использует сервис предоставляемый ОС для декодирования видео. Естественно что ОС не может поддерживать все возможные кодеки/видео форматы. Соответственно может возникнуть необходимость подключения какой либо внешней/самописной библиотеки для решения этой задачи. Ярким примером такой библиотеки является libvlc, собственно ради подключения которой, изначально, мной и прорабатывался данный вопрос.

В качестве возражения можно выдвинуть тезис о том что в ОС можно установить требуемый кодек, но это не всегда возможно по следующим причинам:
1) мы работаем с ОС для мобильных устройств;
2) необходимо использовать модифицированный/самописный кодек (например для ради некоего DRM);
3) мы не хотим зависеть от возможных проблем установки кодека в ОС;
4) нам необходим portable вариант приложения;
5) иное
Вы видимо ошиблись, ответить хотели мне. Спасибо да. Теперь ясно. Получилось? А со звуком как там в Qt дела обстоят? ffmpeg можно как-то подрубить легко? Просто посмотрел на этот QtMultimedia, очень какой-то он фиговый. Нельзя просто взять и написать свой кодек например, а остальное использовать как обычно, например через MediaPlayer.
А со звуком как там в Qt дела обстоят?

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

ffmpeg можно как-то подрубить легко?

ffmpeg (как и libvlc и gstreamer) умеет выдавать видео фреймы в буферы в памяти, соответственно действовать можно абсолютно идентичным способом. Нужно только позаботиться о подходящем формате этих фремов.

Если же говорить о более эффективных методиках рендеринга видеофремов из произвольных видеоисточников, то, например, в контексте QML я разрабатывал компонент позволяющий это делать, но порог входа там гораздо выше к сожалению…

Работает! Спасибо огромное, мне здорово помогло
Sign up to leave a comment.

Articles