基于ffmpeg的播放器 avplayer

openkk 12年前發布 | 86K 次閱讀 多媒體處理 FFmpeg

一直以來, 在多媒體播放器這塊, 即使目前有許多開源的播放器項目, 但要寫一個播放器仍然是件非常困難的事, 如果在windows上你有可能需要熟悉DShow, 另外的話, 你需要學習一堆開源項目(比如FFmpeg, MPC, VLC, Mplayer), 而且多數都是基于linux, 在windows上學習起來很不容易, 然而這些開源項目對于一些希望快速實現自己播放器, 就顯得很困難.
因此, 我創建了這個項目, 致力于以最簡單的方法實現自己的播放器, 并提供一個可以很方便使用的接口.
目前, 在這個代碼中, 主要鏈接到FFmpeg來進行解碼, 并將其改造成一個通用的播放器框架. 在這個框架中能夠接受各種數據的讀入, 可以很方便的封裝自己的數據讀取模塊, 也可以很方便的定制自己的視頻渲染模塊和音頻播放模塊, 你只需要參考其中的實現即可.
另外在當前的實現中, 因為個人精力實在有限, 所以借鑒了一些開源項目的代碼(如Mplayer), 并且該代碼主要基于windows平臺, 有移植到linux等其它平臺的打算. 所以, 我希望有朋友能參與到這個項目中一起研究和學習, 并完成這個目標.

avcore是一個封裝模塊, 如果要創建一個播放器, 只需要avplayer.h, 然后使用創建一個avplayer對象, 就可以創建一個播放器, 關于如何使用avcore的具體細節可以參考avplayer/main.cpp

附: 在release目錄下已經生成了可以測試的執行文件, 其中bt_source.dll是一個基于libtorrent實現的數據讀入模塊(source), 可以方便的播放bt中的視頻, 如果有興趣可以將bt_source.dll更名為source.dll進行測試, 里面有一個從優酷找的一個超清視頻文件gq.flv.torrent種子文件用于測試.

項目主頁:http://www.baiduhome.net/lib/view/home/1332939873811

 本文由用戶 openkk 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!