Comments (6)
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.
#27 even contains some windows build
from audioserve.
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.
AudioServe windoes build was OK.
when executed - several things to do yet:
- 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
-
renamed those av-* .dll file index as required by the error message
-
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.
@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.
@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)
- Dependency Dashboard
- Where to donate HOT 2
- Track skips when transcoding is enabled HOT 6
- New web client requires HTTPS HOT 3
- Error upgrading to v0.26.2 from v.0.24.1
- Don't work with docker-compose HOT 9
- Local Linux build fails HOT 3
- Change document.title to current track name. HOT 2
- Some m4b files fail to play HOT 1
- Cover icons for client browsing and MediaSession HOT 2
- 0.20.0: "Error deserializing data from db tag for enum is not valid, found xxx" HOT 3
- Feature request: Mark audio files as "listened"/"completed" HOT 6
- iOS and mac decode problems HOT 4
- Rust Version too Low for Build HOT 2
- Audioserve android don't support nginx auth HOT 3
- Natural Ordering of files HOT 5
- ffprobe process HOT 2
- Artificially Low Limit on File Name Length HOT 5
- [ Feature Request ] package this as a Start9 Service HOT 2
- [Feature Request] Allow "Device Group" to be configured from an HTTP Header HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from audioserve.