MythTV  master
Todo List
Member ActionSet::Remove (const ActionID &id, const QString &key)
Remove the actionlist from the m_keyToActionMap if the key is no longer bound to any actions.
Member ATSCStreamData::IsRedundant (uint pid, const PSIPTable &psip) const override

All RRT tables are ignored

We don't check the start time of EIT and ETT tables in the version check, so many tables are improperly ignored.

Module audio_subsystem
No one is working on documenting the audio subsystem.
Member CardUtil::HDHRdoesDVB (const QString &device)
Replace with a more general purpose routine - something that gets /sys/features and searches that for particular modulation types. e.g. bool CardUtil::DoesHDHRsupport(const QString &device, const QStringList &modTypes);
Module database_subsystem
No one is working on documenting the database subsystem.
Member DVBStreamData::IsRedundant (uint pid, const PSIPTable &psip) const override
This is just a stub.
Member EITFixUp::FixBellExpressVu (DBEventEIT &event)
deal with events that don't have eventype at the begining?
Member getMemStats (int &totalMB, int &freeMB, int &totalVM, int &freeVM)
Memory Statistics are not supported (by MythTV) on NT or DOS.
Module lcd_subsystem
No one is working on documenting the lcd subsystem.
Module lirc_subsystem
No one is working on documenting the lirc subsystem.
Member MythContextPrivate::TestDBconnection (bool prompt=true)
Rationalise the WOL stuff. We should have one method to wake BEs
Class MythDisplay
Complete handling of screen changes. We need to handle several cases. Firstly, when the main window is moved (dragged) to a new screen. This generally works but need to check if all display details are updated (VideoOutWindow is currently hooked up to the CurrentScreenChanged signal - so video window sizing should work without issue). Various other parameters need updating though e.g. refresh rates, supported rates etc Secondly, when a new screen is added and the user has configured a multiscreen setup - in which case we might want to move the main window to the new screen. There are various complications here. Currently switching windows is triggered from the settings screens - which initiate a teardown of painter/render/UI etc. We cannot do that from random parts of the UI or during video playback.
Class MythDRMPRIMEContext
When Rockchip support is complete, refactor this to a pure virtual class and create appropriate sub-classes as needed for the specific codecs.
Member MythEGLDMABUF::CreateSeparate2 (AVDRMFrameDescriptor *Desc, MythRenderOpenGL *Context, MythVideoFrame *Frame) const
Add support for simple onefield/bob with YUV textures.
Member MythHTTPRanges::ParseRanges (const QString &Request, int64_t TotalSize, HTTPRanges &Ranges, int64_t &PartialSize)
Per the specs, sending complicated range requests could potentially be used as part of a (D)DOS attack and it is suggested that various complicated requests are rejected. Probably unnecessary here.
Member MythHTTPService::HTTPRequest (const HTTPRequest2 &Request)
Error message always send an HTML version of the error message. This should probably be context specific.
Class MythInputDeviceHandler
This could be better implemented with a framework/standardised API and factory methods to simplify adding new devices.
Class MythPower

Add OSX subclass

Add Windows subclass

Add Android subclass

Add sending Myth events as well as emitting signals.

Member MythPowerDBus::IsAvailable (void)
Check status of KDE ("org.kde.KSMServerInterface") and Gnome("org.gnome.SessionManager").
Class MythVAAPIContext

Scaling errors when deinterlacing H.264 1080 and for 10bit HEVC 1080p.

Fix crash when skipping to the end of an H.264 stream. Appears to be because the decoder is partially initialised but we never feed it any packets to complete the setup (as we have reached the end of the file). Should be a simple null pointer check in FFmpeg.

Class MythVAAPIInterop

Fix pause frame deinterlacing

Deinterlacing 'breaks' after certain stream changes (e.g. aspect ratio)

Scaling of some 1080 H.264 material (garbage line at bottom - presumably scaling from 1088 to 1080 - but only some files). Same effect on all VAAPI interop types.

Class NetworkInformationTable
This is just a stub.
Module osd_subsystem
No one is working on documenting the osd subsystem.
Module recorder_subsystem

Check if the TVRec is actually still passed a ProgramInfo for the current and next recordings

Document the massive changes Daniel has made in the Vid and MultiRec branches

Member SchemaUpgradeWizard::PromptForUpgrade (const char *name, bool upgradeAllowed, bool upgradeIfNoUI, int minDBMSmajor=0, int minDBMSminor=0, int minDBMSpoint=0)

Clarify whether the minDBMS stuff is just for upgrading, or if it is a runtime requirement too. If the latter, then this possibly should be called even if the schema match, to ensure the user is informed of the MySQL upgrade requirement.

This uses GetMythUI()->IsScreenSetup() to work out if this program's context is a GUI, but GetMythUI() might create a MythUIHelper. Having a static bool MythUIHelper::ValidMythUI() would be much tidier?

Class ServiceDescriptionTable
This is just a stub.
Member StringUtil::naturalCompare (const QString &_a, const QString &_b, Qt::CaseSensitivity caseSensitivity=Qt::CaseSensitive)
FIXME: Using toLower() to implement case insensitive comparison is sub-optimal, but is needed because we compare strings with localeAwareCompare(), which does not know about case sensitivity. A task has been filled for this in Qt Task Tracker with ID 205990. Dead link. QCollator might be of relevance.
Member TV::TV (MythMainWindow *MainWindow)

Remove m_playerLock. m_playerContext is always present and we should be using the lower level locks in PlayerContext (around player etc)

Move TV only state currently held in PlayerContext into TV

Try and remove friend class usage. This is a blunt tool and allows potentially unsafe calls into TV

Module video_subsystem
No one is working on documenting the video subsystem.
Member VideoBuffers::SetDeinterlacingFlags (MythVideoFrame &Frame, MythDeintType Single, MythDeintType Double, MythCodecID CodecID)
Handling of decoder deinterlacing with NVDEC