2016-11-23 3 views
3

Ich arbeite an einer Video-Streaming-Anwendung und ich verwende ExoPlayer als meine Video-Streamer.Exoplayer sucht mp4 entfernt Puffer

Wie kann ich irgendwie den Puffer zwischenspeichern oder behalten, wenn ich zu einer Position vor der currentPosition des Videos suche.

Beachten Sie, dass ich nicht DASH oder HLS verwende und ich auf die traditionelle Weise streame.

DefaultHttpDataSource dataSource = new DefaultHttpDataSource("android", null); 
ExtractorSampleSource sampleSource = new ExtractorSampleSource(
       uri, 
       dataSource, 
       allocator, 
       buffer_segment_count * buffer_segment_size); 
videoTrackRenderer = new MediaCodecVideoTrackRenderer(context, sampleSource, MediaCodecSelector.DEFAULT, MediaCodec.VIDEO_SCALING_MODE_SCALE_TO_FIT, 2000, new Handler(context.getMainLooper()), this, 1000); 
audioTrackRenderer = new MediaCodecAudioTrackRenderer(sampleSource, MediaCodecSelector.DEFAULT, new Handler(context.getMainLooper()), this); 
mPlayer.prepare(videoTrackRenderer, audioTrackRenderer); 

ich in den Themen Abschnitt gesucht und gefunden (wenn nicht falsch), dass es den Puffer für MP4-Videos halten, aber in meiner Anwendung tut es nicht! Der Themenbereich ist ziemlich verwirrend. Kann mir jemand in die richtige Richtung zeigen?

Antwort

0

Ich schrieb eine Datenquelle und es funktioniert. Falls Sie das gleiche Problem haben, finden Sie eine Antwort here.

Wenn Sie ein ähnliches Problem haben und Ihre Serverstruktur scheint anders zu sein als meine, können Sie die Quelle für Inspiration lesen, wie Sie das Problem beheben.