玖玖资源站亚洲av_日本乱偷中文字幕一二三区_久久这里只有精品98_亚洲特级黄片视频_男女很舒服爽视频免费_国产一二三四2021精字窝_国产高潮白浆一区_自拍日本高清三级_秘书高跟黑色丝袜国产在线_亚洲A v永久无码精品网站色欲

NEWS

新聞

了解優(yōu)麒麟最新資訊,關(guān)注社區(qū)和產(chǎn)品動態(tài)。

NEWS

Learn about the latest news.

開源播放器MPV簡介

2021-06-24 17:24:09

MPV 是一款基于 MPlayer 和 MPlayer2 的多平臺開源播放器,其在Linux上擁有廣泛的輸出設(shè)備支持,內(nèi)置ffmpeg解碼器,支持絕大部分的視頻和音頻格式,支持本地播放和網(wǎng)絡(luò)播放,支持ass特效字幕,GPU 解碼能力十分出色。本期小編就為大家簡單介紹一下MPV的配置和使用。

安裝:

$ sudo apt-get update

$ sudo apt install mpv

1、配置介紹

查看MPV的幫助信息可在終端執(zhí)行"mpv --help", 查看MPV可配置信息可在終端執(zhí)行"mpv --list-options",查看快捷鍵列表可在終端執(zhí)行"mpv --input-keylist"MPV參數(shù)調(diào)用需要"--",如果參數(shù)是使用配置文件中的參數(shù),則配置文件中無需在參數(shù)前加"--"。MPV的配置文件目錄為:~/.config/mpv/,本文介紹的播放器定制將不使用配置文件,這里只簡要介紹下mpv.conf和input.conf這兩個(gè)配置文件的格式,mpv.conf 是主配置文件,里面包含一些基本的配置,input.conf 按鍵配置文件,包含播放過程中一些操作快捷鍵的設(shè)置。

mpv.conf

# Disable the On Screen Controller (OSC).

osc=no

# Keep the player window on top of all other windows.

ontop=yes

# Enable hardware decoding if available. Often, this does not work with all

# video outputs, but should work well with default settings on most systems.

# If performance or energy usage is an issue, forcing the vdpau or vaapi VOs

# may or may not help.

hwdec=auto

input.conf

# Mouse wheels, touchpad or other input devices that have axes

# if the input devices supports precise scrolling it will also scale the

# numeric value accordingly

WHEEL_UP      seek 10

WHEEL_DOWN    seek -10

WHEEL_LEFT    add volume -2

WHEEL_RIGHT   add volume 2

## Seek units are in seconds, but note that these are limited by keyframes

RIGHT seek  5

LEFT  seek -5

UP    seek  60

DOWN seek -60


下面詳細(xì)介紹幾個(gè)比較重要的配置項(xiàng):

(1)quiet

這個(gè)參數(shù)會阻止?fàn)顟B(tài)行信息的顯示,即使得控制臺消息盡量少輸出。使用Qt嵌入MPV時(shí),需要使用noquiet而不是quiet,否則Qt程序無法獲得MPV的狀態(tài)信息,致使Qt程序無法將MPV的狀態(tài)準(zhǔn)確的展示給用戶,如播放進(jìn)度、出錯(cuò)信息等。當(dāng)然,如果你的機(jī)器性能差,那還是建議你直接使用mpv,且參數(shù)使用quiet,而不是像本文介紹的這樣對MPV進(jìn)行UI封裝。MPV使用noquiet的格式為:mpv --no-quiet。

(2)config

可讓Qt程序?qū)⒁恍┗镜呐渲猛ㄟ^從MPV命令獲取各參數(shù)支持可選值,并設(shè)置一個(gè)默認(rèn)值,且可通過圖形展示給用戶去選擇。所以此處使用no-config,即不從MPV的配置文件讀取參數(shù)。mpv使用no-config的格式為:mpv --no-config。

(3)input-file

這里將不使用MPV的input.conf配置文件,而是通過標(biāo)準(zhǔn)輸入stdin給MPV發(fā)送命令,命令后面帶上換行"\n"寫入stdin即可。另外,在直接使用MPV的過程中,--no-input-default-bindings將使得MPV無法響應(yīng)按鍵的事件,而--input-default-bindings參數(shù)默認(rèn)為yes,則可以讓MPV響應(yīng)按鍵事件。MPV使用input-file的格式為:mpv --input-file=/dev/stdin。

(4)term-status-msg

該參數(shù)可以讓MPV輸出一些視頻信息,可以通過 --term-status-msg 參數(shù)給它一個(gè)輸出格式,如:"--term-status-msg=STATUS: ${=time-pos} / ${=duration:${=length:0}} P: ${=pause} B: ${=paused-for-cache} I: ${=core-idle} VB: ${=video-bitrate:0} AB: ${=audio-bitrate:0}"

(5)vo

通過命令“mpv --vo help”可查看MPV支持的視頻驅(qū)動列表,Qt圖形程序可以將列表展示出來供用戶選擇,并將選擇的vo加入MPV的參數(shù)列表中,加入方式為:mpv --vo xxx,如:mpv --vo=xv。

(6)ao

通過命令“mpv --ao help”可查看mpv支持的音頻驅(qū)動列表,Qt圖形程序可以將列表展示出來供用戶選擇,并將選擇的ao加入mpv的參數(shù)列表中,加入方式為:mpv --ao xxx,如:mpv --ao=pulse。

(7)hwdec

hwdec為硬件解碼配置,其可用配置列表和GPU有關(guān),這里暫分析其中5種配置:no(軟解),auto(自動嘗試使用第一種可用的硬解方式),vdpau(用于vdpau和opengl的顯示輸出,即此時(shí)需要保證vo參數(shù)為gpu或者vdpau),vaapi(用于vaapi和opengl的視頻輸出,即此時(shí)需要保證vo參數(shù)為gpu或者vdapi,僅支持Intel GPU)和vaapi-copy(將視頻拷貝回系統(tǒng)內(nèi)存中,僅支持Intel GPU)。參數(shù)使用格式為:--hwdec=vaapi-copy。

hwdec具體參數(shù)見文檔:https://mpv.io/manual/stable/。

(8)vd-lavc-threads

硬件解碼線程數(shù)目,僅適用于MPEG-1/2和H.264,取值范圍為0 - any,默認(rèn)為0。使用格式如下:--vd-lavc-threads=4。

2、MPV格式支持

1)MPV支持的視頻格式:

avi 、vfw、divx、mpg、mpeg、m1v、m2v、mpv、dv、3gp、mov、mp4、m4v、mqv、dat、vcd、ogg、ogm、ogv、ogx、asf、wmv、bin、iso、vob、mkv、nsv、ram、flv、rm、swf、ts、rmvb、dvr-ms、m2t、m2ts、mts、rec、wtv、f4v、hdmov、webm、vp8、bik、smk、m4b、wtv、part

2)MPV支持的音頻格式:

mp3、ogg、oga、wav、wma、aac、ac3、dts、ra、ape、flac、thd、mka、m4a、opus

3)MPV支持的字幕格式:

srt、sub、ssa、ass、idx、txt、smi、rt、utf、aqt、vtt

4)MPV支持的列表格式:

m3u、m3u8、pls、xspf

3、MPV使用方法

前面提及過"mpv --help"、"mpv --list-options"mpv --input-keylist"等一些MPV的幫助命令,這里將介紹如何真正使用MPV。

方法一:

通過點(diǎn)擊菜單欄中mpv播放器圖標(biāo)啟動MPV,然后在顯示區(qū)域點(diǎn)擊"mpv Media Player"啟動MPV,這種方式啟動的MPV,其默認(rèn)命令行參數(shù)為:"/usr/bin/mpv --profile=pseudo-gui --",即為pseudo-gui模式,該模式使用一些內(nèi)置的配置選項(xiàng),該參數(shù)是在mpv.desktop文件中指定的,如:"Exec=/usr/bin/mpv --profile=pseudo-gui -- %U"。如果想要播放視頻文件,將文件拖入到界面中即可開始播放。

MPV沒有官方的圖形用戶界面,只有一個(gè)OSC(屏幕控制器),OSC上的布局包含了視頻播放器的基本操作按鈕,包括上一個(gè)、下一個(gè)、快進(jìn)倒退、播放進(jìn)度條、全屏、暫停等,當(dāng)然,其支持快捷鍵操作。如果想播放多個(gè)視頻文件,可以選中多個(gè)文件,然后右鍵菜單選擇使用"mpv Media Player"進(jìn)行播放,此時(shí)就可以通過點(diǎn)擊OSC上的"下一個(gè)""上一個(gè)"圖標(biāo)按鈕進(jìn)行視頻切換。效果如下圖所示:


優(yōu)麒麟(Ubuntu Kylin)

優(yōu)麒麟(Ubuntu Kylin)

優(yōu)麒麟(Ubuntu Kylin)


方法二:

打開一個(gè)終端,在終端上靈活配置MPV 參數(shù)進(jìn)行播放。這里暫時(shí)簡要列舉一種使用硬解的參數(shù)配置,其他參數(shù)設(shè)置可以參考上面提到的一些主要參數(shù)。執(zhí)行如下命令行使用硬解來播放視頻:

$ /usr/bin/mpv --no-quiet --vd-lavc-threads=6 --hwdec=vaapi --vo=opengl --ao=pulse CESI_1080P.mkv

終端打印信息如下圖所示:

優(yōu)麒麟(Ubuntu Kylin)

當(dāng)然在優(yōu)麒麟1804及其之后的系統(tǒng)上,MPV的參數(shù)又更新了,比如"--gpu-context",我們在使用硬解時(shí)可參考如下這行命令:

$ /usr/bin/mpv --vo=gpu --hwdec=vaapi --gpu-context=x11egl CESI_1080P.mkv

好了,這一期MPV的介紹就到這里了,下一期將繼續(xù)為大家介紹如何在優(yōu)麒麟上使用MPV編寫自己的播放器,順便提醒大家一下,19.10內(nèi)測夏令營活動今天正式開啟了,歡迎大家踴躍參加,我們下期見~