자녀 관리 수준 적용

[이 페이지와 연결된 기능인 DirectShow는 레거시 기능입니다. MediaPlayer, IMFMediaEngineMedia Foundation의 오디오/비디오 캡처로 대체되었습니다. 이러한 기능은 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드에서 DirectShow 대신 MediaPlayer, IMFMediaEngine오디오/비디오 캡처를 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]

DVD-Video 디스크에 있는 타이틀의 제목 또는 일부를 1에서 8까지 일반 PML(자녀 관리 수준)으로 할당할 수 있습니다. DVD 탐색기가 PML이 있는 콘텐츠를 읽는 경우 부모 블록에 있다고 합니다. 부모 블록은 챕터, 여러 챕터 또는 여러 타이틀의 일부로 구성됩니다. 국제 시장용 DVD 응용 프로그램은 부모 관리 논리에 특정 등급 시스템을 하드 코딩해서는 안됩니다.

DVD 탐색기 자체는 PML을 적용하지 않습니다. 디스크에서 PML 정보가 발견되면 애플리케이션에만 알릴 뿐입니다. 기본적으로 디스크에서 이 정보를 무시하고 가장 높은 수준의 콘텐츠를 재생합니다. PML을 적용하려면 애플리케이션이 사용자를 수준과 연결하는 일종의 암호 제어 논리를 구현하고, 시작 시 IDvdControl2::SetOption 메서드를 호출하고, 매개 변수 DVD_NotifyParentalLevelChange 및 TRUE를 사용하여 해당 이벤트에 응답하여 PML 이벤트 알림을 보내도록 DVD 탐색기에서 지시하고, 적절하게 액세스를 허용하거나 허용하지 않도록 해당 이벤트에 응답해야 합니다.

DVD 타이틀에는 전체 PML이 하나 있을 수 있지만 디스크 작성자는 해당 타이틀의 특정 섹션을 더 높거나 더 제한적인 PML을 제공할 수 있습니다. 이를 임시 PML 명령이라고 합니다. 이러한 명령에는 항상 두 가지 분기 명령이 포함됩니다. 하나는 플레이어 애플리케이션에서 임시 PML 명령을 수락하는 경우 따라야 하고 다른 하나는 명령이 거부된 경우 따라야 합니다. 이벤트 시퀀스는 다음과 같습니다. DVD 탐색기는 디스크에서 임시 PML 명령이 발견되면 비디오 콘텐츠(DVD 타이틀 도메인)를 읽습니다. 내부 플래그를 확인하여 애플리케이션이 이 이벤트에 대한 알림을 요청했는지 여부를 확인합니다. 플래그가 설정되지 않은 경우 디스크에 지정된 "부모 수준 변경 거부" 분기에 따라 DVD가 계속 재생됩니다. 플래그가 설정되면 DVD는 애플리케이션에 EC_DVD_PARENTAL_LEVEL_CHANGE 이벤트를 보내고 응답을 받을 때까지 일시 중지된 상태로 기다립니다. 애플리케이션이 이벤트를 수신하면 자체 논리를 사용하여 명령을 수락할지 여부를 결정합니다. 그런 다음 TRUE 또는 FALSE 인수를 사용하여 IDvdControl2::AcceptParentalLevelChange를 호출합니다. TRUE이면 디스크에 지정된 "부모 수준 변경 허용" 분기에 따라 DVD 탐색기가 재생을 다시 시작합니다. 그렇지 않으면 재생을 다시 시작하고 "부모 수준 변경 거부"지점을 따릅니다.

DVD 응용 프로그램