fix(wzp-video): gate shiguredo AV1 crates to macOS only; fix Linux relay build

- Cargo.toml: merge duplicate [target.macos.deps] sections; move
  shiguredo_dav1d/svt_av1/video_toolbox into single block
- lib.rs: dav1d + svt_av1 modules and re-exports guarded by
  cfg(target_os = "macos") instead of cfg(not(android))
- factory.rs: AV1 encoder/decoder paths split into macos (svt-av1/dav1d)
  and linux fallback (NotInitialized); update doc comments and tests
- build-linux-docker.sh: build only wzp-relay + wzp-web (drops
  wzp-client which pulled in shiguredo crates); fix Docker copy step;
  add --deploy flag + deploy_relay(); fix branch auto-detection
- build-tauri-android.sh: default to release build, arm64 only

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Siavash Sameni
2026-05-25 06:33:35 +04:00
parent 4ac62d99e0
commit 5d05b021aa
5 changed files with 39 additions and 41 deletions

View File

@@ -10,13 +10,12 @@ bytes = { workspace = true }
tracing = { workspace = true }
wzp-proto = { path = "../wzp-proto" }
# AV1 SW codecs do not support Android target (build.rs panics on
# aarch64-linux-android). Android uses MediaCodec for AV1 instead.
[target.'cfg(not(target_os = "android"))'.dependencies]
# AV1 SW codecs: shiguredo crates download prebuilt binaries at build time.
# Prebuilts are available for macOS only; Android uses MediaCodec; Linux will
# use system/vendored libs when that path is wired up (TODO).
[target.'cfg(target_os = "macos")'.dependencies]
shiguredo_dav1d = "2026.1.0"
shiguredo_svt_av1 = "2026.1.0"
[target.'cfg(target_os = "macos")'.dependencies]
shiguredo_video_toolbox = "2026.1"
[target.'cfg(target_os = "android")'.dependencies]