Aşağıdaki kod ile Xuggler ile başarılı bir video oynamayı başardım. Bir dosya yerine inputStream'den akış yapabilmem gerekir. Bir Icontainer oluşturmak için yorumlanmış kodu kullanmaya çalıştım. Kodu açıkladığımda bir inputstream yerine bir String kullanmak için getTestFile yöntemini değiştirdim. Başlangıçta giriş akışını doğru şekilde alıyordu.Xuggler ile video akışı
Icontainer'da açık aradığımda sonsuza kadar bloklar. Buna doğru yaklaşıp yaklaşmadığımı bilmiyorum. Temelde aynı şeyi nasıl yapardım, ancak bir dosyayı kullanmadan ve bir giriş akışı kullanmadan nasıl yaparım?
Teşekkür
package com.plumber.testing;
import com.xuggle.mediatool.IMediaReader;
import com.xuggle.mediatool.IMediaViewer;
import com.xuggle.mediatool.ToolFactory;
import com.xuggle.xuggler.IContainer;
import java.io.FileNotFoundException;
import java.io.InputStream;
public class VideoTest {
public static void main(String[] args) throws FileNotFoundException {
// IContainer iContainer = IContainer.make();
// iContainer.open(getTestFile("IMG_0983.MOV"), null);
// I was originally passing the icontainer to make reader
IMediaReader mediaReader = ToolFactory.makeReader(getTestFile("IMG_0983.MOV"));
IMediaViewer mediaViewer = ToolFactory.makeViewer(true);
mediaReader.addListener(mediaViewer);
while (mediaReader.readPacket() == null) ;
}
private static String getTestFile(String fileName) {
return VideoTest.class.getClassLoader().getResource("com/plumber/testing/testfiles/" + fileName).getPath();
}
}
Kullanılacak doğru biçimi dinamik olarak nasıl belirleyebilirim? – rubixibuc
Bir "null" biçimi sağladığınızda, IContainer sınıfı sanırım tahmin etmeye çalışır. –
Sadece bunu denediğimde kısmi dosya hatalarıyla sonsuz bir döngü alıyorum. –