n00mkrad / flowframes

Flowframes Windows GUI for video interpolation using DAIN (NCNN) or RIFE (CUDA/NCNN)
GNU General Public License v3.0
1.46k stars 114 forks source link

Build failing when compiling from .sln #257

Closed nullkid10 closed 1 year ago

nullkid10 commented 1 year ago

Hello, I tried to download your code to build it myself and I opened the solution up in VS22, only to build it and it throw 122 warnings at me and fail. I'm a newb with this stuff, can you help me get the build working? console log: Build started... 1>------ Build started: Project: Flowframes, Configuration: Debug Any CPU ------ 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Data\InterpSettings.cs(37,45,37,62): warning CS4014: Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Data\MediaFile.cs(75,27,75,45): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Data\Servers.cs(33,34,33,38): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Forms\TimeoutForm.cs(40,13,40,25): warning CS4014: Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\IO\ModelDownloader.cs(69,13,69,78): warning CS4014: Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\IO\IoUtils.cs(154,45,154,47): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\IO\Symlinks.cs(41,46,41,48): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Main\ResumeUtils.cs(39,13,39,30): warning CS4014: Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Main\AutoEncode.cs(143,33,143,107): warning CS4014: Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Main\AutoEncode.cs(190,27,190,47): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Main\FrameOrder.cs(167,27,167,50): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Forms\Main\Form1.cs(41,28,41,38): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Forms\ModelDownloadForm.cs(71,13,71,86): warning CS4014: Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Magick\Dedupe.cs(223,28,223,43): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Forms\Main\Form1.cs(139,17,139,58): warning CS4014: Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Forms\Main\Form1.cs(140,17,140,59): warning CS4014: Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Forms\Main\Form1.cs(141,17,141,63): warning CS4014: Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Forms\Main\Form1.cs(142,17,142,75): warning CS4014: Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Forms\Main\Form1.cs(143,17,143,47): warning CS4014: Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Forms\SettingsForm.cs(223,13,223,34): warning CS4014: Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Forms\SettingsForm.cs(229,13,229,34): warning CS4014: Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Magick\SceneDetect.cs(26,17,26,74): warning CS4014: Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Magick\SceneDetect.cs(15,34,15,51): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Media\FfmpegUtils.cs(162,40,162,61): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Main\FrameOrder.cs(234,27,234,45): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Ui\UiUtils.cs(95,28,95,32): warning CS0219: The variable 'icon' is assigned but its value is never used 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\IO\IoUtils.cs(439,46,439,48): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Main\Export.cs(241,25,241,141): warning CS4014: Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Media\FfmpegEncode.cs(49,42,49,63): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Media\FfmpegEncode.cs(98,44,98,54): error CS1061: 'string' does not contain a definition for 'IsNotEmpty' and no accessible extension method 'IsNotEmpty' accepting a first argument of type 'string' could be found (are you missing a using directive or an assembly reference?) 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Main\Export.cs(342,32,342,44): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Media\FfmpegExtract.cs(97,55,97,57): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Ui\InterpolationProgress.cs(171,30,171,31): warning CS0168: The variable 'e' is declared but never used 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Os\AiProcess.cs(317,20,317,31): warning CS0219: The variable 'logFileName' is assigned but its value is never used 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Media\FfmpegExtract.cs(133,41,133,43): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Os\Updater.cs(132,34,132,50): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Os\Updater.cs(151,34,151,49): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Forms\Main\Form1.cs(577,21,577,84): warning CS4014: Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Forms\Main\Form1.cs(593,17,593,83): warning CS4014: Because this call is not awaited, execution of the current method continues before the call is completed. Consider applying the 'await' operator to the result of the call. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Forms\Main\Form1.cs(653,28,653,43): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Main\Interpolate.cs(295,41,295,43): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread. 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Media\AvProcess.cs(26,24,26,38): warning CS0169: The field 'AvProcess.currentLogMode' is never used 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Media\AvProcess.cs(27,21,27,36): warning CS0169: The field 'AvProcess.showProgressBar' is never used 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Media\AvProcess.cs(23,30,23,46): warning CS0649: Field 'AvProcess.lastOutputFfmpeg' is never assigned to, and will always have its default value null 1>C:\Users\lostb\Downloads\flowframes-main (1)\flowframes-main\Code\Media\FfmpegUtils.cs(20,45,20,55): warning CS0414: The field 'FfmpegUtils.showFormat' is assigned but its value is never used ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== ========== Build started at 8:21 PM and took 00.823 seconds ==========

smallketchup82 commented 1 year ago

Not really sure about the other errors, from a glance it seems like maybe you need to update your .NET version?

As for the last warning/error regarding FFmpeg, apply the patches listed in #250 before you build. This seemed to fix it for me, although I don't know if our errors were the same

Also when you're building, make sure you build for the x64 architecture, not "Any CPU"