Vlcj: videoplayer.stop() вызывает сбой JVM в Windows 11 (только для некоторых видеокодеков)JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Vlcj: videoplayer.stop() вызывает сбой JVM в Windows 11 (только для некоторых видеокодеков)

Сообщение Anonymous »

После переноса приложения Java vlcj на новый компьютер с Windows 11 программа аварийно завершает работу при вызове vlcjplayer.stop(). Я использую vlcj4.8.2 в сочетании с VLC3.0.21. Я отправляю свою собственную Oracle JRE версии 17.0.12.
Это соответствующая часть кода, который я вызываю (где stop()) вызывается с помощью кнопки ActionListener, а vlcPlayer имеет тип EmbeddedMediaPlayer):

Код: Выделить всё

public void stop() {
submit(() -> vlcPlayer.stop());// new since vlcj-4: callback to VLC from a separate thread!
}

public void submit (final Runnable runnable) {
vlcPlayer.submit(runnable);
}
Некоторые дополнительные факты:
  • Точно такой же код > на Windows 10 работает нормально! Та же версия Java
    , та же версия VLC, та же версия vlcj, та же сборка!
  • Проблема возникает только для определенных кодировок видео: mp4< /code>, mkv, ..., тогда как более старые видео в формате mpeg2 не вызывают проблем!
  • Когда я воспроизвожу проблемные видео с помощью официального теста vlcj приложения, вылетов не происходит! Я сравнил соответствующие разделы кода, но не смог найти реальной разницы в способе вызова метода остановки.
  • Похоже, проблема не связана с моей конкретной личной настройкой системы. Это происходит на любом компьютере с Windows 11, на котором я до сих пор запускал свое приложение
Файл журнала VLC не содержит никаких ошибок. Процесс просто аварийно завершает работу во время записи в него журналов. Я искал ошибки в средстве просмотра событий Windows и смог найти соответствующие события ошибок. Вот как они выглядят (к сожалению, на немецком языке):

Код: Выделить всё

Fehlerhafter Anwendungsname: java.exe, Version: 17.0.12.0, Zeitstempel: 0x31da67d3
Fehlerhafter Modulname: libdirect3d11_filters_plugin.dll, Version: 3.0.21.0, Zeitstempel: 0x0075006c
Ausnahmecode: 0xc0000005
Fehleroffset: 0x000000000000155a
Fehlerhafte Prozess-ID: 0x1E5C
Fehlerhafte Anwendungsstartzeit: 0x1DB641EF886AD0F
Fehlerhafter Anwendungspfad: D:\Java_Programme\Jukebox\jre-17.0.12\bin\java.exe
Fehlerhafter Modulpfad: C:\Program Files\VideoLAN\VLC\plugins\d3d11\libdirect3d11_filters_plugin.dll
Berichts-ID: a6019a38-7882-422c-bafa-2b1fa2bd6f7c
Vollständiger Name des fehlerhaften Pakets:
Fehlerhafte paketbezogene Anwendungs-ID:
Я пробовал разные вещи, например, настроил вывод видео на opengl вместо Direct3d11, а также изменил соответствующие настройки в собственном VLC, но безрезультатно. эффект. Почему-то я не могу заставить свой плеер использовать другой модуль видеовыхода. С другой стороны, я бы в любом случае не хотел заставлять пользователей вносить изменения в подобные настройки вручную. Я вообще не увлекаюсь видеокодеками, всей этой встроенной библиотекой и глубиной VLC. Я боролся с этим уже пару дней и не понимаю, что может быть не так. Если проблема связана с моим кодом Java, то почему он работает на моем старом компьютере с Windows 10 и со старыми кодеками? Если проблема связана с VLC и установленными кодеками, то почему сбой не происходит при запуске тестового приложения vlcj? Я установил последние версии драйверов графического процессора, и у меня установлена ​​чистая и свежая Windows 11.

Будем признательны за любые подсказки!

Подробнее здесь: https://stackoverflow.com/questions/793 ... deo-codecs
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»