Подписи работают только в полноэкранном режиме

Я использую элемент управления axwindowsmediaplayer в приложении Windows Forms, чтобы показать файл заголовка *.SMI с воспроизводимым видео. Проблема в том, что подписи отображаются только тогда, когда управление WMP находится в полноэкранном режиме.

Я выглядел очень усердно, но я не мог определить, почему одни и те же видео и файл.SMI не работают, когда управление WMP не в полноэкранном режиме.

При воспроизведении видео в приложении WMP файл заголовка.SMI отображается независимо от размера проигрывателя.

Есть идеи?

1 ответ

Решение

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

Таким образом, возможное решение было бы использовать VLC. (По крайней мере, если вы не заключили контракт с WMP.)

1) Добавьте компонент VLC ActiveX в панель инструментов Visual Studios. (Панель инструментов -> правый клик -> добавить элементы -> вкладка COM-компоненты -> axVLCPlugin21)

2) Разместите компонент в своем окне WPF/WinForm

3) Загрузка и воспроизведение видео.

var convertedURI = new Uri("file:///" + Application.StartupPath +
                           "\\Wildlife.wmv").AbsoluteUri;
axVLCPlugin21.playlist.add(convertedURI);
axVLCPlugin21.playlist.play();

4) Чтобы добавить подписи, просто назовите файл подписи как видео и поместите его в тот же каталог, что и видеофайл. (например, Wildlife.smi)
VLC загрузит титры / субтитры автоматически.

Другие вопросы по тегам