欧美深夜视频_国产精品99视频_国产精品网站一区_亚洲最大av网

b站視頻是如何播放的

2024-10-16 15:33| 發布者: 半空的夢| 查看: 378| 評論: 0



上次我們聊 B 站視頻為什么播放那么快是利用了視頻分片技術,提前將視頻分成很多小片,這樣就可以實現播放的時候只加載播放位置的視頻,只需要加載那一小段就可以了。

這樣就可以達到快速播放的目的了。那么我沒你拿到視頻片段,怎么播放呢?

今天就來研究下。

瀏覽器的 SourceBuffer 的 API

首先,瀏覽器本身有一個叫做 SourceBuffer 的 API。我們去看他的官方文檔解釋。

SourceBuffer 接口標識通過 MediaSource 對象傳遞到 HTMLMediaElement 并播放的媒體分塊。它可以由一個或者多個媒體片段組成。

這樣在用的時候,我們把視頻的地址,傳入到這個媒體對象中去。

這樣等到視頻一部分一部分下載好之后,就可以直接拼接上去。因為這個媒體對象有個 appendBuffer 方法。

sourceBuffer.appendBuffer(buf);看代碼是否有SoufceBuffer這個對象

我們直接在控制臺搜索代碼,果然有這個對象。




基本可以斷定,b 站就是通過這個對象來實現網頁的視頻播放的。

服務端怎么存儲視頻片段

我們網頁下載這些視頻片段,那么服務器段就要存,所以服務器要先把視頻以某個格式存儲好,一個一個片段文件。這樣就可以一部分一部分下載。




看b 站使用一種叫 m4s 的格式存儲的。
分享到:
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

交流熱線
17501437970 周一至周日:09:00 - 21:00

創贏網-致力于幫助普通人在創業之路上披荊斬棘、走向成功的專業網站,匯聚創新智慧與成功機遇的網絡天地,是創業者開啟贏之征程的首選之地。

Powered by Discuz! X3.5 © 2023-2050 CHUANYING Team.

QQ|Archiver|手機版|小黑屋|創贏網 ( 湘ICP備17022177號-3 )

GMT+8, 2025-6-18 11:17 , Processed in 0.236579 second(s), 30 queries .

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 东阳市| 阳江市| 乐山市| 那坡县| 湖州市| 隆尧县| 广西| 浦北县| 郓城县| 双流县| 东平县| 交城县| 铜川市| 吴桥县| 长治县| 金昌市| 无棣县| 泸溪县| 海伦市| 仁寿县| 上饶县| 凤冈县| 八宿县| 专栏| 南皮县| 锦屏县| 若羌县| 东乌珠穆沁旗| 阿克陶县| 开封市| 高唐县| 甘德县| 陆丰市| 临颍县| 奎屯市| 同心县| 突泉县| 合阳县| 崇文区| 盐津县| 临沭县|