zhaohappy / libmedia

一个 TypeScript 实现的高性能媒体库,支持 WebCodecs 和 Wasm。 A high-performance media library implemented in TypeScript, support WebCodecs and Wasm.
https://zhaohappy.github.io/libmedia/product/player/player.html
GNU Lesser General Public License v3.0
136 stars 21 forks source link

播放 mpeg4 视频直接 seek 到结尾部分, 不触发 ended 和 stop #31

Open xuanhen2013 opened 3 hours ago

xuanhen2013 commented 3 hours ago

视频地址: https://vip.123pan.cn/1831933142/12586996

avplayer.js:1 [src/avplayer/AVPlayer.ts][line 3479] [info] set log level: 1
avplayer.html:1398 atomic support
avplayer.js:1 [src/avplayer/AVPlayer.ts][line 437] [info] create player, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
avplayer.js:1 [src/avplayer/AVPlayer.ts][line 1001] [info] call load, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
sw.js:37 Fetch failed loading: GET "https://zhaohappy.github.io/libmedia/test/fonts/element-icons.woff".
(anonymous) @ sw.js:37
element-ui.css:1 

       GET https://zhaohappy.github.io/libmedia/test/fonts/element-icons.woff 404 (Not Found)
sw.js:37 Fetch failed loading: GET "https://zhaohappy.github.io/libmedia/test/fonts/element-icons.ttf".
(anonymous) @ sw.js:37
element-ui.css:1 

       GET https://zhaohappy.github.io/libmedia/test/fonts/element-icons.ttf net::ERR_ABORTED 404 (Not Found)
avplayer.js:1 Fetch failed loading: GET "https://vip.123pan.cn/1831933142/12586996".
(anonymous) @ avplayer.js:1
h @ avplayer.js:1
load @ avplayer.js:1
await in load
loadPlayer @ avplayer.html:772
onclick @ avplayer.html:375
sw.js:37 Fetch failed loading: GET "https://vip.123pan.cn/1831933142/12586996".
(anonymous) @ sw.js:37
sw.js:37 Fetch failed loading: HEAD "https://vip.123pan.cn/1831933142/12586996".
(anonymous) @ sw.js:37
95655479-94ae-4913-bc0f-006297c15d98:178 Fetch failed loading: HEAD "https://vip.123pan.cn/1831933142/12586996".
getTotalSize @ 95655479-94ae-4913-bc0f-006297c15d98:178
open @ 95655479-94ae-4913-bc0f-006297c15d98:178
(anonymous) @ 95655479-94ae-4913-bc0f-006297c15d98:161
a @ 95655479-94ae-4913-bc0f-006297c15d98:178
(anonymous) @ 95655479-94ae-4913-bc0f-006297c15d98:178
n @ 95655479-94ae-4913-bc0f-006297c15d98:178
fire @ 95655479-94ae-4913-bc0f-006297c15d98:178
handle @ 95655479-94ae-4913-bc0f-006297c15d98:178
avplayer.js:1 [src/avplayer/AVPlayer.ts][line 1410] [info] 
AVPlayer version v0.1.1-57-gd85d7f2 Copyright (c) 2024-present the libmedia developers
Input #0, mp4, from 'https://vip.123pan.cn/1831933142/12586996':
  Duration: 00:00:29.141, start: 00:00:00.000, bitrate: 2143 kbps/s
  Stream #0:0 Video: mpeg4, yuv420p(tv, bt709), 1600x900 [SAR: 1:1 DAR 16:9], 2014 kbps/s, 30.00 fps, 30.00 tbr, 15k tbn (default) 
    Metadata:
      creationTime: 0
      modificationTime: 0
      matrix: [1,0,0,0,1,0,0,0,1]
      language: 21956
      languageString: und
      handlerName: VideoHandler
      vendorId: 
      encoder: 
  Stream #0:1 Audio: aac (LC), 48000 Hz, stereo, float-planar, 128 kbps/s (default) 
    Metadata:
      creationTime: 0
      modificationTime: 0
      language: 21956
      languageString: und
      handlerName: SoundHandler
      vendorId: 

avplayer.js:1 [src/avplayer/AVPlayer.ts][line 1432] [info] call play, options: {"audio":true,"video":true,"subtitle":true}, status: 4 taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
avplayer.js:1 [src/avplayer/AVPlayer.ts][line 498] [warn] can not support mse for codec: video/mp4; codecs="mp4v", taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
49101063-ef4b-4b46-8c3d-b6d576c1ab1d:178 [src/avpipeline/VideoDecodePipeline.ts][line 624] [error] cannot open hardware decoder, Error: not support
49101063-ef4b-4b46-8c3d-b6d576c1ab1d:178 [src/avpipeline/VideoDecodePipeline.ts][line 478] [warn] webcodecs software decoder open failed, Error: not support, try to fallback to wasm software decoder
dbdf82e0-fed5-4b65-aaf4-128888285706:178 [src/avpipeline/DemuxPipeline.ts][line 616] [debug] connect stream 0, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
dbdf82e0-fed5-4b65-aaf4-128888285706:178 [src/avpipeline/DemuxPipeline.ts][line 616] [debug] connect stream 1, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
avplayer.js:1 [src/avplayer/AVPlayer.ts][line 2476] [info] player call setVolume, set 1, used 1, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
dbdf82e0-fed5-4b65-aaf4-128888285706:178 [src/avpipeline/DemuxPipeline.ts][line 876] [debug] start demux loop, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
04286503-114c-4a69-868b-9b42915bf86b:178 [src/avpipeline/AudioRenderPipeline.ts][line 230] [debug] got first audio frame, pts: 0(0ms), taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
avplayer.js:1 [src/avplayer/AVPlayer.ts][line 3175] [info] first audio frame rendered, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
15223d1e-4d75-4eab-b7ff-c64ec9f1d607:178 [src/avpipeline/VideoRenderPipeline.ts][line 481] [debug] got first video frame, pts: 0(0ms), taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
avplayer.js:1 [src/avplayer/AVPlayer.ts][line 3167] [info] first video frame rendered, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
avplayer.js:1 [src/avplayer/AVPlayer.ts][line 2120] [info] call seek, timestamp: 29076, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
04286503-114c-4a69-868b-9b42915bf86b:178 [src/avpipeline/AudioRenderPipeline.ts][line 616] [debug] wait current pull front frame before seek, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
15223d1e-4d75-4eab-b7ff-c64ec9f1d607:178 [src/avpipeline/VideoRenderPipeline.ts][line 900] [debug] before seek end, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
04286503-114c-4a69-868b-9b42915bf86b:178 [src/avpipeline/AudioRenderPipeline.ts][line 647] [debug] before seek end, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
dbdf82e0-fed5-4b65-aaf4-128888285706:178 [src/avformat/demux.ts][line 582] [debug] seek in video stream, streamIndex: 0, timestamp: 29076, flags: 8
avplayer.js:1 [src/avplayer/AVPlayer.ts][line 2041] [debug] seeked to packet timestamp: 28800, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
32fe321f-f427-472c-8967-24f4e50a8480:178 [src/avpipeline/AudioDecodePipeline.ts][line 349] [info] reset audio decoder, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
49101063-ef4b-4b46-8c3d-b6d576c1ab1d:178 [src/avpipeline/VideoDecodePipeline.ts][line 717] [info] reset video decoder, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
04286503-114c-4a69-868b-9b42915bf86b:178 [src/avpipeline/AudioRenderPipeline.ts][line 708] [debug] sync seek time end, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
dbdf82e0-fed5-4b65-aaf4-128888285706:178 [src/avpipeline/DemuxPipeline.ts][line 848] [info] demuxer ended, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
15223d1e-4d75-4eab-b7ff-c64ec9f1d607:178 [src/avpipeline/VideoRenderPipeline.ts][line 950] [debug] sync seek time end, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
04286503-114c-4a69-868b-9b42915bf86b:178 [src/avpipeline/AudioRenderPipeline.ts][line 730] [debug] after seek end, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
49101063-ef4b-4b46-8c3d-b6d576c1ab1d:178 [src/avpipeline/VideoDecodePipeline.ts][line 294] [info] video decoder ended, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
15223d1e-4d75-4eab-b7ff-c64ec9f1d607:178 [src/avpipeline/VideoRenderPipeline.ts][line 985] [debug] got first video frame, pts: 446976(29100ms), taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
15223d1e-4d75-4eab-b7ff-c64ec9f1d607:178 [src/avpipeline/VideoRenderPipeline.ts][line 1001] [debug] after seek end, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
32fe321f-f427-472c-8967-24f4e50a8480:178 [src/avpipeline/AudioDecodePipeline.ts][line 218] [info] audio decoder ended, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59
04286503-114c-4a69-868b-9b42915bf86b:178 [src/avpipeline/AudioRenderPipeline.ts][line 204] [info] audio render ended, taskId: 2278efa9-58ce-40ff-bbc3-3fa149ed2e59