다음을 통해 공유


원본에서 속성 설정

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

[이 API는 지원되지 않으며 나중에 변경되거나 사용할 수 없습니다.]

새 원본 개체를 만들 때 설정해야 하는 몇 가지 속성과 선택적으로 설정할 수 있는 속성이 있습니다. 다음 속성을 설정해야 합니다.

  • 타임라인의 나머지 부분을 기준으로 하는 시작 및 중지 시간입니다. IAMTimelineObj::SetStartStop 메서드를 호출합니다. 동일한 트랙 내의 원본 개체에서 겹치는 시간을 설정하지 마세요. 그렇지 않으면 정의되지 않은 동작이 발생합니다.
  • 원본 클립으로 사용할 미디어 파일입니다. IAMTimelineSrc::SetMediaName호출합니다.
  • 원본 원본 파일을 기준으로 미디어 시작 및 중지 시간입니다. IAMTimelineSrc::SetMediaTimes 메서드를 호출합니다. 예외: 원본이 스틸 이미지인 경우 미디어 시간을 지정하지 마세요. 미디어 시간에 대한 자세한 내용은 DirectShow 편집 서비스의 시간 을(를)참조하세요.

원본 개체는 부모 그룹에서 해당 미디어 형식을 상속하므로 미디어 형식을 지정할 필요가 없습니다.

선택적 속성에는 다음이 포함됩니다.

  • 스트레치 모드입니다. 스트레치 모드는 Microsoft® DirectShow® 편집 서비스(DES)에서 크기가 출력 차원과 일치하지 않는 원본을 렌더링하는 방식을 지정합니다. 기본적으로 DES는 가로 세로 비율을 유지하지 않고 이미지를 늘입니다. 또는 DES에서 이미지를 자르거나 레터박스를 만들 수 있습니다. IAMTimelineSrc::SetStretchMode 메서드를 호출하여 스트레치 모드를 지정합니다.
  • 원본 파일의 기간입니다. 미디어 시간을 설정하기 전에 이 속성을 설정하면 DES는 미디어 중지 시간의 유효성을 검사하고 파일 기간을 초과하는 경우 중지 시간을 자른다. 이렇게 하면 나중에 렌더링 오류를 방지할 수 있습니다. 미디어 감지기 사용 방법에 설명된 대로, 미디어 감지기를 사용하여 파일의 지속 시간을 얻을 수 있습니다. IAMTimelineSrc::SetMediaLength 메서드를 호출하여 파일 기간을 지정합니다.
  • 스트림 번호입니다. 기본적으로 원본 개체는 부모 그룹의 미디어 형식과 일치하는 파일의 첫 번째 스트림을 사용합니다. 파일에 동일한 미디어 형식의 스트림이 두 개 이상 포함된 경우 IAMTimelineSrc::SetStreamNumber호출하여 사용할 스트림을 선택합니다. 미디어 감지기를 사용하여 스트림 수를 찾을 수 있습니다.

출처 작업