Bagikan melalui


Menggunakan File Sink

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

Dalam keadaan normal, Anda cukup meneruskan nama file output penulis menggunakan metode IWMWriter::SetOutputFilename, dan objek penulis akan menulis file ke disk secara otomatis. Dalam kasus ini, penulis benar-benar membuat dan mengontrol objek penampung file penulis yang bertugas menangani penulisan file ke disk. Objek penampung file penulis mengendalikan aliran data dari objek penulis ke sebuah file.

Anda dapat membuat sink file Anda sendiri untuk mendapatkan kontrol lebih atas cara sink menulis file. Anda juga dapat mengakses sink file penulis default yang dibuat oleh penulis sebagai respons terhadap panggilan ke SetOutputFilename.

Membuat Wadah File

Untuk membuat sink file dan menambahkannya ke penulis, lakukan langkah-langkah berikut.

  1. Buat sink baru dengan memanggil fungsiWMCreateWriterFileSink.
  2. Berikan nama file untuk sink dengan memanggil IWMWriterFileSink::Open.
  3. Tambahkan sink file ke penulis dengan memanggil IWMWriterAdvanced::AddSink.
  4. Lakukan penulisan dengan cara yang biasa.
  5. Setelah penulisan selesai, sink akan menutup file secara otomatis.

Menghentikan dan Memulai Pengaliran Sink File

Setelah operasi penulisan dimulai, Anda dapat berhenti menulis ke sink file dengan memanggil IWMWriterFileSink2::Stop.

Ada banyak alasan potensial mengapa Anda ingin berhenti menulis ke sink. Misalnya, jika Anda merekam dari sumber langsung, Anda mungkin hanya tertarik pada beberapa konten.

Anda dapat melanjutkan menulis ke sink file dengan memanggil IWMWriterFileSink2::Start. Baik Hentikan maupun Mulai menggunakan waktu presentasi untuk mengontrol waktu kira-kira saat perintah dijalankan. Anda dapat menggunakan metodeIWMWriterFileSink3 untuk mendapatkan kontrol lebih besar atas waktu mulai dan berhenti.

Penutupan Penerima File

Biasanya, sink file ditutup secara otomatis. Jika Anda selesai menulis ke sink, tetapi operasi penulisan ke sink lain terus berlanjut, Anda harus secara eksplisit menutup sink untuk menghemat sumber daya. Untuk menutup sebuah file sink, panggil IWMWriterFileSink2::Close.

Mendapatkan Statistik Sink

Anda dapat memperoleh ukuran dan durasi file untuk sink terbuka dengan memanggil IWMWriterFileSink2::GetFileSize dan IWMWriterFileSink2::GetFileDuration masing-masing.

antarmuka IWMWriterFileSink

Antarmuka IWMWriterFileSink2

Antarmuka IWMWriterFileSink3

Objek Penulis Sink File

Menulis File ASF