整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          一個開源的HTML5流媒體播放器

          一個開源的HTML5流媒體播放器

          開源精選》是我們分享Github、Gitee等開源社區中優質項目的欄目,包括技術、學習、實用與各種有趣的內容。本期推薦的是一個開源的HTML5流媒體播放器——PearPlayer.js。

          PearPlayer是完全用JavaScript寫的開源HTML5流媒體播放框架,實現了融合HTTP(含HTTPS、HTTP2)和WebRTC的多協議、多源、低延遲、高帶寬利用率的無插件Web客戶端流媒體加速能力。基于H5的MSE(Media Source Extension)技術將來自多個源節點的Buffer分塊喂給播放器,再加上精心設計的算法可實現最優的調度策略及對各種異常情況的處理,PearPlayer由此能在保證用戶流暢視頻體驗的前提下最大化P2P率。

          PearPlayer特性

          • P2P能力基于WebRTC,無須安裝任何插件
          • 多協議(HTTP、HTTPS、WebRTC)、多源
          • 自研的調度算法,在保證用戶流暢視頻體驗的前提下最大化P2P率
          • 默認無需填參數(內部根據視頻碼率等作自適應),高級使用模式下可自行調整算法和參數
          • 默認不會無限制緩沖,盡可能為CP用戶節省帶寬/流量
          • 支持Chrome、Firefox、Opera、IE、Edge等主流瀏覽器,即將支持Safari、騰訊微信、X5/TBS(可多源傳輸,播放問題待不久后由MSE支持完善)
          • 可選接入低成本、高可用的Pear Fog CDN
          • 協議默認通過TLS/DTLS全加密,無DPI特征;并可通過Pear Fog組件的動態端口映射進一步消除統計學特征
          • 像使用HTML5 <video>標簽一樣簡單,并易與video.js等流行播放框架集成
          • 具備Browser P2P能力(基于WebTorrent)

          使用方法

          首先通過script標簽導入pear-player.min.js:

          <script src="./dist/pear-player.min.js"></script>

          或者使用CDN:

          <script src="https://cdn.jsdelivr.net/npm/pearplayer@latest"></script>

          假設用video標簽播放以下視頻,HTML如下:

          <video id="pearvideo" src="https://qq.webrtc.win/tv/Pear-Demo-Yosemite_National_Park.mp4" controls>

          只需以下幾行代碼,即可將PearPlayer綁定到video標簽:

          <script>
          
          /**
          
          * 第一個參數為video標簽的id或class
          
          * opts是可選的參數配置
          
          */
          
          if (PearPlayer.isMSESupported()) {
          
          var player=new PearPlayer('#pearvideo', opts);
          
          }
          
          </script>

          至此,就已經添加播放器了,無需任何插件。


          開源地址:https://gitee.com/PearInc/PearPlayer.js

          CSDN 編者按】這是一篇由 Ryan Carniato 于2023年12月29日發表的關于「2024年JavaScript 框架發展趨勢」的文章。作者認為 2023 年是 JavaScript 框架發展的重要一年,預計 2024 年將繼續看到更大的變化,其中包括服務器優先、混合路由、邊緣網絡和人工智能等方面的發展。此外,2024年可能會繼續加強框架的成熟化趨勢。作者對于簡化方案,如 Astro 和 HTMX,仍然持樂觀態度,并期待框架能夠更好地履行其承諾,專注于提供更有力的解決方案,減少復雜性。


          作者 | Ryan Carniato 責編 | 夢依丹
          出品 | CSDN(ID:CSDNnews)

          歲末年初,恰逢年度總結時刻。不少開發者也在積極參加 CSDN 舉行的年度征文活動——2023年,我的編程之旅。曬出自己過去一年的技術成就與所在領域的技術變化,GET 到的新功能、新技術等。

          近日,知名前端愛好者,SolidJS UI 庫作者,同時也是 MarkoJS 核心團隊的成員 Ryan Carniato 撰寫了《進入2024 的 JavaScript 框架,本文總結了 JavaScript 框架在 2023 年的技術趨勢與 2024 年的預期變化。

          以下為譯文:

          對于 JavaScript 框架來說,2023 年是相當重要的一年。新技術終于展示出了它們的實用性,而舊框架也在卷土重來。如果你沒注意到的話,可能就錯過了一個相當重大的轉變。
          我預計,2024 年將繼續帶來更大的變化。這一次的重點不再是新技術,而是對現有技術的改進和完善。基礎已經打下,我們有更多的內容可以實現和呈現給用戶。

          服務器優先(Server First)
          如果要為過去幾年選擇一個主題,那就是"服務器優先"。這個觀點一直備受爭議,但無可否認。短短幾年前,人們都在談論漸進式 Web 應用和離線優先的概念。但是,這種討論幾乎銷聲匿跡。

          https://twitter.com/htmx_org/status/1725241732260847914
          相反,HTMX 以其犀利的觀點,解釋了為什么 JavaScript 是一個錯誤。Astro 也毫不掩飾地接管了內容站點開發。甚至 React 核心團隊也接受了服務器的簡潔性,正如 Dan Abramov 在演講中所強有力表達的那樣,他探討了如果 React 一直以服務器為優先會怎樣。
          那么,我們曾經鐘愛的單頁面應用(Single Page App)在這么短的時間里經歷了什么?它現在是否還存在,我們現在是生活在多頁面應用(Multi-Page App)和只有服務器渲染的 HTML 時代嗎?

          回顧 2023
          去年,我也寫了一篇類似的文章,探討 JavaScript 框架的發展趨勢。那篇文章所提到的三大技術趨勢成了過去一年討論的重點。
          無處不在的 Signals
          自從 SolidJS 和 Vue 開始采用反應性原語之后,Preact 和 Qwik 緊隨其后,這種趨勢在 2023 年變得更加強勁。

          https://github.com/angular/angular/discussions/49090

          在二月,Angular 團隊也宣布采用了這一技術。該消息在社交媒體上引起了很大的轟動。不僅如此,這也是導致 Angular 引起重大關注的幾個因素之一。有人甚至稱之為 Angular 的復興。而且,這是過去幾年來 React 團隊首次加入了這場爭論,因為人們開始紛紛問道:“React 何時會采用 Signal 呢?”
          關于這個問題,我在下面的文章中寫了更詳細的回答(還附有與 Dan Abramov 在中評論的討論)。
          不過,簡單來說,React 團隊對 Signal 這種 API 并不太感興趣,他們更期待的是「Forget」編譯器,因為它能起到類似的作用。當然,Signal 的應用并沒有到此結束。谷歌的 Web 組件框架 Lit 發布了原生支持信號的 Lit 3。Rich Harris 則透露了 Svelte 的未來發展方向,他們基于 Signal 的新「Runes」將成為即將發布的 Svelte 5 中主要的響應式來源。到 2023 年底,Signal 已經成為大多數前端 JavaScript 框架的重要組成部分。
          混合路由

          服務器端路由在過去一年中變得越來越重要。從 2022 年底開始,這種模式逐漸被人們所接受,比如使用 React Server Components 和 Astro 的 View Transition API 集成。
          它的基本原則是,在初始頁面加載后,服務器端的渲染不應影響客戶端的導航,而客戶端的導航也不應意味著我們需要發送所有的 JavaScript 來渲染那些可以在服務器端靜態渲染的頁面部分。
          需要注意的是,不同的解決方案產生的效果也不同,這一領域仍在發展之中。我們正在進入一個全新的領域,它既不是傳統的單頁應用程序,也不是傳統的多頁站點。我們需要了解新的權衡和概念。而且,我們還遠沒有解決所有的問題。
          邊緣網絡:最后的前沿

          邊緣函數似乎是顯而易見的成功案例之一。將服務器靠近最終用戶來大大減少延遲。使用更輕量級的運行時,可以大大減少冷啟動時間。
          如果說 2023 年有什么不同的話,那就是邊緣技術發展的一年。我們一開始非常熱情。畢竟,Cloudflare 發布了邊緣數據庫,我們所有喜歡的提供商都開始提供邊緣函數,我們最喜歡的框架也添加了開箱即用的支持。供應商已經成立了一個名為 WinterCG 的委員會,來討論平臺的標準化問題。未來就在眼前。


          我們最終意識到,即使在這些邊緣函數中,某些 Node API 也是必不可少的。你可以感謝或討厭 Next 和 Vercel 將 AsyncLocalStorage 推廣到每個運行時,但我們需要它。
          我們還意識到,邊緣數據庫對于所有應用程序來說永遠是不夠的。即使有流媒體,服務器水瀑仍然真實存在且影響很大。是的,即使使用 React Server Components 也是如此。但這確實推進了我去年提出的目標,即使用分布式部署進行整體創作。我們看到服務器函數(server$,使用 server)甚至像工作器函數這樣的變體在年初就出現了,表明我們可以分布我們部署 API 的方式,被 Solid、Qwik 和 Next 采用。
          到年底,Next 14 發布了新的實驗性部分預渲染,允許單個請求從邊緣提供靜態內容,同時通過代理到更靠近數據庫的無服務器函數,所有內容都被流式傳輸,以提供類似于邊緣的體驗,而無需在那里部署整個應用程序。看到一些獨創性提供了兩全其美的解決方案,真是令人敬畏。

          https://twitter.com/rickhanlonii/status/1722704383064842280


          2024 年的趨勢
          Signals 的年代
          我已經講了很多關于 Signals 的內容,但真正的好處還沒有顯現出來。JavaScript 中已經有了類似 Signals 的細粒度原始函數 15 年了,那為什么是現在呢?

          https://twitter.com/t3dotgg/status/1730711700805140908


          預計 JavaScript 框架將進一步整合 Signal 機制,例如 Vue Vapor 和 Svelte 5 中的新反應性模型。
          基礎實施驅動開發
          既然服務器端渲染框架已經得到了很大的支持,那么下一個合理的發展方向就是繼續探索如何最大限度地發揮這種新功能的作用。標準的制定比較慢,WinterCG 也需要一些時間,但這并不會阻止發展的勢頭。
          為了實現差異化,我預計框架和基礎設施提供商將面臨提供獨特功能的壓力,而這些功能可能僅在特定平臺上可用。雖然 2023 年看到了各提供商在提供類似功能方面的平等化趨勢,例如在基本靜態和函數托管之外提供鍵值存儲 Blob 等功能,但我認為在提供獨特價值方面的競爭將會加劇。
          框架的作用是保持一致的創作體驗和思維模型,同時尋找利用新功能的方法。這與 21 世紀初的瀏覽器大戰類似,未來還有很多發展空間。
          AI
          去年,從框架的角度來看,談論人工智能還為時尚早。明年可能也是如此。但它已經漸漸出現在我們的視野中。代碼遷移和生成工具都是很好的想法,但它們與多年來使用的可視化無代碼或低代碼編輯器面臨著同樣的問題。人與機器的交互界面仍然至關重要。畢竟,代碼是一個活生生的存在。它隨著時間的推移不斷生長和維護。
          在過去的一年里,與其他框架的作者交流時,我們發現人工智能引起了周圍人的極大興趣。

          https://twitter.com/aidenybai/status/1737616282210738650

          人工智能正在回答一個長久以來的問題,那就是為什么你的應用程序運行緩慢。

          對開發工具的影響只是其中一方面。我們還越來越多地看到實時性能被融入到框架中。這不僅指的是用于持久化后端的 Websockets。元框架中的 API 已經發展到超越簡單的 JSON,實現了完全流式的跨網絡 JavaScript 執行,這在 SolidStart、Qwik 和 Next 中通過“服務器函數”實現。現在,我們可以很容易地想象出生成技術實時創建你的用戶界面的情景。

          https://twitter.com/mhevery/status/1722928972789408240

          總結
          2024 年可能會延續我們在過去幾年看到的成熟趨勢。從 2020 年到 22 年,我們看到了很多新的 JavaScript(和 WASM)框架(Qwik、Million.js、Astro、Next 13、Remix、Hydrogen、SvelteKit、SolidStart、Leptos、Dioxus、HTMX),但去年的情況發生了改變。不再出現大量新的 JavaScript 框架,相比之下相對較少。然而,我們已經找到了解決問題的方法和途徑。現在的關鍵是要充分發揮這些方法和途徑的潛力,將它們應用到實際開發中,取得更好的效果。
          我不確定我們是否已經成功地解決了復雜性問題,這給像 Astro 或 HTMX 這樣簡化的解決方案帶來了很大的肯定。但我仍然充滿希望。
          也許不太可能期望每個人都對“單頁應用程序”的確切定義以及何時使用各種選項達成一致,但這些解決方案每天都變得更加強大,能夠實現它們既定的目標。
          現在不再懷疑我們熟悉的Web開發將發生變化。即使方向還不完全明確,革命已經來臨。期待與你一同見證這一變革。

          覽在線網站的體驗并不總是流暢的。


          曾經有一段時間,你在網上沖浪時,可能會聽到你不愿意聽的音樂,并在配色奇怪的網頁上瀏覽用呆板字體(通常是 Times New Roman)寫成的文字。


          在 2000 年代,在 Squarespace 和社交媒體出現之前,網站是個性的體現,完全由對代碼有一定了解并渴望上網的用戶使用 HTML 從零開始構建。


          現在,分散在網絡上的程序員社區,正在努力恢復這種看似過時的東西。這場運動來源于藝術家勞蕾爾·施伍斯特(Laurel Schwulst)和埃利奧特·科斯特(Elliott Cost)創造的“HTML 能量”概念,絕不是對復古美學的膚淺致敬。


          它專注于 HTML 編碼的“觸覺”過程,探索語言如何實現自我表達,并使個人能夠在互聯網中占據一席之地。


          HTML 能量運動在小型 Discord 頻道和數字雜志等領域形成,旨在慶祝數字體驗中的“人性觸摸”。


          (來源:AI 生成)


          如今,大多數互聯網都針對社交、電子商務和流媒體進行了優化。大多數互聯網流量集中在少數幾個網站上,這些網站又都歸少數幾家公司所有。從冗長的廣告到咄咄逼人的 cookie 設置,一些小障礙和麻煩層出不窮。


          用戶不斷被提醒,他們訪問互聯網的條件是讓少數人從中獲利。X(原推特)的情況完美地概括了互聯網所有權的這種狀態,只需要一位高管就可以引發大量用戶逃離該平臺,并將其長期存在的社區割裂開來。


          然而,盡管大型科技公司壟斷了市場,但一個基本現實仍然能夠證明互聯網的民主:任何人都可以用 HTML 免費發布網站。


          從技術上講,互聯網為每個人都提供了空間,因此不存在無處容身的問題。真正的問題是流量。


          當我與 HTML 能量社區的不同成員交談時,所有人都一致地傳達著一個基本信息:網絡上的一切最終都是 HTML。HTML 是任何網站的主干。


          這是網站運行所需的唯一東西。雖然當今流行的 web 開發語言使用 abridged 命令,通過所謂的數據抽象來隱藏技術復雜性,但 HTML 是細粒度的,編程經驗也不是先決條件。


          正如科斯特所解釋的,正是 HTML 的包容性給了渴望在網絡上發布自我的人機會。使用 HTML,即使缺少一行代碼,網站仍將加載。HTML 能量運動包含了這些可能性:歡迎通過試錯學習,鼓勵創造性實驗。


          隨著主流數字體驗趨向于同質的視覺語言,人類的觸覺在許多抽象層中迷失了。網站創建者離他們的網站越來越遠,網絡也變得更具交易性。


          但 HTML 能量運動呼吁人們重新審視我們與技術的關系,使用 HTML 制作網站可以讓程序員探索網站的本質。


          與公司不同,人們自己創建網站無需向股東負責。他們沒有創造有利可圖的體驗的壓力,所以他們的創作可以采取各種各樣的形式。


          常見類型的 HTML 能量網站包括數字花園,其中的元素隨著季節的變化而變化;交互式詩歌生成器,用戶的輸入會創造新的意義;以及分享創作者生活細節的個人網站。


          在一個消費主義至上的互聯網中,HTML 能量的網站溫和地提醒人們,網站可以帶來冥想一樣的體驗。


          HTML 能量社區提倡理解 HTML 的字面含義,它就是一種語言。它贊美了這種語言的基本特征對用戶意圖的要求。


          作為微小和復雜創意決策的融合,僅使用 HTML 構建的網站是一種自我表達形式。


          查看網站的源代碼與瀏覽界面一樣重要。代碼中經常隱藏著彩蛋,比如來自其他 HTML 網站的消息或引用。


          在很多方面,HTML 網站都“記錄著”創作者的身份:這個人選擇了構建什么?如何構建?


          這種對 HTML 不同應用的迷戀,也出現在被稱為“freewrites”的物理社區聚會中,社區成員常聚在一起編寫代碼。


          Sunday Sites 和 Fruitful School 是組織這些集會的網站之一,它們經常將教育元素融入活動中,以增強更多人加入該社區的能力。


          與此同時,像 HTML 評論這樣的網站以文學雜志的形式展示了它的一些產品。


          (來源:資料圖)


          項目 1:多景劇場


          吉·金(Ji Kim)的“多景劇場”拼貼了一部舊 iPhone 的多個片段。當訪問者瀏覽網站時,圖像會重疊,并播放嵌入的音頻片段。


          當用戶點擊任何圖像時,都會出現一個關于拍攝時間和地點的小描述,以及更多額外的媒體內容。


          金的網站旨在模仿記憶的零散性和層次性。這是一種有意分散的數字體驗,就像試圖回憶幾年前的一次家庭旅行一樣。


          (來源:資料圖)


          項目 2:有窗戶的房間


          謝爾比·威爾遜(Shelby Wilson)的帶窗戶的房間,是一個只允許一種互動的網站:打開和關閉一組窗簾。


          該網站有意將物理空間和數字空間混合在一起。威爾遜將瀏覽器視為通往有物理邊界和邊緣的地方的門戶,但也保留了超現實主義元素(百葉窗關閉時房間不會變暗)和隨機元素(每次訪問時房間的顏色都會變化),以突出數字形式。


          (來源:資料圖)


          項目 3:HTML 花園


          史賓賽·張(Spencer Chang)的網站設想了一個花園在互聯網上的樣子。


          一些由原生 HTML 元素組成的“植物”在生長,每次訪問你都會注意到時間的流逝:季節的變化、植物的發芽和開花。沒有明確的行為,你所需要做的只是觀察。


          (來源:資料圖)


          項目 4:散文劇


          凱瑟琳·楊(Katherine Yang)的散文游戲是一首互動詩,鼓勵用戶在預設的句子結構中輸入不同的單詞。


          該網站以單詞為變量,探索互聯網的互動性。它把“作者之死”的文學理論,即“文本的意義不是由作者的本意決定的,而是由讀者的解釋決定的”放在了代碼的語境中。


          (來源:資料圖)


          項目 5:Erich Friedman


          埃里希·弗里德曼(Erich Friedman)的網站是他生活的個人百科全書,里面有從電影評級到佛羅里達州中部迷你高爾夫球場評論的各種檔案。該網站分為數學類、益智類、個人類和專業類,結構比較簡單。


          它使用基本的 HTML 來展示弗里德曼在過去十年中不拘一格的興趣,包括從 0 到 9999 的每個數字的有趣事實列表,以及數學和瑣事問題的集合。


          該網站不需要任何特定操作。它只是對埃里希·弗里德曼的詳盡、坦率的描述,在龐大的互聯網中占據了一小部分。


          (來源:資料圖)


          項目 6:屏幕博物館


          圖盧·圖穆(Toulou TouMou)的屏幕博物館,是一個存放由游戲愛好者創建的瀏覽器游戲的網站。為了與展示的游戲互動,用戶必須在數字空間中導航,就像用 ASCII 圖形可視化的物理博物館一樣。


          這個網站有實際的參觀時間,還會隨機選擇一個“休息日”。


          圖穆的博物館是為了在 Flash 游戲時代給予業余開發者應有的榮譽而創建的,旨在強調承認作者身份和獨立游戲豐富歷史的重要性。


          HTML 能量的網站沒有集中的來源,偶然發現讓他們覺得自己很特別,就像發現停車場的一幅街頭藝術作品一樣。它們不是為被發現而設計的,也不是為任何特定操作而優化的。


          他們只是按照訪客的條件與訪客互動,描繪出創作者的風格。如果像谷歌或臉書這樣的網站是你購買必需品的超市和購物中心,那么 HTML 能量的網站就像你偶然發現的隱藏花園,在任何地圖上都找不到。


          支持:Ren


          主站蜘蛛池模板: 国精品无码A区一区二区| 在线视频一区二区| 久久无码人妻一区二区三区| 激情无码亚洲一区二区三区| 国产精品乱码一区二区三区| 国产高清一区二区三区| 夜色阁亚洲一区二区三区| 亚洲一区二区三区高清视频| 日韩精品无码视频一区二区蜜桃| 国产精品一区二区无线| 精品国产一区AV天美传媒| 久久青草精品一区二区三区| 丰满人妻一区二区三区视频| 在线观看日韩一区| 国产精品视频免费一区二区三区| 亚洲欧美日韩中文字幕一区二区三区 | 真实国产乱子伦精品一区二区三区 | 蜜桃视频一区二区| 国产精品日韩一区二区三区| 精品久久久久久无码中文字幕一区| 亚洲熟妇av一区| 日韩一区二区三区四区不卡| 国模私拍福利一区二区| 波多野结衣一区视频在线| 国产精品视频一区二区三区经| 无码精品尤物一区二区三区| 亚洲一区二区三区亚瑟| 无码人妻精品一区二区蜜桃网站 | 日本一区二区三区中文字幕| 亚洲视频一区二区| 国产一区二区三区久久| 亚洲一区二区三区夜色| 久久久国产精品亚洲一区| 极品少妇伦理一区二区| 久久精品无码一区二区app| 国精产品一区一区三区| 久久国产午夜一区二区福利| 亚洲宅男精品一区在线观看| 尤物精品视频一区二区三区| 一区在线观看视频| 国模私拍一区二区三区|