-
Notifications
You must be signed in to change notification settings - Fork 360
Description
MythPlayer in its current form has a variety of different uses - which significantly complicate the code.
There are 3 classes that are used for playback from the UI:
- MythPlayer (base)
- MythDVDPlayer (for DVDs) (subclasses MythPlayer)
- MythBDPlayer (for BDs) (subclasses MythPlayer)
Other non-ui/headless operation:
- MythCCExtractorPlayer (subclasses MythPlayer)
- MythCommflagPlayer (subclasses MythPlayer)
The MythPlayer base class is also then used for other headless operations:
- preview generation (which requires DVD as well - but not BD)
- transcode (no DVD or BD)
When used for non-ui purposes, MythPlayer is run manually (i.e. setup, seek, get frame etc). There is no need for a playback loop, reference to MythDisplay for refresh rate tracking, OSD, deinterlacing, editing etc.
The intention is to create MythPlayerUI as a new class for playback from the main UI. MythPlayer will be paired down to the bare essentials required for headless, manual operation. Various mixin classes will then be used to create the appropriate player for the each use case.
So MythPlayerUI would sub-class MythPlayer as well as functionality required for OSD etc as well as BD/DVD support as needed.
A simple class derivation is complicated mostly by the preview generation code - which requires DVD functionality.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status