명령줄에서 mpv를 제어하는 ​​방법은 무엇입니까?

명령줄에서 mpv를 제어하는 ​​방법은 무엇입니까?

mpv명령줄에서 어떻게 제어하나요?

mpv next/prev다음 또는 이전 미디어 파일을 재생하는 데 사용할 수 있는 명령이 있나요 ?

답변1

이를 수행하는 방법에는 두 가지가 있습니다.

  • mpv 및 소켓 제어를 위한 IPC 설정
  • 타사 스크립트 사용

mpv에 대한 IPC 설정

다음과 같이 IPC를 사용하여 이와 같은 작업을 수행할 수 있습니다 man mpv.

--input-ipc-server를 사용하는 것은 원격 제어와 같은 목적에도 적합합니다.

먼저 또는 다음 에서 mpv.confIPC 소켓을 활성화 해야 합니다 ~/.config/mpv/mpv.conf.

# Enable the IPC support to control mpv from the command-line.
input-ipc-server=~~/socket

일시적으로 한 세션 동안만 열어 두려면 다음을 수행할 수 있습니다.

$ mpv --input-ipc-server=$XDG_CONFIG_HOME/mpv/socket

이제 미디어를 제어할 수 있습니다.

재생/일시 정지

echo cycle pause | socat - "$XDG_CONFIG_HOME/mpv/socket"

다음 트랙

echo playlist-next | socat - "$XDG_CONFIG_HOME/mpv/socket"

이전 트랙

echo playlist-prev | socat - "$XDG_CONFIG_HOME/mpv/socket"

외부 프로그램 사용

명령줄에서 mpv를 제어하는 ​​또 다른 방법은 다음을 사용하는 것입니다.mpvcmpc또는 "mpv" 와 같은 프로그램입니다 .

정말 강력합니다. 예:

$ mpvc next                   # Play next media
$ mpvc prev                   # Play previous media
$ mpvc mute                   # Mute media's sound track
$ mpvc unmute                 # Unmute media's sound track
$ mpvc volume +               # Increase volume
$ mpvc volume -               # Decrease volume
...

답변2

명령줄에서 mpv와 상호 작용할 수 있는 몇 가지 옵션이 있습니다.수동예를 들어,

  • 키 바인딩("input.conf" 사용)
  • 화면 표시
  • JSONIPC
  • 클라이언트 API(libmpv)...

GNU 시스템에서는 /usr/share/doc/mpv/mpv 구성 방법에 대한 영감을 얻을 수 있습니다. input.conf기본 키 바인딩과 mpv.conf샘플 구성 파일이 있습니다.

다양한 운영 체제에서 사용하는 방법을 알아보려면 설명서를 확인하세요.

https://mpv.io/manual/master/#command-interface

답변3

명령줄에서 MPV 제어를 처리하는 다양한 방법과 프로그램이 있지만 기존 솔루션이 만족스럽지 않아 Python 명령줄에서 MPV 제어를 지원하는 스크립트를 작성했습니다.

https://github.com/ideasman42/mpvctl/blob/master/mpvctl


$ mpvctl next               # Play next media
$ mpvctl prev               # Play previous media
$ mpvctl add *.mp3          # Play MP3's in the current directory.
$ mpvctl trash              # Move the file to the trash and play the next. 

이는 다음을 지원합니다.

  • 일시정지/재생, 다음/이전... 등과 같은 기본 기능입니다.
  • 상대적으로 추구합니다.
  • 파일을 추가하고 선택적으로 현재 재생 목록을 대체합니다.
  • 현재 재생 중인 파일을 휴지통으로 이동합니다.

내가 찾은 대안에는 몇 가지 제한 사항( $PWD예: 파일 추가 시 확장되지 않음)이 있었고 BASH의 더 관련된 명령을 따르기가 어렵다는 것을 알았습니다. 그래서 Python으로 다시 작성되었습니다.

관련 정보