Giter Site home page Giter Site logo

Comments (11)

CaiJingLong avatar CaiJingLong commented on May 13, 2024 1

看起来和m3u8无关 因为我使用另外的m3u8源是可用的
http://222.207.48.30/hls/startv.m3u8

另外,做下记录,在日志中有这么几句日志

Could not find codec parameters for stream 1 (Audio: aac ([15][0][0][0] / 0x000F), 0 channels, fltp): unspecified sample rate
.....
I/IJKMEDIA(11627):     Stream #0:1
I/IJKMEDIA(11627): : Audio: aac ([15][0][0][0] / 0x000F), 0 channels, fltp

似乎是无法找到audio的采样信息, 但是我使用mac上的ffprobe是可以获取的
后面我定位下原因,争取解决下

播放后的日志如下: 作为后续除错定位使用

D/IJKMEDIA(11627): IjkMediaPlayer_native_setup
I/IJKMEDIA(11627): av_version_info: ff3.4--ijk0.8.7--20180103--001
I/IJKMEDIA(11627): ijk_version_info: k0.8.8-15-ge7fde118
D/IJKMEDIA(11627): ffpipeline_create_from_android()
D/IJKMEDIA(11627): ijkmp_set_inject_opaque(0x26e6)
D/IJKMEDIA(11627): ijkmp_set_inject_opaque()=void
D/IJKMEDIA(11627): ijkmp_set_ijkio_inject_opaque(0x26e6)
D/IJKMEDIA(11627): ijkmp_set_ijkio_inject_opaque()=void
D/IJKMEDIA(11627): ijkmp_android_set_mediacodec_select_callback()
D/IJKMEDIA(11627): ffpipeline_set_mediacodec_select_callback
D/IJKMEDIA(11627): ijkmp_android_set_mediacodec_select_callback()=void
D/IJKMEDIA(11627): IjkMediaPlayer_setOption
D/IJKMEDIA(11627): IjkMediaPlayer_setOptionLong
I/chatty  (11627): uid=10085(com.example.ijkplayer_example) identical 6 lines
D/IJKMEDIA(11627): IjkMediaPlayer_setOptionLong
D/IJKMEDIA(11627): IjkMediaPlayer_setVideoSurface
D/IJKMEDIA(11627): ijkmp_set_android_surface(surface=0xfff10860)
D/IJKMEDIA(11627): ffpipeline_set_surface()
D/IJKMEDIA(11627): ijkmp_set_android_surface(surface=0xfff10860)=void
I/flutter (11627): (d)Ijk:onTextureChange 3
I/flutter (11627): (d)Ijk:id = 3 net uri = https://media001.geekbang.org/f433fd1ce5e84d27b1101f0dad72a126/de563bb4aba94b5f95f448b33be4dd9f-9aede6861be944d696fe365f3a33b7b4-sd.m3u8 ,headers = {}
D/IJKMEDIA(11627): IjkMediaPlayer_setVolume
D/IJKMEDIA(11627): ijkmp_android_set_volume(1.000000, 1.000000)
D/IJKMEDIA(11627): ffpipeline_set_volume
D/IJKMEDIA(11627): ijkmp_android_set_volume(1.000000, 1.000000)=void
D/IJKMEDIA(11627): IjkMediaPlayer_setDataSourceAndHeaders
V/IJKMEDIA(11627): setDataSource: path https://media001.geekbang.org/f433fd1ce5e84d27b1101f0dad72a126/de563bb4aba94b5f95f448b33be4dd9f-9aede6861be944d696fe365f3a33b7b4-sd.m3u8
D/IJKMEDIA(11627): ijkmp_set_data_source(url="https://media001.geekbang.org/f433fd1ce5e84d27b1101f0dad72a126/de563bb4aba94b5f95f448b33be4dd9f-9aede6861be944d696fe365f3a33b7b4-sd.m3u8")
D/IJKMEDIA(11627): ijkmp_set_data_source(url="https://media001.geekbang.org/f433fd1ce5e84d27b1101f0dad72a126/de563bb4aba94b5f95f448b33be4dd9f-9aede6861be944d696fe365f3a33b7b4-sd.m3u8")=0
D/IJKMEDIA(11627): IjkMediaPlayer_prepareAsync
D/IJKMEDIA(11627): ijkmp_prepare_async()
I/IJKMEDIA(11627): ===== versions =====
I/IJKMEDIA(11627): ijkplayer    : k0.8.8-15-ge7fde118
I/IJKMEDIA(11627): FFmpeg       : ff3.4--ijk0.8.7--20180103--001
I/IJKMEDIA(11627): libavutil    : 55.78.100
I/IJKMEDIA(11627): libavcodec   : 57.107.100
I/IJKMEDIA(11627): libavformat  : 57.83.100
I/IJKMEDIA(11627): libswscale   : 4.8.100
I/IJKMEDIA(11627): libswresample: 2.9.100
I/IJKMEDIA(11627): ===== options =====
I/IJKMEDIA(11627): player-opts : reconnect                    = 5
I/IJKMEDIA(11627): player-opts : framedrop                    = 5
I/IJKMEDIA(11627): SDL_RunThread: [11861] ff_msg_loop
I/IJKMEDIA(11627): player-opts : enable-accurate-seek         = 1
D/IJKMEDIA(11627): message_loop
I/IJKMEDIA(11627): player-opts : mediacodec                   = 1
I/IJKMEDIA(11627): format-opts : ijkapplication               = -227734912
I/IJKMEDIA(11627): format-opts : ijkiomanager                 = -669541888
I/IJKMEDIA(11627): format-opts : fflags                       = fastseek
I/IJKMEDIA(11627): format-opts : analyzemaxduration           = 100
I/IJKMEDIA(11627): format-opts : analyzeduration              = 1
I/IJKMEDIA(11627): format-opts : probesize                    = 10240
I/IJKMEDIA(11627): format-opts : flush_packets                = 1
I/IJKMEDIA(11627): ===================
D/IJKMEDIA(11627): FFP_MSG_FLUSH:
I/IJKMEDIA(11627): SDL_RunThread: [11862] ff_vout
D/IJKMEDIA(11627): ijkmp_prepare_async()=0
I/IJKMEDIA(11627): SDL_RunThread: [11863] ff_read
I/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627): onNativeInvoke 1
I/NotifyChannel(11627): onNativeInvoke 1
I/IJKMEDIA(11627): Hit DNS cache hostname = media001.geekbang.org
I/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627): onNativeInvoke 131073
I/NotifyChannel(11627): onNativeInvoke 131073
I/flutter (11627): IjkMediaControllerMixin attach [GlobalKey#8a1fa]
I/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627): onNativeInvoke 131074
I/NotifyChannel(11627): onNativeInvoke 131074
I/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627): onNativeInvoke 2
I/NotifyChannel(11627): onNativeInvoke 2
I/IJKMEDIA(11627): Opening 'https://media001.geekbang.org/f433fd1ce5e84d27b1101f0dad72a126/de563bb4aba94b5f95f448b33be4dd9f-b64cf280cabc4d9c202a62095ae10e95-sd-00001.ts' for reading
I/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627): onNativeInvoke 1
I/NotifyChannel(11627): onNativeInvoke 1
I/IJKMEDIA(11627): Hit DNS cache hostname = media001.geekbang.org
I/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627): onNativeInvoke 131073
I/NotifyChannel(11627): onNativeInvoke 131073
I/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627): onNativeInvoke 131074
I/NotifyChannel(11627): onNativeInvoke 131074
I/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627): onNativeInvoke 2
I/NotifyChannel(11627): onNativeInvoke 2
E/IJKMEDIA(11627): Option analyzemaxduration not found.
D/IJKMEDIA(11627): FFP_MSG_OPEN_INPUT:
I/NotifyChannel(11627): onInfoListener 10005, extra = 0, isPlaying = false
E/IJKMEDIA(11627): Invalid NAL unit 0, skipping.
W/IJKMEDIA(11627): Stream #0: not enough frames to estimate rate; consider increasing probesize
W/IJKMEDIA(11627): Could not find codec parameters for stream 1 (Audio: aac ([15][0][0][0] / 0x000F), 0 channels, fltp): unspecified sample rate
W/IJKMEDIA(11627): Consider increasing the value for the 'analyzeduration' and 'probesize' options
I/IJKMEDIA(11627): max_frame_duration: 10.000
I/IJKMEDIA(11627): Input #0, hls,applehttp, from 'https://media001.geekbang.org/f433fd1ce5e84d27b1101f0dad72a126/de563bb4aba94b5f95f448b33be4dd9f-9aede6861be944d696fe365f3a33b7b4-sd.m3u8':
D/IJKMEDIA(11627): FFP_MSG_FIND_STREAM_INFO:
I/IJKMEDIA(11627):   Duration:
I/IJKMEDIA(11627): 00:04:45.96
I/IJKMEDIA(11627): , start:
I/IJKMEDIA(11627): 1.480000
I/IJKMEDIA(11627): , bitrate:
I/IJKMEDIA(11627): 0 kb/s
I/IJKMEDIA(11627):
I/IJKMEDIA(11627):   Program 0
I/IJKMEDIA(11627):     Metadata:
I/IJKMEDIA(11627):       variant_bitrate :
I/NotifyChannel(11627): onInfoListener 10006, extra = 0, isPlaying = false
I/IJKMEDIA(11627): 0
I/IJKMEDIA(11627):
I/IJKMEDIA(11627):     Stream #0:0
I/IJKMEDIA(11627): : Video: h264 ([27][0][0][0] / 0x001B), yuv420p, 1280x720 [SAR 1:1 DAR 16:9]
I/IJKMEDIA(11627): ,
I/IJKMEDIA(11627): 25 tbr,
I/IJKMEDIA(11627): 90k tbn,
I/IJKMEDIA(11627): 50 tbc
I/IJKMEDIA(11627):
I/IJKMEDIA(11627):     Metadata:
I/IJKMEDIA(11627):       variant_bitrate :
I/IJKMEDIA(11627): 0
I/IJKMEDIA(11627):
I/IJKMEDIA(11627):     Stream #0:1
I/IJKMEDIA(11627): : Audio: aac ([15][0][0][0] / 0x000F), 0 channels, fltp
I/IJKMEDIA(11627):
I/IJKMEDIA(11627):     Metadata:
I/IJKMEDIA(11627):       variant_bitrate :
I/IJKMEDIA(11627): 0
I/IJKMEDIA(11627):
D/IJKMEDIA(11627): ffpipenode_create_video_decoder_from_android_mediacodec()
I/IJKMEDIA(11627): ffpipenode_create_video_decoder_from_android_mediacodec: MediaCodec: H264_HIGH: enabled
I/IJKMEDIA(11627): AMediaFormat: video/avc, 1280x720
D/IJKMEDIA(11627): SDL_AMediaFormatJava_createVideoFormat
E/IJKMEDIA(11627): csd-0: naked
I/IJKMEDIA(11627): amc: rotate notify: 0
D/IJKMEDIA(11627): ffpipeline_select_mediacodec_l
D/IJKMEDIA(11627): FFP_MSG_VIDEO_ROTATION_CHANGED: 0
I/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627): onSelectCodec: mime=video/avc, profile=100, level=31
I/NotifyChannel(11627): onInfoListener 10001, extra = 0, isPlaying = false
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.aac.decoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):     mime: audio/mp4a-latm
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.amrnb.decoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):     mime: audio/3gpp
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.amrwb.decoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):     mime: audio/amr-wb
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.flac.decoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):     mime: audio/flac
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.g711.alaw.decoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):     mime: audio/g711-alaw
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.g711.mlaw.decoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):     mime: audio/g711-mlaw
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.gsm.decoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):     mime: audio/gsm
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.mp3.decoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):     mime: audio/mpeg
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.opus.decoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):     mime: audio/opus
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.raw.decoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):     mime: audio/raw
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.vorbis.decoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):     mime: audio/vorbis
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.aac.encoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.amrnb.encoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.amrwb.encoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.flac.encoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.h264.decoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):     mime: video/avc
I/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627): candidate codec: OMX.google.h264.decoder rank=200
I/IjkMediaCodecInfo(11627):  Unknown Profile Level 52 (524288,65536)
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.h263.decoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):     mime: video/3gpp
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.hevc.decoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):     mime: video/hevc
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.mpeg4.decoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):     mime: video/mp4v-es
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.vp8.decoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):     mime: video/x-vnd.on2.vp8
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.vp9.decoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):     mime: video/x-vnd.on2.vp9
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.h264.encoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.h263.encoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.mpeg4.encoder
D/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627):   found codec: OMX.google.vp8.encoder
W/tv.danmaku.ijk.media.player.IjkMediaPlayer(11627): unaccetable codec: OMX.google.h264.decoder
E/IJKMEDIA(11627): mediacodec_select_callback: onSelectCodec failed
E/IJKMEDIA(11627): amc: no suitable codec
I/IJKMEDIA(11627): VideoCodec: avcodec, h264
W/IJKMEDIA(11627): fps: 25.000000 (normal)
D/IJKMEDIA(11627): FFP_MSG_COMPONENT_OPEN:
D/IJKMEDIA(11627): FFP_MSG_VIDEO_SIZE_CHANGED: 1280, 720
D/IJKMEDIA(11627): FFP_MSG_SAR_CHANGED: 1, 1
I/IJKMEDIA(11627): SDL_RunThread: [11872] ff_video_dec
D/IJKMEDIA(11627): ijkmp_get_msg: FFP_MSG_PREPARED
D/IJKMEDIA(11627): FFP_MSG_PREPARED:
D/IJKMEDIA(11627): FFP_MSG_VIDEO_ROTATION_CHANGED: 0
I/NotifyChannel(11627): onInfoListener 10007, extra = 0, isPlaying = true
I/NotifyChannel(11627): prepare {duration=285.96, tcpSpeed=225844, isPlaying=true, outputFps=0.0, currentPosition=0.0, width=1280, degree=0, height=720}
I/NotifyChannel(11627): completion buffer update {duration=285.96, tcpSpeed=274102, isPlaying=true, outputFps=0.0, currentPosition=0.0, width=1280, degree=0, height=720} 0
I/NotifyChannel(11627): onInfoListener 10001, extra = 0, isPlaying = true

from flutter_ijkplayer.

cctanfujun avatar cctanfujun commented on May 13, 2024

iOS 经测试 播放正常

from flutter_ijkplayer.

CaiJingLong avatar CaiJingLong commented on May 13, 2024

提供一个公网可用的流地址

from flutter_ijkplayer.

cctanfujun avatar cctanfujun commented on May 13, 2024

提供一个公网可用的流地址

https://media001.geekbang.org/f433fd1ce5e84d27b1101f0dad72a126/de563bb4aba94b5f95f448b33be4dd9f-9aede6861be944d696fe365f3a33b7b4-sd.m3u8

from flutter_ijkplayer.

0-php avatar 0-php commented on May 13, 2024

@CaiJingLong 其实我在之前的使用过程中也遇到了这个问题我用ffmpeg 转出来的m3u8确实没声音 用其他网盘的m3u8却正常 http://www.0-php.com/11/playlist.m3u8

from flutter_ijkplayer.

yhsj0919 avatar yhsj0919 commented on May 13, 2024

https://156zy.suboyouku.com/2019/05/04/65Y0YxOc4ShcFAPa/playlist.m3u8 我现在也遇到了这个问题(提供一个资源站的视频链接),但是其他视频的链接大部分都是正常的

from flutter_ijkplayer.

jendy2012 avatar jendy2012 commented on May 13, 2024

@CaiJingLong 几乎所有的m3u8都没有声音。

from flutter_ijkplayer.

ixdog avatar ixdog commented on May 13, 2024

同样.我也是没声音 但是例子里面的mp4正常。

from flutter_ijkplayer.

CaiJingLong avatar CaiJingLong commented on May 13, 2024

@cctanfujun @0-php @yhsj0919 @jendy2012
各位可以尝试一下新的0.2.7版本

提供一个公网可用的流地址

https://media001.geekbang.org/f433fd1ce5e84d27b1101f0dad72a126/de563bb4aba94b5f95f448b33be4dd9f-9aede6861be944d696fe365f3a33b7b4-sd.m3u8

我使用这个连接中的m3u8测试有声音了

from flutter_ijkplayer.

CaiJingLong avatar CaiJingLong commented on May 13, 2024

这个bug是由于我搜索到一些优化选项会影响m3u8的声音, 播放器内部的原因不明
https://www.jianshu.com/p/843c86a9e9ad

我在#79中把一些选项关闭了, 可能后续的一些播放表现会和从前不太一样, 主要应该体现在网络资源的播放上.

如果对于选项有需要,请参考readme中的自定option章节的说明.

from flutter_ijkplayer.

ruysay avatar ruysay commented on May 13, 2024

感謝兄弟分享經驗。
我這裡也遇到類似的狀況。
在我的程式裡用同樣的Option設置,播放RTSP stream效果很好,但是播放檔案的時候,則會出現有影像但沒有聲音的狀況。
修正方案是把針對RTSP stream播放的優化選項關閉,聲音就完全正常了。

from flutter_ijkplayer.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.