2015-12-23 2 views
1

J'utilise le FrameWorkSampleSource Constructeur pour initialiser l'instance SampleSource.Comment utiliser Exoplayer pour lire un flux d'entrées?

File file = new File(path); 
FileInputStream inputStream = new FileInputStream(file); 
FileDescriptor fd = inputStream.getFD(); 
SampleSource sampleSource = new FrameworkSampleSource(fd, 0, file.length()); 

Mais je dois jouer un InputStream en utilisant ExoPlayer. Je suis incapable de trouver une interface qui implémente la classe SampleSource et prend InputStream en tant que paramètre dans son constructeur.

Répondre

0

Il semble qu'il n'y ait pas de moyen facile d'y parvenir, car ExoPlayer n'est pas conçu pour cela. Pour citer le développeur:

« Nous ne fournissons pas une mise en œuvre qui enveloppe un InputStream directement parce que l'interface InputStream ne fournit pas le comportement d'accès aléatoire approprié pour la lecture multimédia, qui est nécessaire à la fois pour la recherche et parce que certains formats de médias placez les données à la fin du fichier qui doit être lu au début de la lecture. "

Lire toute sa réponse ici:

https://github.com/google/ExoPlayer/issues/1086

+1

J'ai mis en œuvre en créant mon propre inputstream! https://github.com/amanmj/InputStream_Player –