wiki:To-Do

This page is a WIP. See docs/Todo.txt for more realistic things


Here is the roadmap for MPC-HC development
There is no-one actively working on the listed items, unless explicitly stated. Please feel free to take on any task and provide us with a patch through the ticket system.

The program should be split into the following 7 standalone parts:

  1. MPC_HC_CORE
  2. MPC_HC_GUI
  3. MPC_HC_VIDEO_RENDERER
  4. MPC_HC_AUDIO_RENDERER
  5. MPC_HC_SUBTITLE_RENDERER
  6. MPC_HC_SPLITTER
  7. MPC_HC_CODECS

Each part could be used in other projects and be compiled standalone, however the core needs a GUI and the GUI requires the core.


For every part there is some work to be done:

  1. MPC_HC_CORE
    • Add support for MediaFoundation graph building, codecs, splitters and renderers
    • Silence all the compiler warnings
    • Set up the GUI communication in such a way, that 3rd party GUI's can be created
    • Make x64 build just as feature complete and stable as x86
  2. MPC_HC_GUI
    • The GUI will remain simple and the same as it is now
    • A new mediacenter GUI will be created for those wanting this kind of interface, we will not be doing this ourselves
  3. MPC_HC_VIDEO_RENDERER
    • Refactor the video renderers to be a standalone .ax
    • Improve EVR-CP and VMR9-Renderless to the point where other renderers are no longer a logical alternative
    • Add support for MediaFoundation
  4. MPC_HC_AUDIO_RENDERER
    • Add:
      • Full WASAPI and DS support
      • (HD) Bitstreaming support for all supported codecs
      • Support for MediaFoundation
  5. MPC_HC_SUBTITLE_RENDERER
  6. MPC_HC_SPLITTER [LAVFSplitter fulfills most of this change]
    • Create a Default splitter template, with support for all features
    • Refactor all splitters to this new format, merge to monolithic splitter to reduce code duplication
    • Improve QT and RM splitter to the point where both frameworks are no longer required
    • Add support for:
      • MediaFoundation
      • An unlimited number of Video, Audio and Subtitle streams
    • Create a new splitter for disc based media like VCD, DVD, Bluray and HD-DVD
  7. MPC_HC_CODECS
    • Use patched vanilla FFmpeg for all the internal codecs
    • Use ffmpeg DXVA2 (but make sure hardware/sample compatibility is same or better as current implementation)
    • Patch vanilla ffmpeg for DXVA1 (cannot be upstreamed)
    • Add:
      • Full support for MPEG2
      • Support for MediaFoundation
      • Support for VC1 interlaced DXVA (requires support for interlaced VC1 in FFmpeg)
Last modified 2 years ago Last modified on 2013-02-09T11:44:45+01:00