Linux Programmer

MPV 리눅스 미디어 플레이어 설정 본문

컴퓨터 관련/리눅스 데스크탑

MPV 리눅스 미디어 플레이어 설정

sunyzero 2018. 8. 19. 14:20

1. MPV 설정 파일 (mpv.conf, input.conf)

mpv 설정 파일은 크게 2가지가 있다. 첫번째로 mpv.conf라는 화면 크기, 위치, 재생 상태, 폰트 크기, 볼륨 등 mpv 본래의 기능을 설정하는 파일이고, 두번째로 input.conf는 단축키를 재지정할 수 있는 설정 파일이 있다.

 

1.1. mpv.conf 메인 설정 파일

mpv는 리눅스에서 가장 많이 애용되는 미디어 플레이어이다. default 설정도 크게 불편하지는 않지만 조금 더 손보면 좋다.

mpv.conf 설정 파일의 위치는 ~/.config/mpv/mpv.conf 이다. 디렉터리는 mpv를 한번이라도 실행하면 자동으로 만들어지지만, 직접 만들어도 된다. 우선 본인이 쓰는 설정은 대충 다음과 같다.

keep-open=always                                                                                                                              
geometry=50%:60%
autofit=1600
no-border
osd-blur=2.5
osd-border-size=1
osd-level=1
osd-align-y=bottom

sub-font="NanumGothic:style=Bold"
sub-blur="0.3"
sub-border-size="3"
sub-scale="1.2"
sub-codepage="cp949"
sub-pos="95"

volume="50"

 

각 기능에 대한 자세한 설명은 man mpv 의 맨페이지에서 볼 수 있다. 그리고 모든 설정 기능은 명령행에서 롱 옵션인 --를 붙여서 사용할 때와 동일하다. 예를 들어 keep-open 옵션은 명령행에서 --keep-open=always 로 명령한 것과 같다.

autofit은 창의 width pixel크기이다. 적당한 크기로 맞추면 된다. 절대값을 입력하거나 퍼센트로 입력할 수도 있다.(1600은 절대값, 90%는 상대적인 비율) 이외에 영상이 크거나 작은 경우에만 autofit을 하도록 하는 autofix-lager와 autofit-smaller도 있다.

no-border를 사용하면 깔끔해지지만 윗부분의 데코레이션 창 타이틀바 부분이 없어지므로 Super+Mouse1 혹은 Alt+Mouse1 키로 창을 잡고 이동해야 한다. 크기 조절도 border가 없으므로 모서리 근처에서 Super+Mouse2(휠 버튼) 혹은 Alt+Mouse2 버튼으로 조절해야 한다. 닫을때는 Alt-F4가 대부분 단축키로 되어있다.

mpv screenshot
mpv screenshot

subtitle을 사용하는 경우 기본적으로 자동판단이 가능하지만, 간혹 실패하는 경우 sub-codepage 설정을 잡아주면 된다. 예를 들어 sub-codepage=cp949로 지정하면 윈도우즈 한글 완성형으로 읽어온다.

이 외에 항상 모든 창의 맨 위에 두고 싶다면 ontop 옵션을 지정하면 된다.

예를 들어 아래와 ontop을 기본값으로 켤 수 있다. 실행 중에 ontop기능을 toggle하고 싶다면 T (대문자t)를 누르면 된다.  예를 들어 아래 설정은 ontop과 loop-playlist를 추가한 모습이다.

keep-open=always
geometry=50%:60%
autofit=1800

...생략...

ontop
loop-playlist=inf

 

 

1.2. input.conf 단축키 설정 파일

mpv의 단축키 설정은 input.conf 파일을 이용한다. 설정 파일의 위치는 ~/.config/mpv/input.conf 이다. 아래는 본인이 쓰는 설정이다.

Wheel_up add volume +2
Wheel_down add volume -2
w seek -30
s seek 30
a seek -10
d seek 10

 위 설정은 마우스 휠로 볼륨을 +2 하거나 -2하는 설정이 있고, w는 30초 이전, s는 30초 앞으로, a는 -10초, d는 +10초이다.


 

2. mpv 패키지 설치 방법

혹시 mpv 설치를 못하는 경우가 있을 수 있어 간략하게 설명해둔다.

Fedora에서 mpv를 설치할 때는 다음과 같이 명령한다. (rpmfusion에 가면 원래 설치법을 볼 수 있다.)

명령은 총 2번에 걸쳐서 내린다. 첫번째는 rpmfusion repository를 추가하는 것이고, 두번째는 mpv를 설치하는 명령이다. 최근에는 설치하면서 rpmfusion이 활성화 시켜주는 옵션이 있어서 활성화 되어있다면 첫번째 명령에서 이미 설치되었다고 하면서 스킵될 것이다.

# dnf -y install https://download1.rpmfusion.org/{free/fedora/rpmfusion-free,nonfree/fedora/rpmfusion-nonfree}-release-$(rpm -E %fedora).noarch.rpm

# dnf -y install mpv

 

혹시 dnf -y install mpv가 잘 안될 때는 cache를 다시 가져오기 위해 dnf check-update 명령을 한번 내린 뒤에 하는 것도 방법이다.

만일 centos를 사용한다면 아래와 같이 명령하면 된다.

# yum -y install https://download1.rpmfusion.org/{free/el/rpmfusion-free,nonfree/el/rpmfusion-nonfree}-release-$(rpm -E %centos).noarch.rpm

# yum -y install mpv

 

2.1. mpv용 코덱 설치

mpv만 설치한다고 끝나는 것이 아니라 mpv가 사용할 코덱도 설치해야 한다. 여기서 코덱의 라이선스 문제에 대해서 잠깐 언급하도록 하겠다. 대부분의 영상 코덱은 라이선스가 복잡하게 얽혀있다. 따라서 기본으로 설치되는 코덱은 라이선스 문제를 피해가기 위해 성능에 문제가 생겼다. 즉 동영상 재생시 끊김이나 느려질 수 있다. 특히 2k나 4k같은 대용량 영상은 기본 코덱으로는 무리다.

기본 코덱은 보통 openh264, libavcode-free라는 이름으로 제공되는데, 여기서는 새로운 코덱인 x264를 설치할 것이다. 새로운 코덱은 rpmfusion에서 제공하므로 위에서 dnf 명령으로 rpmfusion repository를 추가한 뒤에 명령을 내릴 수 있다.

하지만 아래에서 보듯이 기존의 코덱이 있다면 충돌나서 설치가 안된다. 설명에서 --allowerasing을 추가하면 교체(replace)할 수 있다고 알려주고 있다. 따라서 충돌이 발생하면 dnf -y --allowerasing install x264 으로 명령해서 설치하면 된다.

$ sudo dnf -y install x264
… 아래처럼 에러가 발생할 수도 있다.
오류: 
 문제: x264-0.164-10.20231001git31e19f92.fc39.x86_64에서 꾸러미 rpmfusion-free는 ffmpeg-libs(x86-64)가 필요하지만, 공급자가 없어 설치 할 수 없습니다
  - 꾸러미 ffmpeg-libs-6.0-16.fc39.x86_64에서 rpmfusion-free는 libavcodec-free에서 libavcodec-free-6.0-11.fc39.x86_64에 의해 제공된 fedora와 충돌합니다
  - 꾸러미 ffmpeg-libs-6.1.1-5.fc39.x86_64에서 rpmfusion-free-updates는 libavcodec-free에서 libavcodec-free-6.0-11.fc39.x86_64에 의해 제공된 fedora와 충돌합니다
  - 설치된 꾸러미 문제 libavcodec-free-6.1.1-3.fc39.x86_64
  - 꾸러미 ffmpeg-libs-6.0-16.fc39.x86_64에서 rpmfusion-free는 libavcodec-free에서 libavcodec-free-6.1.1-3.fc39.x86_64에 의해 제공된 updates와 충돌합니다
  - 꾸러미 ffmpeg-libs-6.1.1-5.fc39.x86_64에서 rpmfusion-free-updates는 libavcodec-free에서 libavcodec-free-6.1.1-3.fc39.x86_64에 의해 제공된 updates와 충돌합니다
  - 충돌하는 요청
  - 꾸러미 ffmpeg-libs-6.0-16.fc39.x86_64에서 rpmfusion-free는 libavcodec-free에서 libavcodec-free-6.1.1-3.fc39.x86_64에 의해 제공된 @System와 충돌합니다
  - 꾸러미 ffmpeg-libs-6.1.1-5.fc39.x86_64에서 rpmfusion-free-updates는 libavcodec-free에서 libavcodec-free-6.1.1-3.fc39.x86_64에 의해 제공된 @System와 충돌합니다
(충돌하는 꾸러미를 교체하려면 명령줄에 '--allowerasing'을 추가하세요 또는 '--skip-broken'는 설치 할 수 없는 꾸러미를 건너 뜁니다)


$ sudo dnf -y install x264 --allowerasing
… 기존에 설치된 것들이 제거되면서 x264로 덮어쓰여진다.

 

2.2. celluloid (mpv 프론트 엔드)

mpv용 GTK 프론트 엔드는 celluloid를 주로 사용한다. 다만 celluloid를 사용하면 약간의 오버헤드가 있으므로 저성능의 데스크탑이라면 mpv를 그대로 쓰는 것을 추천한다.


 

3. 기타

mpv를 쓰지 않고 기본으로 설치되는 동영상 프로그램인 totem도 꽤 쓸만한 편이다. 따라서 totem을 쓰고자 하는 사람들은 2.1.의 mpv용 코덱 설치 부분만 하면 되겠다.

이 외에 동영상을 플레이할때 앞의 2~5초 정도 음성이 나오지 않는 경우가 있을 수 있는데, 이는 절전 기능 때문에 생기는거라서 여기서 다루기는 애매하고, 다음번에 다른 글에서 다루도록 하겠다.

 

 

 

히스토리

2024-04-13 x264 항목 순서 수정, 코덱 설치 부분 추가

2018-08-19 초안

 

반응형
Comments