Variabel untuk Menyimpan Properti

[Fitur yang terkait dengan halaman ini, Pemutar Media Windows SDK, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer. MediaPlayer telah dioptimalkan untuk Windows 10 dan Windows 11. Microsoft sangat menyarankan agar kode baru menggunakan MediaPlayer alih-alih Pemutar Media Windows SDK, jika memungkinkan. Microsoft menyarankan agar kode yang ada yang menggunakan API warisan ditulis ulang untuk menggunakan API baru jika memungkinkan.]

Pertama, Anda akan memerlukan variabel untuk menyimpan waktu penundaan. Sampel default yang dibuat oleh Pemutar Media Windows Plug-in Wizard menyediakan variabel bernama m_fScaleFactor untuk menyimpan pengali penskalaan yang digunakannya untuk pemrosesan. Sampel ini tidak lagi memerlukan variabel ini, sehingga Anda dapat mengubah nama dan jenisnya untuk menyimpan nilai waktu penundaan.

  1. Ganti setiap instans m_fScaleFactor di Echo.h dan Echo.cpp dengan m_dwDelayTime.
  2. Ubah jenis data untuk m_fScaleFactor (sekarang m_dwDelayTime) dari ganda ke DWORD di Echo.h.
  3. Di konstruktor untuk CEcho, ubah nilai waktu penundaan default menjadi 1000.
    m_dwDelayTime = 1000;   // Default to a delay time of 1000 ms.
    
    

Selanjutnya, deklarasikan dua variabel anggota baru untuk menyimpan persentase sinyal efek dan persentase sinyal sumber yang akan dicampur dalam buffer output akhir. Istilah "basah" mengacu pada efeknya, dan istilah "kering" mengacu pada sinyal sumber. Tambahkan deklarasi berikut ke Echo.h:

double  m_fWetMix;    // percentage of effect
double  m_fDryMix;    // percentage of dry signal

Nilai-nilai ini disimpan sebagai representasi desimal persentase sehingga dapat dengan mudah digunakan sebagai faktor skala. Misalnya, campuran efek 50 persen dan sinyal sumber 50 persen akan direpresentasikan sebagai nilai 0,50 untuk setiap variabel. Jumlah nilai untuk m_fWetMix dan m_fDryMix tidak boleh lebih dari 1,0 (100 persen). Akhirnya, nilai-nilai ini akan dapat diakses sebagai properti.

Tambahkan kode berikut ke konstruktor CEcho untuk mengatur nilai default ke masing-masing 50 persen:

m_fWetMix = 0.50;  // default to 50 percent wet
m_fDryMix = 0.50;  // default to 50 percent dry

Properti Sampel Echo