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

video player can not play on Android 6.0.1 and older devices #16178

Closed
korbin-w opened this issue Apr 3, 2018 · 85 comments
Closed

video player can not play on Android 6.0.1 and older devices #16178

korbin-w opened this issue Apr 3, 2018 · 85 comments
Assignees
Labels
customer: alibaba dependency: skia Skia team may need to help us
Projects
Milestone

Comments

@korbin-w
Copy link

korbin-w commented Apr 3, 2018

Steps to Reproduce

1, Run the example of video player plugin. https://github.com/flutter/plugins/tree/master/packages/video_player/example

2, On Chinese Android 6.0.1 and older devices, the video can not be played( it was filled white), the sound is OK.
image

Test result on devices are as below, most problem devices are made for China. The Nexus with Android 6.0.1 device is OK.

Brand Model OS Version Test result
华为 荣耀6 Android 4.4.2 No video, only sound
华为 P10 Plus Android 7.0 normal
华为 荣耀5X Android 6.0.1 No video, only sound
华为 mate 10(alp-al100) Android 8.0 normal
三星 N9100(Note4) Android 5.0.1 No video, only sound
三星 Galaxy S6 edge(rooted) Android 6.0.1 No video, only sound
三星 S7 Android7.0  
小米 红米note 4 Android 6.0.1 No video, only sound
小米 小米6 Android 7.1.1  
魅族 魅蓝2 Android 5.1 No video, only sound
魅族 PR06 Android 6.0 No video, only sound
oppo oppo A59S Android 5.1 No video, only sound
LG nexus5X Android O normal
vivo X9 Android 7.1.1 normal
vivo X9Plus Android 6.0.1 No video, only sound
Google Pixel Android 7.1 normal
三星 三星note2-4.3 Android 4.3 normal

Logs

I did not find the significant logs and there are lots of logs. Below are some info:

04-03 15:56:53.865 370-3977/? D/MtkOmxVdecEx: [0xe67da000] FTB (0xE8A9D5C0) (0xE6581120) (12) AVSyncTime(29195600)
04-03 15:56:53.865 370-3977/? D/MtkOmxMVAMgr: [0xe6811c00] IonBuffer: entry(0xe21cede0), va(0xd9fb5000), mva:(0x09600000), ion_buf_handle (0x00000009)
04-03 15:56:53.865 370-3977/? D/MtkOmxVdecEx: [0xe67da000] pBuffer(0xe8a9d5c0),VA(0xD9FB5000), PA(0x09600000), size(1181184) mIonOutputBufferCount(3491)
04-03 15:56:53.865 370-3977/? D/MtkOmxVdecEx: [0xe67da000] [TEST-REF] 0 IncRef 0xd9fb5000 idx 9 to refCount 1
04-03 15:56:53.865 370-3977/? D/MtkOmxVdecEx: [0xe67da000] SIGNAL mOutputBufferSem
04-03 15:56:53.865 370-3978/? D/MtkOmxVdecEx: [0xe67da000] [DI] DISetGrallocExtra +
04-03 15:56:53.866 370-3978/? D/MtkOmxVdecEx: [0xe67da000] [DI] DISetGrallocExtra GRALLOC_EXTRA_BIT_CM_NV12_BLK
04-03 15:56:53.866 370-3978/? D/MtkOmxVdecEx: [0xe67da000] [DI] DISetGrallocExtra -
04-03 15:56:53.866 370-3978/? D/MtkOmxVdecEx: [0xe67da000]  wait for fence 66
04-03 15:56:53.866 370-3978/? D/MtkOmxVdecEx: [0xe67da000] [TEST-REF] 1 IncRef 0xd9fb5000 idx 9 to refCount 2
04-03 15:56:53.866 370-3978/? D/MtkOmxVdecEx: pFrame : 0xdd42d400 0xe8a9d5c0 (VA: 0xd9fb5000, PA: 0x09600000, 0xe6581120)
04-03 15:56:53.866 370-3978/? I/VDO_LOG: Output buffer VA = 0xd9fb5000, PA = 0x09600000
04-03 15:56:53.866 370-3978/? I/VDO_LOG: DecodeEx return 1
04-03 15:56:53.866 370-3978/? D/MtkOmxVdecEx: [0xe67da000] AVC DEC, NAL 1 (0), 29680000, 0x10 27 (0xE8A9CF60), (2 ms, 2 ms, 31 ms), 0
04-03 15:56:53.866 370-3978/? D/MtkOmxVdecEx: [0xe67da000] mIsInterlacing 0
04-03 15:56:53.866 370-3978/? D/MtkOmxVdecEx: [0xe67da000] CURRENT_DISPLAY return code, length 866304, ts 29320000, 3D 0
04-03 15:56:53.866 370-3978/? D/MtkOmxVdecEx: [0xe67da000] mIsInterlacing 0
04-03 15:56:53.866 370-3978/? D/MtkOmxVdecEx: [0xe67da000] FBD (0xE8A9D200) (0xE65810A0) 29320000 (866304) GET_DISP i(5) frm_buf(0xDD42D480), flags(0x00000000) mFlushInProcess 0
04-03 15:56:53.866 370-3978/? D/MtkOmxVdecEx: [0xe67da000] [TEST-REF] 0 DecRef 0xdc83e000 idx 0 array 2 to refCount 1
04-03 15:56:53.866 370-3978/? D/MtkOmxMVAMgr: [0xe6811c00] [ION][FreeBuffer] entry=0xe21cebd0, va=0xdc83e000, pa=0x9e00000,size=0x120600, srcFd=0x00000073, fd=0x0000007B, bufHdr=0xE8A9D200
04-03 15:56:53.867 370-3978/? D/MtkOmxVdecEx: [0xe67da000] [TEST-REF] 1 DecRef 0xdc83e000 idx 0 array 2 to refCount 0
04-03 15:56:53.867 370-3978/? D/MtkOmxVdecEx: [0xe67da000] EBD (0xE8A9CF60) (0xDE6C0000) (5) (5 4)
04-03 15:56:53.867 370-3978/? D/MtkOmxVdecEx: [DEBUG] Release the lock:mDecodeLock
04-03 15:56:53.867 370-3978/? D/MtkOmxVdecEx: ## 0xe67da000 Wait to decode (4) (input: 4, output: 0) 
04-03 15:56:53.867 370-3978/? D/MtkOmxVdecEx: ## 0xe67da000 out from sem (3)
04-03 15:56:53.867 370-3978/? D/MtkOmxVdecEx: [DEBUG] Get the lock:mDecodeLock
04-03 15:56:53.867 370-3978/? I/VDO_LOG: 4K disabled by eFuse
04-03 15:56:53.867 370-3975/? D/ACodec: mMaxQueueBufferNum 2 < component occupied 4, skip postFillThisBuffer
04-03 15:56:53.868 370-3972/? I/NuPlayerDecoder: [handleAnOutputBuffer]line:773 [OMX.MTK.VIDEO.DECODER.AVC] queueBuffer(video, 29320000)
04-03 15:56:53.870 370-3978/? I/VDO_LOG: [H264DecEndProc, 4985]
04-03 15:56:53.870 370-3978/? I/VDO_LOG: DrvGetOutputBufferCB+
04-03 15:56:53.870 370-3978/? D/MtkOmxVdecEx: ## 0xe67da000 Wait for output buffer (0)
04-03 15:56:53.879 370-3982/? D/GenericSource: dequeueAccessUnit audio:1 time:29909333
04-03 15:56:53.879 370-3982/? I/NuPlayerDecoder: [handleAnOutputBuffer]line:773 [OMX.google.aac.decoder] queueBuffer(audio, 29781333)
04-03 15:56:53.899 370-3982/? D/GenericSource: dequeueAccessUnit audio:1 time:29930666
04-03 15:56:53.899 370-3982/? I/NuPlayerDecoder: [handleAnOutputBuffer]line:773 [OMX.google.aac.decoder] queueBuffer(audio, 29802666)

Flutter Doctor

[✓] Flutter (Channel beta, v0.2.3, on Mac OS X 10.12.6 16G1212, locale zh-Hans-HK)
    • Flutter version 0.2.3 at /Users/guoyou/projects/flutter
    • Framework revision 5a58b36e36 (3 weeks ago), 2018-03-13 13:20:13 -0700
    • Engine revision e61bb9ac3a
    • Dart version 2.0.0-dev.35.flutter-290c576264

[✓] Android toolchain - develop for Android devices (Android SDK 27.0.3)
    • Android SDK at /Users/guoyou/Library/Android/sdk
    • Android NDK at /Users/guoyou/Library/Android/sdk/ndk-bundle
    • Platform android-27, build-tools 27.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08)
    • All Android licenses accepted.

[✓] iOS toolchain - develop for iOS devices (Xcode 9.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 9.1, Build version 9B55
    • ios-deploy 1.9.2
    • CocoaPods version 1.4.0

[✓] Android Studio (version 3.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08)

[✓] IntelliJ IDEA Community Edition (version 2017.2.3)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin installed
    • Dart plugin version 172.3968.27

[✓] Connected devices (3 available)

• No issues found!

> For more information about diagnosing and reporting Flutter bugs, please see [https://flutter.io/bug-reports/](https://flutter.io/bug-reports/).
@korbin-w korbin-w changed the title video player can not play on Android 6.0.1 devices video player can not play on Android 6.0.1 and older devices Apr 3, 2018
@charafau
Copy link
Contributor

charafau commented Apr 3, 2018

do they work normally on those phones? I mean natively? I suggest to look how video plugin works underneath and use exoplayer in the same way.

@korbin-w
Copy link
Author

korbin-w commented Apr 3, 2018

@charafau The flutter pages don't work on the Chinese Android 6.0.1 and older devices. The native pages are fine.

@eseidelGoogle
Copy link
Contributor

@sigurdm or @mravn-google would know.

@mravn-google
Copy link
Contributor

First step is to find out if this is a MediaPlayer problem (possibly resolvable by further configuration or by switching to ExoPlayer), or if there is a more fundamental problem with the way we consume the texture stream on the Flutter side.

@korbin-w (or anyone else with a Chinese Android 6.0.1 device): can I ask you to try and run the external_ui integration test on such a device? After "calibration" and pushing the floating action button, you should see red digits on a black background.

Closer to video streaming, there is also a camera plugin example. It would be great to know, whether that one works, too.

@Hixie Hixie added this to the 3: Current Milestone milestone Apr 3, 2018
@Hixie Hixie added this to Plugins - Framework (mit, mravn, sigurdm) in Milestone 3 Apr 3, 2018
@Hixie Hixie added the waiting for customer response The Flutter team cannot make further progress on this issue until the original reporter responds label Apr 3, 2018
@Hixie
Copy link
Contributor

Hixie commented Apr 3, 2018

@mravn-google I've assigned this to you since you seem to be taking point on this, but let me know if there's anything you need from me to help with this.

@korbin-w
Copy link
Author

korbin-w commented Apr 4, 2018

@mravn-google Thanks for your suggestion. I tried external_ui, camera plugin, and I once switched the player to IJKPlayer, they all do not work on the Android 6.0.1 Chinese device. Here are the screen snapshots.
external_ui:
screenshot_2018-04-04-15-29-01-82

camera plugin:
screenshot_2018-04-04-15-22-03-96

@mravn-google
Copy link
Contributor

mravn-google commented Apr 4, 2018

@korbin-w Thanks for the quick turnaround, very helpful! The general failure to render external textures might be related to https://bugs.chromium.org/p/skia/issues/detail?id=7713. We're verifying whether the fix of that issue has been rolled into Flutter's master branch.

@mravn-google
Copy link
Contributor

@korbin-w OK, so the skia fix has been rolled into Flutter master. That fix was done to address blank video textures on a Samsung Galaxy Note 4 (SM-N9100) running Android 5.0.1. We've just verified that videos work on that device when using Flutter master.

@korbin-w
Copy link
Author

korbin-w commented Apr 6, 2018

@mravn-google Thanks very much. We have done the test with your fix and it is OK for our devices now.

@korbin-w korbin-w closed this as completed Apr 6, 2018
Milestone 3 automation moved this from Plugins - Framework (mit, mravn, sigurdm) to Done Apr 6, 2018
@korbin-w korbin-w reopened this Apr 10, 2018
@korbin-w
Copy link
Author

@mravn-google I found the problem still exists in some devices. So I reopen this issue. Could you take a look?
The problem device models are as below:

Brand Model OS Version Test result
MEIZU m1 note 4.4.4 Failed
VIVO vivoX9 6.0.1 Failed
MEIZU m1 note 4.2.1 Failed

@mravn-google
Copy link
Contributor

cc @sigurdm

@sigurdm
Copy link
Contributor

sigurdm commented Apr 10, 2018

@brianosman do you have ideas for helping out here?
@korbin-w what exact version of flutter are you on (output of flutter doctor --verbose)?

@kangwang1988
Copy link
Contributor

kangwang1988 commented Apr 10, 2018

@mravn-google
@sigurdm I'm from @korbin-w 's team.

flutter doctor -v gives the messages below:
[✓] Flutter (Channel beta, v0.2.8, on Mac OS X 10.13.4 17E199, locale en-CN)
    • Flutter version 0.2.8 at /Users/kylewong/Downloads/flutter
    • Framework revision b397406561 (8 days ago), 2018-04-02 13:53:20 -0700
    • Engine revision c903c217a1
    • Dart version 2.0.0-dev.43.0.flutter-52afcba357

[!] Android toolchain - develop for Android devices (Android SDK 27.0.3)
    • Android SDK at /Users/kylewong/Library/Android/sdk
    • Android NDK at /Users/kylewong/Library/Android/sdk/ndk-bundle
    • Platform android-27, build-tools 27.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b01)
    ✗ Android license status unknown.

[✓] iOS toolchain - develop for iOS devices (Xcode 9.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 9.3, Build version 9E145
    • ios-deploy 1.9.2
    • CocoaPods version 1.2.0

[✓] Android Studio (version 3.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b01)

[!] Connected devices
    ! No devices available

! Doctor found issues in 2 categories.

We dug more and noticed several devices in which the video fails to play.
I launch the flutter_gallery from flutter repo in verbose and noticed some error referring to GLSL issue.

For a device running Android6.0 (Huawei Rom)

[   +1 ms] D/skia    (15963): GLSL compilation error
[        ] D/skia    (15963): ----------------------
[        ] D/skia    (15963): GLSL:
[        ] D/skia    (15963):    1	#version 310 es
[        ] D/skia    (15963):    2	
[        ] D/skia    (15963):    3	#extension GL_OES_EGL_image_external : enable
[        ] D/skia    (15963):    4	precision mediump float;
[        ] D/skia    (15963):    5	out mediump vec4 sk_FragColor;
[        ] D/skia    (15963):    6	uniform lowp samplerExternalOES uTextureSampler_0_Stage0;
[        ] D/skia    (15963):    7	in mediump vec4 vcolor_Stage0;
[        ] D/skia    (15963):    8	in highp vec2 vtextureCoords_Stage0;
[        ] D/skia    (15963):    9	void main() {
[        ] D/skia    (15963):   10	    mediump vec4 outputColor_Stage0;
[        ] D/skia    (15963):   11	    {
[        ] D/skia    (15963):   12	        outputColor_Stage0 = vcolor_Stage0;
[        ] D/skia    (15963):   13	        highp vec2 texCoord;
[        ] D/skia    (15963):   14	        texCoord = vtextureCoords_Stage0;
[        ] D/skia    (15963):   15	        outputColor_Stage0 = outputColor_Stage0 * texture(uTextureSampler_0_Stage0, texCoord);
[        ] D/skia    (15963):   16	    }
[        ] D/skia    (15963):   17	    {
[        ] D/skia    (15963):   18	        sk_FragColor = outputColor_Stage0;
[        ] D/skia    (15963):   19	    }
[        ] D/skia    (15963):   20	}
[        ] D/skia    (15963):   21	
[        ] D/skia    (15963): Errors:
[        ] D/skia    (15963): ERROR: 0:6: 'samplerExternalOES' : requires extension GL_OES_EGL_image_external_essl3 to be enabled 
[        ] D/skia    (15963): ERROR: 1 compilation errors.  No code generated.

For another device running Android 4.4.2(Huawei Honor):

[  +21 ms] D/skia    (10958): GLSL compilation error
[        ] D/skia    (10958): ----------------------
[        ] D/skia    (10958): GLSL:
[        ] D/skia    (10958):    1	#version 300 es
[        ] D/skia    (10958):    2	
[        ] D/skia    (10958):    3	#extension GL_OES_EGL_image_external : enable
[        ] D/skia    (10958):    4	precision mediump float;
[        ] D/skia    (10958):    5	out mediump vec4 sk_FragColor;
[        ] D/skia    (10958):    6	uniform lowp samplerExternalOES uTextureSampler_0_Stage0;
[        ] D/skia    (10958):    7	flat in mediump vec4 vcolor_Stage0;
[        ] D/skia    (10958):    8	in highp vec2 vtextureCoords_Stage0;
[        ] D/skia    (10958):    9	void main() {
[        ] D/skia    (10958):   10	    mediump vec4 outputColor_Stage0;
[        ] D/skia    (10958):   11	    {
[        ] D/skia    (10958):   12	        outputColor_Stage0 = vcolor_Stage0;
[        ] D/skia    (10958):   13	        highp vec2 texCoord;
[        ] D/skia    (10958):   14	        texCoord = vtextureCoords_Stage0;
[        ] D/skia    (10958):   15	        outputColor_Stage0 = outputColor_Stage0 * texture(uTextureSampler_0_Stage0, texCoord);
[        ] D/skia    (10958):   16	    }
[        ] D/skia    (10958):   17	    {
[        ] D/skia    (10958):   18	        sk_FragColor = outputColor_Stage0;
[        ] D/skia    (10958):   19	    }
[        ] D/skia    (10958):   20	}
[        ] D/skia    (10958):   21	
[   +5 ms] D/skia    (10958): Errors:
[        ] D/skia    (10958): 0:3: P0003: Extension 'GL_OES_EGL_image_external' not supported
[        ] D/skia    (10958): 0:6: L0001: Typename expected, found 'samplerExternalOES'

For another device running Android4

[  +14 ms] D/skia    (30419): GLSL compilation error
[        ] D/skia    (30419): ----------------------
[        ] D/skia    (30419): GLSL:
[        ] D/skia    (30419):    1	#version 300 es
[        ] D/skia    (30419):    2	
[        ] D/skia    (30419):    3	#extension GL_OES_EGL_image_external : enable
[        ] D/skia    (30419):    4	precision mediump float;
[        ] D/skia    (30419):    5	out mediump vec4 sk_FragColor;
[        ] D/skia    (30419):    6	uniform lowp samplerExternalOES uTextureSampler_0_Stage0;
[        ] D/skia    (30419):    7	flat in mediump vec4 vcolor_Stage0;
[        ] D/skia    (30419):    8	in highp vec2 vtextureCoords_Stage0;
[        ] D/skia    (30419):    9	void main() {
[        ] D/skia    (30419):   10	    mediump vec4 outputColor_Stage0;
[        ] D/skia    (30419):   11	    {
[        ] D/skia    (30419):   12	        outputColor_Stage0 = vcolor_Stage0;
[        ] D/skia    (30419):   13	        highp vec2 texCoord;
[        ] D/skia    (30419):   14	        texCoord = vtextureCoords_Stage0;
[        ] D/skia    (30419):   15	        outputColor_Stage0 = outputColor_Stage0 * texture(uTextureSampler_0_Stage0, texCoord);
[        ] D/skia    (30419):   16	    }
[        ] D/skia    (30419):   17	    {
[        ] D/skia    (30419):   18	        sk_FragColor = outputColor_Stage0;
[        ] D/skia    (30419):   19	    }
[        ] D/skia    (30419):   20	}
[        ] D/skia    (30419):   21	
[   +2 ms] D/skia    (30419): Errors:
[        ] D/skia    (30419): 0:3: P0003: Warning: Extension 'GL_OES_EGL_image_external' not supported
[        ] D/skia    (30419): 0:6: L0001: Typename expected, found 'samplerExternalOES'
[        ] D/skia    (30419): 

Are those messages useful? Is it possible for us to use the texture mechanism to play video on these devices?

@sigurdm
Copy link
Contributor

sigurdm commented Apr 10, 2018

Hi @kangwang1988 . Thanks for the details.

This looks to me similar to #14053 (comment) .

Flutter currently contains the initial Skia fix https://skia.googlesource.com/skia/+/91fba61f24943a6e12f69732d9308beb76f8a7c6 from 4 weeks ago.

There is an update to the fix still not rolled into Flutter https://skia.googlesource.com/skia/+/c585e20f5a7a49808ddf6ac12af287f226bb26dc .

@brianosman would you expect the updated fix to help in the cases seen here?

If yes, then we need to roll Skia (to at least c585e20f5a7a49) in Engine, and Engine in Flutter to include the fix.
@cbracken could you help making the rolls happen?

@brianosman
Copy link

Hi @kangwang1988 , yes - those messages are very helpful. The updated fix that @sigurdm mentioned will be rolling into Flutter soon, but I think it will only fix some of these devices. It looks like there are two kinds of problems:

The Android 4 & 4.4 devices that report "Extension 'GL_OES_EGL_image_external' not supported" are going to be unable to play video. That extension is required to be able to treat a video frame as a texture in OpenGL and draw it.

The Android 6 device (anything that says "... requires extension GL_OES_EGL_image_external_essl3") should start working. That's a newer extension that is also required to treat video frames as textures, when using a newer version of OpenGL ES. On some devices, the driver does not include that extension when we ask it for a list of supported extensions, even though it does work (and is required to be able to import video frames). Our current workaround is to enable that extension on Adreno & Mali devices. If your device has a GPU from a different manufacturer, it may not work, but we could include more devices in that workaround.

I think the Android 5 devices will start working, but I can't be sure - I haven't been able to test on one of those.

@kangwang1988
Copy link
Contributor

@sigurdm
I've embed the fix "https://skia.googlesource.com/skia/+/91fba61f24943a6e12f69732d9308beb76f8a7c6" in our engine.
It help use solve the problem for android 6.
What's the commit "https://skia.googlesource.com/skia/+/c585e20f5a7a49808ddf6ac12af287f226bb26dc ." is for?
In fact, we still have pretty uses who's android version is below Android 6. It would be a big issue if we can't solve it in flutter.
@brianegan

@eseidelGoogle
Copy link
Contributor

@brianosman Do we have a sense as to how common it is for devices to be missing this extension? Trying to get a sense as to what % of android devices which we previously thought would work with our video approach are now believed to not?

Do we know if there are any "backup" approaches we could try when missing this extension? :) FYI @chinmaygarde @cbracken

@bsalomon
Copy link

@kangwang1988:

@brianosman discovered that on at least some devices that don't support the ..._essl3 extension we still must use the ..._essl3 extension name in the shaders than sample from the video texture. The second change does that. So more devices should work after the second CL.

@kangwang1988
Copy link
Contributor

@bsalomon
Got that.Thanks a lot.

@bsalomon
Copy link

We suspect that an engine with https://skia.googlesource.com/skia/+/c585e20f5a7a49808ddf6ac12af287f226bb26dc should work on all those devices.

@kangwang1988
Copy link
Contributor

The "options.fPreferExternalImagesOverES3 = true" approach works fine for us.
Using the master branch, we have verified that all the priorly problematic devices work fine now.

@korbin-w
Copy link
Author

Thank all, we've verified this fix. It can be closed.

@eseidelGoogle
Copy link
Contributor

Going to leave this open, since we still expect an unmodified Flutter to work on all of these phones. @brianosman still has some patches in flight I believe?

@eseidelGoogle eseidelGoogle reopened this May 16, 2018
@brianosman
Copy link

Yes. I'm still waiting to receive some more devices (although my Meizu device order was cancelled by the seller), to see if we can narrow down the set of devices where an ES2 fallback would be necessary. It's good to know that it works, though - that gives us a fallback, once we know how/when to trigger it.

@lotux
Copy link

lotux commented May 19, 2018

@brianosman I am still having same issue as before on my Xiaomi device, waiting for you to see if you can reproduce it once you have received your orders

@brianosman
Copy link

brianosman commented May 21, 2018

Update: I've received an Oppo device, and it's going to require the ES2 fallback. I've also received a Xiaomi device, but I can't actually use it - it requires a Mi account (which requires connecting to an inaccessible Chinese server) in order to enable installing apps over USB. Regardless, I suspect it's also going to require the ES2 fallback.

@eseidelGoogle Ultimately, I think Flutter is going to want to ship the engine with the ES2 fallback enabled. Skia may land additional patches to make the ES2 fallback happen less often (when we know other fallbacks work), but Skia isn't going to want to force that behavior on all other clients - it's only necessary if a particular client needs external image support to work. For many clients, ES3 is probably more important/useful.

@chinmaygarde
Copy link
Member

Ultimately, I think Flutter is going to want to ship the engine with the ES2 fallback enabled.

sgtm unless @eseidelGoogle has specific objections.

@lotux
Copy link

lotux commented May 23, 2018

@brianosman are you sure that you need to have Mi account? some of the Mi phone come with modified ROM (loaded with all kinds of adware), please flash it with original MIUI ROM from http://en.miui.com/download.html , I did the same for mine, don't use the ROM that comes with the phone, it is probably not the original one

@brianosman
Copy link

@lotux Yup. I installed the ROM from there, looks identical to the one that came on the phone (I think it just went from MIUI 9.5.3 to 9.5.4). I can enable developer mode and USB debugging, but attempting to enable 'Install via USB' pops up a 'Sign in to your Mi account first' notice, and then takes me to the Mi account sign-in UI.

@lotux
Copy link

lotux commented May 23, 2018

@brianosman I checked again and it seems I have created MI account too ( didn't know that 🤕), may be if you use a proxy from Canada it works?

@hamidabdulmalik
Copy link

Hi everyone, I have the same problem on Samsung Tab 10 2014 edition, running Android 5.1. Blank video screen. Do we have a fix for this yet? Thanks

@hamidabdulmalik
Copy link

errors
Above is the image of my error report.

@lotux
Copy link

lotux commented May 28, 2018

@brianosman I can confirm that is working on Xiaomi device, both video plugin and camera plugin is working

[✓] Flutter (Channel master, v0.4.5-pre.69, on Mac OS X 10.13.4 17E199, locale en-CA)
    • Flutter version 0.4.5-pre.69 at /Users/[REDACTED]/code/flutter
    • Framework revision 6c03a3f96b (5 days ago), 2018-05-22 15:57:41 -0700
    • Engine revision f876bd5710
    • Dart version 2.0.0-dev.55.0.flutter-97b6c2e09d

[✓] Android toolchain - develop for Android devices (Android SDK 27.0.3)
    • Android SDK at /Users/[REDACTED]/Library/Android/sdk
    • Android NDK at /Users/[REDACTED]/Library/Android/sdk/ndk-bundle
    • Platform android-27, build-tools 27.0.3
    • ANDROID_HOME = /Users/[REDACTED]/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b01)
    • All Android licenses accepted.

[✓] iOS toolchain - develop for iOS devices (Xcode 9.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 9.3, Build version 9E145
    • ios-deploy 1.9.2
    • CocoaPods version 1.5.2

[✓] Android Studio (version 3.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 23.2.2
    • Dart plugin version 173.4700
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b01)

[✓] VS Code (version 1.22.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Dart Code extension version 2.12.1

[✓] Connected devices (1 available)
    • iPhone6 ios 8.1 • 8458E68C-11D8-4294-8C49-82C654B6FB17 • ios • iOS 8.1 (simulator)

• No issues found!

@ngoan98tv
Copy link

I have faced with this issue on my Meizu M3 Note (Android 5.1). I'm confused by the comments above. Can anyone tell me how to fix this issue in short?

[√] Flutter (Channel unknown, v0.4.4, on Microsoft Windows [Version 10.0.17134.285], locale en-US)
    • Flutter version 0.4.4 at D:\program-files\flutter
    • Framework revision f9bb4289e9 (5 months ago), 2018-05-11 21:44:54 -0700
    • Engine revision 06afdfe54e
    • Dart version 2.0.0-dev.54.0.flutter-46ab040e58

[√] Android toolchain - develop for Android devices (Android SDK 28.0.1)
    • Android SDK at C:\Users\ngoan\AppData\Local\Android\sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-28, build-tools 28.0.1
    • Java binary at: D:\program-files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b02)
    • All Android licenses accepted.

[√] Android Studio (version 3.1)
    • Android Studio at D:\program-files\Android\Android Studio
    X Flutter plugin not installed; this adds Flutter specific functionality.
    X Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b02)

[√] Connected devices (1 available)
    • m3 note • L91HVCQ822DJ5 • android-arm64 • Android 5.1 (API 22)

• No issues found!

@zoechi
Copy link
Contributor

zoechi commented Sep 26, 2018

@ngoan98tv your Flutter version is quite outdated. Are you using the newest plugin version?

@ngoan98tv
Copy link

ngoan98tv commented Sep 26, 2018

@zoechi Because some packages in my project only run on Dart versions <2 so I avoid to upgrade Flutter and the plugins using Dart 2.
Is there any solution for me without upgrade to Dart 2?

@zoechi
Copy link
Contributor

zoechi commented Sep 26, 2018

@ngoan98tv not really, except updating the packages yourself to Dart 2 that are not yet compatible.

@ShangJunFengg
Copy link

ShangJunFengg commented Jan 15, 2019

兄弟问下video player怎么做缓冲啊

How to implement the video player buffer?

@github-actions
Copy link

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.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Aug 31, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
customer: alibaba dependency: skia Skia team may need to help us
Projects
No open projects
Milestone 3
Engine (asiva, chinmay)
Development

No branches or pull requests