GithubHelp home page GithubHelp logo

Prebuilt windows release about audioserve HOT 6 OPEN

izderadicka avatar izderadicka commented on June 25, 2024
Prebuilt windows release

from audioserve.

Comments (6)

izderadicka avatar izderadicka commented on June 25, 2024

I personally do not use windows for audioserve and windows build instruction was provided by kind contributor in #28 - you can try to check with that contributor. As code is now it'll not provide all functionality for sure and basically nothing is guaranteed in windows. Instruction are including just if somebody wants to play with it.
I will keep this issue open as an placeholder is somebody will want to commit some effort to windows compatibility.

from audioserve.

izderadicka avatar izderadicka commented on June 25, 2024

#27 even contains some windows build

from audioserve.

rudifus avatar rudifus commented on June 25, 2024

I have found that rust lang install path has changed from C:\Program Files/ path to user space path,
C:/Users/username/.rustup/toolchains/stable-x86_64-pc-windows-msvc/lib/rustlib/x86_64-pc-windows-msvc/lib
where ffmpeg audio libs to be copied. as described in docs/windows-build.md

from audioserve.

rudifus avatar rudifus commented on June 25, 2024

AudioServe windoes build was OK.

when executed - several things to do yet:

  1. when audioserve.exe is started - it returns error on missing av- DLLs.
    so I have copied those DLLs from shared build of windows FFMPEG, i.e.
    ffmpeg https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-n4.4-latest-win64-gpl-shared-4.4.zip contained there in bin'subdirectory
avformat-58.dll   avdevice-59.dll   swscale-6.dll
avutil-56.dll     postproc-56.dll
avfilter-8.dll    avcodec-59.dll    swresample-4.dll
  1. renamed those av-* .dll file index as required by the error message

  2. entry point function รกv_register_all() not found in .exe file
    as mentioned in some of ffmpeg projects - it is deprecated
    Solution: simply I have commented out invocation of it within init()

pub fn init() {
    unsafe {
        ffi::av_log_set_level(ffi::AV_LOG_QUIET);
        // ffi::av_register_all()
    }
}

in crates\media_info\src\lib.rs

audioserve.exe launches without error on Windows 10 64 bit now

from audioserve.

izderadicka avatar izderadicka commented on June 25, 2024

@rudifus Thanks, looks promising. Still I'd suspect that not everything will be working as expected. Though I've tried not to use *nix only things (maybe with exceptions of signals on few places) , still I've been kind on relying on how linux works. Definitely need to be tested thoroughly. Do at least unit test worked - e.g. cargo test?

from audioserve.

rudifus avatar rudifus commented on June 25, 2024

@izderadicka cargo test --no-default-features

     Finished test [unoptimized + debuginfo] target(s) in 6.96s
     Running unittests (target\debug\deps\audioserve-a88fae109fe63c7f.exe)

running 10 tests
test services::auth::tests::test_token ... ok
test services::auth::tests::test_json_login ... [2022-01-27T09:30:53Z ERROR audioserve::services::auth] Invalid base64 in authentication token invalid length at 4 in string aaaaa
ok[2022-01-27T09:30:53Z ERROR audioserve::services::auth] Incorrectly formed login token - 0 parts

[2022-01-27T09:30:53Z ERROR audioserve::services::auth] Invalid authentication: invalid shared secret, client: None
test config::tests::test_transcoding_profile_deserialize ... ok
test config::tests::test_default_serialize ... ok
test config::cli::test::test_from_config ... ok
test config::cli::test::test_basic_args ... ok
test services::transcode::tests::test_transcode_seek ... FAILED
test services::transcode::tests::test_transcode_span ... FAILED
test services::transcode::tests::test_transcode ... FAILED
test services::auth::tests::test_authenticator_login ... ok

failures:

---- services::transcode::tests::test_transcode_seek stdout ----
Command is Command { std: "ffmpeg" "-nostdin" "-v" "error" "-accurate_seek" "-ss" "0.8" "-i" "./test_data/01-file.mp3" "-y" "-map_metadata" "-1" "-map" "a" "-acodec" "libopus" "-vbr" "on" "-ac" "1" "-b:a" "32k" "-compression_level" "5" "-cutoff" "12000" "-f" "opus" "pipe:1", kill_on_drop: false }
thread 'services::transcode::tests::test_transcode_seek' panicked at 'assertion failed: `(left == right)`
  left: `4294967295`,
 right: `1`', src\services\transcode\mod.rs:571:25
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

---- services::transcode::tests::test_transcode_span stdout ----
Command is Command { std: "ffmpeg" "-nostdin" "-v" "error" "-accurate_seek" "-ss" "0.2" "-t" "1.6999999" "-i" "./test_data/01-file.mp3" "-y" "-map_metadata" "-1" "-map" "a" "-acodec" "libopus" "-vbr" "on" "-ac" "1" "-b:a" "32k" "-compression_level" "5" "-cutoff" "12000" "-f" "opus" "pipe:1", kill_on_drop: false }
thread 'services::transcode::tests::test_transcode_span' panicked at 'assertion failed: `(left == right)`
  left: `4295`,
 right: `2`', src\services\transcode\mod.rs:571:25

---- services::transcode::tests::test_transcode stdout ----
Command is Command { std: "ffmpeg" "-nostdin" "-v" "error" "-i" "./test_data/01-file.mp3" "-y" "-map_metadata" "-1" "-map" "a" "-acodec" "libopus" "-vbr" "on" "-ac" "1" "-b:a" "32k" "-compression_level" "5" "-cutoff" "12000" "-f" "opus" "pipe:1", kill_on_drop: false }
thread 'services::transcode::tests::test_transcode' panicked at 'assertion failed: `(left == right)`
  left: `0`,
 right: `2`', src\services\transcode\mod.rs:571:25


failures:
    services::transcode::tests::test_transcode
    services::transcode::tests::test_transcode_seek
    services::transcode::tests::test_transcode_span

test result: FAILED. 7 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.51s

error: test failed, to rerun pass '--bin audioserve'

from audioserve.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.