2012-01-12 2 views
1

저는 xuggle 입문서이고 다양한 형식/품질로 비디오를 트랜스 코딩하고 싶습니다. 초보자로서 나는 Xuggle MediaTool을 사용하고 싶습니다. 효율적으로 처리해야하므로 각 대상 형식을 별도의 스레드로 처리하려고합니다. 이 경우의 정확한 동시성 패턴은 무엇입니까?동시 트랜스 코딩을 xuggle

내가 file.avi이고이 코드를 .flv.mov으로 변환하고 싶습니다. xuggle는 다음과 같은 경우에 각 작가에 대한 스레드를 시작하면 궁금 해요 :

IMediaReader reader = ToolFactory.makeReader("file.avi"); 
reader.addListener(ToolFactory.makeWriter("file.flv", reader)); 
reader.addListener(ToolFactory.makeWriter("file.mov", reader)); 
while (reader.readPacket() == null){} 

을 아니면 내가 별도의 스레드에서 각 형식에 대한 변환을 시작해야합니까? Xuggle 어떤 스레드 (1)를 시작하지 않으며 스레드를 관리하는 당신까지

답변

4

:

(MediaTool Introduction의 코드). 또한 Xuggle 객체는 스레드로부터 안전하지 않으므로 직접 액세스를 제어해야합니다.

그러나 여러 스레드를 추가하기 전에 즉시 성능을 측정하는 것이 좋습니다. 멀티 코어 시스템의 다중 스레드는 확실히 인코딩 속도를 높일 수 있지만 이점이 필요하지는 않습니다.

예술

(1) 전적으로 사실 아니하지만 귀하의 경우 Xuggle 어떤 스레드를 시작하지 않습니다. Xuggle은 (버전 4.0에서) 대부분 메모리 정리에 사용하는 다른 스레드 하나를 시작합니다.

+0

안녕 Xuggle, 내가 가지고있는 신속하고 (급한) 질문에 대답 해 주시겠습니까? Xuggle을 사용하여 .mov 파일과 .mkv 파일을 다른 형식 (예 : .flv)으로 변환 할 수 있습니까? –