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

无法播放手机b站客户端直播视频的dlna投屏链接 #17

Open
unnoPlayer opened this issue Nov 30, 2022 · 0 comments
Open

无法播放手机b站客户端直播视频的dlna投屏链接 #17

unnoPlayer opened this issue Nov 30, 2022 · 0 comments

Comments

@unnoPlayer
Copy link

unnoPlayer commented Nov 30, 2022

我用dlna功能分别拿到b站安卓端和苹果端的直播视频的链接,然后在该应用的 SDK默认播放器示例 -> 测试播放地址 中填入并播放,得到如下情况:
1、ijkplayer 无法播放安卓端和苹果端的链接;
2、exoplayer 可以播放安卓端的链接,但无法播放苹果端的链接。

下面是第1种情况的log:
D/IJKMEDIA: IjkMediaPlayer_setVideoSurface
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)
D/IJKMEDIA: ffpipeline_set_surface()
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)=void
D/IJKMEDIA: IjkMediaPlayer_setVideoSurface
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)
D/IJKMEDIA: ffpipeline_set_surface()
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)=void
D/IJKMEDIA: IjkMediaPlayer_release
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)
D/IJKMEDIA: ffpipeline_set_surface()
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)=void
D/IJKMEDIA: ijkmp_shutdown_l()
D/IJKMEDIA: message_loop exit
I/IJKMEDIA: SDL_JNI_DetachThreadEnv: [4834]
D/BasePlayer: onPlayerState-->state:STATE_RESET,message:结束播放并重置
I/IJKMEDIA: SDL_JNI_DetachThreadEnv: [4835]
D/IJKMEDIA: ijkmp_shutdown_l()=void
D/IJKMEDIA: ijkmp_dec_ref(): ref=0
D/IJKMEDIA: ijkmp_shutdown_l()
D/IJKMEDIA: ijkmp_shutdown_l()=void
E/IJKMEDIA: SDL_JNI_ThreadDestroyed: [4846] didn't call SDL_JNI_DetachThreadEnv() explicity
D/IJKMEDIA: IjkMediaPlayer_native_setup
I/IJKMEDIA: av_version_info: ff4.0--ijk0.8.8--20210426--001
I/IJKMEDIA: ijk_version_info: k0.8.8-44-g15914708
D/IJKMEDIA: ffpipeline_create_from_android()
D/IJKMEDIA: ijkmp_set_inject_opaque(0x29c6)
D/IJKMEDIA: ijkmp_set_inject_opaque()=void
D/IJKMEDIA: ijkmp_set_ijkio_inject_opaque(0x29c6)
D/IJKMEDIA: ijkmp_set_ijkio_inject_opaque()=void
D/IJKMEDIA: ijkmp_android_set_mediacodec_select_callback()
D/IJKMEDIA: ffpipeline_set_mediacodec_select_callback
D/IJKMEDIA: ijkmp_android_set_mediacodec_select_callback()=void
D/IJKMEDIA: IjkMediaPlayer_setOptionLong
I/chatty: uid=10104(com.android.videoplayer) identical 4 lines
D/IJKMEDIA: IjkMediaPlayer_setOptionLong
D/IVideoPlayer: 解码器内核:IJkMediaPlayer
D/IJKMEDIA: IjkMediaPlayer_setOptionLong
D/IJKMEDIA: IjkMediaPlayer_setLoopCount
D/IJKMEDIA: IjkMediaPlayer_setVolume
D/IJKMEDIA: ijkmp_android_set_volume(1.000000, 1.000000)
D/IJKMEDIA: ffpipeline_set_volume
D/IJKMEDIA: ijkmp_android_set_volume(1.000000, 1.000000)=void
D/IJKMEDIA: IjkMediaPlayer_setOptionLong
D/IJKMEDIA: IjkMediaPlayer_setOptionLong
D/IVideoPlayer: 渲染器内核:MediaTextureView
D/BasePlayer: onPlayerState-->state:STATE_PREPARE,message:播放准备中
D/IJKMEDIA: IjkMediaPlayer_setDataSourceAndHeaders
V/IJKMEDIA: setDataSource: path http://14.17.92.17/live-bvc/944383/live_1575476_4103998_1500.flv?expires=1669776067&pt=android&deadline=1669776067&len=0&oi=2004595674&platform=android&qn=64&trid=1000acd8cf4dab72492c8c13851c49b38ea9&uipk=100&uipv=100&nbs=1&uparams=cdn,deadline,len,oi,platform,qn,trid,uipk,uipv,nbs&cdn=cn-gotcha01&upsig=babf3035e77968260285434d2d369223&sk=1304f646dfeb4df8b6e7ff33c167d3ad74346564118ee355b45f1e0db5f3b4f0&p2p_type=8192&src=57345&sl=1&free_type=0&sid=cn-gddg-ct-01-16&chash=1&sche=ban&score=13&usgroup=eg&pp=srt&machinezone=ylf&source=onetier&trace=0&site=d807caf6904404b88cffbdc8cd63275c&order=1&bili_room_id=821119&_nva_ext_=
D/IJKMEDIA: ijkmp_set_data_source(url="http://14.17.92.17/live-bvc/944383/live_1575476_4103998_1500.flv?expires=1669776067&pt=android&deadline=1669776067&len=0&oi=2004595674&platform=android&qn=64&trid=1000acd8cf4dab72492c8c13851c49b38ea9&uipk=100&uipv=100&nbs=1&uparams=cdn,deadline,len,oi,platform,qn,trid,uipk,uipv,nbs&cdn=cn-gotcha01&upsig=babf3035e77968260285434d2d369223&sk=1304f646dfeb4df8b6e7ff33c167d3ad74346564118ee355b45f1e0db5f3b4f0&p2p_type=8192&src=57345&sl=1&free_type=0&sid=cn-gddg-ct-01-16&chash=1&sche=ban&score=13&usgroup=eg&pp=srt&machinezone=ylf&source=onetier&trace=0&site=d807caf6904404b88cffbdc8cd63275c&order=1&bili_room_id=821119&_nva_ext_=")
2022-11-30 09:41:34.014 4671-4671/com.android.videoplayer D/IJKMEDIA: ijkmp_set_data_source(url="http://14.17.92.17/live-bvc/944383/live_1575476_4103998_1500.flv?expires=1669776067&pt=android&deadline=1669776067&len=0&oi=2004595674&platform=android&qn=64&trid=1000acd8cf4dab72492c8c13851c49b38ea9&uipk=100&uipv=100&nbs=1&uparams=cdn,deadline,len,oi,platform,qn,trid,uipk,uipv,nbs&cdn=cn-gotcha01&upsig=babf3035e77968260285434d2d369223&sk=1304f646dfeb4df8b6e7ff33c167d3ad74346564118ee355b45f1e0db5f3b4f0&p2p_type=8192&src=57345&sl=1&free_type=0&sid=cn-gddg-ct-01-16&chash=1&sche=ban&score=13&usgroup=eg&pp=srt&machinezone=ylf&source=onetier&trace=0&site=d807caf6904404b88cffbdc8cd63275c&order=1&bili_room_id=821119&_nva_ext_=")=0
D/IVideoPlayer: startPlayer-->source:http://14.17.92.17/live-bvc/944383/live_1575476_4103998_1500.flv?expires=1669776067&pt=android&deadline=1669776067&len=0&oi=2004595674&platform=android&qn=64&trid=1000acd8cf4dab72492c8c13851c49b38ea9&uipk=100&uipv=100&nbs=1&uparams=cdn,deadline,len,oi,platform,qn,trid,uipk,uipv,nbs&cdn=cn-gotcha01&upsig=babf3035e77968260285434d2d369223&sk=1304f646dfeb4df8b6e7ff33c167d3ad74346564118ee355b45f1e0db5f3b4f0&p2p_type=8192&src=57345&sl=1&free_type=0&sid=cn-gddg-ct-01-16&chash=1&sche=ban&score=13&usgroup=eg&pp=srt&machinezone=ylf&source=onetier&trace=0&site=d807caf6904404b88cffbdc8cd63275c&order=1&bili_room_id=821119&_nva_ext_=
D/IJKMEDIA: IjkMediaPlayer_prepareAsync
D/IJKMEDIA: ijkmp_prepare_async()
I/IJKMEDIA: ===== versions =====
I/IJKMEDIA: ijkplayer : k0.8.8-44-g15914708
I/IJKMEDIA: FFmpeg : ff4.0--ijk0.8.8--20210426--001
I/IJKMEDIA: libavutil : 56.14.100
I/IJKMEDIA: libavcodec : 58.18.100
I/IJKMEDIA: libavformat : 58.12.100
I/IJKMEDIA: libswscale : 5.1.100
I/IJKMEDIA: libswresample: 3.1.100
I/IJKMEDIA: ===== options =====
I/IJKMEDIA: player-opts : enable-accurate-seek = 1
I/IJKMEDIA: player-opts : mediacodec = 0
I/IJKMEDIA: player-opts : mediacodec-auto-rotate = 0
I/IJKMEDIA: player-opts : mediacodec-handle-resolution-change = 0
I/IJKMEDIA: player-opts : reconnect = 30
I/IJKMEDIA: player-opts : loop = 1
I/IJKMEDIA: format-opts : ijkapplication = 0x6f683650a0
I/IJKMEDIA: format-opts : ijkiomanager = 0x6f0f8b8800
I/IJKMEDIA: format-opts : probesize = 200
I/IJKMEDIA: format-opts : analyzemaxduration = 15000
I/IJKMEDIA: format-opts : timeout = 10000
I/IJKMEDIA: ===================
I/IJKMEDIA: SDL_RunThread: [4853] ff_msg_loop
D/IJKMEDIA: message_loop
D/IJKMEDIA: ijkmp_prepare_async()=0
D/IJKMEDIA: FFP_MSG_FLUSH:
I/IJKMEDIA: SDL_RunThread: [4854] ff_vout
I/IJKMEDIA: SDL_RunThread: [4855] ff_read
I/tv.danmaku.ijk.media.player.IjkMediaPlayer: onNativeInvoke 1
I/tv.danmaku.ijk.media.player.IjkMediaPlayer: onNativeInvoke 131073
D/IJKMEDIA: IjkMediaPlayer_setVideoSurface
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x7fc72627c8)
D/IJKMEDIA: ffpipeline_set_surface()
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x7fc72627c8)=void
I/tv.danmaku.ijk.media.player.IjkMediaPlayer: onNativeInvoke 131074
I/IJKMEDIA: tcp did open uri = tcp://14.17.92.17:80, ip = 14.17.92.17
W/IJKMEDIA: HTTP error 403 Forbidden
I/tv.danmaku.ijk.media.player.IjkMediaPlayer: onNativeInvoke 2
E/IJKMEDIA: http://14.17.92.17/live-bvc/944383/live_1575476_4103998_1500.flv?expires=1669776067&pt=android&deadline=1669776067&len=0&oi=2004595674&platform=android&qn=64&trid=1000acd8cf4dab72492c8c13851c49b38ea9&uipk=100&uipv=100&nbs=1&uparams=cdn,deadline,len,oi,platform,qn,trid,uipk,uipv,nbs&cdn=cn-gotcha01&upsig=babf3035e77968260285434d2d369223&sk=1304f646dfeb4df8b6e7ff33c167d3ad74346564118ee355b45f1e0db5f3b4f0&p2p_type=8192&src=57345&sl=1&free_type=0&sid=cn-gddg-ct-01-16&chash=1&sche=ban&score=13&usgroup=eg&pp=srt&machinezone=ylf&source=onetier&trace=0&site=d807caf6904404b88cffbdc8cd63275c&order=1&bili_room_id=821119&_nva_ext_=: Server returned 403 Forbidden (access denied)
I/IJKMEDIA: SDL_JNI_DetachThreadEnv: [4855]
D/IJKMEDIA: FFP_MSG_ERROR: 0
E/tv.danmaku.ijk.media.player.IjkMediaPlayer: Error (-10000,0)
E/IVideoPlayer: onError,what:-10000,extra:0,reCount:0
D/IJKMEDIA: IjkMediaPlayer_setVideoSurface
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)
D/IJKMEDIA: ffpipeline_set_surface()
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)=void
D/IJKMEDIA: IjkMediaPlayer_setVideoSurface
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)
D/IJKMEDIA: ffpipeline_set_surface()
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)=void
D/IJKMEDIA: IjkMediaPlayer_release
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)
D/IJKMEDIA: ffpipeline_set_surface()
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)=void
D/IJKMEDIA: ijkmp_shutdown_l()
D/IJKMEDIA: message_loop exit
I/IJKMEDIA: SDL_JNI_DetachThreadEnv: [4853]
I/IJKMEDIA: SDL_JNI_DetachThreadEnv: [4854]
D/IJKMEDIA: ijkmp_shutdown_l()=void
D/IJKMEDIA: ijkmp_dec_ref(): ref=0
D/IJKMEDIA: ijkmp_shutdown_l()
D/IJKMEDIA: ijkmp_shutdown_l()=void



以下是第2中情况的log:

D/IJKMEDIA: IjkMediaPlayer_setVideoSurface
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)
D/IJKMEDIA: ffpipeline_set_surface()
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)=void
D/IJKMEDIA: IjkMediaPlayer_setVideoSurface
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)
D/IJKMEDIA: ffpipeline_set_surface()
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)=void
D/BasePlayer: onPlayerState-->state:STATE_RESET,message:结束播放并重置
D/IJKMEDIA: IjkMediaPlayer_release
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)
D/IJKMEDIA: ffpipeline_set_surface()
D/IJKMEDIA: ijkmp_set_android_surface(surface=0x0)=void
D/IJKMEDIA: ijkmp_shutdown_l()
D/IJKMEDIA: message_loop exit
I/IJKMEDIA: SDL_JNI_DetachThreadEnv: [6202]
I/IJKMEDIA: SDL_JNI_DetachThreadEnv: [6203]
D/IJKMEDIA: ijkmp_shutdown_l()=void
D/IJKMEDIA: ijkmp_dec_ref(): ref=0
D/IJKMEDIA: ijkmp_shutdown_l()
D/IJKMEDIA: ijkmp_shutdown_l()=void
E/IJKMEDIA: SDL_JNI_ThreadDestroyed: [6221] didn't call SDL_JNI_DetachThreadEnv() explicity
I/ExoPlayerImpl: Init 91e5b09 [ExoPlayerLib/2.18.1] [ktc, 32A11FWT, ktc, 29]
D/IVideoPlayer: 解码器内核:ExoMediaPlayer
D/IVideoPlayer: 渲染器内核:MediaTextureView
D/BasePlayer: onPlayerState-->state:STATE_PREPARE,message:播放准备中
D/IVideoPlayer: startPlayer-->source:http://114.230.222.86/live-bvc/787738/live_22353137_33999663_1500.flv?expires=1669777141&pt=ios&deadline=1669777141&len=0&oi=2004595674&platform=ios&qn=64&trid=100062b35cff31544da899181a775ff2f9d1&uipk=100&uipv=100&nbs=1&uparams=cdn,deadline,len,oi,platform,qn,trid,uipk,uipv,nbs&cdn=cn-gotcha01&upsig=775997e84d823acda21477ef1b20972f&sk=1304f646dfeb4df8b6e7ff33c167d3ad1f8dbd69d43da9418e30b9b2fe3a2407&p2p_type=8192&src=57345&sl=1&free_type=0&sid=cn-jsyz-ct-03-49&chash=1&sche=ban&score=6&usgroup=eg&pp=rtmp&machinezone=ylf&source=onetier&trace=8&site=a2e57cfed9704751a87ea828a34cfe31&order=1&bili_room_id=24476863&_nva_ext_=
D/BasePlayer: onPlayerState-->state:STATE_BUFFER,message:缓冲开始
E/ExoPlayerImplInternal: Playback error
com.google.android.exoplayer2.ExoPlaybackException: Source error
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleIoException(ExoPlayerImplInternal.java:632)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:604)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:214)
at android.os.HandlerThread.run(HandlerThread.java:67)
Caused by: com.google.android.exoplayer2.upstream.HttpDataSource$InvalidResponseCodeException: Response code: 403
at com.google.android.exoplayer2.upstream.DefaultHttpDataSource.open(DefaultHttpDataSource.java:404)
at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:258)
at com.google.android.exoplayer2.upstream.StatsDataSource.open(StatsDataSource.java:84)
at com.google.android.exoplayer2.source.ProgressiveMediaPeriod$ExtractingLoadable.load(ProgressiveMediaPeriod.java:1005)
at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:412)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:919)
E/IVideoPlayer: onError,what:2004,extra:0,reCount:0
D/BasePlayer: onPlayerState-->state:STATE_ERROR,message:2004

请问该如何解决?

Repository owner deleted a comment from 173851399 May 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant