Възпроизвеждане на видео в Java настолно приложение

Опитвам Java Media Framework и забелязвам, че не поддържа много видео формати и изглежда не е достатъчно актуализиран. Има ли алтернатива за JMF за Windows Java настолни приложения?


person Jonás    schedule 15.05.2012    source източник
comment
възможен дубликат на Възпроизвеждане на видео в Java   -  person artbristol    schedule 15.05.2012
comment
@artbristol Не съм съгласен, това е въпрос за рамки и този последен въпрос пита повече за JMF. Така или иначе, този друг въпрос вече е доста стар и не съдържа много връзки към добри рамки, различни от Xuggler.   -  person Michael Berry    schedule 16.05.2012
comment
@berry120 Няма добри рамки, затова. Този въпрос е задаван много пъти преди.   -  person artbristol    schedule 16.05.2012
comment
@artbristol Това, разбира се, зависи от вашето определение за добра рамка, но бих казал, че сега (за разлика от преди година или 2), те започват да се появяват. Моето приложение успешно използва VLCJ, за да осигури видео поддръжка на различни платформи с персонализирани текстови наслагвания, а подобно нещо може да се постигне с JavaFX. Или за извличане на пакети от потоци на по-ниско ниво, Xuggler е много добър. Всичко зависи от това какво търсите!   -  person Michael Berry    schedule 16.05.2012
comment
@berry120 Справедлива точка. Хубаво е да чуя, че вашият опит с VLCJ е положителен - може би конкуренцията ще стимулира JavaFX и ще получи прилична поддръжка в официалната платформа.   -  person artbristol    schedule 16.05.2012
comment
@artbristol Благодаря - сериозно се надявам! :-)   -  person Michael Berry    schedule 16.05.2012


Отговори (2)


Да, определено бих препоръчал да стоите далеч от JMF. Усетих разочарованието ти! Лично аз препоръчвам VLCJ, особено ако имате нужда от поддръжка за широк диапазон формати - използвам го в приложението си и работи много добре.

Следните въпроси също могат да бъдат от значение:

Работа с видео (DVD, .avi .mkv) в Java

Добавяне на други видео кодеци / DVD поддръжка към JavaFX 2.2

person Michael Berry    schedule 15.05.2012
comment
Благодаря. Най-накрая използвах vlcj, защото JavaFX изисква JavaFX проект и преди имах стартиран Java проект. Всъщност имам проблем. Трябва да възпроизведа видеокомпонента вътре в JPanel. Как бих направил това? - person Jonás; 15.05.2012
comment
@honnix Най-добрият начин е да използвате Canvas, а не JPanel - по този начин VLC може просто да го възпроизведе директно. Другият начин е да използвате DirectMediaPlayer, който ви дава BufferedImage, който можете да показвате на всичко, което изберете. Последният подход е по-гъвкав, но може да изяде огромни количества CPU за HD видео дори при системи с висока мощност. - person Michael Berry; 15.05.2012
comment
Здравейте, използвам Canvas, но получавам изключение java.lang.IllegalStateException: компонентът на видео повърхността трябва да може да се показва. Попитах в stackoverflow.com/questions/10609338/, защото наистина съм заседнал. Всички примери, които съм виждал, изпълняват един и същ код. Не мога да забележа къде греша. Благодаря предварително. - person Jonás; 16.05.2012
comment
@honnix Вижте отговора ми, но когато получите тази грешка, това е почти винаги, защото платното не се показва на екрана, преди да опитате да възпроизведете видеоклипа. - person Michael Berry; 16.05.2012

Накратко, изглежда като задънена улица. Бих преминал към JavaFX 2.1 - има много по-добра поддръжка и изглежда също е "на живо". Тук има и още информация за Stack Overflow: Добавяне на други видео кодеци/DVD поддръжка към JavaFX 2.2

person Ewald    schedule 15.05.2012