fijkplayer
fijkplayer copied to clipboard
第一次无法打开RTMP资源,尝试播放其他在线文件然后返回再打开,播放正常
Describe the bug清晰描述你遇到了什么问题。
When compile and run the fijkplayer demo (https://github.com/befovy/fijkplayer/tree/master/example), if I try to play rtmp stream, first time always fail (no video). However, if play other online medias first, (e.g https://fijkplayer.befovy.com/butterfly.flv), then try to play the same rtmp, it works.
What attempts have you made to resolve this error ? 为了解决这个问题你有什么尝试?
Tried with both fijkplayer v0.8.7 and latest developer version. same result.
To Reproduce问题的复现步骤
- After launch the demo app, select "Input Url" and paste the rtmp url in the input box
- Click 'Play'
- The player will return a black screen
- go back to the first page and select "Online samples"
- select https://fijkplayer.befovy.com/butterfly.flv from the list (even this file does not there anymore)
- Click 'Play'
- go back to the first page and select "Input Url" and paste the rtmp url in the input box
- Click 'Play'
- The video works well
Expected behavior描述清楚你希望的运行结果是什么
Looks like there is certain hidden switch or cache. I have to play other type of videos first. Otherwise I cannot play the rtmp source successfully.
Screenshots如果截图有助于对此问题的理解,一定要附上截图
fijkplayer version用了什么版本的 fijkplayer
fijkplayer v0.8.7 and latest developer version
Smartphone (please complete the following information)什么手机设备和系统版本?
Android AVD Pixel 3 API 29 and Android Huawei P30 (with Android 10)
Additional context
-
- Log for the first time load (no video):
I/flutter ( 1043): rtmp://video.xxxxxxxx.com/stream/test22 D/IJKMEDIA( 1043): IjkMediaPlayer_native_setup I/IJKMEDIA( 1043): av_version_info: ff4.0--ijk0.8.25--20200627--926 I/IJKMEDIA( 1043): ijk_version_info: D/IJKMEDIA( 1043): ffpipeline_create_from_android() D/IJKMEDIA( 1043): ijkmp_set_inject_opaque(0x2a22) D/IJKMEDIA( 1043): ijkmp_set_inject_opaque()=void D/IJKMEDIA( 1043): ijkmp_set_ijkio_inject_opaque(0x2a22) D/IJKMEDIA( 1043): ijkmp_set_ijkio_inject_opaque()=void D/IJKMEDIA( 1043): ijkmp_android_set_mediacodec_select_callback() D/IJKMEDIA( 1043): ffpipeline_set_mediacodec_select_callback D/IJKMEDIA( 1043): ijkmp_android_set_mediacodec_select_callback()=void D/IJKMEDIA( 1043): IjkMediaPlayer_setOptionLong D/IJKMEDIA( 1043): IjkMediaPlayer_setOptionLong I/flutter ( 1043): [inf] 2021-01-03 19:44:29.752260 [fijk] create player id:15 I/flutter ( 1043): [inf] 2021-01-03 19:44:29.757152 [fijk] FijkPlayer{id:15} setOption k:enable-snapshot, v:1 I/flutter ( 1043): [inf] 2021-01-03 19:44:29.757798 [fijk] FijkPlayer{id:15} setOption k:mediacodec-all-videos, v:1 I/flutter ( 1043): [inf] 2021-01-03 19:44:29.758433 [fijk] FijkPlayer{id:15} setOption k:request-screen-on, v:1 D/IJKMEDIA( 1043): IjkMediaPlayer_setOptionLong I/flutter ( 1043): [inf] 2021-01-03 19:44:29.759541 [fijk] FijkPlayer{id:15} setOption k:request-audio-focus, v:1 I/flutter ( 1043): [inf] 2021-01-03 19:44:29.761443 [fijk] FijkPlayer{id:15} invoke setDataSource rtmp://video.xxxxxxxx.com/stream/test22 D/IJKMEDIA( 1043): IjkMediaPlayer_setDataSourceAndHeaders V/IJKMEDIA( 1043): setDataSource: path rtmp://video.xxxxxxxx.com/stream/test22 D/IJKMEDIA( 1043): ijkmp_set_data_source(url="rtmp://video.xxxxxxxx.com/stream/test22") D/IJKMEDIA( 1043): ijkmp_set_data_source(url="rtmp://video.xxxxxxxx.com/stream/test22")=0 I/flutter ( 1043): [inf] 2021-01-03 19:44:29.768166 [fijk] FijkPlayer{id:15} state changed to FijkState.initialized <= FijkState.idle I/flutter ( 1043): [inf] 2021-01-03 19:44:29.772134 [fijk] FijkPlayer{id:15} invoke prepareAsync and start #1 I/flutter ( 1043): [inf] 2021-01-03 19:44:29.772260 [fijk] FijkPlayer{id:15} setOption k:start-on-prepared, v:1 D/IJKMEDIA( 1043): IjkMediaPlayer_setOptionLong D/IJKMEDIA( 1043): IjkMediaPlayer_setOption D/IJKMEDIA( 1043): IjkMediaPlayer_prepareAsync D/IJKMEDIA( 1043): ijkmp_prepare_async() W/IJKMEDIA( 1043): remove 'timeout' option for rtmp. I/IJKMEDIA( 1043): ===== versions ===== I/IJKMEDIA( 1043): ijkplayer : I/IJKMEDIA( 1043): FFmpeg : ff4.0--ijk0.8.25--20200627--926 I/IJKMEDIA( 1043): libavutil : 56.14.100 I/IJKMEDIA( 1043): libavcodec : 58.18.100 I/IJKMEDIA( 1043): SDL_RunThread: [8554] ff_msg_loop I/IJKMEDIA( 1043): libavformat : 58.12.100 D/IJKMEDIA( 1043): message_loop I/IJKMEDIA( 1043): libswscale : 5.1.100 I/IJKMEDIA( 1043): libswresample: 3.1.100 I/IJKMEDIA( 1043): ===== options ===== I/IJKMEDIA( 1043): player-opts : enable-position-notify = 1 I/IJKMEDIA( 1043): player-opts : mediacodec-all-videos = 1 I/IJKMEDIA( 1043): player-opts : start-on-prepared = 1 I/IJKMEDIA( 1043): player-opts : overlay-format = fcc-_es2 I/IJKMEDIA( 1043): format-opts : ijkapplication = -1132309888 I/IJKMEDIA( 1043): format-opts : ijkiomanager = -890166016 I/IJKMEDIA( 1043): =================== D/IJKMEDIA( 1043): FFP_MSG_FLUSH: I/IJKMEDIA( 1043): SDL_RunThread: [8555] ff_vout
D/IJKMEDIA( 1043): ijkmp_prepare_async()=0
I/flutter ( 1043): [inf] 2021-01-03 19:44:29.780995 [fijk] FijkPlayer{id:15} state changed to FijkState.asyncPreparing <= FijkState.initialized I/flutter ( 1043): [inf] 2021-01-03 19:44:29.781718 [fijk] FijkPlayer{id:15} invoke prepareAsync and start #1 -> done
I/IJKMEDIA( 1043): SDL_RunThread: [8556] ff_read W/IJKMEDIA( 1043): remove 'timeout' option for rtmp. I/flutter ( 1043): [inf] 2021-01-03 19:44:29.804147 [fijk] FijkPlayer{id:15} state changed to FijkState.initialized <= FijkState.idle I/flutter ( 1043): [inf] 2021-01-03 19:44:29.804420 [fijk] FijkPlayer{id:15} state changed to FijkState.asyncPreparing <= FijkState.initialized I/IJKMEDIA( 1043): cur ipv4 c_ipaddr = 140.XXX.XXX.XXX I/tv.danmaku.ijk.media.player.IjkMediaPlayer( 1043): onNativeInvoke 131073 I/tv.danmaku.ijk.media.player.IjkMediaPlayer( 1043): onNativeInvoke 131074 I/IJKMEDIA( 1043): tcp did open uri = tcp://video.xxxxxxxx.com:1935, ip = 140.XXX.XXX.XXX port = 1935 E/IJKMEDIA( 1043): Option ijkiomanager not found. D/IJKMEDIA( 1043): FFP_MSG_OPEN_INPUT: I/IJKMEDIA( 1043): max_frame_duration: 10.000 D/IJKMEDIA( 1043): FFP_MSG_FIND_STREAM_INFO: I/IJKMEDIA( 1043): Input #0, flv, from 'rtmp://video.xxxxxxxx.com/stream/test22': I/IJKMEDIA( 1043): Metadata: I/IJKMEDIA( 1043): Server : I/IJKMEDIA( 1043): NGINX RTMP (github.com/sergey-dryabzhinsky/nginx-rtmp-module) I/IJKMEDIA( 1043): I/IJKMEDIA( 1043): displayWidth : I/IJKMEDIA( 1043): 1280 I/IJKMEDIA( 1043): I/IJKMEDIA( 1043): displayHeight : I/IJKMEDIA( 1043): 720 I/IJKMEDIA( 1043): I/IJKMEDIA( 1043): fps : I/IJKMEDIA( 1043): 24 I/IJKMEDIA( 1043): I/IJKMEDIA( 1043): profile : I/IJKMEDIA( 1043): I/IJKMEDIA( 1043): level : I/IJKMEDIA( 1043): I/IJKMEDIA( 1043): Duration: I/IJKMEDIA( 1043): 00:00:00.00 I/IJKMEDIA( 1043): , start: I/IJKMEDIA( 1043): 678.105000 I/IJKMEDIA( 1043): , bitrate: I/IJKMEDIA( 1043): N/A I/IJKMEDIA( 1043): I/IJKMEDIA( 1043): Stream #0:0 I/IJKMEDIA( 1043): : Audio: aac, 44100 Hz, stereo, fltp, 65 kb/s I/IJKMEDIA( 1043):
I/IJKMEDIA( 1043): SDL_Android_AudioTrack: CHANNEL_OUT_STEREO I/IJKMEDIA( 1043): SDL_Android_AudioTrack: ENCODING_PCM_16BIT W/AudioTrack( 1043): Use of stream types is deprecated for operations other than volume control W/AudioTrack( 1043): See the documentation of AudioTrack() for what to use instead with android.media.AudioAttributes to qualify your playback use case I/IJKMEDIA( 1043): SDL_Android_AudioTrack_new_from_spec: init volume as 1.000000/(0.000000,1.000000) I/IJKMEDIA( 1043): audio_session_id = 193 I/IJKMEDIA( 1043): AudioCodec: avcodec, aac
D/IJKMEDIA( 1043): FFP_MSG_COMPONENT_OPEN:
D/IJKMEDIA( 1043): ijkmp_get_msg: FFP_MSG_PREPARED D/IJKMEDIA( 1043): FFP_MSG_PREPARED: I/IJKMEDIA( 1043): SDL_RunThread: [8601] ff_audio_dec I/FIJKPLAYER( 1043): audioFocus request state:false I/IJKMEDIA( 1043): SDL_RunThread: [8600] ff_aout_android
I/flutter ( 1043): [inf] 2021-01-03 19:44:35.906251 [fijk] FijkPlayer{id:15} prepared duration 0:00:00.000000 I/flutter ( 1043): [inf] 2021-01-03 19:44:35.906423 [fijk] FijkPlayer{id:15} setupSurface I/flutter ( 1043): [inf] 2021-01-03 19:44:35.907024 [fijk] FijkPlayer{id:15} state changed to FijkState.prepared <= FijkState.asyncPreparing I/flutter ( 1043): [inf] 2021-01-03 19:44:35.907227 [fijk] FijkPlayer{id:15} setupSurface I/flutter ( 1043): [inf] 2021-01-03 19:44:35.907534 [fijk] FijkPlayer{id:15} state changed to FijkState.started <= FijkState.prepared I/flutter ( 1043): [inf] 2021-01-03 19:44:35.907699 [fijk] FijkPlayer{id:15} setupSurface D/IJKMEDIA( 1043): IjkMediaPlayer_setOption D/IJKMEDIA( 1043): IjkMediaPlayer_setMediaCodecSurface D/IJKMEDIA( 1043): ijkmp_set_android_surface(amc_surface=0xff9c9e40) D/IJKMEDIA( 1043): ffpipeline_set_surface() D/IJKMEDIA( 1043): ijkmp_set_android_surface(amc_surface=0xff9c9e40) D/IJKMEDIA( 1043): IjkMediaPlayer_setVideoSurface D/IJKMEDIA( 1043): ijkmp_set_android_surface(surface=0xff9c9e40) D/IJKMEDIA( 1043): ijkmp_set_android_surface(surface=0xff9c9e40)=void
D/IJKMEDIA( 1043): IjkMediaPlayer_setOption
D/IJKMEDIA( 1043): IjkMediaPlayer_setOption I/flutter ( 1043): [inf] 2021-01-03 19:44:35.908924 [fijk] view setup, vid:9
I/flutter ( 1043): [inf] 2021-01-03 19:44:35.909311 [fijk] view setup, vid:9 I/flutter ( 1043): [inf] 2021-01-03 19:44:35.909488 [fijk] view setup, vid:9 D/IJKMEDIA( 1043): avcodec/Audio: first frame decoded I/IJKMEDIA( 1043): first audio frame rendered D/IJKMEDIA( 1043): FFP_MSG_AUDIO_DECODED_START: D/IJKMEDIA( 1043): FFP_MSG_AUDIO_RENDERING_START:
I/flutter ( 1043): [inf] 2021-01-03 19:44:35.928537 [fijk] FijkPlayer{id:15} audio rendering started
....
-
- Log for the successful load:
I/flutter ( 1043): rtmp://video.xxxxxxxx.com/stream/test22 D/IJKMEDIA( 1043): IjkMediaPlayer_native_setup I/IJKMEDIA( 1043): av_version_info: ff4.0--ijk0.8.25--20200627--926 I/IJKMEDIA( 1043): ijk_version_info: D/IJKMEDIA( 1043): ffpipeline_create_from_android() D/IJKMEDIA( 1043): ijkmp_set_inject_opaque(0x2a16) D/IJKMEDIA( 1043): ijkmp_set_inject_opaque()=void D/IJKMEDIA( 1043): ijkmp_set_ijkio_inject_opaque(0x2a16) D/IJKMEDIA( 1043): ijkmp_set_ijkio_inject_opaque()=void D/IJKMEDIA( 1043): ijkmp_android_set_mediacodec_select_callback() D/IJKMEDIA( 1043): ffpipeline_set_mediacodec_select_callback D/IJKMEDIA( 1043): ijkmp_android_set_mediacodec_select_callback()=void D/IJKMEDIA( 1043): IjkMediaPlayer_setOptionLong D/IJKMEDIA( 1043): IjkMediaPlayer_setOptionLong I/flutter ( 1043): [inf] 2021-01-03 19:46:55.083501 [fijk] create player id:17 I/flutter ( 1043): [inf] 2021-01-03 19:46:55.085836 [fijk] FijkPlayer{id:17} setOption k:enable-snapshot, v:1 I/flutter ( 1043): [inf] 2021-01-03 19:46:55.086174 [fijk] FijkPlayer{id:17} setOption k:mediacodec-all-videos, v:1 I/flutter ( 1043): [inf] 2021-01-03 19:46:55.086330 [fijk] FijkPlayer{id:17} setOption k:request-screen-on, v:1 D/IJKMEDIA( 1043): IjkMediaPlayer_setOptionLong I/flutter ( 1043): [inf] 2021-01-03 19:46:55.088187 [fijk] FijkPlayer{id:17} setOption k:request-audio-focus, v:1 I/flutter ( 1043): [inf] 2021-01-03 19:46:55.089265 [fijk] FijkPlayer{id:17} invoke setDataSource rtmp://video.xxxxxxxx.com/stream/test22 D/IJKMEDIA( 1043): IjkMediaPlayer_setDataSourceAndHeaders V/IJKMEDIA( 1043): setDataSource: path rtmp://video.xxxxxxxx.com/stream/test22 D/IJKMEDIA( 1043): ijkmp_set_data_source(url="rtmp://video.xxxxxxxx.com/stream/test22") D/IJKMEDIA( 1043): ijkmp_set_data_source(url="rtmp://video.xxxxxxxx.com/stream/test22")=0 I/flutter ( 1043): [inf] 2021-01-03 19:46:55.090296 [fijk] FijkPlayer{id:17} state changed to FijkState.initialized <= FijkState.idle I/flutter ( 1043): [inf] 2021-01-03 19:46:55.091166 [fijk] FijkPlayer{id:17} invoke prepareAsync and start #1 I/flutter ( 1043): [inf] 2021-01-03 19:46:55.091301 [fijk] FijkPlayer{id:17} setOption k:start-on-prepared, v:1 D/IJKMEDIA( 1043): IjkMediaPlayer_setOptionLong D/IJKMEDIA( 1043): IjkMediaPlayer_setOption D/IJKMEDIA( 1043): IjkMediaPlayer_prepareAsync D/IJKMEDIA( 1043): ijkmp_prepare_async() W/IJKMEDIA( 1043): remove 'timeout' option for rtmp. I/IJKMEDIA( 1043): ===== versions ===== I/IJKMEDIA( 1043): ijkplayer : I/IJKMEDIA( 1043): FFmpeg : ff4.0--ijk0.8.25--20200627--926 I/IJKMEDIA( 1043): libavutil : 56.14.100 I/IJKMEDIA( 1043): libavcodec : 58.18.100
I/IJKMEDIA( 1043): libavformat : 58.12.100
I/IJKMEDIA( 1043): libswscale : 5.1.100 I/IJKMEDIA( 1043): libswresample: 3.1.100 I/IJKMEDIA( 1043): ===== options ===== I/IJKMEDIA( 1043): player-opts : enable-position-notify = 1 I/IJKMEDIA( 1043): player-opts : mediacodec-all-videos = 1 I/IJKMEDIA( 1043): player-opts : start-on-prepared = 1 I/IJKMEDIA( 1043): player-opts : overlay-format = fcc-_es2 I/IJKMEDIA( 1043): format-opts : ijkapplication = -968170880 I/IJKMEDIA( 1043): format-opts : ijkiomanager = -890164096 I/IJKMEDIA( 1043): ===================
I/IJKMEDIA( 1043): SDL_RunThread: [9759] ff_msg_loop D/IJKMEDIA( 1043): message_loop D/IJKMEDIA( 1043): ijkmp_prepare_async()=0 I/IJKMEDIA( 1043): SDL_RunThread: [9760] ff_vout D/IJKMEDIA( 1043): FFP_MSG_FLUSH: I/flutter ( 1043): [inf] 2021-01-03 19:46:55.093732 [fijk] FijkPlayer{id:17} state changed to FijkState.asyncPreparing <= FijkState.initialized I/flutter ( 1043): [inf] 2021-01-03 19:46:55.094495 [fijk] FijkPlayer{id:17} invoke prepareAsync and start #1 -> done I/flutter ( 1043): [inf] 2021-01-03 19:46:55.094716 [fijk] FijkPlayer{id:17} state changed to FijkState.initialized <= FijkState.idle I/flutter ( 1043): [inf] 2021-01-03 19:46:55.094912 [fijk] FijkPlayer{id:17} state changed to FijkState.asyncPreparing <= FijkState.initialized I/IJKMEDIA( 1043): SDL_RunThread: [9761] ff_read W/IJKMEDIA( 1043): remove 'timeout' option for rtmp.
I/IJKMEDIA( 1043): cur ipv4 c_ipaddr = 140.XXX.XXX.XXX I/tv.danmaku.ijk.media.player.IjkMediaPlayer( 1043): onNativeInvoke 131073 I/tv.danmaku.ijk.media.player.IjkMediaPlayer( 1043): onNativeInvoke 131074 I/IJKMEDIA( 1043): tcp did open uri = tcp://video.xxxxxxxx.com:1935, ip = 140.XXX.XXX.XXX port = 1935 E/IJKMEDIA( 1043): Option ijkiomanager not found. D/IJKMEDIA( 1043): FFP_MSG_OPEN_INPUT: I/IJKMEDIA( 1043): max_frame_duration: 10.000
I/IJKMEDIA( 1043): Input #0, flv, from 'rtmp://video.xxxxxxxx.com/stream/test22': I/IJKMEDIA( 1043): Metadata: I/IJKMEDIA( 1043): Server : I/IJKMEDIA( 1043): NGINX RTMP (github.com/sergey-dryabzhinsky/nginx-rtmp-module) I/IJKMEDIA( 1043): I/IJKMEDIA( 1043): displayWidth : I/IJKMEDIA( 1043): 1280 I/IJKMEDIA( 1043): I/IJKMEDIA( 1043): displayHeight : I/IJKMEDIA( 1043): 720 I/IJKMEDIA( 1043): I/IJKMEDIA( 1043): fps : I/IJKMEDIA( 1043): 24 I/IJKMEDIA( 1043): I/IJKMEDIA( 1043): profile : I/IJKMEDIA( 1043): I/IJKMEDIA( 1043): level : I/IJKMEDIA( 1043): I/IJKMEDIA( 1043): Duration: I/IJKMEDIA( 1043): 00:00:00.00 I/IJKMEDIA( 1043): , start: I/IJKMEDIA( 1043): 823.067000 I/IJKMEDIA( 1043): , bitrate: I/IJKMEDIA( 1043): N/A I/IJKMEDIA( 1043): I/IJKMEDIA( 1043): Stream #0:0 I/IJKMEDIA( 1043): : Audio: aac, 44100 Hz, stereo, fltp, 65 kb/s I/IJKMEDIA( 1043): I/IJKMEDIA( 1043): Stream #0:1 I/IJKMEDIA( 1043): : Video: h264, yuv420p(progressive), 1280x720, 614 kb/s I/IJKMEDIA( 1043): , I/IJKMEDIA( 1043): 23.98 fps, I/IJKMEDIA( 1043): 23.98 tbr, I/IJKMEDIA( 1043): 1k tbn, I/IJKMEDIA( 1043): 47.95 tbc I/IJKMEDIA( 1043): D/IJKMEDIA( 1043): FFP_MSG_FIND_STREAM_INFO: I/IJKMEDIA( 1043): SDL_Android_AudioTrack: CHANNEL_OUT_STEREO I/IJKMEDIA( 1043): SDL_Android_AudioTrack: ENCODING_PCM_16BIT W/AudioTrack( 1043): Use of stream types is deprecated for operations other than volume control W/AudioTrack( 1043): See the documentation of AudioTrack() for what to use instead with android.media.AudioAttributes to qualify your playback use case I/IJKMEDIA( 1043): SDL_Android_AudioTrack_new_from_spec: init volume as 1.000000/(0.000000,1.000000) I/IJKMEDIA( 1043): audio_session_id = 201 I/IJKMEDIA( 1043): AudioCodec: avcodec, aac I/IJKMEDIA( 1043): SDL_RunThread: [9783] ff_aout_android I/IJKMEDIA( 1043): SDL_RunThread: [9784] ff_audio_dec D/IJKMEDIA( 1043): ffpipenode_create_video_decoder_from_android_mediacodec() I/IJKMEDIA( 1043): ffpipenode_create_video_decoder_from_android_mediacodec: MediaCodec: H264_HIGH: enabled I/IJKMEDIA( 1043): AMediaFormat: video/avc, 1280x720 D/IJKMEDIA( 1043): SDL_AMediaFormatJava_createVideoFormat E/IJKMEDIA( 1043): csd-0[35]: 00000001 E/IJKMEDIA( 1043): csd-0[35]: 6764001f E/IJKMEDIA( 1043): csd-0[35]: acd94050 E/IJKMEDIA( 1043): csd-0[35]: 05ba1000 E/IJKMEDIA( 1043): csd-0[35]: 003e9000 E/IJKMEDIA( 1043): csd-0[35]: 0bb808f1 E/IJKMEDIA( 1043): csd-0[35]: 83196000 E/IJKMEDIA( 1043): csd-0[35]: 00000168 E/IJKMEDIA( 1043): csd-0[35]: efbcb000 I/IJKMEDIA( 1043): amc: rotate notify: 0 D/IJKMEDIA( 1043): FFP_MSG_VIDEO_ROTATION_CHANGED: 0 D/IJKMEDIA( 1043): ffpipeline_select_mediacodec_l I/tv.danmaku.ijk.media.player.IjkMediaPlayer( 1043): onSelectCodec: mime=video/avc, profile=100, level=31 I/tv.danmaku.ijk.media.player.IjkMediaPlayer( 1043): candidate codec: OMX.google.h264.decoder rank=200 I/IjkMediaCodecInfo( 1043): Unknown Profile Level 52 (524288,65536) W/tv.danmaku.ijk.media.player.IjkMediaPlayer( 1043): unaccetable codec: OMX.google.h264.decoder E/IJKMEDIA( 1043): mediacodec_select_callback: onSelectCodec failed E/IJKMEDIA( 1043): amc: no suitable codec I/IJKMEDIA( 1043): VideoCodec: avcodec, h264 W/IJKMEDIA( 1043): fps: 23.975610 (normal) W/IJKMEDIA( 1043): fps: 23.976024 (normal) D/IJKMEDIA( 1043): FFP_MSG_COMPONENT_OPEN: I/IJKMEDIA( 1043): SDL_RunThread: [9790] ff_video_dec D/IJKMEDIA( 1043): FFP_MSG_VIDEO_ROTATION_CHANGED: 0 D/IJKMEDIA( 1043): FFP_MSG_VIDEO_SIZE_CHANGED: 1280, 720 D/IJKMEDIA( 1043): FFP_MSG_SAR_CHANGED: 0, 1 D/IJKMEDIA( 1043): ijkmp_get_msg: FFP_MSG_PREPARED D/IJKMEDIA( 1043): FFP_MSG_PREPARED: I/FIJKPLAYER( 1043): audioFocus request state:true D/IJKMEDIA( 1043): avcodec/Audio: first frame decoded I/IJKMEDIA( 1043): first audio frame rendered D/IJKMEDIA( 1043): FFP_MSG_AUDIO_DECODED_START: D/IJKMEDIA( 1043): FFP_MSG_AUDIO_RENDERING_START: I/flutter ( 1043): [inf] 2021-01-03 19:46:58.098175 [fijk] FijkPlayer{id:17} rotate degree 0 I/flutter ( 1043): [inf] 2021-01-03 19:46:58.098591 [fijk] FijkPlayer{id:17} rotate degree 0 I/flutter ( 1043): [inf] 2021-01-03 19:46:58.098887 [fijk] FijkPlayer{id:17} size changed (1280.0, 720.0) I/flutter ( 1043): [inf] 2021-01-03 19:46:58.100490 [fijk] FijkPlayer{id:17} prepared duration 0:00:00.000000 I/flutter ( 1043): [inf] 2021-01-03 19:46:58.102929 [fijk] FijkPlayer{id:17} setupSurface D/IJKMEDIA( 1043): IjkMediaPlayer_setOption D/IJKMEDIA( 1043): IjkMediaPlayer_setMediaCodecSurface D/IJKMEDIA( 1043): ijkmp_set_android_surface(amc_surface=0xff9c9e40) D/IJKMEDIA( 1043): ffpipeline_set_surface() D/IJKMEDIA( 1043): ijkmp_set_android_surface(amc_surface=0xff9c9e40) D/IJKMEDIA( 1043): IjkMediaPlayer_setVideoSurface D/IJKMEDIA( 1043): ijkmp_set_android_surface(surface=0xff9c9e40) D/IJKMEDIA( 1043): ijkmp_set_android_surface(surface=0xff9c9e40)=void I/flutter ( 1043): [inf] 2021-01-03 19:46:58.104623 [fijk] FijkPlayer{id:17} state changed to FijkState.prepared <= FijkState.asyncPreparing I/flutter ( 1043): [inf] 2021-01-03 19:46:58.105557 [fijk] FijkPlayer{id:17} setupSurface D/IJKMEDIA( 1043): IjkMediaPlayer_setOption I/flutter ( 1043): [inf] 2021-01-03 19:46:58.115331 [fijk] FijkPlayer{id:17} state changed to FijkState.started <= FijkState.prepared I/flutter ( 1043): [inf] 2021-01-03 19:46:58.116759 [fijk] FijkPlayer{id:17} setupSurface D/IJKMEDIA( 1043): IjkMediaPlayer_setOption I/flutter ( 1043): [inf] 2021-01-03 19:46:58.117622 [fijk] FijkPlayer{id:17} audio rendering started I/flutter ( 1043): [inf] 2021-01-03 19:46:58.118146 [fijk] FijkPlayer{id:17} setupSurface D/IJKMEDIA( 1043): IjkMediaPlayer_setOption I/flutter ( 1043): [inf] 2021-01-03 19:46:58.119005 [fijk] view setup, vid:10 I/flutter ( 1043): [inf] 2021-01-03 19:46:58.119949 [fijk] view setup, vid:10 I/flutter ( 1043): [inf] 2021-01-03 19:46:58.121186 [fijk] view setup, vid:10 I/flutter ( 1043): [inf] 2021-01-03 19:46:58.121959 [fijk] view setup, vid:10 D/IJKMEDIA( 1043): SDL_VoutFFmpeg_CreateOverlay(w=1280, h=720, fmt=YV12(0x32315659, dp=0xf52872f0) D/IJKMEDIA( 1043): FFP_MSG_VIDEO_SIZE_CHANGED: 1280, 720 D/IJKMEDIA( 1043): Video: first frame decoded D/IJKMEDIA( 1043): FFP_MSG_VIDEO_DECODED_START: I/IJKMEDIA( 1043): [EGL] eglInitialize 1.4 D/HostConnection( 1043): HostConnection::get() New Host Connection established 0xbc8c29c0, tid 9760 D/HostConnection( 1043): HostComposition ext ANDROID_EMU_CHECKSUM_HELPER_v1 ANDROID_EMU_dma_v1 ANDROID_EMU_direct_mem ANDROID_EMU_host_composition_v1 ANDROID_EMU_host_composition_v2 ANDROID_EMU_vulkan ANDROID_EMU_deferred_vulkan_commands ANDROID_EMU_vulkan_null_optional_strings ANDROID_EMU_vulkan_create_resources_with_requirements ANDROID_EMU_YUV420_888_to_NV21 ANDROID_EMU_YUV_Cache ANDROID_EMU_async_unmap_buffer ANDROID_EMU_vulkan_free_memory_sync ANDROID_EMU_vulkan_shader_float16_int8 ANDROID_EMU_vulkan_async_queue_submit GL_OES_vertex_array_object GL_KHR_texture_compression_astc_ldr ANDROID_EMU_host_side_tracing ANDROID_EMU_gles_max_version_2 I/IJKMEDIA( 1043): [EGL] ANativeWindow_setBuffersGeometry(f=2); D/eglCodecCommon( 1043): setVertexArrayObject: set vao to 0 (0) 0 0 D/EGL_emulation( 1043): eglCreateContext: 0xc67c54c0: maj 2 min 0 rcv 2 I/flutter ( 1043): [inf] 2021-01-03 19:46:58.140677 [fijk] FijkPlayer{id:17} size changed (1280.0, 720.0) D/IJKMEDIA( 1043): FFP_MSG_VIDEO_SIZE_CHANGED: 1280, 720 I/flutter ( 1043): [inf] 2021-01-03 19:46:58.153301 [fijk] FijkPlayer{id:17} size changed (1280.0, 720.0) D/EGL_emulation( 1043): eglMakeCurrent: 0xc67c54c0: ver 2 0 (tinfo 0xbcc1a420) I/IJKMEDIA( 1043): [GLES2] Version = OpenGL ES 2.0 (4.5.0 NVIDIA 455.38) I/IJKMEDIA( 1043): [GLES2] Vendor = Google (NVIDIA Corporation) I/IJKMEDIA( 1043): [GLES2] Renderer = Android Emulator OpenGL ES Translator (GeForce GTX 970/PCIe/SSE2) I/IJKMEDIA( 1043): [GLES2] Extensions = GL_EXT_debug_marker GL_EXT_robustness GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_depth24 GL_OES_depth32 GL_OES_element_index_uint GL_OES_texture_float GL_OES_texture_float_linear GL_OES_compressed_ETC1_RGB8_texture GL_OES_depth_texture GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_OES_packed_depth_stencil GL_OES_texture_npot GL_OES_rgb8_rgba8 GL_EXT_color_buffer_half_float GL_EXT_texture_format_BGRA8888 ANDROID_EMU_CHECKSUM_HELPER_v1 ANDROID_EMU_dma_v1 ANDROID_EMU_direct_mem ANDROID_EMU_host_composition_v1 ANDROID_EMU_host_composition_v2 ANDROID_EMU_vulkan ANDROID_EMU_deferred_vulkan_commands ANDROID_EMU_vulkan_null_optional_strings ANDROID_EMU_vulkan_create_resources_with_requirements ANDROID_EMU_YUV420_888_to_NV21 ANDROID_EMU_YUV_Cache ANDROID_EMU_async_unmap_buffer ANDROID_EMU_vulkan_free_memory_sync ANDROID_EMU_vulkan_shader_float16_int8 ANDROID_EMU_vulkan_async_queue_submit GL_OES_vertex_array_object GL_KHR_texture_compression_astc_ldr ANDROID_EMU_host_side_tr I/IJKMEDIA( 1043): create render yuv420p I/IJKMEDIA( 1043): use render yuv420p I/IJKMEDIA( 1043): ANativeWindow_setBuffersGeometry(w=1,h=1) -> (w=1280,h=720); I/IJKMEDIA( 1043): IJK_GLES2_Renderer_TexCoords_cropRight D/IJKMEDIA( 1043): FFP_MSG_VIDEO_RENDERING_START: D/IJKMEDIA( 1043): SDL_VoutFFmpeg_CreateOverlay(w=1280, h=720, fmt=YV12(0x32315659, dp=0xf52872f0) D/IJKMEDIA( 1043): FFP_MSG_VIDEO_SIZE_CHANGED: 1280, 720 D/IJKMEDIA( 1043): SDL_VoutFFmpeg_CreateOverlay(w=1280, h=720, fmt=YV12(0x32315659, dp=0xf52872f0) I/tv.danmaku.ijk.media.player.IjkMediaPlayer( 1043): Info: MEDIA_INFO_VIDEO_RENDERING_START I/IJKMEDIA( 1043): first video frame rendered, ret 1 I/flutter ( 1043): [inf] 2021-01-03 19:46:58.179823 [fijk] FijkPlayer{id:17} video rendering started I/flutter ( 1043): [inf] 2021-01-03 19:46:58.180114 [fijk] FijkPlayer{id:17} size changed (1280.0, 720.0) D/HostConnection( 1043): HostConnection::get() New Host Connection established 0xbc8c29c0, tid 9760 D/HostConnection( 1043): HostComposition ext ANDROID_EMU_CHECKSUM_HELPER_v1 ANDROID_EMU_dma_v1 ANDROID_EMU_direct_mem ANDROID_EMU_host_composition_v1 ANDROID_EMU_host_composition_v2 ANDROID_EMU_vulkan ANDROID_EMU_deferred_vulkan_commands ANDROID_EMU_vulkan_null_optional_strings ANDROID_EMU_vulkan_create_resources_with_requirements ANDROID_EMU_YUV420_888_to_NV21 ANDROID_EMU_YUV_Cache ANDROID_EMU_async_unmap_buffer ANDROID_EMU_vulkan_free_memory_sync ANDROID_EMU_vulkan_shader_float16_int8 ANDROID_EMU_vulkan_async_queue_submit GL_OES_vertex_array_object GL_KHR_texture_compression_astc_ldr ANDROID_EMU_host_side_tracing ANDROID_EMU_gles_max_version_2 D/EGL_emulation( 1043): eglMakeCurrent: 0xc67c54c0: ver 2 0 (tinfo 0xbcc1a420) D/HostConnection( 1043): HostConnection::get() New Host Connection established 0xbc8c29c0, tid 9760 D/HostConnection( 1043): HostComposition ext ANDROID_EMU_CHECKSUM_HELPER_v1 ANDROID_EMU_dma_v1 ANDROID_EMU_direct_mem ANDROID_EMU_host_composition_v1 ANDROID_EMU_host_composition_v2 ANDROID_EMU_vulkan ANDROID_EMU_deferred_vulkan_commands ANDROID_EMU_vulkan_null_optional_strings ANDROID_EMU_vulkan_create_resources_with_requirements ANDROID_EMU_YUV420_888_to_NV21 ANDROID_EMU_YUV_Cache ANDROID_EMU_async_unmap_buffer ANDROID_EMU_vulkan_free_memory_sync ANDROID_EMU_vulkan_shader_float16_int8 ANDROID_EMU_vulkan_async_queue_submit GL_OES_vertex_array_object GL_KHR_texture_compression_astc_ldr ANDROID_EMU_host_side_tracing ANDROID_EMU_gles_max_version_2 D/EGL_emulation( 1043): eglMakeCurrent: 0xc67c54c0: ver 2 0 (tinfo 0xbcc1a420) D/HostConnection( 1043): HostConnection::get() New Host Connection established 0xbc8c29c0, tid 9760 D/HostConnection( 1043): HostComposition ext ANDROID_EMU_CHECKSUM_HELPER_v1 ANDROID_EMU_dma_v1 ANDROID_EMU_direct_mem ANDROID_EMU_host_composition_v1 ANDROID_EMU_host_composition_v2 ANDROID_EMU_vulkan ANDROID_EMU_deferred_vulkan_commands ANDROID_EMU_vulkan_null_optional_strings ANDROID_EMU_vulkan_create_resources_with_requirements ANDROID_EMU_YUV420_888_to_NV21 ANDROID_EMU_YUV_Cache ANDROID_EMU_async_unmap_buffer ANDROID_EMU_vulkan_free_memory_sync ANDROID_EMU_vulkan_shader_float16_int8 ANDROID_EMU_vulkan_async_queue_submit GL_OES_vertex_array_object GL_KHR_texture_compression_astc_ldr ANDROID_EMU_host_side_tracing ANDROID_EMU_gles_max_version_2 D/EGL_emulation( 1043): eglMakeCurrent: 0xc67c54c0: ver 2 0 (tinfo 0xbcc1a420) ....
请问后来解决了吗 iOS 遇到这个问题
nope. replaced with a native ijkplayer.