Microsoft DirectShow 9.0


The SetSubpictureState method turns the subpicture display on or off.


  HRESULT SetSubpictureState(
  BOOL bState,
  DWORD dwFlags,
  IDvdCmd **ppCmd



[in] Boolean value that specifies whether the subpicture display is on; TRUE sets subpicture display on for subsequent playback.


[in] Bitwise OR of one or more flags from the DVD_CMD_FLAGS enumeration, specifying how to synchronize the command.


[out] Receives a pointer to an IDvdCmd object that can be used to synchronize DVD commands. The caller must release the interface. This parameter can be NULL. For more information, see Synchronizing DVD Commands.

Return Values

Returns one of the following values.

Return code Description
S_OK Success.
VFW_E_DVD_INVALIDDOMAIN The DVD Navigator is in the First Play domain.
VFW_E_DVD_OPERATION_INHIBITED UOP control prohibits the operation.


Subpicture streams are typically used in menus for button text and sometimes button graphics, and in video playback for subtitles, credits, or other overlaid graphics. Do not confuse subpictures with closed captions; the latter are encoded within the video stream. In general, this method is intended for controlling subpicture display over video while the DVD Navigator filter is playing video in the DVD Title domain.

This method corresponds to the second parameter of the Annex J "Sub-picture_Stream_Change" command.

The following table shows the Annex J command name to which this method name corresponds, and the domains in which this method is valid.

Annex J Command Name Valid Domains
Sub-picture_stream_Change DVD_DOMAIN_VideoManagerMenu


Header: Declared in Strmif.h; include Dshow.h.

Library: Use Strmiids.lib.

See Also