Installation

Download and install the AVBlocks .NET demo version on your platform. Builds are available for both x64 and ARM64. Choose the section that matches your machine.

The package must match the architecture of the .NET you run, not just the machine. Run dotnet --info and check the Architecture line. For example, an x64 .NET running under Rosetta on Apple Silicon needs the x64 package.

The commands below extract the SDK into sdk/<arch>/net10.0, where <arch> is x64 or arm64. For the available versions check the AVBlocks .NET Core releases.

Linux

x64 (x86_64)

Use this build on x86_64 machines (uname -m prints x86_64).

Download

AVBLOCKS_BASE_URL="https://github.com/avblocks/avblocks-net-core/releases/download"
AVBLOCKS_VERSION="v3.4.0-demo.1"

mkdir -p ./sdk/x64/net10.0
cd ./sdk/x64/net10.0

curl -L \
  -o "avblocks-net10.0-${AVBLOCKS_VERSION}-linux.tar.gz" \
  "${AVBLOCKS_BASE_URL}/${AVBLOCKS_VERSION}/avblocks-net10.0-${AVBLOCKS_VERSION}-linux.tar.gz"

Verify Integrity (Optional)

curl -L \
  -o "avblocks-net10.0-${AVBLOCKS_VERSION}-linux.tar.gz.sha256" \
  "${AVBLOCKS_BASE_URL}/${AVBLOCKS_VERSION}/avblocks-net10.0-${AVBLOCKS_VERSION}-linux.tar.gz.sha256"

sha256sum -c "avblocks-net10.0-${AVBLOCKS_VERSION}-linux.tar.gz.sha256"

Extract

tar -xzf "avblocks-net10.0-${AVBLOCKS_VERSION}-linux.tar.gz"

cd ../..

The extracted files will be placed under ./sdk/x64/net10.0/.

ARM64 (aarch64)

Use this build on ARM64 / aarch64 machines (uname -m prints aarch64).

Download

AVBLOCKS_BASE_URL="https://github.com/avblocks/avblocks-net-core/releases/download"
AVBLOCKS_VERSION="v3.4.0-demo.1"

mkdir -p ./sdk/arm64/net10.0
cd ./sdk/arm64/net10.0

curl -L \
  -o "avblocks-net10.0-${AVBLOCKS_VERSION}-linux-arm64.tar.gz" \
  "${AVBLOCKS_BASE_URL}/${AVBLOCKS_VERSION}/avblocks-net10.0-${AVBLOCKS_VERSION}-linux-arm64.tar.gz"

Verify Integrity (Optional)

curl -L \
  -o "avblocks-net10.0-${AVBLOCKS_VERSION}-linux-arm64.tar.gz.sha256" \
  "${AVBLOCKS_BASE_URL}/${AVBLOCKS_VERSION}/avblocks-net10.0-${AVBLOCKS_VERSION}-linux-arm64.tar.gz.sha256"

sha256sum -c "avblocks-net10.0-${AVBLOCKS_VERSION}-linux-arm64.tar.gz.sha256"

Extract

tar -xzf "avblocks-net10.0-${AVBLOCKS_VERSION}-linux-arm64.tar.gz"

cd ../..

The extracted files will be placed under ./sdk/arm64/net10.0/.


macOS

Intel (x64)

Use this build on Intel Macs (uname -m prints x86_64).

Download

AVBLOCKS_BASE_URL="https://github.com/avblocks/avblocks-net-core/releases/download"
AVBLOCKS_VERSION="v3.4.0-demo.1"

mkdir -p ./sdk/x64/net10.0
cd ./sdk/x64/net10.0

curl -L \
  -o "avblocks-net10.0-${AVBLOCKS_VERSION}-darwin.zip" \
  "${AVBLOCKS_BASE_URL}/${AVBLOCKS_VERSION}/avblocks-net10.0-${AVBLOCKS_VERSION}-darwin.zip"

Verify Integrity (Optional)

curl -L \
  -o "avblocks-net10.0-${AVBLOCKS_VERSION}-darwin.zip.sha256" \
  "${AVBLOCKS_BASE_URL}/${AVBLOCKS_VERSION}/avblocks-net10.0-${AVBLOCKS_VERSION}-darwin.zip.sha256"

shasum -a 256 -c "avblocks-net10.0-${AVBLOCKS_VERSION}-darwin.zip.sha256"

Extract

unzip -q "avblocks-net10.0-${AVBLOCKS_VERSION}-darwin.zip"

cd ../..

The extracted files will be placed under ./sdk/x64/net10.0/.

Apple Silicon (arm64)

Use this build on Apple Silicon Macs (M1 and later; uname -m prints arm64).

Download

AVBLOCKS_BASE_URL="https://github.com/avblocks/avblocks-net-core/releases/download"
AVBLOCKS_VERSION="v3.4.0-demo.1"

mkdir -p ./sdk/arm64/net10.0
cd ./sdk/arm64/net10.0

curl -L \
  -o "avblocks-net10.0-${AVBLOCKS_VERSION}-darwin-arm64.zip" \
  "${AVBLOCKS_BASE_URL}/${AVBLOCKS_VERSION}/avblocks-net10.0-${AVBLOCKS_VERSION}-darwin-arm64.zip"

Verify Integrity (Optional)

curl -L \
  -o "avblocks-net10.0-${AVBLOCKS_VERSION}-darwin-arm64.zip.sha256" \
  "${AVBLOCKS_BASE_URL}/${AVBLOCKS_VERSION}/avblocks-net10.0-${AVBLOCKS_VERSION}-darwin-arm64.zip.sha256"

shasum -a 256 -c "avblocks-net10.0-${AVBLOCKS_VERSION}-darwin-arm64.zip.sha256"

Extract

unzip -q "avblocks-net10.0-${AVBLOCKS_VERSION}-darwin-arm64.zip"

cd ../..

The extracted files will be placed under ./sdk/arm64/net10.0/.


Windows

All scripts are PowerShell

x64 (AMD64)

Use this build when $env:PROCESSOR_ARCHITECTURE is AMD64.

Download

$BaseUrl = "https://github.com/avblocks/avblocks-net-core/releases/download"
$Version = "v3.4.0-demo.1"

New-Item -Force -ItemType Directory ./sdk/x64/net10.0
cd ./sdk/x64/net10.0

curl.exe `
  --location `
  --output "avblocks-net10.0-$Version-windows.zip" `
  "${BaseUrl}/${Version}/avblocks-net10.0-$Version-windows.zip"

Verify Integrity (Optional)

curl.exe `
  --location `
  --output "avblocks-net10.0-$Version-windows.zip.sha256" `
  "${BaseUrl}/${Version}/avblocks-net10.0-$Version-windows.zip.sha256"

$downloadedHash = (Get-FileHash -Algorithm SHA256 "avblocks-net10.0-$Version-windows.zip").Hash.ToLower()
$expectedHash = (Get-Content "avblocks-net10.0-$Version-windows.zip.sha256").Split(' ')[0].ToLower()
if ($downloadedHash -eq $expectedHash) { Write-Host "Checksum OK!" } else { Write-Host "Checksum failed!" }

Extract

Expand-Archive -Force -Path "avblocks-net10.0-$Version-windows.zip" -DestinationPath .

cd ../..

The extracted files will be placed under .\sdk\x64\net10.0\.

ARM64

Use this build on Windows on ARM, when $env:PROCESSOR_ARCHITECTURE is ARM64.

Download

$BaseUrl = "https://github.com/avblocks/avblocks-net-core/releases/download"
$Version = "v3.4.0-demo.1"

New-Item -Force -ItemType Directory ./sdk/arm64/net10.0
cd ./sdk/arm64/net10.0

curl.exe `
  --location `
  --output "avblocks-net10.0-$Version-windows-arm64.zip" `
  "${BaseUrl}/${Version}/avblocks-net10.0-$Version-windows-arm64.zip"

Verify Integrity (Optional)

curl.exe `
  --location `
  --output "avblocks-net10.0-$Version-windows-arm64.zip.sha256" `
  "${BaseUrl}/${Version}/avblocks-net10.0-$Version-windows-arm64.zip.sha256"

$downloadedHash = (Get-FileHash -Algorithm SHA256 "avblocks-net10.0-$Version-windows-arm64.zip").Hash.ToLower()
$expectedHash = (Get-Content "avblocks-net10.0-$Version-windows-arm64.zip.sha256").Split(' ')[0].ToLower()
if ($downloadedHash -eq $expectedHash) { Write-Host "Checksum OK!" } else { Write-Host "Checksum failed!" }

Extract

Expand-Archive -Force -Path "avblocks-net10.0-$Version-windows-arm64.zip" -DestinationPath .

cd ../..

The extracted files will be placed under .\sdk\arm64\net10.0\.

.NET Framework 4.8

On Windows you can also use the .NET Framework 4.8 build. Repeat the steps above with net48 in place of net10.0 in the file name and in the sdk/<arch>/net48 directory: avblocks-net48-$Version-windows.zip for x64, or avblocks-net48-$Version-windows-arm64.zip for ARM64.


Assets

These demo audio and video assets are used as input for the AVBlocks samples. They are the same for all platforms and architectures.

mkdir -p ./assets
cd ./assets

curl -L \
  -o avblocks_assets_v5.zip \
  https://github.com/avblocks/avblocks-assets/releases/download/v5/avblocks_assets_v5.zip

unzip -q avblocks_assets_v5.zip

cd ..

On Windows (PowerShell):

New-Item -Force -ItemType Directory ./assets
cd ./assets

curl.exe `
  --location `
  --output avblocks_assets_v5.zip `
  https://github.com/avblocks/avblocks-assets/releases/download/v5/avblocks_assets_v5.zip

Expand-Archive -Force -Path avblocks_assets_v5.zip -DestinationPath .

cd ..

Next steps

Set up a development environment for your platform: Linux, macOS or Windows.