Rewrite TODO - PetrosW/pDub GitHub Wiki

Frontend

  • Standard GUI layout (Vegas style)
  • Pop-out/docked video window (parent = nullptr repaint issue)
  • Mic selection box
  • Multiple mics & mic management ?
  • Mic volume level indicator
  • Near real-time waveform rendering of current recording
  • Copying source video into project directory option
  • Ask for a new file path if source video is not found in current project directory
  • Multiple rows for recordings & row management, color tagging, row muting
  • New row for every inserted audio file?
  • Audio stream selection vs inserting all streams in case source video or inserted audio/video file has multiple audio streams

Backend

  • Adding a signal & slot management layer
  • More generic window widget architecture
    • Window = module
    • Exposing API in the form of signals & slots
    • Connected together in middle layer
  • New way of plotting waveforms - speedup (std::async) & less memory hungry
  • FFmpeg overhaul
    • Swap out deprecated functions
    • Somehow find out a correct way to do things
    • Fix audio export on Windows
    • How to mux video & audio together without audio speeding up
    • Integrating it more with Qt
  • Trying out new QtAV vs libmpv for video playback (video seek accuracy problem)
  • Hide subtitles option if present while playing video