2010-12-01 2 views
2

OpenGL 렌더링을위한 복사 방지를 구현하고 싶습니다. 여기에 몇 가지 아이디어가 있지만 그 중 아무 것도 확신 할 수 없습니다. 이 작업을 수행하는 방법에 대한 제안을 보내 주시겠습니까?OpenGL 렌더링을 사용하여 복사 방지를 구현하는 방법

ChangeDisplaySettingsEx API를 사용하면 디스플레이 장치 구성을 변경할 수 있습니다. 복사 방지 세부 정보가 포함 된 VIDEOPARAMETERS 구조체를 사용합니다. 이 API는 Win2K에 도입되었습니다. COPP 또는 OPM이 응용 프로그램 창당 복사 방지 설정을 설정하는 반면 COPP는 복사 방지 설정을 출력마다 설정합니다.

COPP API는 VRM-7 또는 VMR-9 DirectShow 필터에서만 사용할 수 있으며 WinXP부터 사용할 수 있습니다. 그것을 사용한다는 것은 DirectShow를 사용하여 콘텐츠를 렌더링해야 함을 의미합니다. 우리가 Directshow없이 앱을 완벽하게 렌더링하지만 복사 보호를 설정하기위한 더미 VRM-9를 만들면 어떻게 될까요?

OPM API는 Vista에서만 사용할 수 있지만 헤더 파일은 Windows 7 SDK의 일부입니다. 이 API는 COPP보다 분명히 우수하며 응용 프로그램이 윈도우의 모니터 핸들에서 복사 방지 매개 변수를 설정할 수 있으므로 Direct 3D, DirectShow 또는 PMP를 사용하지 않아도 사용할 수 있습니다.

답변

8

복사 방지가 작동하지 않습니다. 기간. 화면에 표시된 내용으로 이동하는 방법은 항상 있습니다. 시스템에서 실행중인 프로그램에서 가져올 수없는 경우 그래픽 카드의 출력을 탭합니다. HDMI-videograbber 상자는 250 $ 이하로 제공되며 HDMI를 보호하는 HDCP 마스터 키가 유출되었습니다.

내 충고 : 복잡한 DRM 체계 구현에 신경 쓰지 마십시오. 중요하고 중요한 것에 더 많은 시간을 할애하십시오.

코멘트로 인해 편집 : 복사 방지를 사용하는 것은 OpenGL의 기능이 아닙니다. 운영 체제의 그래픽 하위 시스템과 관련이 있습니다. Windows의 경우 HDCP 복사 방지는 비디오 스트림 용 DirectX 필터 그래프의 일부로 구현됩니다. OpenGL은 DirectX에서 분리되어 있기 때문에 OpenGL로 렌더링 된 것을 "보호"할 가능성은 거의 없습니다.

+0

-1 개인적인 감정에 관계없이 HDCP/DPCP가 필요합니다 (고객 또는 예상 하드웨어 구성에 따라). 질문을 철저히 기각하는 것은 쉽지만 대답을 제시해야하는 것은 아닙니다. –

+4

HDCP가 작동하지 않습니다. 어떤 고객이 나에게 그것을 실행하라고 요구할 때마다 나는 그들에게 말한다. 단순히 사실을 알기에 DPCP를 구현하지 않으면 모든 고객이 복제 방지 기능이 중단 될 수 있음을 고소 할 수 있습니다. 이것은 개인적인 느낌이 아니라 단지 기술적 인 사실입니다. 그리고 업계의 모든 사람들이 이것을 빨리 이해할수록 중요한 일들에 초점을 맞출수록 더 빨리 나아갈 수 있습니다. 이제 원래의 질문에 대해 : 이것은 OpenGL과는 아무런 관련이 없으며, 순수하게 기본 그래픽 시스템의 기능입니다. 그리고 HDCP를 가능하게하는 AFAIK는 비디오 오버레이에 대해서만 가능합니다. – datenwolf

+0

@datenworlf 내가 당신과 완전히 동의하더라도, 현실 세계에서 고객 사양을 존중해야합니다. * 프랭크 *는 사용 가능한 시간으로 인해 더 낮은 품질의 제품을 생산할 수있을지라도 이것을 구현해야 할 수도 있습니다. 또한 보호 시스템은 저작권을 보장하지 않지만 시스템 중단을 복잡하게 만듭니다. – Luca