mirror of
https://github.com/fergalmoran/picard.git
synced 2025-12-26 19:29:01 +00:00
75 lines
2.4 KiB
PowerShell
75 lines
2.4 KiB
PowerShell
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[String]
|
|
$DiscidVersion,
|
|
[Parameter(Mandatory=$true)]
|
|
[String]
|
|
$DiscidSha256Sum,
|
|
[Parameter(Mandatory=$true)]
|
|
[String]
|
|
$FpcalcVersion,
|
|
[Parameter(Mandatory=$true)]
|
|
[String]
|
|
$FpcalcSha256Sum,
|
|
[Parameter(Mandatory=$true)]
|
|
[String]
|
|
$AbextractorVersion,
|
|
[Parameter(Mandatory=$true)]
|
|
[String]
|
|
$AbextractorSha256Sum
|
|
)
|
|
|
|
$ErrorActionPreference = "Stop"
|
|
|
|
Function DownloadFile {
|
|
Param(
|
|
[Parameter(Mandatory=$true)]
|
|
[String]
|
|
$FileName,
|
|
[Parameter(Mandatory=$true)]
|
|
[String]
|
|
$Url
|
|
)
|
|
$OutputPath = (Join-Path (Resolve-Path .) $FileName)
|
|
(New-Object System.Net.WebClient).DownloadFile($Url, "$OutputPath")
|
|
}
|
|
|
|
Function VerifyHash {
|
|
Param(
|
|
[Parameter(Mandatory = $true)]
|
|
[String]
|
|
$FileName,
|
|
[Parameter(Mandatory = $true)]
|
|
[String]
|
|
$Sha256Sum
|
|
)
|
|
If ((Get-FileHash "$FileName").hash -ne "$Sha256Sum") {
|
|
Throw "Invalid SHA256 hash for $FileName"
|
|
}
|
|
}
|
|
|
|
New-Item -Name .\build -ItemType Directory -ErrorAction Ignore
|
|
|
|
$ArchiveFile = ".\build\libdiscid.zip"
|
|
Write-Output "Downloading libdiscid $DiscidVersion to $ArchiveFile..."
|
|
DownloadFile -Url "https://github.com/metabrainz/libdiscid/releases/download/v$DiscidVersion/libdiscid-$DiscidVersion-win64.zip" `
|
|
-FileName $ArchiveFile
|
|
VerifyHash -FileName $ArchiveFile -Sha256Sum $DiscidSha256Sum
|
|
Expand-Archive -Path $ArchiveFile -DestinationPath .\build\libdiscid -Force
|
|
Copy-Item .\build\libdiscid\discid.dll .
|
|
|
|
$ArchiveFile = ".\build\fpcalc.zip"
|
|
Write-Output "Downloading chromaprint-fpcalc $FpcalcVersion to $ArchiveFile..."
|
|
DownloadFile -Url "https://github.com/acoustid/chromaprint/releases/download/v$FpcalcVersion/chromaprint-fpcalc-$FpcalcVersion-windows-x86_64.zip" `
|
|
-FileName $ArchiveFile
|
|
VerifyHash -FileName $ArchiveFile -Sha256Sum $FpcalcSha256Sum
|
|
Expand-Archive -Path $ArchiveFile -DestinationPath .\build\fpcalc -Force
|
|
Copy-Item .\build\fpcalc\chromaprint-fpcalc-$FpcalcVersion-windows-x86_64\fpcalc.exe .
|
|
|
|
$ArchiveFile = ".\build\abz.zip"
|
|
Write-Output "Downloading AcousticBrainz extractor $AbextractorVersion to $ArchiveFile..."
|
|
DownloadFile -Url "https://ftp.acousticbrainz.org/pub/acousticbrainz/essentia-extractor-$AbextractorVersion-win-i686.zip" `
|
|
-FileName $ArchiveFile
|
|
VerifyHash -FileName $ArchiveFile -Sha256Sum $AbextractorSha256Sum
|
|
Expand-Archive -Path $ArchiveFile -DestinationPath .\build\abz -Force
|
|
Copy-Item .\build\abz\streaming_extractor_music.exe . |