Отключить отображение файла субтитров в QMediaPlayer

Как отключить автозагрузку субтитров QMediaPlayer с помощью DirectVobSub, который является инструментом K-Lite Codec Pack? я не хочу показывать субтитры в QMediaPlayer, если файл субтитров находится в том же каталоге видеофайла?


person hassan deldar    schedule 30.11.2013    source источник
comment
Скорее всего из Qt нельзя, так как этот кодек загружается как фильтр DirectShow, так что это происходит автоматически. Однако это возможно через Win32 API.   -  person George Y.    schedule 14.12.2013


Ответы (2)


Ответить

Поскольку QMediaPlayer полагается на внешние фреймворки для рендеринга видео, он имеет ограниченный контроль над тем, как эти фреймворки решают его рендерить. В этом случае, как упомянул Джордж Ю., субтитры, вероятно, невозможно контролировать, не прибегая к API win32.

Другим вариантом может быть исследование вариантов управления предпочтительными кодеками и, возможно, поставка кодеков с вашим приложением, которое не отображает субтитры.

person Lennart Rolland    schedule 28.04.2014

Вы должны снять флаг GST_PLAY_FLAG_TEXT на playbin2 в файле qgstreamerplayersession.cpp, собрать плагин и использовать его. Флаг включен по умолчанию. В Qt 5.2 вы найдете файл в qtmultimedia/src/plugins/gstreamer/mediaplayer. Расположение файла может отличаться для более старых версий 4.x.

person sky    schedule 08.05.2014
comment
Это действительно только в среде linux-gstreamer. Я только что заметил, что вы работаете с win env. - person sky; 08.05.2014