Metode CBaseControlVideo.SetDefaultSourceRect

[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Tangkapan Audio/Video di Media Foundation. Fitur-fitur tersebut telah dioptimalkan untuk Windows 10 dan Windows 11. Microsoft sangat menyarankan agar kode baru menggunakan MediaPlayer, IMFMediaEngine dan Audio/Video Capture di Media Foundation alih-alih DirectShow, jika memungkinkan. Microsoft menyarankan agar kode yang ada yang menggunakan API warisan ditulis ulang untuk menggunakan API baru jika memungkinkan.]

Metode ini SetDefaultSourceRect mengatur persegi panjang video sumber default (virtual murni). Ini dalam fungsi anggota internal yang dipanggil ketika persegi panjang sumber diatur ulang.

Sintaks

virtual HRESULT SetDefaultSourceRect() = 0;

Parameter

Metode ini tidak memiliki parameter.

Nilai kembali

Mengembalikan nilai HRESULT .

Keterangan

Kelas turunan harus mengambil alih ini untuk mengatur ulang persegi panjang sumber. Ini dipanggil dari CBaseControlVideo::SetDefaultSourcePosition.

Contoh berikut menunjukkan implementasi fungsi ini di kelas turunan.

// This is called when you reset the default source rectangle.
HRESULT CVideoText::SetDefaultSourceRect()
{
    VIDEOINFO *pVideoInfo = (VIDEOINFO *) m_pRenderer->m_mtIn.Format();
    BITMAPINFOHEADER *pHeader = HEADER(pVideoInfo);
    RECT SourceRect = {0,0,pHeader->biWidth,pHeader->biHeight};
    m_pRenderer->m_DrawImage.SetSourceRect(&SourceRect);
    return NOERROR;
}

Dalam contoh ini, CVideoText adalah kelas yang berasal dari CBaseControlVideo, m_pRenderer menyimpan objek kelas yang berasal dari CBaseVideoRenderer, dan anggota data m_DrawImage, yang ditentukan dalam kelas turunan, menyimpan objek CDrawImage . Anggota data m_mtIn, juga didefinisikan di kelas turunan, menyimpan objek CMediaType dengan jenis media pin input.

Persyaratan

Persyaratan Nilai
Header
Ctlutil.h (termasuk Streams.h)
Pustaka
Strmbase.lib (build ritel);
Strmbasd.lib (build debug)

Lihat juga

Kelas CBaseControlVideo