Microsoft DirectX 9.0

DVD_OPTION_FLAG Enumeration

The DVD_OPTION_FLAG enumeration type defines flags that control the behavior of the DVD Navigator Filter.

Syntax

typedef enum {
    DVD_ResetOnStop               = 1,
    DVD_NotifyParentalLevelChange = 2,
    DVD_HMSF_TimeCodeEvents       = 3,
    DVD_AudioDuringFFwdRew        = 4
} DVD_OPTION_FLAG;

Elements

DVD_ResetOnStop

If this flag is TRUE, the DVD Navigator enters the DVD Stop domain when the filter graph stops. When playback resumes, it starts at the beginning of the disc. This is the default behavior.

If this flag is FALSE, the DVD Navigator does not enter the DVD Stop domain when the filter graph stops. When the filter graph starts again, playback resumes from the point where it stopeed.

The default behavior is not always desirable, because the filter graph might be stopped unexpectedly. This can happen, for example, if the screen resolution changes, a screen saver starts, or the computer goes into suspended mode. In these situations, the user probably wants playback to restart from the same point. Typically, the application should set this flag to FALSE immediately before or after calling IMediaControl::Run. It should set the flag to TRUE before calling IMediaControl::Stop in resoponse to an explicit user to command to stop playback.

DVD_NotifyParentalLevelChange

This flag indicates whether the DVD Navigator notifies the application when the parental level changes on this disc.

When this flag is TRUE, if the DVD Navigator reaches a temporary parental management level command, it sends the application an EC_DVD_PARENTAL_LEVEL_CHANGE event. It blocks playback until it the application responds by calling IDvdControl2::AcceptParentalLevelChange.

If this flag is FALSE, when the DVD Navigator encounters a temporary parental management level command and the current parental level is too low, the Navigator automatically rejects the command and branches to whatever path the disc specifies. The Navigator sends an EC_DVD_PARENTAL_LEVEL_CHANGE event indicating the required level. The application can stop playback, put up a password dialog box, and restart playback so that it can succeed on the next attempt.

The default value for this flag is FALSE.

DVD_HMSF_TimeCodeEvents

If this flag is TRUE, the DVD Navigator sends all timecode information using the  DVD_HMSF_TIMECODE structure instead of the old binary coded decimal (BCD) format, which is defined in the DVD_TIMECODE structure. The DVD_HMSF_TIMECODE format is easier to work with, but this flag defaults to FALSE for backward compatibility.

DVD_AudioDuringFFwdRew

If this flag is TRUE, the DVD Navigator enables audio during fast forward and rewind, as long as the audio rate does not exceed the maximum rate of the audio decoder. If this flag is FALSE, the Navigator disables audio during fast forward and rewind. The default value of this flag is FALSE.

You can also enable audio during fast forward and rewind by creating the following key in the Windows Registry:

DWORD HKLM\Software\Microsoft\DVDNavigator\AudioDuringFFwdRev = 1

This has the same effect as setting the DVD_AudioDuringFFwdRew flag to TRUE.

Remarks

The following table lists the default values for these flags.

Flag Default value
DVD_ResetOnStop TRUE
DVD_NotifyParentalLevelChange FALSE
DVD_HMSF_TimeCodeEvents FALSE
DVD_AudioDuringFFwdRew FALSE

See Also