1
0
mirror of git://f0xx.org/android_cast synced 2026-07-29 05:17:39 +03:00

libvpx integration

This commit is contained in:
Anton Afanasyeu
2026-05-18 17:05:47 +02:00
parent 1dbfc996c2
commit bbf64d30b9
18 changed files with 636 additions and 37 deletions

View File

@@ -8,13 +8,16 @@ The app loads `libandroidcast_codecs.so` for availability probes and future soft
|-----------|------|--------|-------|
| FEC 3/4 + RS | Yes | — | v2 **per-shard** on wire (`FecShardWire`); v1 monolithic decode still accepted |
| NACK + retransmit cache | Yes | — | UDP `MSG_NACK`, combined with FEC when enabled |
| libvpx VP8/VP9 | Stub | Probe only | HW passthrough until `ANDROIDCAST_LIBVPX_LIB` is linked |
| libvpx VP8/VP9 | Native | Encode + decode | Screen cast via ImageReader; receiver libvpx or MediaCodec fallback |
| Opus / Speex | Stub | Probe only | Submodules under `third-party/` |
## Enable libvpx (developer)
1. `git submodule update --init third-party/libvpx`
2. Build `libvpx.a` for your ABI: `./scripts/build-native-codecs.sh arm64-v8a`
2. Build `libvpx.a` per ABI (NDK is auto-detected; see `scripts/android-ndk.sh`):
`./scripts/build-native-codecs.sh arm64-v8a`
(If the repo path has **spaces**, the script uses `/tmp/androidcast-libvpx-$USER` automatically.)
3. Build **each ABI** you ship (Gradle links `build/native/<abi>/libvpx.a` automatically):