rust-av / ssimulacra2_bin

Binary interface for the ssimulacra2 Rust port
BSD 2-Clause "Simplified" License
40 stars 10 forks source link

Error on windows #24

Closed darkjacky closed 1 year ago

darkjacky commented 1 year ago

There is a Windows build in the AV1 Discord. So I downloaded it and tried to test it. I ran into some trouble.

ssimulacra2_rs.exe image 1.jpg 2.jpg works.

ssimulacra2_rs.exe video 1.mp4 2.mp4 fails with the following error.

thread 'main' panicked at 'called 'Result::unwrap()' on an 'Err' value: Os { code: 1, kind: Uncategorized, message: "Onjuiste functie." }', /home/jannik/.cargo/registry/src/index.crates.io-6f17d22bba15001f/av-metrics-decoders-0.2.2/src/vapoursynth.rs:36:18 stack backtrace: 0: 0x7ff6e7785684 - std::backtrace_rs::backtrace::dbghelp::trace::h1ad666587ce5579e at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\..\..\backtrace\src\backtrace\dbghelp.rs:98:5 1: 0x7ff6e7785684 - std::backtrace_rs::backtrace::trace_unsynchronized::ha2e9f51ac181d8e4 at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\..\..\backtrace\src\backtrace\mod.rs:66:5 2: 0x7ff6e7785684 - std::sys_common::backtrace::_print_fmt::hdc04c422067d14e2 at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\sys_common\backtrace.rs:65:5 3: 0x7ff6e7785684 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h43146eb399c4f7ae at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\sys_common\backtrace.rs:44:22 4: 0x7ff6e75f9c3b - core::fmt::write::h1cb0af9762d029af at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\core\src\fmt\mod.rs:1213:17 5: 0x7ff6e77822a5 - std::io::Write::write_fmt::h0652ce741f812bf3 at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\io\mod.rs:1682:15 6: 0x7ff6e77853c4 - std::sys_common::backtrace::_print::habbff999da7b8f58 at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\sys_common\backtrace.rs:47:5 7: 0x7ff6e77853c4 - std::sys_common::backtrace::print::h7b620ccef7256ca7 at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\sys_common\backtrace.rs:34:9 8: 0x7ff6e77880bb - std::panicking::default_hook::{{closure}}::h1a5b77b815985266 at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\panicking.rs:267:22 9: 0x7ff6e7787d9f - std::panicking::default_hook::he1b1d66e0e08a5ac at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\panicking.rs:286:9 10: 0x7ff6e7788925 - std::panicking::rust_panic_with_hook::hfe6a3c4bb7ab4a49 at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\panicking.rs:688:13 11: 0x7ff6e778867f - std::panicking::begin_panic_handler::{{closure}}::hea9fa6efcbc962cc at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\panicking.rs:579:13 12: 0x7ff6e778651f - std::sys_common::backtrace::__rust_end_short_backtrace::h153afaa1982cb630 at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\sys_common\backtrace.rs:137:18 13: 0x7ff6e7788374 - rust_begin_unwind at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\panicking.rs:575:5 14: 0x7ff6e75f7925 - core::panicking::panic_fmt::hfffdd416307a7469 at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\core\src\panicking.rs:64:14 15: 0x7ff6e75f7ea6 - core::result::unwrap_failed::hda540e50df2bfd8d at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\core\src\result.rs:1790:5 16: 0x7ff6e75a6a09 - av_metrics_decoders::vapoursynth::VapoursynthDecoder::new_from_video::he0899975fe8c2a59 17: 0x7ff6e774073a - ssimulacra2_rs::video::compare_videos::h85b50a47b96230d2 18: 0x7ff6e7759790 - ssimulacra2_rs::main::h235780b325e906cb 19: 0x7ff6e7728206 - std::sys_common::backtrace::__rust_begin_short_backtrace::hd41695f1c309f8f2 20: 0x7ff6e772832c - std::rt::lang_start::{{closure}}::h1434d8f1c294059c 21: 0x7ff6e777c053 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h3a0f448ecd52c2b7 at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\core\src\ops\function.rs:287:13 22: 0x7ff6e777c053 - std::panicking::try::do_call::hc686c715164edc11 at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\panicking.rs:483:40 23: 0x7ff6e777c053 - std::panicking::try::hb666c9a262652430 at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\panicking.rs:447:19 24: 0x7ff6e777c053 - std::panic::catch_unwind::h250bb63baef9a206 at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\panic.rs:140:14 25: 0x7ff6e777c053 - std::rt::lang_start_internal::{{closure}}::h3473f915669558e7 at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\rt.rs:148:48 26: 0x7ff6e777c053 - std::panicking::try::do_call::hc8c77ef8da181680 at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\panicking.rs:483:40 27: 0x7ff6e777c053 - std::panicking::try::h98d32f39d783f942 at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\panicking.rs:447:19 28: 0x7ff6e777c053 - std::panic::catch_unwind::h677e2b04449890b7 at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\panic.rs:140:14 29: 0x7ff6e777c053 - std::rt::lang_start_internal::hf720e9e06c9ea14c at /rustc/9eb3afe9ebe9c7d2b84b71002d44f4a0edac95e0/library\std\src\rt.rs:148:20 30: 0x7ff6e776617d - main 31: 0x7ff6e75a13b1 - __tmainCRTStartup at /build/mingw-w64-crt/src/mingw-w64-v10.0.0/mingw-w64-crt/crt/crtexe.c:321:15 32: 0x7ff6e75a14e6 - mainCRTStartup at /build/mingw-w64-crt/src/mingw-w64-v10.0.0/mingw-w64-crt/crt/crtexe.c:202:9 33: 0x7ffabb4b7604 - <unknown> 34: 0x7ffabc5226a1 - <unknown>

What am I doing wrong? Or is there something wrong in the code?

Thank you.

muizzsiddique commented 1 year ago

I am a Windows user and it took no time nor any brain power to compile it myself.

  1. Install Rustup from rust-lang.org/tools/install
  2. Git clone this repository to a location, or download the repository as a zip and extract it to a location
  3. Open CMD/PowerShell in said location and then run cargo build
  4. Then go to the folders target/debug and copy ssimulacra2_rs.exe to whereever you need it (e.g. any folder in your PATH variable)
  5. Then run the command again and see if you still get any weird errors

I can't help you with the actual errors themselves, sorry.

darkjacky commented 1 year ago

This issue is caused by using Python 3.11. After retrying with 3.10 and VaporSynth 61 it works.