| A DVDplayer | |
| ----------- | |
| 1) set up a pipeline | |
| <draw pipeline schematics here> | |
| 2) set to playing | |
| - dvdnav reads the ifo file. A set of events are generated to configure | |
| various elements in the pipeline. These would include: | |
| - SPU colors | |
| - whatmore.. | |
| - first the src will read the DVD menu. this will contain mpeg2 data | |
| and spu/nav info. after the menu is sent down the pipeline | |
| the nav decoder waits for input somehow. The pipeline keeps on | |
| playing to animate the menus. | |
| - somehow a button is pressed on the menu: a method is triggered in | |
| the dvdnav plugin to tell it button X was pressed (event? app?). | |
| - dvdnav reacts and starts to stream other data. | |
| - nav packets in the stream indicate what can happen next. | |
| - update the menu | |
| - keep the menu | |
| - hide the menu | |
| - show the menu | |
| - pressing the hotkey to bring up the menu triggers a method in dvdnav | |
| which will send down nav info downstream to bring up the menu. | |
| A background picture (I frame) is sent downstream too. | |
| - nav info can also happen while playing the movie. This can highlite | |
| some buttons the user can press. | |
| - selecting a button triggers some color/compositing changes in SPU/NAVdec | |
| and an action on dvdnav. | |