Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

it didn't work after I compiled the ffmpeg extension and depend on it #5170

Closed
danyangwu opened this issue Nov 29, 2018 · 3 comments
Closed
Assignees
Labels

Comments

@danyangwu
Copy link

danyangwu commented Nov 29, 2018

Issue description

I followed the instructions (https://github.com/google/ExoPlayer/tree/release-v2/extensions/ffmpeg) , compiled the FFMPEG extension, depend on it(https://github.com/google/ExoPlayer#locally), setting the extensionRendererMode parameter of the DefaultRenderersFactory constructor to EXTENSION_RENDERER_MODE_ON, and build my demo project. But it didn't work when I tried to play an avi video.

Here is the error log:

11-29 00:46:03.787 E: onPlayerError:
com.google.android.exoplayer2.ExoPlaybackException
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:349)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:164)
at android.os.HandlerThread.run(HandlerThread.java:65)
Caused by: com.google.android.exoplayer2.source.UnrecognizedInputFormatException: None of the available extractors (MatroskaExtractor, FragmentedMp4Extractor, Mp4Extractor, Mp3Extractor, AdtsExtractor, Ac3Extractor, TsExtractor, FlvExtractor, OggExtractor, PsExtractor, WavExtractor, AmrExtractor) could read the stream.
at com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractorHolder.selectExtractor(ExtractorMediaPeriod.java:931)
at com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractingLoadable.load(ExtractorMediaPeriod.java:853)
at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:317)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)

I have try this too. #4048 (comment)

I set a breakpoint in FfmpegLibrary.isAvailable and it returns true.
And I set a breakpoint at the start of FfmpegAudioRenderer.supportsFormatInternal and find out this method has never been execute.

Reproduction steps

I set a breakpoint in FfmpegLibrary.isAvailable and it returns true.
And I set a breakpoint at the start of FfmpegAudioRenderer.supportsFormatInternal and find out this method has never been execute.

Link to test content

any avi video can reproduce.

Version of ExoPlayer being used

my build.gradle:
compile 'com.google.android.exoplayer:exoplayer:2.8.0'
compile project(':exoplayer-extension-ffmpeg') //2.91

Device(s) and version(s) of Android being used

Device : any devices
Android Version : 8.1.0

@andrewlewis andrewlewis self-assigned this Nov 29, 2018
@andrewlewis
Copy link
Collaborator

The extension can add support for decoding audio data encoded using various codecs, but it doesn't provide extractors for container formats like AVI I'm afraid.

@danyangwu
Copy link
Author

What should I do to support decoding AVI?

@andrewlewis
Copy link
Collaborator

#2092 tracks this but it's (currently) low priority.

@google google locked and limited conversation to collaborators May 16, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

2 participants