I've compiled libvlc for Android (https://wiki.videolan.org/AndroidCompile/) and I'm using the produced AAR (3.0.0-2.1.0) in my own application.
Everything works fine except on an HTC One M8 (Android 6.0 - HTC Sense 7.0), where sometimes, when the player needs to buffer, the video goes black. Then the playback continues without any issue, but it's annoying to see the screen black instead of the last played video frame.
On other devices/Android versions (i.e. Samsung S7 Edge - 6.0.1, Samsung S4 Mini - 4.4.2, Nexus 6 - 7.0) this issue is not reproducible.
I've tried to play the same video (4K video shot with a Sony Xperia Z5) using the VLC Player application, version 2.0.5, downloaded from Google Play and I can reproduce the issue as well.
You can find the video here: https://drive.google.com/open?id=0B935D ... 1p3aVNfUHc
Here's the log of: buffering > video playback > video goes black > buffering
Code: Select all
08-09 13:31:00.386 13013-13119/ D/VLC: [b935b138/333f] core input: Buffering 84%
08-09 13:31:00.545 13013-13119/ D/VLC: [b935b138/333f] core input: Buffering 86%
08-09 13:31:00.730 13013-13119/ D/VLC: [b935b138/333f] core input: Buffering 89%
08-09 13:31:00.870 13013-13119/ D/VLC: [b935b138/333f] core input: Buffering 91%
08-09 13:31:01.031 13013-13119/ D/VLC: [b935b138/333f] core input: Buffering 93%
08-09 13:31:01.161 13013-13119/ D/VLC: [b935b138/333f] core input: Buffering 95%
08-09 13:31:01.230 13013-13119/ D/VLC: [b935b138/333f] core input: Buffering 97%
08-09 13:31:01.325 13013-13119/ D/VLC: [b935b138/333f] core input: Stream buffering done (1502 ms in 5750 ms)
08-09 13:31:01.325 13013-13119/ D/VLC: [b935b138/333f] core input: Decoder wait done in 0 ms
08-09 13:31:03.565 13013-13159/ W/VLC: [b98f5a28/3367] core video output: picture is too late to be displayed (missing 26 ms)
08-09 13:31:03.636 13013-13119/ E/VLC: [b935b138/333f] core input: ES_OUT_SET_(GROUP_)PCR is called too late (pts_delay increased to 4187 ms)
08-09 13:31:03.636 13013-13119/ D/VLC: [b935b138/333f] core input: ES_OUT_RESET_PCR called
08-09 13:31:03.637 13013-13174/ E/NdkMediaCodec: sf error code: -38
08-09 13:31:03.637 13013-13174/ E/VLC: [b98c7ec0/3376] mediacodec decoder: AMediaCodec.dequeueOutputBuffer failed
[ 08-09 13:31:03.645 476:13172 E/ ]
not in avi mode
[ 08-09 13:31:03.646 476:13172 E/ ]
not in avi mode
08-09 13:31:03.931 13013-13119/ D/VLC: [b935b138/333f] core input: Buffering 0%
[ 08-09 13:31:03.957 476:13172 E/ ]
not in avi mode
08-09 13:31:04.292 13013-13174/ D/VLC: [b98c7ec0/3376] core decoder: Received first picture
08-09 13:31:04.561 13013-13119/ D/VLC: [b935b138/333f] core input: Buffering 1%
08-09 13:31:05.203 13013-13119/ D/VLC: [b935b138/333f] core input: Buffering 2%
08-09 13:31:05.407 13013-13119/ D/VLC: [b935b138/333f] core input: Buffering 3%
08-09 13:31:05.654 13013-13119/ D/VLC: [b935b138/333f] core input: Buffering 4%
08-09 13:31:05.781 13013-13119/ D/VLC: [b935b138/333f] core input: Buffering 5%
08-09 13:31:05.895 13013-13119/ D/VLC: [b935b138/333f] core input: Buffering 6%
08-09 13:31:06.088 13013-13119/ D/VLC: [b935b138/333f] core input: Buffering 7%
08-09 13:31:06.356 13013-13119/ D/VLC: [b935b138/333f] core input: Buffering 8%
08-09 13:31:06.495 13013-13119/ D/VLC: [b935b138/333f] core input: Buffering 9%