ArnaudCourbiere / RtspExtractor

Rtsp Extractor for ExoPlayer using ffmpeg
Apache License 2.0
17 stars 15 forks source link

Remove dependency on obsolete ExoPlayer package #1

Open cybersam opened 8 years ago

cybersam commented 8 years ago

The RtspExtractor class depends on the com.google.android.exoplayer.source package, which was deleted from ExoPlayer on April 10, 2015 (commit 4c8f9a8).

It should be updated to use com.google.android.exoplayer.FrameworkSampleSource (which is now also deprecated), or ideally com.google.android.exoplayer.extractor.ExtractorSampleSource.

This issue depends on (or may be subsumed by) Issue 2.

ArnaudCourbiere commented 8 years ago

Yeah, my goal was to get it to compile with what I had first. Not sure when I'll have time to get around that. Pull request welcome :)

cybersam commented 8 years ago

Actually, reading the Javadoc for FrameworkSampleSource more closely, it looks like it may be the right subclass to use, despite its deprecation:

Playing container formats for which an ExoPlayer extractor does not yet exist (e.g. ogg) is a valid use case of this class.

ArnaudCourbiere commented 8 years ago

Cool, will check it out when I get a chance. On Nov 25, 2015 1:00 PM, "Sam" notifications@github.com wrote:

Actually, reading the Javadoc for FrameworkSampleSource more closely, it looks like it may be the right subclass to use, despite its deprecation:

Playing container formats for which an ExoPlayer extractor does not yet exist (e.g. ogg) is a valid use case of this class.

— Reply to this email directly or view it on GitHub https://github.com/ArnaudCourbiere/RtspExtractor/issues/1#issuecomment-159730455 .

cybersam commented 8 years ago

On the other hand, the Customization section of the ExoPlayer Developer Guide states:

Extractor – If you need to support a container format not currently supported by the ExoPlayer library, consider implementing a custom Extractor class, which can then be used to together with ExtractorSampleSource to play media of that type.

So, it looks like the ideal solution is to create a custom RTSP Extractor that can be used by ExtractorSampleSource.

BTW: I need to be able to play back an "rtsps" stream (i.e., RTSP over TLS), so ideally the RTSP Extractor should support the "rtsp" and "rtsps". This presumably means that the ffmpeg code should be built with the appropriate SSL/TLS options.

ArnaudCourbiere commented 8 years ago

for information, I've built the ffmpeg libs using this repo:

https://github.com/cine-io/android-ffmpeg-with-rtmp

Before looking back into building different flavors of the ffmpeg libs I will update ExoPlayer to the latest version and make a simple demo app.