2009-04-02 7 views

Antwort

0

Sie müssten Ihren eigenen Transformationsfilter schreiben. Oder Sie können einen Filter wie FFDShow verwenden, der die Bildgrößenanpassung unter anderen Videomodifikationen und Verbesserungen unterstützt.

1

Sie können IPin::EnumMediaTypes am Ausgangspin des Filters verwenden, um eine Liste der unterstützten Medientypen/Videoformate zu erhalten.

Rufen Sie anschließend IAMStreamConfig::GetFormat auf, um das aktuelle Format in einer AM_MEDIA_TYPE-Struktur abzurufen. Ändern Sie diese Struktur wie gewünscht (stellen Sie sicher, dass Ihr Format vom Gerät unterstützt wird) und rufen Sie IAMStreamConfig::SetFormat mit der gleichen Struktur auf.

+0

Danke für die Antwort. Aber für einen Anfänger in Direct Show ist es nicht wirklich hilfreich. Können Sie mir bitte sagen, woher ich die IPin und IAMStreamConfig-Schnittstellen bekomme? In meinem Code habe ich einen IGraphBuilder, ICaptureGraphBuilder2, IBaseFilter, IVMRWindowlessControl9, IMediaControl, aber kein IPin. Ein Stückchen Code wäre sehr hilfreich! – Elmue