日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux下用nvidia显卡实现硬解码的方法

發布時間:2024/3/26 linux 81 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux下用nvidia显卡实现硬解码的方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目前在Linux 系統下,NVIDIA 已經提供了官方的高清播放支持。由于高清視頻文件壓縮率比較高,所以在播放時,解碼速度一定要快,才能夠流暢的播放。所以對CPU 的要求比較高,CPU 占用率比較高。為了解決這個問題,目前的顯卡廠家都在顯卡核心GPU 中嵌入了部分視頻解碼格式的支持,來希望能夠釋放CPU ,來保證系統的順利運行。只是要釋放CPU ,實現GPU 解碼高清視頻,不僅需要GPU 的支持,還需要驅動和播放軟件共同合作來將視頻播放引導到GPU 上去,由GPU 解碼。

Windows 系統下,NVIDIA 的高清視頻解碼驅動早就提供了,而在Linux 系統下,是在其180 版本開始的驅動中才正式支持了高清視頻解碼支持。并向Mplayer 提供了補丁,要求Mplayer 的視頻輸出模式改為VDPAUVDPAU 的全稱是:Video Decode and Presentation API for UnixUnix 系統視頻解碼和呈現API ))。同時提供了一些硬解碼格式的視頻解碼器,來引導視頻流通過GPU 來解碼,以便釋放CPU

VDPAU 支持硬件解碼MPEG-1MPEG-2H.264VC-1 格式,也支持對已解碼視頻進行一些后期處理特殊效果,如反交錯、降噪等。硬件上支持GeForce 8 以上顯卡,系統支持LinuxFreeBSDSolaris

現將Linux 下針對NVIDIA 顯卡實現硬解碼的方法介紹如下:

前提條件

  • NVIDIA 顯卡必須支持硬解碼功能。如果該顯卡沒有硬解碼功能,那么,再怎樣修改都無法釋放CPU 。所以無法提高系統性能;

  • Linux 下必須安裝NVIDIA 官方提供的180 及其以后的驅動版本;

  • Mplayer 建議使用最新的版本,下載地址是http://www.mplayerhq.hu/design7/dload.html ,要不然你需要下載下面這個版本來完成高清播放的支持。具體的下載鏈接是ftp://ftp.mplayerhq.hu/MPlayer/releases/mplayer-export-snapshot.tar.bz2

  • ?

    配置方法

  • linux 系統上安裝NVIDIA 的官方商業驅動。具體的下載地址是http://www.nvidia.cn/Download/index.aspx?lang=cn 。在這里根據自己使用的具體顯卡來選擇相應的驅動,下載安裝。值得注意的是在安裝NVIDIA 的顯卡驅動時,首先要安裝kernel 的開發包,即kernel-devel 包。同時要進入到字符模式下。進入字符的方法有很多,這里就介紹一種比較簡單的方法:

  • 打開終端——切換到root 用戶。具體的切換命令是su—— 執行init 3 命令即可。

    進入到字符模式后,執行sh NVIDIA-*.run 程序即可安裝。

    安裝完成建議重啟計算機。

    如果是在Ubuntu 系統上,建議你使用系統——系統管理——硬件驅動來執行圖形化安裝商業驅動。這樣比較方便。

  • 編譯并安裝mplayer 程序。建議基于自己的NVIDIA 顯卡和NVIDIA 官方驅動編譯mplayer 。具體的編譯方法如下:

  • ./configure --enable-gui –language=zh_CN

    make -jN // 根據你的CPU 內核數決定,雙核的用-j3 吧!

    make install

    當然,configure 處,也可以根據自己的實際情況添加不同的參數。如果你不想基于NVIDIA 顯卡編譯,你在編譯時,請記得加入參數—enable-vdpau 。來打開vdpau 功能。

    這樣安裝以后的mplayer/usr/locale 目錄下。跟系統正常目錄有所出入。如果你為了使其能夠安裝到正常目錄下,你可以使用下面的configure 命令:

    ./configure --enable-gui --language=zh_CN –prefix=/usr/ --bindir=/usr/bin/ --datadir=/usr/share/mplayer –mandir=/usr/share/man –confdir=/etm/mplayer –libdir=/usr/lib/ --codecsdir=/usr/lib/codecs

    這樣就能夠保證安裝到了正常目錄下。

  • 配置mplayer 。 要想用nvidia 顯卡的硬解碼功能,在用mplayer 播放時,需要加入以下參數:

  • -vo vdpau -vc ffmpeg12vdpau,ffwmv3vdpau,ffvc1vdpau,ffh264vdpau

    其中-vo vdpau 是指明以vdpau 模式輸出。而參數-vc ffmpeg12vdpau,ffwmv3vdpau,ffvc1vdpau,ffh264vdpau 是指明優先使用這幾個視頻解碼器。mplayer 在選擇視頻解碼器時是比較智能的。一起添加后,只是讓mplayer 在這幾個視頻解碼器中優先選擇,如果沒有適合的,再去解碼器庫中尋找。不會起到限定解碼器的作用。

    另外,mplayer 能夠自動列出當前能夠支持到的視頻解碼器以及視頻輸出格式。具體的命令是:

    mplayer -vo help // 列出能夠使用的視頻輸出模式

    mplayer -vc help // 列出能夠使用的視頻解碼器

    mplayer -ao help // 列出能夠使用的音頻輸出模式

    mplayer -ac help // 列出能夠使用的音頻解碼器

    ?

  • gmplayer 實現高清視頻解碼輸出的方法。gmplayer 只是mplayer 的圖形輸出模式。其更方便用戶使用和設置而已。沒有其他特殊之處。但是針對mplayer 的這幾個參數在gmplayer 中無法使用。若要在gmplayer 中使用高清視頻解碼輸出,需要修改mplayer 相應的配置文件。

  • 可以修改的文件有兩個。一個是放在/etc/mplayer 目錄下的mplayer.conf 文件。另外一個就是放在了用戶主目錄下的.mplayer/config 文件。這兩個文件中修改后的效果是一樣的。只是對用戶權限的限定不一樣。在/etc/mplayer 目錄下修改后,改系統中的所有用戶都可以使用高清視頻播放了。而在用戶主目錄下的.mplayer 目錄中修改了以后,只有該用戶登錄后在可以使用高清視頻播放。所以用戶在設置時要根據自己的具體情況來選擇相應文件進行修改。

    ?

    測試方法

    測試高清視頻播放的方法很多,但是最直接的方法就是下載高清電影,或者高清小片段,直接播放。一般不使用高清視頻解碼的話,播放高清電影,CPU 的占用率一般在99% 左右,而使用了高清視頻解碼以后,CPU 的占用率在8% 以下。

    ?

    參考文獻:

    mplayer播放高清(nvidia vdpau):http://bbs.fedora-zh.org/showthread.php?t=1128

    NVIDIA 180版Linux驅動視頻解碼加速實測 http://blog.chinaunix.net/u1/39544/showart_1418368.html

    我的優化PC:在Linux下進行高清VDPAU解碼測試:http://blog.zol.com.cn/868/article_867075.html

    使用vdpau mplayer作為后端的smplayer的設置方法 : http://forum.ubuntu.org.cn/viewtopic.php?f=74&t=177518

    ?


    ?

    總結

    以上是生活随笔為你收集整理的Linux下用nvidia显卡实现硬解码的方法的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。