DirectShow DirectShow 의 사용법 DVD 애플리케이션 DVD 의 기초   [목차열람] [주소복사] [슬롯비우기]
DVD 의 기초
 
Microsoft DirectX 9.0

DVD 의 기초

소비자에게 있어 매력적인 DVD 의 기능 (심리스인 분기, 복수의 언어, 페어 렌탈 컨트롤, 가라오케의 지원, 복수의 앵글)은, 개발자의 작업을 다소 복잡하게 하는 것이다. DVD player는 오디오 스트림, 비디오 스트림, 서브 픽쳐 스트림을 재생하는 것 만이 아니고, 현재의 디스크로 이용할 수 있는 조작 옵션을 파악해, 많은 종류의 사용자 커멘드를 적절히 처리할 수 있어야 한다. DVD 네비게이터에서는, 사용자는 그렇게 말한 복잡함을 거의 의식하지 않고 , 완전한 기능을 갖춘 DVD 애플리케이션을 생성 할 수 있다. DVD 의 사양을 참조하는 필요없음에 DVD 네비게이터의 API 를 효과적으로 사용할 수 있지만, 기본적인 DVD 의 조작의 개념은 알아 둘 필요가 있다. 이하에, 필요한 배경 지식을 말한다. DVD 의 지식에 관한 더 자세한 정보는, 써드파티의 서적 또는 Web 사이트를 참조할것.

조작 제어의 데이터

DVD-Video 디스크 위에의 오디오 및 비디오의 데이터는, 다양한 조작 제어의 데이터에 의해 일정 간격으로 인터리브 된다. 이 데이터에 의해, 디스크 위에의 특정의 위치로 이동하는 등의 동작을 player에 지시하거나 또는 단지 정보만의 마커로서 이용해, 그 위치 이후의 내용이 그 이전보다 높은 페어 렌탈 레벨을 가지는 것이나, 쳅터의 스킵 동작이 무효라는 점을 player에 알리거나 할 수 있다. player가 이 정보를 애플리케이션에 중계 하면, 애플리케이션은 그 정보에 근거한 동작을 실시한다. 이 조작 마커는, DVD 로 비디오 CD 보다 뛰어난 대화 조작성을 사용자에 제공하는 기능의 일부이다. DVD player의 애플리케이션은, 디스크로 발생하는 이벤트 같이, 사용자측에서 발생하는 이벤트도 처리해야 한다.

오디오, 비디오, 서브 픽쳐의 데이터

DVD-Video 디스크에는, 비디오, 오디오, 서브 픽쳐라고 하는 3 종류의 주요한 데이터 스트림이 포함되어 있다.

타이틀과 쳅터

DVD-Video 디스크에 있어서의 주요한 논리적 구분이 "타이틀" 이다. 타이틀에 의해 동영상 전체를 나타내는 일도, 또는 30 초의 비디오 클립을 나타낼 수도 있다. 디스크에는 최대 99 타이틀을 포함할 수가 있어 디스크 생성자는 타이틀을 최대 999 의 논리적인 쳅터로 나눌 수가 있다. DVD 위에의 무비 본편에서는, 대부분의 경우, 동영상의 내용은 연속해 재생되는 일련의 쳅터로서 포맷 되고 있다. 그러한 디스크에서는, 쳅터의 마지막 마커에 분기 명령이 포함되어 있어 그것에 의해, player에 다음의 쳅터를 연속해 재생하도록(듯이) 지시한다. 이러한 타이틀을,"일련의 시퀀셜 PGC 타이틀" 이라고 한다. PGC 와는 "프로그램 최인" 의 약어이며, 일련의 쳅터가 속하는 그룹의 별명이다. 이 용어는, DVD 네비게이터의 문서에서는 사용하지 않는다. 가라오케 디스크 등 다른 종류의 컨텐츠를 포함한 디스크에 대해서는, 쳅터의 마지막 마커는, player에 메뉴를 표시시키거나 단지 player를 정지시키거나 하는데 이용된다.

DVD 애플리케이션의 개발자는 타이틀 및 쳅터 번호를 사용해, 디스크의 특정의 위치에 점프 한다. 상세한 액세스를 실시하려면 , 타이틀 번호와 타임 코드를 사용한다. 타임 코드를 사용할 수 있는 것은 시퀀셜 PGC 타이틀뿐이다. 이것은, 다른 종류에는 타임 코드 맵이 없기 때문에이다.

메뉴

메뉴는, 사용자가 기존의 player로 재생되는 DVD 위에의 내용과 교환하기 위한 기본적인 수단이다. 사용자는 메뉴를 사용하는 것에 의해, 표시하는 비디오 타이틀, 재생하는 오디오 사운드 트랙, 표시하는 자막이나 카메라 앵글, 유효하게 하는 다른 기능을 선택할 수 있다. DirectShow DVD 애플리케이션의 개발자는, 메뉴를 기존의 player에 있어서의 메뉴로서 유효하게 하는지, 또는, 디스크상에서 생성 된 메뉴를 옮겨놓거나 보충하거나 하는 컴퓨터 베이스의 새로운 인터페이스를 생성 하는지를 선택할 수 있다. 애플리케이션에서는, 프로그램적으로 메뉴 버튼을 선택하거나 액티브하게 하는 것에 의해 사용자의 대화 조작의 시뮬레이트도 할 수 있다.

비디오 매니저 메뉴
최상정도의 메뉴는 비디오 매니저 메뉴 (VMGM)이며, 탑 메뉴 또는 타이틀 메뉴라고도 부른다. 메뉴에는 보통, 버튼이 있어, 이 버튼에 의해 사용자는 디스크 위에의 메인 타이틀 또는 타이틀의 그룹으로 이동할 수 있다. 타이틀의 그룹은,"타이틀 세트" 라고 부른다. 예를 들어, 무비 본편,"감독 및 캐스트의 인터뷰","다음의 작품" 이라고 하는 타이틀 세트를 포함한 디스크상에서는, VMGM 의 버튼은 3 개 있다고 생각된다. "다음의 작품" 버튼을 클릭 하면, 타이틀 세트내에 있는, 각 타이틀용의 버튼이 붙은 비디오 타이틀 세트 메뉴 (VTSM)로 이동할 수 있다.

디스크에는, 최대 8 개의 언어에 의한 사운드 트랙을 포함할 수가 있다. 또, 사운드 트랙에 대응하는 언어에 의한 VMGM 를 복수 포함할 수도 있다.

디스크의 최초의 타이틀이 자동 재생 타이틀로서 생성되지 않은 한, 디스크를 재생 하면 VMGM 가 최초로 표시된다. 디스크의 최초의 타이틀이 자동 재생 타이틀로서 생성 되고 있는 경우, VMGM 는 표시되지 않는다. DVD 위에의 무비 본편은, 그 대부분이 자동 재생 타이틀로서 생성 되고 있다.

비디오 타이틀 세트 메뉴와 서브 메뉴
비디오 타이틀 세트 메뉴, 별명 루트 메뉴 (루트에는 없다)는 VMGM 의 서브 메뉴이다. 타이틀 세트에는, 1 ~ 99 타이틀까지 포함할 수가 있다. VTSM 에는, 사용자가 타이틀 세트내의 임의의 타이틀로 이동하기 위한 버튼이 준비되어 있다. 또, VTSM 에 사용자가 오디오 스트림, 카메라 앵글, 서브 픽쳐 스트림, 또는 쳅터를 사용하기 위한 옵션을 선택할 수 있도록(듯이)하기 위한 서브 메뉴를 갖게할 수도 있다. 이러한 서브 메뉴는, 타이틀 세트내의 모든 타이틀에 대해서 항상 유효하게 되어 있다. 대부분의 DVD 에 대해, VTSM 서브 메뉴는 사용되지 않는다. 루트 메뉴등의 서브 메뉴는 모두 옵션이기 (위해)때문에, VTSM 내의 서브 메뉴가 모두 공통의 루트 메뉴를 가지고 있다고는 할 수 없다.

페어 렌탈 관리 레벨

DVD 디스크의 모두 또는 일부는, 1 ~ 8 의 페어 렌탈 관리 레벨 (PML)로 코드화할 수 있다. 8 은 가장 강한 제한 (성인만)으로, 1 은 가장 약한 제한 (연령 제한 없음)이다. 이 생각은, 부모의 승낙없이 아이가 성인전용 컨텐츠를 보는 것이 없게 해, 어른은 아이가 볼 수 없는 컨텐츠를 볼 수가 있다고 하는 것이다. 미국 및 캐나다에서는, MPAA 의 레이팅 시스템 (G, PG, PG-13, NC-17)에 레벨을 할당하고 있지만, 다른 나라나 지역에서는 사정이 다르다.

쳅터는 페어 렌탈 블록내에 논리적으로 존재할 수 있기 (위해)때문에, 타이틀내에 동일 쳅터의 2 개의 버전을 포함해, 각각 다른 PML 를 다른 페어 렌탈 블록에 대해 할당할 수가 있다. 예를 들어, 애플리케이션이 PML 를 지원 하고 있으면, 디스크에 로그인한 아이가 쳅터 3 의 1 개의 버전을 보는 한편으로, 디스크에 로그인한 어른은 다른 버전을 볼 수가 있다.

타이틀 또는 쳅터에 일시 PML 를 포함할 수도 있다. 전체적으로, 그 내용에는 타이틀 또는 쳅터보다 높은 레이팅이 주어진다. 이것은, 타이틀이 복수의 페어 렌탈 레벨을 가질 수 있는 것을 의미하고 있다. 일시 PML 는 일반적으로 앵글 블록으로서 생성 되기 (위해)때문에, 무비의 특정의 장면(scene)에 어린이용, 어른용의 2 개의 버전을 포함할 수가 있다.

페어 렌탈 레벨을 적용하는 것은, player 애플리케이션의 역할이다.

도메인

"도메인" 의 개념은 DVD 의 조작에 있어 매우 중요하지만, 도메인은 타이틀, 메뉴, 앵글 블록과 같은 방식에서 디스크상에 물리적으로 마크 되고 있는 것은 아니고, DVD 의 생성자에게는 제어할 수 없다. DVD 도메인은, 5 개의 가능한 값을 가지는 상태 변수의 일종이라고 생각할 수가 있다. DVD player는, 현재 디스크로부터 읽기중의 컨텐츠의 종류를 파악하기 위해서, 이 상태 변수를 감시한다. DVD player는 도메인을 사용하는 것에 의해, DVD 드라이브에 의미가 없는 커멘드를 발행하지 않게 할 수 있다. 예를 들어,"SelectButton" 커멘드에 의미가 있는 것은 메뉴가 표시되고 있는 경우뿐이어,"FastForward" 커멘드는 player가 현재 정지하고 있는지, 또는 정지화면인 메뉴를 표시중인 경우는 의미가 없다. 다음 표에, 도메인의 일람을 나타내, 애플리케이션측에서 본 의미를 나타낸다.

도메인 DVD 네비게이터가 읽기중의 컨텐츠.
First Play 디스크의 최초의 섹션 (FBI 경고 등).
Video Manager Menu 디스크 전체 또는 디스크의 면의 메인 메뉴. 메뉴 관련의 메서드는 모두 유효.
Video Title Set Menu 타이틀 또는 타이틀의 그룹의 메뉴, 혹은 서브 메뉴 (서브 픽쳐, 언어, 오디오, 또는 앵글). 메뉴 관련의 메서드는 모두 유효.
타이틀 타이틀내의 비디오 컨텐츠. 메뉴 관련의 메서드는 유효하지 않다.
정지 없음. 헤드가 디스크로부터 멀어지고 있다. 여기로부터, Play 를 호출할 수 있다.

사용자의 동작 제어

사용자의 동작 제어 (UOP)는 디스크 위에의 마커이며, DVD 의 생성자는 이 마커를 임의의 위치에 삽입해, 사용자의 조작 옵션을 제한할 수 있다. 대부분의 디스크는, 표준의 UOP 제한으로 준거하고 있다. 예를 들어, 대부분의 디스크는 First Play 도메인에 대해 고속의 빨리 감기나 메뉴의 표시를 사용자에 실시하게 한 없게 하고 있다. 기본적으로는, 커멘드가 현재의 도메인내에서 보통은 유효하게 되는 경우에서도, 모든 디스크에 대해 임의의 UOP 커멘드를 임의의 위치에 삽입할 수 있다. 예를 들어, 특정의 타이틀로 고속의 빨리 감기를 할 수 없게 하거나 사용자가 타이틀 도메인에 들어간 후는 특정의 메뉴가 표시되지 않게 하거나 할 수 있다. DVD 네비게이터는, 디스크로부터가 그렇게 말한 커멘드에 모두 준거하고 있어, 애플리케이션이 디스크의 UOP 제어를 오버라이드(override) 하지 않게 하고 있다.

↑TOP