I/tv.danmaku.ijk.media.player.IjkMediaPlayer: selected codec: OMX.qcom.video.decoder.avc rank=800
I/IJKMEDIA: SDL_AMediaCodecDummy_create
D/IJKMEDIA: SDL_AMediaCodec_increaseReference(): ref=1
I/IJKMEDIA: reconfigure_codec_l:new acodec: 0xb9f39858
D/IJKMEDIA: SDL_AMediaCodec_increaseReference(): ref=2
I/IJKMEDIA: VideoCodec: MediaCodec, OMX.qcom.video.decoder.avc
W/IJKMEDIA: fps: 25.000000 (normal)
W/IJKMEDIA: fps: 25.000000 (normal)
D/IJKMEDIA: FFP_MSG_VIDEO_ROTATION_CHANGED: 0
D/IJKMEDIA: FFP_MSG_VIDEO_SIZE_CHANGED: 750, 1334
D/IJKMEDIA: FFP_MSG_SAR_CHANGED: 9835, 9839
D/IJKMEDIA: ijkmp_get_msg: FFP_MSG_PREPARED
D/IJKMEDIA: FFP_MSG_PREPARED:
I/IJKMEDIA: SDL_RunThread: [14777] ff_video_dec
I/IJKMEDIA: SDL_RunThread: [14779] amediacodec_input_thread
[ 05-31 15:38:15.680 463:14766 E/ ]
not in avi mode
I/IJKMEDIA: Auto-inserting h264_mp4toannexb bitstream filter
I/IJKMEDIA: Auto-inserting h264_mp4toannexb bitstream filter
D/TextureRenderView: willDetachFromWindow()
D/TextureRenderView: didDetachFromWindow()
D/IJKMEDIA: IjkMediaPlayer_setVideoSurface
D/TextureRenderView: onSurfaceTextureDestroyed: destroy: true
D/IJKMEDIA: FFP_MSG_BUFFERING_START:
I/IJKMEDIA: Auto-inserting h264_mp4toannexb bitstream filter
W/IJKMEDIA: open_next_file() failed (1)
W/IJKMEDIA: open_next_file() failed (2)
W/IJKMEDIA: open_next_file() failed (3)
D/IJKMEDIA: FFP_MSG_BUFFERING_END:
I/IJKMEDIA: SDL_AMediaCodecJava_dequeueOutputBuffer: INFO_OUTPUT_BUFFERS_CHANGED
I/IJKMEDIA: SDL_AMediaCodecJava_dequeueOutputBuffer: INFO_OUTPUT_FORMAT_CHANGED
I/IJKMEDIA: AMEDIACODEC__INFO_OUTPUT_FORMAT_CHANGED
D/IJKMEDIA: SDL_AMediaFormatJava_init
I/IJKMEDIA: AMEDIACODEC__INFO_OUTPUT_FORMAT_CHANGED
width-height: (752 x 1344)
color-format: (QCOM_FORMATYUV420PackedSemiPlanar32m: 0x7fa30c04)
stride: (768)
slice-height: (1344)
crop: (0, 0, 749, 1333)
D/IJKMEDIA: SDL_VoutAMediaCodec_CreateOverlay(w=750, h=1334, fmt=_AMC vout=0xba2d51e8)
D/IJKMEDIA: FFP_MSG_VIDEO_SIZE_CHANGED: 750, 1334
D/IJKMEDIA: Video: first frame decoded
D/IJKMEDIA: SDL_VoutAMediaCodec_CreateOverlay(w=750, h=1334, fmt=_AMC vout=0xba2d51e8)
D/IJKMEDIA: FFP_MSG_VIDEO_SIZE_CHANGED: 750, 1334
D/IJKMEDIA: FFP_MSG_VIDEO_RENDERING_START:
I/tv.danmaku.ijk.media.player.IjkMediaPlayer: Info: MEDIA_INFO_VIDEO_RENDERING_START
D/IJKMEDIA: FFP_MSG_VIDEO_SIZE_CHANGED: 750, 1334
D/IJKMEDIA: SDL_VoutAMediaCodec_CreateOverlay(w=750, h=1334, fmt=_AMC vout=0xba2d51e8)
貌似发现的规律是这样子的,如果
I/IJKMEDIA: SDL_AMediaCodecJava_dequeueOutputBuffer: INFO_OUTPUT_BUFFERS_CHANGED
I/IJKMEDIA: SDL_AMediaCodecJava_dequeueOutputBuffer: INFO_OUTPUT_FORMAT_CHANGED
在MEDIA_INFO_VIDEO_RENDERING_START之前调用,那么就不会出现花屏。如果MEDIA_INFO_VIDEO_RENDERING_START先回调了,就会花屏。