Silverlight를 설치하려면 여기를 클릭합니다.*
Korea 대한민국변경|Microsoft 전체 사이트
Microsoft
|전세계 Windows Media

인코딩 프로세스 자동화

Andrea Pruneda
Microsoft New Media Platforms Division


서론

Microsoft Windows Media 9 시리즈에는 오디오 및 비디오를 Windows Media Format의 파일 및 스트림으로 변환해주는 강력한 도구인 Windows Media Encoder가 들어 있습니다. 최종 사용자들은 Windows Media Encoder의 사용자 인터페이스를 활용하여 인코딩 세션을 구성할 수 있으며, 이 세션에는 오디오 및 비디오 입력 소스, 출력 및 사용할 인코딩 프로필 등을 지정하는 작업이 포함되어 있습니다. 또한 비디오를 잘라내어 크기를 재조정하고 메타데이터 속성을 추가하며 사전 처리 설정을 지정할 수 있습니다.
요약
Microsoft Windows Media Encoder 9 시리즈 및 Microsoft Windows Media Encoder 9 Series SDK를 사용하면 오디오 및 비디오를 Windows Media 기반 콘텐트로 변환할 수 있습니다. 이 문서에서는 Windows Media Encoder SDK와 그 샘플 응용 프로그램을 활용하여 이 프로세스를 자동화할 수 있는 다양한 방법을 설명합니다.

Windows Media Encoder는 사용자 지정 인코딩 응용 프로그램을 만들려는 개발자들이 이용할 수 있는 Windows Media Encoder SDK를 기반으로 하고 있습니다. SDK는 C++, Microsoft Visual Basic, Microsoft Visual Basic Scripting Edition (VBScript), Microsoft JScript를 비롯해 Microsoft .NET Framework가 지원하는 모든 프로그래밍 언어를 지원합니다. 또한 개발자들은 이 인코딩 프로세스를 다양한 방식으로 자동화할 수 있는데, 바로 이 문제가 이 문서글의 주제이기도 합니다.

이 문서는 다음과 같은 항목을 통해 인코딩 프로세스 자동화 방법을 설명합니다.
Back to the top of this page 페이지 맨 위로


Windows Media Batch Encoder 샘플 사용하기

Windows Media Batch Encoder는 Microsoft Visual Basic .NET으로 작성된 샘플 응용 프로그램입니다. 이 프로그램은 프로세스 자동화를 처음 배우는 데 사용될 목적으로 제작되었으므로, 자신의 요건에 맞게 소스 코드를 수정할 수 있습니다.

샘플에서는 일련의 파일들을 각 파일마다 인코딩 세션을 구성하지 않고 인코딩하는 방법을 보여줍니다. 리스트에 추가한 각 파일은 필요에 따라 각각 다른 설정을 갖고 있습니다. 예를 들어 각 파일마다 다른 프로필을 사용할 수 있습니다. 이 샘플에 포함된 또 다른 중요한 기능들을 활용하면 2패스 인코딩을 수행하고, 비디오 사전 처리를 지정하며, 기존의 DRM 프로필을 활용하여 디지털 저작권 관리(DRM) 보호 기능을 추가할 수 있습니다.

인코딩을 시작하면 샘플 응용 프로그램에는 완료 퍼센트 및 인코딩 상태 등과 같은 상태 정보가 표시됩니다. 인코딩 중에 비디오 출력을 미리 볼 수도 있습니다. 배치 인코딩 목록을 설정한 다음에는 인코딩 세션을 저장하여 이를 다시 사용할 수 있는데, 이 기능은 같은 파일을 정기적으로 인코딩하는 경우에 유용합니다.

Windows Media Batch Encoder sample
그림 1. Windows Media Batch Encoder 샘플


이 샘플은 Windows Media Encoder SDK를 설치한 \WMSDK\WMEncSDK9\Samples\vb\batcher 폴더에 있습니다. 자세한 사항은 Windows Media Encoder SDK 도움말의 배치 인코딩 항목을 참조하십시오.

Back to the top of this page페이지 맨 위로



Command Line Encoder 샘플 사용하기

이 Command Line Encoder 샘플은 VBScript로 작성되었으며 명령줄에서 인코딩 세션을 실행할 수 있도록 해줍니다. 많은 명령줄 매개 변수들이 제공되므로 대부분의 인코딩 기능을 활용할 수 있습니다. CBR 또는 VBR 인코딩을 지정할 수 있으며 사용자 지정 프로필을 만들 수 있습니다. 인코딩 프로세스를 자동화하려는 경우에도 필요한 명령들을 원하는 수만큼 일괄 처리 파일(.bat)에 작성하면 됩니다. 예를 들어 일괄 처리 파일에 다음과 같은 텍스트를 저장할 수 있습니다.

cscript.exe wmcmd.vbs -input C:\My-clips\Mymovie.avi -output C:\My-clips-coded\Mymovie-640x480-vbr095.wmv -v_mode 2 -v_quality 95 -v_keydist 30 -v_preproc 5

cscript.exe wmcmd.vbs -input C:\My-clips\Mymovie.avi -output C:\My-clips-coded\Mymovie-320x240-vbr097.wmv -v_mode 2 -v_quality 97 -v_keydist 30 -v_preproc 5 -v_width 320 -v_height 240

cscript.exe wmcmd.vbs -input C:\My-clips\Mymovie.avi -output C:\My-clips-coded\Mymovie-640x480-cbr2.wmv -v_mode 1 -v_bitrate 1000000 -v_keydist 30 -v_buffer 10000 -v_quality 100 -v_preproc 5

cscript.exe wmcmd.vbs -input C:\My-clips\Mymovie.avi -output C:\My-clips-coded\Mymovie-320x240-cbr2.wmv -v_mode 1 -v_bitrate 500000 -v_keydist 30 -v_buffer 10000 -v_quality 100 -v_preproc 5 -v_width 320 -v_height 240

이 유틸리티를 이용하면 여러분의 컴퓨터에서 사용 가능한 소스 장치 뿐 아니라 사용 가능한 오디오 및 비디오 코덱도 열거할 수 있습니다.

이 샘플(wmcmd.vbs)은 Windows Media Encoder SDK가 설치된 \WMSDK\WMEncSDK9\Samples\vb\wmcmd 폴더에 있으며 필요할 때마다 수정할 수 있습니다. 명령 창에서 CScript.exe로 샘플을 실행하십시오. 모든 명령줄 매개 변수와 그 기능을 담은 전체 목록을 보려면 다음 명령 줄과 함께 스크립트를 실행합니다.

CScript.exe wmcmd.vbs /?

Back to the top of this page 페이지 맨 위로



Remote Administration 샘플 사용하기

원격 관리 샘플은 C#으로 작성되었으며 LAN 또는 인터넷을 통해 원거리 컴퓨터에서 실행되는 인코딩 응용 프로그램을 모니터링하는 방법을 보여 줍니다.

예를 들어 실행되는 인코딩 응용 프로그램의 인스턴스가 여럿이라면, 샘플 응용 프로그램은 그 인코딩 응용 프로그램들을 열거한 다음 그들의 상태를 한 페이지에서 모니터링할 수 있게 해줍니다. 누락된 샘플, 현재 비트 전송률, CPU 사용률 등을 모니터링할 수 있습니다.

이 샘플에서는 클라이언트가 원거리에서 실행되는 인코딩 응용 프로그램의 상태를 모니터링할 수 있도록 해주는 웹 서비스를 사용합니다. 일반적으로 원격 관리를 구성하는 데에는 다음과 같은 세 종류의 컴퓨터를 사용합니다.
  • 설치된 웹 서비스와 함께 인코딩 응용 프로그램을 실행하는 컴퓨터

  • 인코더 웹 서비스를 호출하는 ASPX 페이지가 들어 있는 웹 서버로 기능하는 컴퓨터.

  • 클라이언트 컴퓨터로 기능해서 웹 서버에 연결하여 인코딩 응용 프로그램을 모니터링하는 컴퓨터(예를 들어 Microsoft Internet Explorer를 사용함)
이러한 웹 서비스를 사용하면, 클라이언트 컴퓨터에서 실행할 수 있는 코드를 .NET Framework가 지원하는 모든 프로그래밍 언어로 작성하여 웹 서비스와 커뮤니케이션할 수 있으므로 더욱 폭넓은 유연성을 확보할 수 있습니다. 웹 서비스 또한 LAN 및 인터넷을 통해 원활히 작동합니다. 이 샘플을 출발 지점으로 삼아 모니터링 페이지를 수동으로 새로 고침하는 것이 아니라 자동으로 업데이트할 수 있는 코드를 작성할 수 있습니다. 아니면 DHTML WebService 동작을 활용하여 인코더 웹 서비스를 직접 호출할 수 있습니다. 또한 원격 인코딩 응용 프로그램을 구성 및 제어할 수 있는 메서드를 추가하여 이 기능을 웹 서비스의 일부로 제공할 수 있습니다.

아래 그림은 인코딩 응용 프로그램을 모니터링하는 데 사용되는 샘플 ASPX 페이지입니다.

remote client page for monitoring encoding applications
그림 2. 인코딩 응용 프로그램 모니터링을 위한 원격 클라이언트(Remote Client) 페이지

이 샘플은 Windows Media Encoder SDK를 설치한 \WMSDK\WMEncSDK9\Samples\c#\remadmin 폴더에 있습니다. 원격 관리에 대한 자세한 내용은 Windows Media Encoder SDK 도움말을 참조하십시오. DHTML WebService의 동작에 대한 자세한 사항은 MSDN Online의 WebService 동작  페이지를 참조하십시오.

Back to the top of this page 페이지 맨 위로



유용한 기능

SDK 샘플 응용 프로그램 외에도 다음과 같은 기능들을 추가하여 인코딩 프로세스를 자동화하는 데 활용할 수 있습니다.
  • 통계. 인코딩 프로세스의 상태를 모니터링하는 데 도움이 됩니다. 이 기능은 인코딩 응용 프로그램이 원격 컴퓨터에서 실행되는 경우에 유용합니다.

  • 스트림 편집. 스트림을 분리하고 다시 결합할 수 있습니다. 예를 들어 여러 비트 전송률로 인코딩된 파일을 만들었다가 나중에 스트림 편집 기능을 이용하여 각 비트 전송률에 따라 별도의 파일들을 만들 수 있습니다.

  • 기본 편집. 시작 및 종료 시간을 트리밍하고 메타데이터, 표식 및 스크립트를 추가하여 인코딩된 파일로 작업할 수 있습니다. 예를 들어 인코딩 프로세스의 끝 부분에 기본 편집 기능을 추가하여 메타데이터 속성을 추가할 수 있습니다.

Back to the top of this page 페이지 맨 위로



추가 정보

Windows Media Encoder SDK에 대한 자세한 사항은 Windows Media Encoder SDK 도움말을 참조하십시오. 이 SDK는 MSDN Online에서 다운로드할 수 있습니다.

Back to the top of this page 페이지 맨 위로


사용권에 대한 고지 사항

본 문서에 수록된 정보는 발행일 현재 논의된 사안에 대한 Microsoft Corporation의 현재 입장을 나타냅니다. Microsoft는 변화하는 시장 상황에 부응해야 하므로 이 문서를 Microsoft측의 의무로 해석해서는 안 되며 발행일 이후에 제공되는 모든 정보의 정확성을 보장할 책임은 없습니다.

이 문서는 오직 정보를 제공하기 위한 것입니다. Microsoft는 이 문서에서 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.

모든 해당 저작권법을 준수하는 것은 사용자의 책임입니다. 저작권에서의 권리와는 별도로, 이 문서의 어떠한 부분도 Microsoft의 명시적인 서면 허가 없이는 복사하거나 검색 시스템에 저장 및 도입할 수 없으며 어떤 형식이나 수단(전자, 기계, 복사기에 의한 복사, 녹음 또는 기타)을 통해서도 또는 어떤 목적으로도 전송될 수 없습니다.

Microsoft는 이 문서에 관련된 특허권, 상표권, 저작권, 또는 기타 지적 재산권 등을 보유할 수도 있습니다. 서면 사용권 계약에 따라 Microsoft로부터 귀하에게 명시적으로 제공된 권리 이외에, 이 문서의 제공은 귀하에게 이러한 특허권, 상표권, 저작권, 또는 기타 지적 재산권 등에 대한 어떠한 사용권도 허여하지 않습니다.

© 2002 Microsoft Corporation. All rights reserved.

Microsoft, MS-DOS, Windows, Windows Media, Windows NT, ActiveSync, ActiveX, Direct3D, DirectDraw, DirectInput, DirectMusic, DirectPlay, DirectShow, DirectSound, DirectX, FrontPage, JScript, Microsoft Press, MSN, NetShow, Outlook, PowerPoint, SQL Server, Visual Basic, Visual C++, Visual InterDev, Visual J++, Visual Studio, WebTV, Win32, Win32 등은 미국, 대한민국 및/또는 기타 국가에서 Microsoft Corporation의 상표 또는 등록 상표입니다.

여기에 인용된 실제 회사와 제품 이름은 해당 소유자의 상표일 수 있습니다.


Back to the top of this page 페이지 맨 위로


 

Microsoft