RVLink URL: 프로토콜 처리기 RV

RV는 "rvlink" 프로토콜을 사용하는 URL의 프로토콜 처리기 역할을 할 수 있습니다. 이 URL의 형식은 다음과 같습니다.

rvlink://<RV 명령행>

예를 들면,

rvlink:// -l -play /path/to/my/movie.mov

URL은 RV를 시작하고(또는 Mac에서는 새 세션을 생성하거나 현재 세션을 대체), movie.mov를 로드하고, 룩 어헤드(look-ahead) 캐시를 켜고, 재생을 시작합니다.

rvlink URL 사용

웹 페이지, 채팅 세션, 이메일 등에 rvlink를 삽입할 수 있습니다. 물론 프로토콜 인식 여부는 각 응용프로그램에 달려 있습니다. "name://" 형식으로 된 것을 name 프로토콜로의 링크로 취급하도록 설정할 수 있는 응용프로그램도 있고, "http://", "ftp://" 등을 인식하도록 하드 코딩되어 있는 응용프로그램도 있습니다. rvlink를 인식하는 앱의 예는 다음과 같습니다.

  • Firefox
  • Safari
  • Chrome
  • IE
  • Thunderbird
  • Mac Mail
  • IChat

하드 코딩된 프로토콜 유형만 인식하는 앱의 한 예는 Pidgin입니다.

HTML에서 rvlink를 사용하려면 다음과 같은 유형이 작동해야 합니다.

<a href="rvlink:// -l -play /path/to/my/movie.mov">play movie</a>

큰따옴표에 유의하십시오.

다른 설정(예: 이메일에 붙여넣기 등)에서는 RV 명령행이 임의의 문자를 포함할 수 있기 때문에 "웹 인코딩" URL을 사용할 수도 있습니다. 명령행에 이를 요청하면 RV가 웹 인코딩을 수행합니다. 예를 들어 다음을 실행하는 경우,

rv -l -play /path/to/my/movie.mov -encodeURL

RV가 다음과 같은 인코딩한 URL을 터미널에 출력합니다.

rvlink://%20-l%20-play%20%2Fpath%2Fto%2Fmy%2Fmovie.mov

IE와 Konqueror 같은 일부 브라우저는 인코딩한 URL이 프로토콜 처리기로 전달되기 전에 이를 수정하기도 합니다. 이 브라우저에서는 rvlink URL에 흥미로운 문자가 포함되어 있으면 인코딩한 URL도 작동하지 않습니다. 이 문제를 해결하기 위해 RV는 다음과 같은 형식의 "완전히 베이킹된(fully-baked)" URL도 지원합니다.

rvlink://baked/202d6c202d706c6179202f706174682f746f2f6d792f6d6f7669652e6d6f76

이 URL 형식은 정말 읽기 어렵다는 단점이 있지만 URL이 아무런 간섭 없이 프로토콜 처리기까지 도달한다는 보장을 해 주는 최후의 수단이기는 합니다. 인코딩된 URL처럼 베이킹된 URL도 RV에 "-bakeURL" 명령행 옵션을 제공하여 명령행에서 생성할 수 있습니다. "베이킹된" URL은 단순히 명령행의 헥스 인코딩된(hex-encoded) 버전이기 때문에 RV 자체를 사용하는 것에 더하여 프로그래밍 방식으로 사용할 수도 있습니다. 예를 들어, Python에서는 다음과 같은 구문이 작동합니다.

"-play /path/to/file.exr".encode("hex")

공백에 관한 참고 사항

일반적으로 RV는 URL 내 공백을 명령행의 경계 인자로 취급합니다. 공백이 있는 인자(예: 공백을 포함한 동영상 이름)를 포함하고 싶다면 해당 인자를 작은 따옴표(')로 감싸야 합니다. 예를 들어, 미디어 이름이 "my movie.mov"라면 재생할 인코딩된 rvlink URL은 다음과 같습니다.

rvlink://%20'my%20movie.mov'

프로토콜 처리기 설치

RV 자체가 rvlink 프로토콜을 처리하는 프로그램이기 때문에 필요한 건 그저 RV를 OS 또는 데스크톱 환경에서 지정된 rvlink 처리기로 등록하는 것뿐입니다. 등록 프로세스는 RV가 지원하는 각 플랫폼마다 다릅니다.

Windows

Windows에서는 rvlink 프로토콜을 레지스트리에 추가해야 합니다. Windows용 RV 설치 프로그램을 사용 중인 경우 자동으로 추가됩니다. 그렇지 않으면 "etc" 설치 디렉토리에서 RV 설치 위치를 가리키도록 "rvlink.reg" 파일을 편집한 다음, 이 파일을 두 번 클릭하여 레지스트리를 편집해야 됩니다.

Mac

"-registerHandler" 명령행 옵션을 사용하여 RV를 한 번 실행하여 실행 파일을 기본 rvlink 프로토콜 처리기로 등록합니다.

Linux

Windows 및 Mac과 달리 Linux 프로토콜은 OS 레벨이 아닌 데스크톱 환경 레벨에서 등록됩니다. 컴퓨터에 RV를 설치한 후에 설치 위치의 bin 디렉토리에서 "rv.install_handler" 스크립트를 실행하면 됩니다. 이 스크립트가 RV를 KDE와 Gnome 데스크톱 환경 모두에 등록합니다.

일부 응용프로그램에 특정한 참고 사항:

Firefox는 Gnome 설정을 인식할 수도, 인식하지 못할 수도 있습니다. 일반적으로 gconfd가 실행 중인 Gnome 환경이 충분히 설치되어 있는 경우(KDE 또는 이와 다른 데스크톱 환경을 사용 중이라고 해도) Firefox가 Gnome 설정을 인식합니다. 이렇게 해결되지 않으면 여기에 설명된 대로 Firefox에서 직접 rvlink 프로토콜을 등록하면 됩니다.

Konqueror는 아쉽게도 URL에 프로토콜 처리기를 제공하기 전에 대문자를 소문자로 바꿔 버리면서 URL을 망쳐버리는 것으로 보입니다. URL을 아예 전달하지 않는 경우도 있습니다. 즉, 일부 rvlink URL은 작동하지만 또 어떤 URL은 작동하지 않을 수 있기 때문에 현재 Konqueror에서는 "베이킹된" rvlink URL만 사용하는 것이 좋습니다.

Chrome은 기본 시스템 기본값을 사용하여 프로토콜을 처리합니다. 대부분의 경우에는 "xdg-open"이 사용하도록 구성됩니다. 현재 rv.install_handler를 실행 중인 RV-7이면 충분합니다.

커스텀 환경 변수

브라우저 및 데스크톱 환경에 따라 사용자 환경에 설정되어 있는 환경 변수가 URL에서 시작하는 경우에는 RV에서 사용하지 못할 수도 있습니다. 설정되어 있는 RV에 이 환경 변수(예: RV_SUPPORT_PATH)가 필요한 경우에는 URL에서 시작하면 문제가 발생하거나 전혀 실행되지 않을 수 있습니다. 일관된 환경을 구현하려면 시스템 전체 레벨(또는 최소 사용자 독립적 레벨)에서 설정해야 합니다. Linux에서는 배포에 따라 환경 변수 설정이 달라집니다. 여러분의 배포에 대한 적절한 단계를 연구해 보시기 바랍니다. Windows에서는 일반적인 환경 변수 기술을 사용할 수 있습니다. MacOS에서는 최근 사용하기가 어려워졌지만 /etc/launchd.conf에서 환경 변수를 설정하는 경우(설정 후 재부팅) 시스템의 모든 프로세스가 환경 변수의 값을 픽업해야 합니다.

프로토콜 처리기 테스트

RV가 rvlink 프로토콜 처리기로 적절히 등록되고 나면 이 페이지로 이동하여 시험해 보십시오.

팔로우

0 댓글

댓글을 남기려면 로그인하세요.