Я использую vlcj (http://code.google.com/p/vlcj/) для использования библиотек vlc в Java для записи моего экрана. Я использую Win7 и XP (на обеих платформах появляется ошибка).
Я запускаю на этих серверах telnetплатформы, которые получают сообщение о запуске и остановке для запуска и остановки записи экрана. После нескольких записей появляется следующая ошибка: screen demux error: Cannot create bitmap
Затем я останавливаю сервер telnet и перезапускаю его снова, и он снова может захватывать экран. Мой вопрос: почему появляется это сообщение об ошибке и как я могу его решить, чтобы мне не приходилось время от времени перезагружать сервер? Вот фрагмент кода, который начинает запись (извините, я не могу предоставитьвесь код сервера telnet):
NativeLibrary.addSearchPath("vlc", libvlcPath); //libvlcPath is a String with the specified path
System.setProperty("jna.library.path", libvlcPath);
MediaPlayerFactory factory = new MediaPlayerFactory("--no-video-title-show");
EmbeddedMediaPlayer mediaPlayer = factory.newEmbeddedMediaPlayer();
File videoFile = new File(savePath + fileName + ".mp4");
String[] options = {":sout=#transcode{vcodec=h264,acodec=mp4a}:std{access=file,mux=mp4,dst=" + videoFile + "}", ":screen-fps=5.0"};
mediaPlayer.playMedia("screen://", options);
и код для остановки записи:
mediaPlayer.stop();
mediaPlayer.release();
Я также запускаю сервер telnet (точно такой же код) в Mac OSи Ubuntu 10.04, и там ошибка никогда не появлялась. Так что это как-то связано с Windows в целом?