Skip to content

Latest commit

 

History

History
69 lines (58 loc) · 1.73 KB

Notes.md

File metadata and controls

69 lines (58 loc) · 1.73 KB

Theory of Operation

  1. Create MainData structure
  2. Optional: probe cuda devices
  3. Optional: probe opencl devices
  4. Collect device info
  5. Create subclass of MovieReader and open input
  6. Validate MainData variables with input
  7. Optional: create one or more Auxiliary Writers - those are called per input frame
  8. Create subclass of MovieWriter and open output - this is called per output frame
  9. Create subclass of MovieFrame handler class - this selects the loop mechanism
  10. Create subclass of FrameExecutor - this selects the device for computations
  11. Create subclass of progress handler - this informs about progress during loop
  12. Run the loop in the frame class
  13. Close Writer
  14. Close Reader
  15. Close Executor
  16. Close Frame

Dependencies

FFMPEG

always used to decode video used to encode when not via nvenc get shared build from https://www.gyan.dev/ffmpeg/builds/ or build with Media Auto Build https://github.com/m-ab-s/media-autobuild_suite

Misc Notes

Cuda 11.8 is the highest version to support Compute 3.5 Video Codec 11.0.10 is the highest encoder version to go along with it

Files To Deploy

in program folder:

   avcodec-61.dll
   avformat-61.dll
   avutil-59.dll
   D3Dcompiler_47.dll
   opengl32sw.dll
   Qt6Core.dll
   Qt6Gui.dll
   Qt6Multimedia.dll
   Qt6MultimediaWidgets.dll
   Qt6Network.dll
   Qt6Widgets.dll
   swresample-5.dll
   swscale-8.dll
   
---generic
       qtuiotouchplugin.dll
       
---multimedia
       ffmpegmediaplugin.dll
       windowsmediaplugin.dll
       
---networkinformation
       qnetworklistmanager.dll
       
---platforms
       qwindows.dll
       
---styles
       qmodernwindowsstyle.dll
       
---tls
        qcertonlybackend.dll
        qopensslbackend.dll
        qschannelbackend.dll