DVD Support Features in DirectShow
The functionality of the DVD Navigator filter is exposed through two interfaces, IDvdControl2, which provides the "set" methods for the DVD Navigator, and IDvdInfo2, which provides the "get" methods. Scripting support for the DVD Navigator, including most new features, is provided through the MSWebDVD Microsoft® ActiveX® control and through the Video Control on Windows® XP.
The DVD Navigator supports the following features:
- Karaoke support: You can now write a DVD-karaoke application using the DVD Navigator. (This requires a compatible decoder.)
- Simplified access to DVD text information strings: The DVD Navigator now parses these strings and enables applications to easily enumerate, identify, and retrieve them.
- Audio volume control through IBasicAudio
- Support for customizing the DVD Navigator's behavior when the Stop command is issued: Applications can now instruct the DVD Navigator to either resume from the current location when restarting the filter graph, or start play from the beginning of the disc.
- Digital Theater Systems (DTS) and Sony Dynamic Digital Sound (SDDS) audio support: Now DTS and SDDS audio streams are recognized by the DVD Navigator and passed to the audio decoder. (A third-party DTS-compatible or SDDS-compatible decoder is required to decode and play the audio.)
- Improved support for parental level changes: The DVD Navigator now allows an application to accept, reject, or ignore parental level change commands from the disc.
- Advanced options for managing the state of the DVD Navigator and synchronizing commands
- Support for frame stepping, frame-accurate seeking, and reverse play: These new features require an updated video decoder that supports them.
- The ability to save the current location in a title and return to it at any time.
- Simplified support for time events in non-sequential PGC titles: For non-sequential PGC titles, the DVD Navigator now relays the raw timecode information to the application.
- A new, more convenient data structure for handling timecode information: The DVD_HMSF_TIMECODE structure can be used in place of the binary coded decimal (BCD) format. DVD_HMSF_TIMECODE contains easily accessed members for hours, minutes, seconds, and frames, and can be cast to/from a ULONG.
- The ability to control whether the filter graph flushes after a seek operation: The graph buffers can contain up to a few seconds of video at any given time. You can now instruct the graph to either finish playing the buffered video after a seek, or begin playing immediately at the new location.
- The ability to set values in general parameter registers: An advanced feature for those familiar with the DVD specification who wish to implement advanced functionality.
- The ability to generate numeric disc identifiers that are for all practical purposes unique: This is helpful in MSWebDVD applications where a disc needs to be associated with particular Web-based enhancements.