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

HLS stream doesn't work with exoplayer demo app #3709

Closed
darkokostic opened this issue Jan 15, 2018 · 7 comments
Closed

HLS stream doesn't work with exoplayer demo app #3709

darkokostic opened this issue Jan 15, 2018 · 7 comments
Assignees

Comments

@darkokostic
Copy link

Hi there,

I have a lot of links for streams that I have to play in my app, some of them are working just fine.

Anyway, some of that HLS streams doesn't play audio, and some of that HLS streams doesn't play at all (either audio and video).

I tested on ExoPlayer demo app both.

  • The link that works in my app, works in demo app too.
  • The link that doesn't play in my app, and always trying to send http request over and over, doesn't work in demo app too. It throws com.google.android.exoplayer2.upstream.HttpDataSource$HttpDataSourceException: Unable to connect to {{link}}

Also to be sure that this link works, I tested it with another players from Google Play Store and the stream is playing just fine. (Perfect Player app).

Version of ExoPlayer that I am using is 2.6.1.

Reproduction steps: You can set the url that I will send by email to HLS stream in demo app.

If anyone can help, I will be very thankful.

Best regards,
Darko

@AquilesCanta
Copy link
Contributor

I cannot reproduce: both links work well. I will close the issue under the suspicion that something server-side has been fixed. If you still encounter the issue, please provide reply to this issue including the missing issue template items.

@darkokostic
Copy link
Author

Hi there,
On my device, it seems to be the same issue still. So I am writing a report again.

Issue description

The main issue on my device is that some of the links doesn't play (some of them play only audio, and some of them are sending http request in loop over and over). I am testing on ExoPlayer demo app.

Reproduction steps

To reproduce this issue, put the links that I will send in email in "HLS" JSON samples in ExoPlayer Demo App.

Link to test content

I sent an email with links

Version of ExoPlayer being used

I am using ExoPlayer version 2.6.1 or ExoPlayer v2 demo app downloaded from this git repository.

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

My Android device is Sony Xperia M5 and Android version is 6.0.

A full bug report captured from the device

I sent my bug reports from my app, and exoplayer demo app.

I was first thinking that it is my app issue, but it works same on ExoPlayer Demo app.

@darkokostic
Copy link
Author

Can anyone help? Still the stream doesn't work with demo app.

@AquilesCanta
Copy link
Contributor

#1967 explains the cause. You need to inject FLAG_ALLOW_NON_IDR_KEYFRAMES by implementing your own HlsExtractorFactory. You can use DefaultHlsExtractorFactory as starting point.

@darkokostic
Copy link
Author

I did it, and it resolved my problem on Android 6.0, now all my streams work.

But still on Android 7.0, some of the streams doesn't have audio, it shows Unsupported on demo app, but on Android 6.0 device it works.

Also this flag that resolved me the issue for streams on Android 6.0, on Android 7.0 same streams doesn't play still.

@darkokostic
Copy link
Author

darkokostic commented Jan 20, 2018

Hello there,

I implemented ffmpeg extension, everything works perfect on Android 6.0, but still some streams doesn't play either video and audio on Android 7.0.

It is the same on Android 5.0.

I am sure that I implemented ffmpeg extension properly because I am getting in log that it loading FFmpeg extension class on every stream that device doesn't support.

After message that app loaded ffmpeg extension I am getting this:

W/VideoCapabilities: Unrecognized profile/level 1/32 for video/mp4v-es
W/VideoCapabilities: Unrecognized profile/level 32768/2 for video/mp4v-es
W/VideoCapabilities: Unrecognized profile/level 32768/64 for video/mp4v-es
W/VideoCapabilities: Unsupported mime video/x-ms-wmv
W/VideoCapabilities: Unsupported mime video/divx
W/VideoCapabilities: Unsupported mime video/xvid
W/VideoCapabilities: Unsupported mime video/flv1
W/VideoCapabilities: Unrecognized profile/level 1/32 for video/mp4v-es
I/VideoCapabilities: Unsupported profile 4 for video/mp4v-es

Any help?
Best regards.

@ojw28
Copy link
Contributor

ojw28 commented Jan 21, 2018

But still on Android 7.0, some of the streams doesn't have audio, it shows Unsupported on demo app, but on Android 6.0 device it works.

This is working as intended, and means that the device does not support the audio format you're trying to play. Please see the Sample Formats section of our Supported Formats page, and the Android supported format page that it links to.

I implemented ffmpeg extension, everything works perfect on Android 6.0, but still some streams doesn't play either video and audio on Android 7.0.

There is not sufficient information provided for us to further debug this issue. For example, we have not received sufficient information for us to even know what type of audio format the streams that are still problematic contain. Are you sure you compiled FFmpeg in a way that supports the required format(s)?

@ojw28 ojw28 self-assigned this Jan 21, 2018
@google google locked and limited conversation to collaborators Jun 29, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants