Skip to content

[video_player] Can't play videos on HUAWEI and HONOR devices #156459

Closed as not planned

Description

@Inakitajes

Steps to reproduce

  1. Initialize network video.
  2. Try to play.

Expected results

Normally playback videos without any issues. It actually plays fine on all other devices. We have this app in production and only HUAWEI and HONOR devices are experimenting issues.

Actual results

Nothing happen, screen is black. Logs shows some codecs error but after trying to research about the error message we couldn't find out.

Code sample

Code sample
    _controller = VideoPlayerController.networkUrl(
            Uri.parse("https://url_to_video"),
            videoPlayerOptions: VideoPlayerOptions(
              mixWithOthers: true,
              allowBackgroundPlayback: true,
            ),
          )
            ..addListener(() {})
            ..setLooping(true)
            ..setVolume(0)
            ..initialize().then((_) {
              resumeVideo();
            });

Screenshots or Video

Screenshots / Video demonstration

[Upload media here]

Logs

Logs
10-08 12:14:50.354 23696 23696 I ExoPlayerImpl: Init 905e38e [AndroidXMedia3/1.4.1] [HWELE, ELE-L29, HUAWEI, 29]
10-08 12:14:50.382 23696 24857 I OMXClient: IOmx service obtained
10-08 12:14:50.383 23696 24857 I ACodec  : In onAllocateComponent create compenent, codec name: OMX.hisi.video.decoder.avc
10-08 12:14:50.386 23696 24856 I MediaCodec: [OMX.hisi.video.decoder.avc] setting surface generation to 24264714
10-08 12:14:50.387 23696 24857 E ACodec  : [OMX.hisi.video.decoder.avc] setPortMode on output to DynamicANWBuffer failed w/ err -2147483648
10-08 12:14:50.391 23696 24857 I ACodec  : [OMX.hisi.video.decoder.avc] got color aspects (R:2(Limited), P:1(BT709_5), M:1(BT709_5), T:3(SMPTE170M)) err=0(NO_ERROR)
10-08 12:14:50.391 23696 24857 I ACodec  : [OMX.hisi.video.decoder.avc] got color aspects (R:2(Limited), P:1(BT709_5), M:1(BT709_5), T:3(SMPTE170M)) err=0(NO_ERROR)
10-08 12:14:50.391 23696 24857 I ACodec  : [OMX.hisi.video.decoder.avc] using color aspects (R:2(Limited), P:1(BT709_5), M:1(BT709_5), T:3(SMPTE170M)) and dataspace 0x104
10-08 12:14:50.392 23696 24857 I ACodec  : onStart
10-08 12:14:50.424 23696 24857 I HwExtendedUtils: Set to window composer mode as 2
10-08 12:14:50.426 23696 24857 I ACodec  : gralloc usage: 0(OMX) => 0x2900(ACodec)
10-08 12:14:50.426 23696 24857 W ACodec  : [OMX.hisi.video.decoder.avc] setting nBufferCountActual to 10 failed: -1010
10-08 12:14:50.427 23696 24857 W ACodec  : [OMX.hisi.video.decoder.avc] setting nBufferCountActual to 9 failed: -1010
10-08 12:14:50.427 23696 24857 I ACodec  : [OMX.hisi.video.decoder.avc] Allocating 8 buffers from a native window of size 1342464 on output port
10-08 12:14:50.461 23696 24857 I ACodec  : [OMX.hisi.video.decoder.avc] got color aspects (R:2(Limited), P:1(BT709_5), M:1(BT709_5), T:3(SMPTE170M)) err=0(NO_ERROR)
10-08 12:14:50.461 23696 24857 I ACodec  : [OMX.hisi.video.decoder.avc] got color aspects (R:2(Limited), P:1(BT709_5), M:1(BT709_5), T:3(SMPTE170M)) err=0(NO_ERROR)
10-08 12:14:50.461 23696 24857 I ACodec  : [OMX.hisi.video.decoder.avc] using color aspects (R:2(Limited), P:1(BT709_5), M:1(BT709_5), T:3(SMPTE170M)) and dataspace 0x104
10-08 12:14:50.467 23696 24857 I ACodec  : [OMX.hisi.video.decoder.avc] got color aspects (R:2(Limited), P:1(BT709_5), M:1(BT709_5), T:3(SMPTE170M)) err=0(NO_ERROR)
10-08 12:14:50.467 23696 24857 I ACodec  : [OMX.hisi.video.decoder.avc] got color aspects (R:2(Limited), P:1(BT709_5), M:1(BT709_5), T:3(SMPTE170M)) err=0(NO_ERROR)
10-08 12:14:50.467 23696 24857 I ACodec  : [OMX.hisi.video.decoder.avc] using color aspects (R:2(Limited), P:1(BT709_5), M:1(BT709_5), T:3(SMPTE170M)) and dataspace 0x104
10-08 12:14:50.468 23696 24857 I ACodec  : [OMX.hisi.video.decoder.avc] Now handling output port settings change
10-08 12:14:50.469 23696 24857 I ACodec  : [OMX.hisi.video.decoder.avc] Output port now disabled.
10-08 12:14:50.470 23696 24857 I HwExtendedUtils: Set to window composer mode as 2
10-08 12:14:50.470 23696 24857 I ACodec  : gralloc usage: 0(OMX) => 0x2900(ACodec)
10-08 12:14:50.473 23696 24857 W ACodec  : [OMX.hisi.video.decoder.avc] setting nBufferCountActual to 19 failed: -1010
10-08 12:14:50.474 23696 24857 W ACodec  : [OMX.hisi.video.decoder.avc] setting nBufferCountActual to 18 failed: -1010
10-08 12:14:50.474 23696 24857 W ACodec  : [OMX.hisi.video.decoder.avc] setting nBufferCountActual to 17 failed: -1010
10-08 12:14:50.474 23696 24857 W ACodec  : [OMX.hisi.video.decoder.avc] setting nBufferCountActual to 16 failed: -1010
10-08 12:14:50.474 23696 24857 E ACodec  : Failed to allocate output port buffers after port reconfiguration: (-1010)
10-08 12:14:50.474 23696 24857 E ACodec  : signalError(omxError 0x80001001, internalError -1010)
10-08 12:14:50.474 23696 24857 E ACodec  : Error occurred while disabling the output port
10-08 12:14:50.474 23696 24856 E MediaCodec: Codec reported err 0xfffffc0e, actionCode 0, while in state 6
10-08 12:14:50.481 23696 24854 E MediaCodecVideoRenderer: Video codec error
10-08 12:14:50.481 23696 24854 E MediaCodecVideoRenderer:   java.lang.IllegalStateException
10-08 12:14:50.481 23696 24854 E MediaCodecVideoRenderer:       at android.media.MediaCodec.native_dequeueOutputBuffer(Native Method)
10-08 12:14:50.481 23696 24854 E MediaCodecVideoRenderer:       at android.media.MediaCodec.dequeueOutputBuffer(MediaCodec.java:2789)
10-08 12:14:50.481 23696 24854 E MediaCodecVideoRenderer:       at q5.h0.i(SourceFile:1)
10-08 12:14:50.481 23696 24854 E MediaCodecVideoRenderer:       at q5.t.H0(SourceFile:1)
10-08 12:14:50.481 23696 24854 E MediaCodecVideoRenderer:       at q5.t.e(SourceFile:1)
10-08 12:14:50.481 23696 24854 E MediaCodecVideoRenderer:       at d6.k.e(SourceFile:1)
10-08 12:14:50.481 23696 24854 E MediaCodecVideoRenderer:       at h5.o1.w(SourceFile:1)
10-08 12:14:50.481 23696 24854 E MediaCodecVideoRenderer:       at h5.o1.handleMessage(SourceFile:1)
10-08 12:14:50.481 23696 24854 E MediaCodecVideoRenderer:       at android.os.Handler.dispatchMessage(Handler.java:106)
10-08 12:14:50.481 23696 24854 E MediaCodecVideoRenderer:       at android.os.Looper.loop(Looper.java:219)
10-08 12:14:50.481 23696 24854 E MediaCodecVideoRenderer:       at android.os.HandlerThread.run(HandlerThread.java:67)
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal: Playback error
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal:   h5.u: MediaCodecVideoRenderer error, index=0, format=Format(1, null, null, video/avc, avc1.64001F, -1, null, [1080, 720, 100.0, ColorInfo(BT709, Limited range, SDR SMPTE 170M, false, 8bit Luma, 8bit Chroma)], [-1, -1]), format_supported=YES
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal:       at h5.o1.handleMessage(SourceFile:1)
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal:       at android.os.Handler.dispatchMessage(Handler.java:106)
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal:       at android.os.Looper.loop(Looper.java:219)
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal:       at android.os.HandlerThread.run(HandlerThread.java:67)
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal:   Caused by: d6.j: Decoder failed: OMX.hisi.video.decoder.avc
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal:       at d6.k.C0(SourceFile:1)
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal:       at q5.t.e(SourceFile:1)
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal:       at d6.k.e(SourceFile:1)
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal:       at h5.o1.w(SourceFile:1)
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal:       ... 4 more
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal:   Caused by: java.lang.IllegalStateException
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal:       at android.media.MediaCodec.native_dequeueOutputBuffer(Native Method)
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal:       at android.media.MediaCodec.dequeueOutputBuffer(MediaCodec.java:2789)
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal:       at q5.h0.i(SourceFile:1)
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal:       at q5.t.H0(SourceFile:1)
10-08 12:14:50.481 23696 24854 E ExoPlayerImplInternal:       ... 7 more
10-08 12:14:50.482 23696 24854 E ExoPlayerImplInternal: Disable failed.
10-08 12:14:50.482 23696 24854 E ExoPlayerImplInternal:   java.lang.IllegalStateException
10-08 12:14:50.482 23696 24854 E ExoPlayerImplInternal:       at android.media.MediaCodec.native_flush(Native Method)
10-08 12:14:50.482 23696 24854 E ExoPlayerImplInternal:       at android.media.MediaCodec.flush(MediaCodec.java:2194)
10-08 12:14:50.482 23696 24854 E ExoPlayerImplInternal:       at q5.h0.flush(SourceFile:1)
10-08 12:14:50.482 23696 24854 E ExoPlayerImplInternal:       at q5.t.K0(SourceFile:1)
10-08 12:14:50.482 23696 24854 E ExoPlayerImplInternal:       at q5.t.M0(SourceFile:1)
10-08 12:14:50.482 23696 24854 E ExoPlayerImplInternal:       at q5.t.c0(SourceFile:1)
10-08 12:14:50.482 23696 24854 E ExoPlayerImplInternal:       at d6.k.c0(SourceFile:1)
10-08 12:14:50.482 23696 24854 E ExoPlayerImplInternal:       at h5.n.f(SourceFile:1)
10-08 12:14:50.482 23696 24854 E ExoPlayerImplInternal:       at h5.o1.v(SourceFile:1)
10-08 12:14:50.482 23696 24854 E ExoPlayerImplInternal:       at h5.o1.A0(SourceFile:1)
10-08 12:14:50.482 23696 24854 E ExoPlayerImplInternal:       at h5.o1.s1(SourceFile:1)
10-08 12:14:50.482 23696 24854 E ExoPlayerImplInternal:       at h5.o1.handleMessage(SourceFile:1)
10-08 12:14:50.482 23696 24854 E ExoPlayerImplInternal:       at android.os.Handler.dispatchMessage(Handler.java:106)
10-08 12:14:50.482 23696 24854 E ExoPlayerImplInternal:       at android.os.Looper.loop(Looper.java:219)
10-08 12:14:50.482 23696 24854 E ExoPlayerImplInternal:       at android.os.HandlerThread.run(HandlerThread.java:67)
10-08 12:14:53.469 23696 24857 E ACodec  : signalError(omxError 0x80001001, internalError -110)
10-08 12:14:53.469 23696 24856 E MediaCodec: Codec reported err 0xffffff92, actionCode 0, while in state 10
10-08 12:14:53.482 23696 24857 I ACodec  : [OMX.hisi.video.decoder.avc] forcing the release of codec
10-08 12:14:53.496 23696 24857 E ACodec  : OMX.hisi.video.decoder.avc
10-08 12:17:16.187 23696 23696 W HiTouch_PressGestureDetector: Touch pointer move a lot. The moving distance of X is:19.0, limit is:60The moving distance of Y is:74.0, limit is:60
10-08 12:17:17.351 23696 23696 I ExoPlayerImpl: Release 905e38e [AndroidXMedia3/1.4.1] [HWELE, ELE-L29, HUAWEI, 29] [media3.common, media3.exoplayer, media3.decoder, media3.datasource, media3.extractor]

Flutter Doctor output

Doctor output
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.24.3, on macOS 15.0 24A335 darwin-arm64, locale en-US)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 16.0)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2024.1)
[✓] VS Code (version 1.94.0)
[✓] Connected device (4 available)
[✓] Network resources

• No issues found!

Activity

  1. changed the title [-][video_player] Can't play network videos on HUAWEI and HONOR devices[/-] [+][video_player] Can't play videos on HUAWEI and HONOR devices[/+] on Oct 9, 2024
  2. added
    in triagePresently being triaged by the triage team
    on Oct 9, 2024
  3. huycozy commented on Oct 9, 2024

    @huycozy
    Member

    @Inakitajes @richert-addisca This is similar to #154068 and the PR flutter-team-archive/engine#54879 fixed for it is only available on Flutter beta and master channels, it has not landed on stable channel yet. Can you all try switching to one of these channels and confirm?

  4. added
    waiting for responseThe Flutter team cannot make further progress on this issue until the original reporter responds
    on Oct 9, 2024
  5. huycozy commented on Oct 9, 2024

    @huycozy
    Member

    @richert-addisca Unfortunately I don't know the exact time for it. But you can read more about the build release channels here https://github.com/flutter/flutter/blob/master/docs/releases/Flutter-build-release-channels.md.

  6. added
    r: fixedIssue is closed as already fixed in a newer version
    on Oct 9, 2024
  7. matanlurey commented on Oct 9, 2024

    @matanlurey
    Contributor

    There is a release in process now. You have a choice of using an older version of Flutter (and waiting for the new stable), or the beta channel, at the moment. There won't be any more fine estimate than that.

  8. github-actions commented on Oct 23, 2024

    @github-actions

    This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

  9. locked as resolved and limited conversation to collaborators on Oct 23, 2024
  10. removed
    waiting for responseThe Flutter team cannot make further progress on this issue until the original reporter responds
    in triagePresently being triaged by the triage team
    on Oct 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    r: fixedIssue is closed as already fixed in a newer version

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions