To Use Inverse Telecine

[The feature associated with this page, Windows Media Format 11 SDK, is a legacy feature. It has been superseded by Source Reader and Sink Writer. Source Reader and Sink Writer have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use Source Reader and Sink Writer instead of Windows Media Format 11 SDK, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]

Telecine is the process of converting film, which has 24 frames per second, to video, which has 60 fields (half frames) per second. This process puts images from each film frame in multiple video fields.

When you digitally encode a video that was created from film by using telecine, the compression process can cause motion artifacts and other degradations in quality. To avoid affecting the quality of the digital output, the Windows Media Video 9 codec supports inverse telecine. When using inverse telecine, the codec reconstructs the original 24 film frames per second from the input video before encoding the content.

To use inverse telecine, you must:

  • Use a profile with a video stream set to 24 frames per second.
  • Know the field configuration of the input video.

To use inverse telecine for an input to the writer, perform the following steps.

  1. Set up the writer as usual. For more information, see Writing ASF Files.
  2. Before beginning to write samples, obtain a pointer to the IWMWriterAdvanced2 interface by calling IWMWriter::QueryInterface.
  3. Identify the stream to be reconstructed by calling IWMWriterAdvanced2::SetInputSetting for the desired input number. Pass g_wszDeinterlaceMode as the setting and WM_DM_DEINTERLACE_INVERSETELECINE as the value.
  4. Call SetInputSetting again to set g_wszInitialPatternForInverseTelecine.
  5. Write the file as usual.

Advanced Topics

IWMWriter Interface

IWMWriterAdvanced2 Interface