Skip to content

SSAI enabled Live stream playback failure on some android devices #2944

@ShrikantSonawane

Description

@ShrikantSonawane

Version

Media3 1.8.0

More version details

On several Android devices, when attempting to play SSAI-served live streams (DASH .mpd), ExoPlayer/Media3 sometimes attempts to use progressive extractors (MP4/TS/etc.) instead of DASH. Playback fails with UnrecognizedInputFormatException and no video segments are requested (black screen). Yospace confirmed their platform is returning a valid DASH manifest; this appears to be a client-side media-type inference/initialization problem.

  • Player fails with ExoPlaybackException: Source error and downstream UnrecognizedInputFormatException from BundledExtractorsAdapter / ProgressiveMediaPeriod.
  • No attempts to download DASH segments visible in network traffic for those sessions.
  • Error correlates only with SSAI-enabled channels (non-SSAI channels work normally).
  • Example stack trace (from one failing session):
Playback error
androidx.media3.exoplayer.ExoPlaybackException: Source error
at androidx.media3.exoplayer.ExoPlayerImplInternal.handleIoException(ExoPlayerImplInternal.java:927)
at androidx.media3.exoplayer.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:897)\n      at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loopOnce(Looper.java:226)
at android.os.Looper.loop(Looper.java:313)
at android.os.HandlerThread.run(HandlerThread.java:67)
Caused by: androidx.media3.exoplayer.source.UnrecognizedInputFormatException: None of the available extractors (FlvExtractor, FlacExtractor, WavExtractor, FragmentedMp4Extractor, Mp4Extractor, AmrExtractor, PsExtractor, OggExtractor, TsExtractor, MatroskaExtractor, AdtsExtractor, Ac3Extractor, Ac4Extractor, Mp3Extractor, AviExtractor, JpegExtractor, PngExtractor, WebpExtractor, BmpExtractor, HeifExtractor, AvifExtractor) could read the stream. {contentIsMalformed\u003dfalse, dataType\u003d1}
at androidx.media3.exoplayer.source.BundledExtractorsAdapter.init(BundledExtractorsAdapter.java:108)
at androidx.media3.exoplayer.source.ProgressiveMediaPeriod$ExtractingLoadable.load(ProgressiveMediaPeriod.java:1124)
at androidx.media3.exoplayer.upstream.Loader$LoadTask.run(Loader.java:453)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
at java.lang.Thread.run(Thread.java:1119)

Devices that reproduce the issue

Top Mobile/Tablet Devices (by error rate):
Samsung S23 Ultra (SM-918B)
Redmi Tab (23073RPBFG)
Samsung S24 Ultra (SM-928B)
Redmi Note 12 (22101316UP)
Samsung Flip 6 (SM-F741B)

Top Android TV Devices (by error rate):
Sony Bravia VU3
PrismPlus 4K ATV
PrismPlus P4KA
Mi Box S (MIBOX4)
PrismPlus 4KA

Devices that do not reproduce the issue

No response

Reproducible in the demo app?

Not tested

Reproduction steps

  • Download the mewatch app from Email.
  • Use a VPN set to the Singapore region and launch the application.
  • Navigate to the side menu → Live TV.
  • Play Channel 8 or Suria.

Expected result

SSAI live stream should play without throwing any androidx.media3.exoplayer.source.UnrecognizedInputFormatException error.

Actual result

Play SSAI live stream playback fails immediately and error is thrown -

Playback error
androidx.media3.exoplayer.ExoPlaybackException: Source error
at androidx.media3.exoplayer.ExoPlayerImplInternal.handleIoException(ExoPlayerImplInternal.java:927)
at androidx.media3.exoplayer.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:897)\n      at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loopOnce(Looper.java:226)
at android.os.Looper.loop(Looper.java:313)
at android.os.HandlerThread.run(HandlerThread.java:67)
Caused by: androidx.media3.exoplayer.source.UnrecognizedInputFormatException: None of the available extractors (FlvExtractor, FlacExtractor, WavExtractor, FragmentedMp4Extractor, Mp4Extractor, AmrExtractor, PsExtractor, OggExtractor, TsExtractor, MatroskaExtractor, AdtsExtractor, Ac3Extractor, Ac4Extractor, Mp3Extractor, AviExtractor, JpegExtractor, PngExtractor, WebpExtractor, BmpExtractor, HeifExtractor, AvifExtractor) could read the stream. {contentIsMalformed\u003dfalse, dataType\u003d1}
at androidx.media3.exoplayer.source.BundledExtractorsAdapter.init(BundledExtractorsAdapter.java:108)
at androidx.media3.exoplayer.source.ProgressiveMediaPeriod$ExtractingLoadable.load(ProgressiveMediaPeriod.java:1124)
at androidx.media3.exoplayer.upstream.Loader$LoadTask.run(Loader.java:453)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
at java.lang.Thread.run(Thread.java:1119)

Media

We'll be sharing it on Email

Bug Report

  • You will email the zip file produced by adb bugreport to [email protected] after filing this issue.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions