vapoursynth-mlrt-ort 15.16__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (338) hide show
  1. vapoursynth_mlrt_ort-15.16/ApplyPatch.cmake +22 -0
  2. vapoursynth_mlrt_ort-15.16/CMakeLists.txt +268 -0
  3. vapoursynth_mlrt_ort-15.16/PKG-INFO +122 -0
  4. vapoursynth_mlrt_ort-15.16/README.md +54 -0
  5. vapoursynth_mlrt_ort-15.16/patches/more-cudnn-libs.patch +12 -0
  6. vapoursynth_mlrt_ort-15.16/pyproject.toml +77 -0
  7. vapoursynth_mlrt_ort-15.16/scripts/cuda_pyproject.py +29 -0
  8. vapoursynth_mlrt_ort-15.16/vapoursynth/.codespellignore +6 -0
  9. vapoursynth_mlrt_ort-15.16/vapoursynth/.github/workflows/codespell.yml +15 -0
  10. vapoursynth_mlrt_ort-15.16/vapoursynth/.github/workflows/linux.yml +77 -0
  11. vapoursynth_mlrt_ort-15.16/vapoursynth/.github/workflows/macos.yml +63 -0
  12. vapoursynth_mlrt_ort-15.16/vapoursynth/.github/workflows/windows.yml +100 -0
  13. vapoursynth_mlrt_ort-15.16/vapoursynth/.gitignore +49 -0
  14. vapoursynth_mlrt_ort-15.16/vapoursynth/.gitmodules +0 -0
  15. vapoursynth_mlrt_ort-15.16/vapoursynth/APIV4 changes.txt +110 -0
  16. vapoursynth_mlrt_ort-15.16/vapoursynth/COPYING.LESSER +502 -0
  17. vapoursynth_mlrt_ort-15.16/vapoursynth/ChangeLog +769 -0
  18. vapoursynth_mlrt_ort-15.16/vapoursynth/MANIFEST.in +9 -0
  19. vapoursynth_mlrt_ort-15.16/vapoursynth/Makefile.am +162 -0
  20. vapoursynth_mlrt_ort-15.16/vapoursynth/README.md +10 -0
  21. vapoursynth_mlrt_ort-15.16/vapoursynth/autogen.sh +3 -0
  22. vapoursynth_mlrt_ort-15.16/vapoursynth/configure.ac +371 -0
  23. vapoursynth_mlrt_ort-15.16/vapoursynth/cython_build.bat +12 -0
  24. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/api/vapoursynth.h.rst +2635 -0
  25. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/api/vshelper.h.rst +204 -0
  26. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/api/vsscript.h.rst +330 -0
  27. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/apireference.rst +118 -0
  28. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/applications.rst +25 -0
  29. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/conf.py +252 -0
  30. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/custom/css/custom.css +19 -0
  31. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/audio/assumesamplerate.rst +5 -0
  32. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/audio/audiogain.rst +12 -0
  33. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/audio/audioloop.rst +11 -0
  34. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/audio/audiomix.rst +38 -0
  35. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/audio/audioreverse.rst +10 -0
  36. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/audio/audiosplice.rst +12 -0
  37. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/audio/audiotrim.rst +10 -0
  38. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/audio/blankaudio.rst +20 -0
  39. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/audio/setaudiocache.rst +7 -0
  40. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/audio/shufflechannels.rst +48 -0
  41. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/audio/splitchannels.rst +8 -0
  42. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/general/loadallplugins.rst +19 -0
  43. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/general/loadplugin.rst +26 -0
  44. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/general/loadpluginavs.rst +44 -0
  45. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/general/setmaxcpu.rst +14 -0
  46. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/addborders.rst +9 -0
  47. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/assumefps.rst +16 -0
  48. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/averageframes.rst +21 -0
  49. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/binarize_binarizemask.rst +34 -0
  50. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/blankclip.rst +18 -0
  51. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/boxblur.rst +8 -0
  52. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/cliptoprop.rst +15 -0
  53. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/convolution.rst +84 -0
  54. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/copyframeprops.rst +10 -0
  55. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/crop_cropabs.rst +20 -0
  56. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/deflate_inflate.rst +44 -0
  57. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/deleteframes.rst +11 -0
  58. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/doubleweave.rst +23 -0
  59. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/duplicateframes.rst +11 -0
  60. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/expr.rst +118 -0
  61. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/flipvertical_fliphorizontal.rst +8 -0
  62. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/frameeval.rst +77 -0
  63. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/freezeframes.rst +18 -0
  64. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/interleave.rst +19 -0
  65. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/invert_invertmask.rst +21 -0
  66. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/levels.rst +39 -0
  67. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/limiter.rst +23 -0
  68. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/loop.rst +11 -0
  69. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/lut.rst +39 -0
  70. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/lut2.rst +40 -0
  71. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/makediff.rst +15 -0
  72. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/maskedmerge.rst +35 -0
  73. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/median.rst +19 -0
  74. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/merge.rst +29 -0
  75. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/mergediff.rst +15 -0
  76. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/minimum_maximum.rst +69 -0
  77. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/modifyframe.rst +49 -0
  78. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/pemverifier.rst +14 -0
  79. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/planestats.rst +15 -0
  80. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/premultiply.rst +14 -0
  81. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/prewitt_sobel.rst +26 -0
  82. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/proptoclip.rst +12 -0
  83. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/removeframeprops.rst +9 -0
  84. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/resize.rst +278 -0
  85. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/reverse.rst +10 -0
  86. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/selectevery.rst +31 -0
  87. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/separatefields.rst +20 -0
  88. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/setfieldbased.rst +25 -0
  89. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/setframeprop.rst +20 -0
  90. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/setframeprops.rst +13 -0
  91. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/setvideocache.rst +27 -0
  92. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/shuffleplanes.rst +48 -0
  93. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/splice.rst +12 -0
  94. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/splitplanes.rst +8 -0
  95. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/stackvertical_stackhorizontal.rst +12 -0
  96. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/text/clipinfo.rst +9 -0
  97. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/text/coreinfo.rst +10 -0
  98. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/text/framenum.rst +9 -0
  99. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/text/frameprops.rst +10 -0
  100. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/text/text.rst +23 -0
  101. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/transpose.rst +18 -0
  102. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/trim.rst +17 -0
  103. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions/video/turn180.rst +7 -0
  104. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/functions.rst +38 -0
  105. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/gettingstarted.rst +42 -0
  106. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/index.rst +23 -0
  107. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/installation.rst +334 -0
  108. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/introduction.rst +36 -0
  109. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/make.bat +190 -0
  110. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/output.rst +125 -0
  111. vapoursynth_mlrt_ort-15.16/vapoursynth/doc/pythonreference.rst +1035 -0
  112. vapoursynth_mlrt_ort-15.16/vapoursynth/docs_build.bat +4 -0
  113. vapoursynth_mlrt_ort-15.16/vapoursynth/include/VSConstants4.h +93 -0
  114. vapoursynth_mlrt_ort-15.16/vapoursynth/include/VSHelper.h +174 -0
  115. vapoursynth_mlrt_ort-15.16/vapoursynth/include/VSHelper4.h +224 -0
  116. vapoursynth_mlrt_ort-15.16/vapoursynth/include/VSScript.h +85 -0
  117. vapoursynth_mlrt_ort-15.16/vapoursynth/include/VSScript4.h +97 -0
  118. vapoursynth_mlrt_ort-15.16/vapoursynth/include/VapourSynth.h +359 -0
  119. vapoursynth_mlrt_ort-15.16/vapoursynth/include/VapourSynth4.h +484 -0
  120. vapoursynth_mlrt_ort-15.16/vapoursynth/include/cython/vapoursynth.h +52 -0
  121. vapoursynth_mlrt_ort-15.16/vapoursynth/include/cython/vapoursynth_api.h +144 -0
  122. vapoursynth_mlrt_ort-15.16/vapoursynth/installer/CodeDependencies.iss +755 -0
  123. vapoursynth_mlrt_ort-15.16/vapoursynth/installer/MANIFEST.in +2 -0
  124. vapoursynth_mlrt_ort-15.16/vapoursynth/installer/make installers.bat +2 -0
  125. vapoursynth_mlrt_ort-15.16/vapoursynth/installer/make portable.bat +106 -0
  126. vapoursynth_mlrt_ort-15.16/vapoursynth/installer/setup.py +93 -0
  127. vapoursynth_mlrt_ort-15.16/vapoursynth/installer/template.vpy +1 -0
  128. vapoursynth_mlrt_ort-15.16/vapoursynth/installer/vs-detect-python.bat +10 -0
  129. vapoursynth_mlrt_ort-15.16/vapoursynth/installer/vsinstaller.iss +523 -0
  130. vapoursynth_mlrt_ort-15.16/vapoursynth/m4/ax_pthread.m4 +507 -0
  131. vapoursynth_mlrt_ort-15.16/vapoursynth/msvc_project/AVFS/AVFS.vcxproj +208 -0
  132. vapoursynth_mlrt_ort-15.16/vapoursynth/msvc_project/AVFS/AVFS.vcxproj.filters +101 -0
  133. vapoursynth_mlrt_ort-15.16/vapoursynth/msvc_project/AvsCompat/AvsCompat.vcxproj +183 -0
  134. vapoursynth_mlrt_ort-15.16/vapoursynth/msvc_project/AvsCompat/AvsCompat.vcxproj.filters +42 -0
  135. vapoursynth_mlrt_ort-15.16/vapoursynth/msvc_project/Core/Core.vcxproj +275 -0
  136. vapoursynth_mlrt_ort-15.16/vapoursynth/msvc_project/Core/Core.vcxproj.filters +228 -0
  137. vapoursynth_mlrt_ort-15.16/vapoursynth/msvc_project/ExprDebugger/ExprDebugger.vcxproj +152 -0
  138. vapoursynth_mlrt_ort-15.16/vapoursynth/msvc_project/ExprDebugger/ExprDebugger.vcxproj.filters +25 -0
  139. vapoursynth_mlrt_ort-15.16/vapoursynth/msvc_project/VSPipe/VSPipe.vcxproj +179 -0
  140. vapoursynth_mlrt_ort-15.16/vapoursynth/msvc_project/VSPipe/VSPipe.vcxproj.filters +57 -0
  141. vapoursynth_mlrt_ort-15.16/vapoursynth/msvc_project/VSScript/VSScript.vcxproj +174 -0
  142. vapoursynth_mlrt_ort-15.16/vapoursynth/msvc_project/VSScript/VSScript.vcxproj.filters +39 -0
  143. vapoursynth_mlrt_ort-15.16/vapoursynth/msvc_project/VSScriptPython38/VSScriptPython38.vcxproj +173 -0
  144. vapoursynth_mlrt_ort-15.16/vapoursynth/msvc_project/VSScriptPython38/VSScriptPython38.vcxproj.filters +36 -0
  145. vapoursynth_mlrt_ort-15.16/vapoursynth/msvc_project/VSVFW/VSVFW.vcxproj +175 -0
  146. vapoursynth_mlrt_ort-15.16/vapoursynth/msvc_project/VSVFW/VSVFW.vcxproj.filters +48 -0
  147. vapoursynth_mlrt_ort-15.16/vapoursynth/msvc_project/VapourSynth.sln +149 -0
  148. vapoursynth_mlrt_ort-15.16/vapoursynth/pc/vapoursynth-script.pc.in +14 -0
  149. vapoursynth_mlrt_ort-15.16/vapoursynth/pc/vapoursynth.pc.in +13 -0
  150. vapoursynth_mlrt_ort-15.16/vapoursynth/python-requirements.txt +6 -0
  151. vapoursynth_mlrt_ort-15.16/vapoursynth/sdk/filter_skeleton.c +58 -0
  152. vapoursynth_mlrt_ort-15.16/vapoursynth/sdk/invert_example.c +173 -0
  153. vapoursynth_mlrt_ort-15.16/vapoursynth/sdk/vsscript_example.c +117 -0
  154. vapoursynth_mlrt_ort-15.16/vapoursynth/setup.py +110 -0
  155. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/assertive.cpp +16 -0
  156. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/assertive.h +70 -0
  157. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/avfs.cpp +810 -0
  158. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/avfs.h +82 -0
  159. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/avfs.rc +45 -0
  160. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/avfsavi2.cpp +1715 -0
  161. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/avfsincludes.h +32 -0
  162. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/avfspfm.cpp +1653 -0
  163. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/avfspfm.h +64 -0
  164. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/avfswav.cpp +266 -0
  165. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/files.cpp +346 -0
  166. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/files.h +46 -0
  167. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/include/pfmapi.h +291 -0
  168. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/include/pfmenum.h +131 -0
  169. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/include/pfmformatter.h +54 -0
  170. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/include/pfmmarshaller.h +493 -0
  171. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/include/pfmprefix.h +46 -0
  172. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/include/pfmprotocol.h +552 -0
  173. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/include/ptblob.h +41 -0
  174. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/include/ptfactory1.h +221 -0
  175. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/include/ptpin.h +74 -0
  176. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/include/ptpublic.h +249 -0
  177. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/ss.cpp +156 -0
  178. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/ss.h +14 -0
  179. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/videoinfoadapter.h +203 -0
  180. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/vsfs.cpp +576 -0
  181. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/vsfs.h +70 -0
  182. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avfs/xxfs.h +53 -0
  183. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avisynth/avisynth.h +1329 -0
  184. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avisynth/avisynth_compat.cpp +1365 -0
  185. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avisynth/avisynth_compat.h +231 -0
  186. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avisynth/avs/alignment.h +134 -0
  187. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avisynth/avs/capi.h +66 -0
  188. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avisynth/avs/config.h +70 -0
  189. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avisynth/avs/cpuid.h +80 -0
  190. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avisynth/avs/minmax.h +54 -0
  191. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avisynth/avs/types.h +57 -0
  192. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avisynth/avs/win.h +51 -0
  193. vapoursynth_mlrt_ort-15.16/vapoursynth/src/avisynth/interface.cpp +1077 -0
  194. vapoursynth_mlrt_ort-15.16/vapoursynth/src/common/fourcc.cpp +263 -0
  195. vapoursynth_mlrt_ort-15.16/vapoursynth/src/common/fourcc.h +40 -0
  196. vapoursynth_mlrt_ort-15.16/vapoursynth/src/common/vsutf16.h +43 -0
  197. vapoursynth_mlrt_ort-15.16/vapoursynth/src/common/wave.cpp +163 -0
  198. vapoursynth_mlrt_ort-15.16/vapoursynth/src/common/wave.h +82 -0
  199. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/VapourSynth3.h +281 -0
  200. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/audiofilters.cpp +1062 -0
  201. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/averageframesfilter.cpp +304 -0
  202. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/boxblurfilter.cpp +404 -0
  203. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/cpufeatures.cpp +121 -0
  204. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/cpufeatures.h +59 -0
  205. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/expr/expr.cpp +1536 -0
  206. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/expr/expr.h +110 -0
  207. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/expr/jitasm.h +9723 -0
  208. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/expr/jitcompiler.cpp +85 -0
  209. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/expr/jitcompiler.h +81 -0
  210. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/expr/jitcompiler_x86.cpp +1686 -0
  211. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/expr/main.cpp +85 -0
  212. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/exprfilter.cpp +373 -0
  213. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/filtershared.h +181 -0
  214. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/filtersharedcpp.h +146 -0
  215. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/genericfilters.cpp +1110 -0
  216. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/internalfilters.h +39 -0
  217. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/intrusive_ptr.h +90 -0
  218. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/average.cpp +89 -0
  219. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/average.h +28 -0
  220. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/cpulevel.cpp +57 -0
  221. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/cpulevel.h +51 -0
  222. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/generic.cpp +700 -0
  223. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/generic.h +173 -0
  224. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/merge.c +368 -0
  225. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/merge.h +130 -0
  226. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/planestats.c +174 -0
  227. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/planestats.h +83 -0
  228. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/transpose.c +58 -0
  229. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/transpose.h +181 -0
  230. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/x86/average_sse2.c +282 -0
  231. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/x86/generic_avx2.cpp +1239 -0
  232. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/x86/generic_sse2.cpp +1265 -0
  233. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/x86/merge_avx2.c +430 -0
  234. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/x86/merge_sse2.c +441 -0
  235. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/x86/planestats_avx2.c +361 -0
  236. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/x86/planestats_sse2.c +349 -0
  237. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/kernel/x86/transpose_sse2.c +182 -0
  238. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/lutfilters.cpp +538 -0
  239. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/memoryuse.cpp +279 -0
  240. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/memoryuse.h +97 -0
  241. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/mergefilters.cpp +685 -0
  242. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/reorderfilters.cpp +710 -0
  243. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/settings.cpp +151 -0
  244. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/settings.h +6 -0
  245. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/simplefilters.cpp +2492 -0
  246. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/ter-116n.h +4804 -0
  247. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/ter-116n.ofl.txt +94 -0
  248. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/textfilter.cpp +765 -0
  249. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/version.h +54 -0
  250. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/vsapi.cpp +1311 -0
  251. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/vscore.cpp +2415 -0
  252. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/vscore.h +1125 -0
  253. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/vslog.cpp +100 -0
  254. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/vslog.h +42 -0
  255. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/vsresize.cpp +905 -0
  256. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/vsthreadpool.cpp +408 -0
  257. vapoursynth_mlrt_ort-15.16/vapoursynth/src/core/x86utils.h +25 -0
  258. vapoursynth_mlrt_ort-15.16/vapoursynth/src/cython/vapoursynth.pxd +390 -0
  259. vapoursynth_mlrt_ort-15.16/vapoursynth/src/cython/vapoursynth.pyx +3111 -0
  260. vapoursynth_mlrt_ort-15.16/vapoursynth/src/cython/vsconstants.pxd +83 -0
  261. vapoursynth_mlrt_ort-15.16/vapoursynth/src/cython/vsscript.pxd +25 -0
  262. vapoursynth_mlrt_ort-15.16/vapoursynth/src/cython/vsscript_internal.pxd +31 -0
  263. vapoursynth_mlrt_ort-15.16/vapoursynth/src/vfw/vsvfw.cpp +956 -0
  264. vapoursynth_mlrt_ort-15.16/vapoursynth/src/vfw/vsvfw.def +5 -0
  265. vapoursynth_mlrt_ort-15.16/vapoursynth/src/vsscript/vsscript.cpp +355 -0
  266. vapoursynth_mlrt_ort-15.16/vapoursynth/src/vsscript/vsscript_internal.h +35 -0
  267. vapoursynth_mlrt_ort-15.16/vapoursynth/test/async_test.py +106 -0
  268. vapoursynth_mlrt_ort-15.16/vapoursynth/test/expr_compiler/compiler_test.py +22 -0
  269. vapoursynth_mlrt_ort-15.16/vapoursynth/test/expr_compiler/havs_exprs.txt +29 -0
  270. vapoursynth_mlrt_ort-15.16/vapoursynth/test/expr_compiler/muvs_exprs.txt +40 -0
  271. vapoursynth_mlrt_ort-15.16/vapoursynth/test/expr_compiler/reference_output.txt +1062 -0
  272. vapoursynth_mlrt_ort-15.16/vapoursynth/test/expr_test.py +391 -0
  273. vapoursynth_mlrt_ort-15.16/vapoursynth/test/filter_test.py +24 -0
  274. vapoursynth_mlrt_ort-15.16/vapoursynth/test/log_test.py +21 -0
  275. vapoursynth_mlrt_ort-15.16/vapoursynth/test/lut_test.py +70 -0
  276. vapoursynth_mlrt_ort-15.16/vapoursynth/test/prop_dict_test.py +101 -0
  277. vapoursynth_mlrt_ort-15.16/vapoursynth/test/test.py +239 -0
  278. vapoursynth_mlrt_ort-15.16/vapoursynth/test/weakref_test.py +31 -0
  279. vapoursynth_mlrt_ort-15.16/vapoursynth/test/zimgtest.py +49 -0
  280. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/linux-migx.yml +78 -0
  281. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/linux-ncnn.yml +132 -0
  282. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/linux-ort.yml +151 -0
  283. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/linux-ov-arm64.yml +140 -0
  284. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/linux-ov.yml +140 -0
  285. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/linux-trt-arm64.yml +70 -0
  286. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/linux-trt-rtx.yml +76 -0
  287. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/linux-trt.yml +70 -0
  288. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/macos-ort.yml +140 -0
  289. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/windows-cuda-dependency.yml +132 -0
  290. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/windows-hip-dependency.yml +102 -0
  291. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/windows-migx.yml +113 -0
  292. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/windows-ncnn.yml +203 -0
  293. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/windows-ort.yml +280 -0
  294. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/windows-ov.yml +263 -0
  295. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/windows-release.yml +517 -0
  296. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/windows-trt.yml +158 -0
  297. vapoursynth_mlrt_ort-15.16/vs-mlrt/.github/workflows/windows-trt_rtx.yml +116 -0
  298. vapoursynth_mlrt_ort-15.16/vs-mlrt/LICENSE +674 -0
  299. vapoursynth_mlrt_ort-15.16/vs-mlrt/README.md +76 -0
  300. vapoursynth_mlrt_ort-15.16/vs-mlrt/common/convert_float_to_float16.cpp +611 -0
  301. vapoursynth_mlrt_ort-15.16/vs-mlrt/common/convert_float_to_float16.h +21 -0
  302. vapoursynth_mlrt_ort-15.16/vs-mlrt/common/onnx_utils.cpp +128 -0
  303. vapoursynth_mlrt_ort-15.16/vs-mlrt/common/onnx_utils.h +18 -0
  304. vapoursynth_mlrt_ort-15.16/vs-mlrt/scripts/vsmlrt.py +3443 -0
  305. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsmigx/CMakeLists.txt +46 -0
  306. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsmigx/README.md +77 -0
  307. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsmigx/config.h.in +1 -0
  308. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsmigx/vs_migraphx.cpp +1053 -0
  309. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsmigx/win32.cpp +95 -0
  310. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsncnn/CMakeLists.txt +54 -0
  311. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsncnn/config.h.in +1 -0
  312. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsncnn/onnx2ncnn.cpp +5163 -0
  313. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsncnn/onnx2ncnn.hpp +12 -0
  314. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsncnn/vs_ncnn.cpp +830 -0
  315. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsort/CMakeLists.txt +88 -0
  316. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsort/README.md +53 -0
  317. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsort/config.h.in +1 -0
  318. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsort/vs_onnxruntime.cpp +1510 -0
  319. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsort/win32.cpp +160 -0
  320. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsov/CMakeLists.txt +73 -0
  321. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsov/README.md +50 -0
  322. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsov/config.h.in +1 -0
  323. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsov/vs_openvino.cpp +827 -0
  324. vapoursynth_mlrt_ort-15.16/vs-mlrt/vsov/win32.cpp +99 -0
  325. vapoursynth_mlrt_ort-15.16/vs-mlrt/vstrt/CMakeLists.txt +135 -0
  326. vapoursynth_mlrt_ort-15.16/vs-mlrt/vstrt/README.md +116 -0
  327. vapoursynth_mlrt_ort-15.16/vs-mlrt/vstrt/config.h.in +1 -0
  328. vapoursynth_mlrt_ort-15.16/vs-mlrt/vstrt/cuda_helper.h +17 -0
  329. vapoursynth_mlrt_ort-15.16/vs-mlrt/vstrt/cuda_utils.h +73 -0
  330. vapoursynth_mlrt_ort-15.16/vs-mlrt/vstrt/inference_helper.h +143 -0
  331. vapoursynth_mlrt_ort-15.16/vs-mlrt/vstrt/longpath.manifest +8 -0
  332. vapoursynth_mlrt_ort-15.16/vs-mlrt/vstrt/trt_utils.h +617 -0
  333. vapoursynth_mlrt_ort-15.16/vs-mlrt/vstrt/trtexec/CMakeLists.txt +33 -0
  334. vapoursynth_mlrt_ort-15.16/vs-mlrt/vstrt/trtexec/logfile.cpp +43 -0
  335. vapoursynth_mlrt_ort-15.16/vs-mlrt/vstrt/trtexec/trtexec.patch +17 -0
  336. vapoursynth_mlrt_ort-15.16/vs-mlrt/vstrt/utils.h +298 -0
  337. vapoursynth_mlrt_ort-15.16/vs-mlrt/vstrt/vs_tensorrt.cpp +737 -0
  338. vapoursynth_mlrt_ort-15.16/vs-mlrt/vstrt/win32.cpp +125 -0
@@ -0,0 +1,22 @@
1
+ function(add_patched_source OUT_VAR SRC_FILE)
2
+ find_package(Git REQUIRED)
3
+
4
+ cmake_path(RELATIVE_PATH SRC_FILE BASE_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/vs-mlrt" OUTPUT_VARIABLE REL_PATH)
5
+ set(BIN_FILE "${CMAKE_CURRENT_BINARY_DIR}/vs-mlrt/${REL_PATH}")
6
+ cmake_path(GET SRC_FILE FILENAME FILE_NAME)
7
+
8
+ list(GET ARGN 0 PATCH_FILE)
9
+ add_custom_command(
10
+ OUTPUT "${BIN_FILE}"
11
+ COMMAND ${CMAKE_COMMAND} -E copy "${SRC_FILE}" "${BIN_FILE}"
12
+ COMMAND
13
+ ${CMAKE_COMMAND} -E env "GIT_CEILING_DIRECTORIES=${CMAKE_CURRENT_BINARY_DIR}" ${GIT_EXECUTABLE} apply
14
+ "${PATCH_FILE}"
15
+ WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/vs-mlrt"
16
+ DEPENDS "${SRC_FILE}" "${PATCH_FILE}"
17
+ COMMENT "Copying and patching ${FILE_NAME}"
18
+ VERBATIM
19
+ )
20
+
21
+ set(${OUT_VAR} "${BIN_FILE}" PARENT_SCOPE)
22
+ endfunction()
@@ -0,0 +1,268 @@
1
+ cmake_minimum_required(VERSION 3.22)
2
+ project(VSORT_Package)
3
+
4
+ # === Apply patches ===
5
+ include("${CMAKE_CURRENT_SOURCE_DIR}/ApplyPatch.cmake")
6
+
7
+ set(SRC_VSORT_DIR "${CMAKE_CURRENT_SOURCE_DIR}/vs-mlrt")
8
+ set(BIN_VSORT_DIR "${CMAKE_CURRENT_BINARY_DIR}/vs-mlrt")
9
+
10
+ add_patched_source(
11
+ PATCHED_WIN32
12
+ "${SRC_VSORT_DIR}/vsort/win32.cpp"
13
+ "${CMAKE_CURRENT_SOURCE_DIR}/patches/more-cudnn-libs.patch"
14
+ )
15
+
16
+ # === C++ Standard & Options ===
17
+ set(CMAKE_CXX_STANDARD 20)
18
+ set(CMAKE_CXX_STANDARD_REQUIRED ON)
19
+ set(CMAKE_CXX_EXTENSIONS OFF)
20
+
21
+ # Options
22
+ set(ENABLE_CUDA OFF CACHE BOOL "Enable CUDA backend")
23
+ set(ENABLE_DML OFF CACHE BOOL "Enable DirectML backend")
24
+ set(ENABLE_COREML OFF CACHE BOOL "Enable CoreML support")
25
+
26
+ set(
27
+ VAPOURSYNTH_INCLUDE_DIRECTORY
28
+ "${CMAKE_CURRENT_SOURCE_DIR}/vapoursynth/include"
29
+ CACHE PATH
30
+ "Path to VapourSynth headers"
31
+ )
32
+
33
+ if(SKBUILD_PROJECT_VERSION)
34
+ set(VCS_TAG "v${SKBUILD_PROJECT_VERSION}" CACHE STRING "Version from scikit-build-core")
35
+ set(CMAKE_DISABLE_FIND_PACKAGE_Git ON)
36
+ endif()
37
+
38
+ # === Dependencies ===
39
+ find_package(Protobuf REQUIRED CONFIG)
40
+ find_package(ONNX REQUIRED)
41
+ find_package(onnxruntime REQUIRED)
42
+
43
+ if(ENABLE_CUDA)
44
+ find_package(CUDAToolkit REQUIRED)
45
+ endif()
46
+
47
+ # === Target Definition & Configuration ===
48
+ add_library(
49
+ vsort
50
+ SHARED
51
+ vs-mlrt/vsort/vs_onnxruntime.cpp
52
+ vs-mlrt/vsort/win32.cpp
53
+ vs-mlrt/common/onnx_utils.cpp
54
+ vs-mlrt/common/convert_float_to_float16.cpp
55
+ )
56
+
57
+ set_target_properties(
58
+ vsort
59
+ PROPERTIES POSITION_INDEPENDENT_CODE ON CXX_EXTENSIONS OFF CXX_STANDARD 20 CXX_STANDARD_REQUIRED ON
60
+ )
61
+
62
+ if(UNIX)
63
+ if(APPLE)
64
+ set_target_properties(vsort PROPERTIES INSTALL_RPATH "@loader_path")
65
+ else()
66
+ set_target_properties(vsort PROPERTIES INSTALL_RPATH "$ORIGIN")
67
+ endif()
68
+ endif()
69
+
70
+ target_include_directories(
71
+ vsort
72
+ PRIVATE "${VAPOURSYNTH_INCLUDE_DIRECTORY}" "vs-mlrt/vsort" "vs-mlrt/common"
73
+ PUBLIC "${PROJECT_BINARY_DIR}"
74
+ )
75
+
76
+ if(ENABLE_CUDA)
77
+ target_compile_definitions(vsort PRIVATE ENABLE_CUDA)
78
+ target_include_directories(vsort PRIVATE ${CUDAToolkit_INCLUDE_DIRS})
79
+ endif()
80
+
81
+ if(ENABLE_DML)
82
+ target_compile_definitions(vsort PRIVATE ENABLE_DML)
83
+ endif()
84
+
85
+ if(ENABLE_COREML)
86
+ target_compile_definitions(vsort PRIVATE ENABLE_COREML=1)
87
+ endif()
88
+
89
+ configure_file(vs-mlrt/vsort/config.h.in config.h)
90
+
91
+ # === Link Libraries Setup ===
92
+ target_link_libraries(vsort PRIVATE ONNX::onnx onnxruntime::onnxruntime)
93
+
94
+ if(MSVC)
95
+ target_link_options(vsort PRIVATE "/DELAYLOAD:onnxruntime.dll" "delayimp.lib")
96
+ endif()
97
+
98
+ if(ENABLE_CUDA)
99
+ target_link_libraries(vsort PRIVATE CUDA::cudart_static)
100
+ endif()
101
+
102
+ # === Packaging & Installation ===
103
+ install(TARGETS vsort LIBRARY DESTINATION . RUNTIME DESTINATION .)
104
+
105
+ # Helper runtime DLL/SO copying/installing logic
106
+ if(WIN32)
107
+ # Copy ONNX Runtime
108
+ get_filename_component(_ROOT "${onnxruntime_DIR}/../../.." ABSOLUTE)
109
+ file(GLOB _DLLS "${_ROOT}/bin/*.dll")
110
+ # Copy CUDA providers DLL if CUDA is enabled
111
+ if(ENABLE_CUDA)
112
+ file(GLOB _LIB_DLLS "${_ROOT}/lib/*.dll")
113
+ list(APPEND _DLLS ${_LIB_DLLS})
114
+ endif()
115
+
116
+ if(_DLLS)
117
+ install(FILES ${_DLLS} DESTINATION "vsort")
118
+ else()
119
+ message(WARNING "Could not find ONNX Runtime DLLs")
120
+ endif()
121
+
122
+ if(ENABLE_DML)
123
+ if(NOT DML_DIR AND DEFINED ENV{DML_DIR})
124
+ set(DML_DIR "$ENV{DML_DIR}")
125
+ endif()
126
+
127
+ if(DML_DIR)
128
+ file(TO_CMAKE_PATH "${DML_DIR}" _DML_DIR)
129
+ find_file(_DML NAMES DirectML.dll PATHS "${_DML_DIR}/bin/x64-win" NO_DEFAULT_PATH)
130
+ endif()
131
+
132
+ if(_DML)
133
+ install(FILES "${_DML}" DESTINATION "vsort")
134
+ else()
135
+ message(WARNING "Could not find DirectML DLL. DML_DIR='${DML_DIR}'")
136
+ endif()
137
+ endif()
138
+
139
+ if(ENABLE_CUDA)
140
+ # Convert Windows paths to CMake paths (backslashes -> forward slashes) to avoid string parsing syntax errors
141
+ if(DEFINED ENV{CUDA_PATH})
142
+ file(TO_CMAKE_PATH "$ENV{CUDA_PATH}" _CUDA_PATH)
143
+ endif()
144
+ if(DEFINED ENV{CUDNN_PATH})
145
+ file(TO_CMAKE_PATH "$ENV{CUDNN_PATH}" _CUDNN_PATH)
146
+ endif()
147
+ if(DEFINED ENV{CUDNN_HOME})
148
+ file(TO_CMAKE_PATH "$ENV{CUDNN_HOME}" _CUDNN_HOME)
149
+ endif()
150
+
151
+ # Copy CUDA Toolkit DLLs
152
+ file(
153
+ GLOB _CUDA_DLLS
154
+ "${_CUDA_PATH}/bin/x64/cublas64_*.dll"
155
+ "${_CUDA_PATH}/bin/x64/cublasLt64_*.dll"
156
+ "${_CUDA_PATH}/bin/x64/cudart64_*.dll"
157
+ "${_CUDA_PATH}/bin/x64/cufft64_*.dll"
158
+ "${_CUDA_PATH}/bin/x64/cufftw64_*.dll"
159
+ "${_CUDA_PATH}/bin/x64/nvblas64_*.dll"
160
+ "${_CUDA_PATH}/extras/CUPTI/lib64/cupti64_*.dll"
161
+ )
162
+
163
+ # Copy cuDNN DLLs
164
+ file(
165
+ GLOB _CUDNN_DLLS
166
+ "${_CUDNN_PATH}/bin/*.dll"
167
+ "${_CUDNN_HOME}/bin/*.dll"
168
+ "${_CUDNN_PATH}/bin/x64/*.dll"
169
+ "${_CUDNN_HOME}/bin/x64/*.dll"
170
+ )
171
+
172
+ set(_ALL_CUDA_DLLS ${_CUDA_DLLS} ${_CUDNN_DLLS})
173
+ if(_ALL_CUDA_DLLS)
174
+ message(STATUS "Found CUDA and cuDNN DLLs to bundle: ${_ALL_CUDA_DLLS}")
175
+ install(FILES ${_ALL_CUDA_DLLS} DESTINATION "vsmlrt-cuda")
176
+ else()
177
+ message(
178
+ WARNING
179
+ "Could not find CUDA or cuDNN DLLs to bundle. CUDA_PATH='${_CUDA_PATH}', CUDNN_PATH='${_CUDNN_PATH}'"
180
+ )
181
+ endif()
182
+ endif()
183
+ endif()
184
+
185
+ if(UNIX AND NOT APPLE AND ENABLE_CUDA)
186
+ get_filename_component(_ROOT "${onnxruntime_DIR}/../../.." ABSOLUTE)
187
+ if(DEFINED ENV{CUDA_PATH})
188
+ file(TO_CMAKE_PATH "$ENV{CUDA_PATH}" _CUDA_PATH)
189
+ endif()
190
+ if(DEFINED ENV{CUDNN_PATH})
191
+ file(TO_CMAKE_PATH "$ENV{CUDNN_PATH}" _CUDNN_PATH)
192
+ endif()
193
+ if(DEFINED ENV{CUDNN_HOME})
194
+ file(TO_CMAKE_PATH "$ENV{CUDNN_HOME}" _CUDNN_HOME)
195
+ endif()
196
+
197
+ # Glob candidate libraries to bundle
198
+ file(
199
+ GLOB _LINUX_LIBS_PATHS
200
+ # cuDNN
201
+ "${_CUDNN_PATH}/lib/libcudnn*.so*"
202
+ "${_CUDNN_HOME}/lib/libcudnn*.so*"
203
+ "${_CUDNN_PATH}/lib64/libcudnn*.so*"
204
+ "${_CUDNN_HOME}/lib64/libcudnn*.so*"
205
+ # CUDA
206
+ "${_CUDA_PATH}/lib64/libcublas*.so*"
207
+ "${_CUDA_PATH}/lib64/libcudart*.so*"
208
+ "${_CUDA_PATH}/lib64/libcufft*.so*"
209
+ "${_CUDA_PATH}/lib64/libcurand*.so*"
210
+ "${_CUDA_PATH}/targets/*-linux/lib/libcublas*.so*"
211
+ "${_CUDA_PATH}/targets/*-linux/lib/libcudart*.so*"
212
+ "${_CUDA_PATH}/targets/*-linux/lib/libcufft*.so*"
213
+ "${_CUDA_PATH}/targets/*-linux/lib/libcurand*.so*"
214
+ "/usr/lib64/libcublas*.so*"
215
+ "/usr/lib64/libcudart*.so*"
216
+ "/usr/lib64/libcufft*.so*"
217
+ "/usr/lib64/libcurand*.so*"
218
+ # ONNX Runtime provider libraries
219
+ "${_ROOT}/lib/libonnxruntime*.so*"
220
+ "${_ROOT}/lib64/libonnxruntime*.so*"
221
+ )
222
+
223
+ if(_LINUX_LIBS_PATHS)
224
+ list(REMOVE_DUPLICATES _LINUX_LIBS_PATHS)
225
+ foreach(_LIB_PATH IN LISTS _LINUX_LIBS_PATHS)
226
+ get_filename_component(_LIB_NAME "${_LIB_PATH}" NAME)
227
+ get_filename_component(_REAL_PATH "${_LIB_PATH}" REALPATH)
228
+
229
+ # Check if the filename ends in ".so"
230
+ get_filename_component(_LIB_EXT "${_LIB_NAME}" EXT)
231
+ if("${_LIB_EXT}" STREQUAL ".so")
232
+ set(_ENDS_IN_SO ON)
233
+ else()
234
+ set(_ENDS_IN_SO OFF)
235
+ endif()
236
+
237
+ # Determine if we should bundle this library:
238
+ # - Symlinks (which represent the SONAME) that have a version suffix (e.g. libcublas.so.13)
239
+ # - Real files that are unversioned and end in .so (e.g. libonnxruntime_providers_cuda.so)
240
+ get_filename_component(_REAL_NAME "${_REAL_PATH}" NAME)
241
+ set(_SHOULD_BUNDLE OFF)
242
+ if(NOT "${_LIB_NAME}" STREQUAL "${_REAL_NAME}")
243
+ if(NOT _ENDS_IN_SO)
244
+ set(_SHOULD_BUNDLE ON)
245
+ endif()
246
+ else()
247
+ if(_ENDS_IN_SO)
248
+ set(_SHOULD_BUNDLE ON)
249
+ endif()
250
+ endif()
251
+
252
+ if(_SHOULD_BUNDLE)
253
+ message(STATUS "Bundling: ${_REAL_PATH} as ${_LIB_NAME}")
254
+ install(FILES "${_REAL_PATH}" RENAME "${_LIB_NAME}" DESTINATION .)
255
+ endif()
256
+ endforeach()
257
+ else()
258
+ message(WARNING "Could not find any Linux CUDA, cuDNN, or ORT libraries to bundle")
259
+ endif()
260
+ endif()
261
+
262
+ # Write VapourSynth Manifest
263
+ if(WIN32)
264
+ file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/manifest.vs" "[VapourSynth Manifest V1]\nvsort\n")
265
+ else()
266
+ file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/manifest.vs" "[VapourSynth Manifest V1]\nlibvsort\n")
267
+ endif()
268
+ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/manifest.vs" DESTINATION .)
@@ -0,0 +1,122 @@
1
+ Metadata-Version: 2.4
2
+ Name: vapoursynth-mlrt-ort
3
+ Version: 15.16
4
+ Summary: ONNX Runtime-based CPU/GPU inference plugin for VapourSynth
5
+ Author: AmusementClub
6
+ Maintainer-Email: =?utf-8?b?VmFyZMOr?= <ichunjo.le.terrible@gmail.com>
7
+ License-Expression: GPL-3.0-or-later
8
+ License-File: vs-mlrt/LICENSE
9
+ Project-URL: Source Code, https://github.com/AmusementClub/vs-mlrt
10
+ Project-URL: Bug Tracker, https://github.com/AmusementClub/vs-mlrt/issues
11
+ Project-URL: Repository, https://github.com/Jaded-Encoding-Thaumaturgy/vs-wheels
12
+ Requires-Python: >=3.12
13
+ Requires-Dist: vapoursynth>=75
14
+ Description-Content-Type: text/markdown
15
+
16
+ # VapourSynth-MLRT-ORT
17
+
18
+ This package contains the ONNX Runtime backend implementation of the [vs-mlrt](https://github.com/AmusementClub/vs-mlrt) plugin.
19
+
20
+ ## Installation
21
+
22
+ To install the standard CPU/DirectML/CoreML package:
23
+
24
+ ```bash
25
+ pip install vapoursynth-mlrt-ort
26
+ ```
27
+
28
+ To install the CUDA-enabled package:
29
+
30
+ ```bash
31
+ pip install vapoursynth-mlrt-ort-cuda --extra-index-url https://jaded-encoding-thaumaturgy.github.io/vs-wheels/simple
32
+ ```
33
+
34
+ ## Building from source
35
+
36
+ ### Requirements
37
+
38
+ - **C++ Compiler**: C++20 compatible (e.g. MSVC 2019+, GCC, Clang)
39
+ - **Dependencies**:
40
+ - `onnxruntime` (ONNX Runtime SDK)
41
+ - `ONNX`
42
+ - `Protobuf`
43
+ - **Optional Backend Dependencies**:
44
+ - **DirectML** (Windows): Requires DirectML SDK. Define the `DML_DIR` environment/CMake variable to point to the SDK directory.
45
+ - **CUDA**: Requires `CUDAToolkit` and `cuDNN` SDKs. Ensure `CUDA_PATH`, `CUDNN_PATH` / `CUDNN_HOME` are set correctly.
46
+
47
+ ### Compilation
48
+
49
+ By default, the package builds the CPU backend (with CoreML on macOS and optionally DirectML on Windows):
50
+
51
+ ```powershell
52
+ uv build --package vapoursynth-mlrt-ort
53
+ ```
54
+
55
+ To build the CUDA-enabled version, the package definition must first be updated using the helper script:
56
+
57
+ ```powershell
58
+ # Update pyproject.toml package configuration to target CUDA
59
+ uv run --script scripts/cuda_pyproject.py pyproject.toml
60
+
61
+ # Compile the CUDA package
62
+ uv build --package vapoursynth-mlrt-ort-cuda
63
+ ```
64
+
65
+ ---
66
+
67
+ Detailed parameter information from the parent project follows.
68
+
69
+ ---
70
+ # VapourSynth ONNX Runtime
71
+
72
+ The vs-onnxruntime plugin provides optimized CPU & CUDA runtime for some popular AI filters.
73
+
74
+ ## Building and Installation
75
+
76
+ To build, you will need [ONNX Runtime](https://www.onnxruntime.ai/), [protobuf](https://github.com/protocolbuffers/protobuf), [ONNX](https://github.com/onnx/onnx) and their dependencies.
77
+
78
+ Please refer to [ONNX Runtime Docs](https://onnxruntime.ai/docs/install/) for installation notes.
79
+ Or, you can use our prebuilt Windows binary releases from [AmusementClub](https://github.com/AmusementClub/onnxruntime/releases/latest/).
80
+
81
+ Please refer to our [github actions workflow](../.github/workflows/windows-ort.yml) for sample building instructions.
82
+
83
+ If you only use the CPU backend, then you just need to extract binary release into your `vapoursynth/plugins` directory.
84
+
85
+ However, if you also use the CUDA backend, you will need to download some CUDA libraries as well, please see the release page for details. Those CUDA libraries also need to be extracted into VS `vapoursynth/plugins` directory. The plugin will try to load them from `vapoursynth/plugins/vsort/` directory or `vapoursynth/plugins/vsmlrt-cuda/` directory.
86
+
87
+ ## Usage
88
+
89
+ Prototype: `core.ort.Model(clip[] clips, string network_path[, int[] overlap = None, int[] tilesize = None, string provider = "", int device_id = 0, int verbosity = 2, bint cudnn_benchmark = True, bint builtin = False, string builtindir="models", bint fp16 = False, bint path_is_serialization = False, bint use_cuda_graph = False])`
90
+
91
+ Arguments:
92
+ - `clip[] clips`: the input clips, only 32-bit floating point RGB or GRAY clips are supported. For model specific input requirements, please consult our [wiki](https://github.com/AmusementClub/vs-mlrt/wiki).
93
+ - `string network_path`: the path to the network in ONNX format.
94
+ - `int[] overlap`: some networks (e.g. [CNN](https://en.wikipedia.org/wiki/Convolutional_neural_network)) support arbitrary input shape where other networks might only support fixed input shape and the input clip must be processed in tiles. The `overlap` argument specifies the overlapping (horizontal and vertical, or both, in pixels) between adjacent tiles to minimize boundary issues. Please refer to network specific docs on the recommended overlapping size.
95
+ - `int[] tilesize`: Even for CNN where arbitrary input sizes could be supported, sometimes the network does not work well for the entire range of input dimensions, and you have to limit the size of each tile. This parameter specify the tile size (horizontal and vertical, or both, including the overlapping). Please refer to network specific docs on the recommended tile size.
96
+ - `string provider`: Specifies the device to run the inference on.
97
+ - `"CPU"` or `""`: pure CPU backend
98
+ - `"CUDA"`: CUDA GPU backend, requires Nvidia Maxwell+ GPUs.
99
+ - `"DML"`: DirectML backend
100
+ - `"COREML"`: CoreML backend
101
+ - `int device_id`: select the GPU device for the CUDA backend.'
102
+ - `int verbosity`: specify the verbosity of logging, the default is warning.
103
+ - 0: fatal error only, `ORT_LOGGING_LEVEL_FATAL`
104
+ - 1: also errors, `ORT_LOGGING_LEVEL_ERROR`
105
+ - 2: also warnings, `ORT_LOGGING_LEVEL_WARNING`
106
+ - 3: also info, `ORT_LOGGING_LEVEL_INFO`
107
+ - 4: everything, `ORT_LOGGING_LEVEL_VERBOSE`
108
+ - `bint cudnn_benchmark`: whether to let cuDNN use benchmarking to search for the best convolution kernel to use. Default True. It might incur some startup latency.
109
+ - `bint builtin`: whether to load the model from the VS plugins directory, see also `builtindir`.
110
+ - `string builtindir`: the model directory under VS plugins directory for builtin models, default "models".
111
+ - `bint fp16`: whether to quantize model to fp16 for faster and memory efficient computation.
112
+ - `bint path_is_serialization`: whether the `network_path` argument specifies an onnx serialization of type `bytes`.
113
+ - `bint use_cuda_graph`: whether to use CUDA Graphs to improve performance and reduce CPU overhead in CUDA backend. Not all models are supported.
114
+ - `int ml_program`: select CoreML provider.
115
+ - 0: NeuralNetwork
116
+ - 1: MLProgram
117
+
118
+ When `overlap` and `tilesize` are not specified, the filter will internally try to resize the network to fit the input clips. This might not always work (for example, the network might require the width to be divisible by 8), and the filter will error out in this case.
119
+
120
+ The general rule is to either:
121
+ 1. left out `overlap`, `tilesize` at all and just process the input frame in one tile, or
122
+ 2. set all three so that the frame is processed in `tilesize[0]` x `tilesize[1]` tiles, and adjacent tiles will have an overlap of `overlap[0]` x `overlap[1]` pixels on each direction. The overlapped region will be throw out so that only internal output pixels are used.
@@ -0,0 +1,54 @@
1
+ # VapourSynth-MLRT-ORT
2
+
3
+ This package contains the ONNX Runtime backend implementation of the [vs-mlrt](https://github.com/AmusementClub/vs-mlrt) plugin.
4
+
5
+ ## Installation
6
+
7
+ To install the standard CPU/DirectML/CoreML package:
8
+
9
+ ```bash
10
+ pip install vapoursynth-mlrt-ort
11
+ ```
12
+
13
+ To install the CUDA-enabled package:
14
+
15
+ ```bash
16
+ pip install vapoursynth-mlrt-ort-cuda --extra-index-url https://jaded-encoding-thaumaturgy.github.io/vs-wheels/simple
17
+ ```
18
+
19
+ ## Building from source
20
+
21
+ ### Requirements
22
+
23
+ - **C++ Compiler**: C++20 compatible (e.g. MSVC 2019+, GCC, Clang)
24
+ - **Dependencies**:
25
+ - `onnxruntime` (ONNX Runtime SDK)
26
+ - `ONNX`
27
+ - `Protobuf`
28
+ - **Optional Backend Dependencies**:
29
+ - **DirectML** (Windows): Requires DirectML SDK. Define the `DML_DIR` environment/CMake variable to point to the SDK directory.
30
+ - **CUDA**: Requires `CUDAToolkit` and `cuDNN` SDKs. Ensure `CUDA_PATH`, `CUDNN_PATH` / `CUDNN_HOME` are set correctly.
31
+
32
+ ### Compilation
33
+
34
+ By default, the package builds the CPU backend (with CoreML on macOS and optionally DirectML on Windows):
35
+
36
+ ```powershell
37
+ uv build --package vapoursynth-mlrt-ort
38
+ ```
39
+
40
+ To build the CUDA-enabled version, the package definition must first be updated using the helper script:
41
+
42
+ ```powershell
43
+ # Update pyproject.toml package configuration to target CUDA
44
+ uv run --script scripts/cuda_pyproject.py pyproject.toml
45
+
46
+ # Compile the CUDA package
47
+ uv build --package vapoursynth-mlrt-ort-cuda
48
+ ```
49
+
50
+ ---
51
+
52
+ Detailed parameter information from the parent project follows.
53
+
54
+ ---
@@ -0,0 +1,12 @@
1
+ diff --git a/vsort/win32.cpp b/vsort/win32.cpp
2
+ index 0c7026e..e827c9a 100644
3
+ --- a/vsort/win32.cpp
4
+ +++ b/vsort/win32.cpp
5
+ @@ -27,6 +27,7 @@ static std::vector<std::wstring> cudaDlls {
6
+ L"cudnn_graph64",
7
+ L"cudnn_engines_precompiled64", L"cudnn_heuristic64", L"cudnn_engines_runtime_compiled64",
8
+ L"cudnn_ops64", L"cudnn_cnn64", L"cudnn_adv64",
9
+ + L"cudnn_engines_tensor_ir64", L"cudnn_ext64",
10
+ L"cudnn64",
11
+ L"cupti64",
12
+ };
@@ -0,0 +1,77 @@
1
+ [build-system]
2
+ requires = [
3
+ "scikit-build-core>=0.12",
4
+ "setuptools-scm",
5
+ "ninja ; sys_platform != 'win32'",
6
+ ]
7
+ build-backend = "scikit_build_core.build"
8
+
9
+ [project]
10
+ name = "vapoursynth-mlrt-ort"
11
+ dynamic = ["version", "readme"]
12
+ description = "ONNX Runtime-based CPU/GPU inference plugin for VapourSynth"
13
+ license = "GPL-3.0-or-later"
14
+ license-files = ["vs-mlrt/LICENSE"]
15
+ requires-python = ">=3.12"
16
+ authors = [{ name = "AmusementClub" }]
17
+ maintainers = [{ name = "Vardë", email = "ichunjo.le.terrible@gmail.com" }]
18
+ dependencies = ["vapoursynth>=75"]
19
+
20
+ [project.urls]
21
+ "Source Code" = "https://github.com/AmusementClub/vs-mlrt"
22
+ "Bug Tracker" = "https://github.com/AmusementClub/vs-mlrt/issues"
23
+ "Repository" = "https://github.com/Jaded-Encoding-Thaumaturgy/vs-wheels"
24
+
25
+ [tool.setuptools_scm]
26
+ root = "vs-mlrt"
27
+ local_scheme = "no-local-version"
28
+ tag_regex = '^v(?P<version>\d+.*)$'
29
+
30
+ [tool.scikit-build]
31
+ metadata.version.provider = "scikit_build_core.metadata.setuptools_scm"
32
+ metadata.readme.provider = "scikit_build_core.metadata.fancy_pypi_readme"
33
+ wheel.exclude = ["*.lib"]
34
+ wheel.install-dir = "vapoursynth/plugins/ort"
35
+ wheel.expand-macos-universal-tags = true
36
+ wheel.py-api = "py3"
37
+ cmake.source-dir = "."
38
+ cmake.args = ["-G", "Ninja"]
39
+ cmake.define.CMAKE_BUILD_TYPE = "Release"
40
+ ninja.make-fallback = false
41
+ ninja.version = ">=1.5"
42
+
43
+ [[tool.scikit-build.overrides]]
44
+ if.platform-system = "win32"
45
+ inherit.cmake.define = "append"
46
+ cmake.define.CMAKE_MSVC_RUNTIME_LIBRARY = "MultiThreaded"
47
+ cmake.define.ENABLE_DML = "ON"
48
+
49
+ [[tool.scikit-build.overrides]]
50
+ if.platform-system = "linux"
51
+ if.platform-machine = "x86_64"
52
+ inherit.cmake.define = "append"
53
+ cmake.define.CMAKE_CXX_FLAGS = "-Wall -ffast-math -march=x86-64-v3"
54
+
55
+ [[tool.scikit-build.overrides]]
56
+ if.platform-system = "linux"
57
+ if.platform-machine = "aarch64"
58
+ inherit.cmake.define = "append"
59
+ cmake.define.CMAKE_CXX_FLAGS = "-Wall -ffast-math -march=armv8.2-a"
60
+
61
+ [[tool.scikit-build.overrides]]
62
+ if.platform-system = "darwin"
63
+ if.platform-machine = "arm64"
64
+ inherit.cmake.define = "append"
65
+ cmake.define.CMAKE_CXX_FLAGS = "-Wall -ffast-math -mcpu=apple-m1"
66
+ cmake.define.ENABLE_COREML = "ON"
67
+
68
+ [[tool.scikit-build.overrides]]
69
+ if.platform-system = "darwin"
70
+ if.platform-machine = "x86_64"
71
+ inherit.cmake.define = "append"
72
+ cmake.define.CMAKE_CXX_FLAGS = "-Wall -ffast-math -march=x86-64-v3"
73
+ cmake.define.ENABLE_COREML = "ON"
74
+
75
+ [tool.hatch.metadata.hooks.fancy-pypi-readme]
76
+ content-type = "text/markdown"
77
+ fragments = [{ path = "README.md" }, { path = "vs-mlrt/vsort/README.md" }]
@@ -0,0 +1,29 @@
1
+ # /// script
2
+ # requires-python = ">=3.12"
3
+ # dependencies = [
4
+ # "tomli-w>=1.2.0",
5
+ # ]
6
+ # ///
7
+
8
+ import sys
9
+ import tomllib
10
+ from pathlib import Path
11
+
12
+ import tomli_w
13
+
14
+
15
+ def main(pyproject: Path) -> None:
16
+ data = tomllib.loads(pyproject.read_text(encoding="utf-8"))
17
+ data["project"]["name"] += "-cuda"
18
+ data["project"]["description"] += " with CUDA support"
19
+ data["tool"]["scikit-build"]["wheel"]["install-dir"] += "-cuda"
20
+
21
+ for override in data["tool"]["scikit-build"]["overrides"]:
22
+ if override["if"]["platform-system"] in ["win32", "linux"]:
23
+ override["cmake"]["define"]["ENABLE_CUDA"] = "ON"
24
+
25
+ pyproject.write_text(tomli_w.dumps(data), encoding="utf-8")
26
+
27
+
28
+ if __name__ == "__main__":
29
+ main(Path(sys.argv[1]))
@@ -0,0 +1,6 @@
1
+ static bool funcToLut(int nin, int nout, void *vlut, VSFunction *func, const VSAPI *vsapi, std::string &errstr) {
2
+ for (int i = 0; i < nin; i++) {
3
+ std::string aLine = nstringToUtf8(argv[arg + 1]).c_str();
4
+ size_t equalsPos = aLine.find("=");
5
+ fprintf(stderr, "No value specified for argument: %s\n", aLine.c_str());
6
+ opts.scriptArgs[aLine.substr(0, equalsPos)] = aLine.substr(equalsPos + 1);
@@ -0,0 +1,15 @@
1
+ name: codespell
2
+
3
+ on: [push, pull_request]
4
+
5
+ jobs:
6
+ codespell:
7
+ runs-on: ubuntu-latest
8
+
9
+ steps:
10
+ - uses: actions/checkout@v2
11
+
12
+ - uses: codespell-project/actions-codespell@master
13
+ with:
14
+ exclude_file: .codespellignore
15
+ skip: ./src/avfs/include,./src/avisynth/avisynth.h,./src/avisynth/interface.cpp,./src/core/ter-116n.h,./src/core/expr/jitasm.h
@@ -0,0 +1,77 @@
1
+ name: Linux
2
+
3
+ on: [push, pull_request, workflow_dispatch]
4
+
5
+ jobs:
6
+ build-gcc:
7
+ runs-on: ubuntu-latest
8
+
9
+ env:
10
+ CC: ${{ matrix.cc }}
11
+ CXX: ${{ matrix.cxx }}
12
+
13
+ strategy:
14
+ matrix:
15
+ include:
16
+ - cc: gcc-10
17
+ cxx: g++-10
18
+ - cc: gcc-11
19
+ cxx: g++-11
20
+ fail-fast: false
21
+
22
+ steps:
23
+ - uses: actions/checkout@v2
24
+
25
+ - name: Install GCC 11
26
+ if: ${{ matrix.cc == 'gcc-11' }}
27
+ run: |
28
+ sudo apt-get update
29
+ sudo apt-get install g++-11 -y
30
+
31
+ - name: Print compiler version
32
+ run: ${{ env.CC }} --version
33
+
34
+ - name: Install zimg
35
+ run: |
36
+ git clone https://github.com/sekrit-twc/zimg --branch v3.0 --depth 1
37
+ pushd zimg
38
+ ./autogen.sh
39
+ ./configure --prefix=/usr
40
+ make -j2
41
+ sudo make install -j2
42
+ popd
43
+ rm -rf zimg
44
+
45
+ - name: Setup Python
46
+ uses: actions/setup-python@v2
47
+ with:
48
+ # Version range or exact version of a Python version to use, using SemVer's version range syntax.
49
+ python-version: 3.9
50
+
51
+ - name: Install cython
52
+ run: |
53
+ python -m pip install --upgrade pip
54
+ pip install cython
55
+
56
+ - name: Set PKG_CONFIG_PATH
57
+ run: echo "PKG_CONFIG_PATH=$pythonLocation/lib/pkgconfig" >> $GITHUB_ENV
58
+
59
+ - name: configure
60
+ run: |
61
+ ./autogen.sh
62
+ ./configure --prefix=/usr
63
+
64
+ - name: make
65
+ run: make -j2
66
+
67
+ - name: make install
68
+ run: |
69
+ sudo make install -j2
70
+ python setup.py sdist -d sdist
71
+ mkdir empty
72
+ pushd empty
73
+ pip install vapoursynth --no-index --find-links ../sdist
74
+ popd
75
+
76
+ - name: Run test
77
+ run: python -m unittest discover -s test -p "*test.py"