PowerShell Audio

From Hydrogenaudio Knowledgebase
Revision as of 23:34, 26 January 2015 by 199.246.152.2 (talk)
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
PowerShell Audio


PowerShell Audio
PowerShellAudio Logo
audio conversion and tagging module for Windows PowerShell
Developer(s) Jebus
Release information
Initial release {{{released}}}
Stable release 1.0.0 (12 Dezember 2014)
Preview release {{{preview_release}}}
Compatibility
Operating system Windows
Additional information
Use Digital Audio conversion, tagging
License GNU GPLv3
Website GitHub project

Introduction

PowerShell Audio is a PowerShell-driven interface for converting and tagging audio / music files. It is available under the Lesser GPL (v3) license, and is for Windows use only.

Features

  • A unified interface to popular codecs (see Supported Formats).
  • Fast and highly concurrent ("multi-threaded") for modern, multi-core systems.
  • ReplayGain integration:
    • Batch-analyze thousands of files quickly,
    • save the results to disk,
    • convert to Apple SoundCheck format,
    • or apply the changes directly during encoding.
  • Metadata preservation between formats, including cover art.
  • PowerShell interface brings powerful integration and scripting capabilities.
  • API is open-source and extensible.

Supported Formats

Supported languages

  • English

Example Usage

This command simply converts a folder full of FLAC files into MP3s:

   Get-AudioFile *.flac  | Export-AudioFile "Lame MP3" C:\Output

To get a list of available encoders:

   Get-AudioEncoderInfo

To get information about the Lame encoder, including the default and available settings:

   Get-AudioEncoderInfo "Lame MP3"

Add ReplayGain 2.0 to your entire FLAC library, treating each directory as a separate album:

   Get-ChildItem C:\Users\Myself\Music -Directory -Recurse | % { $_ | Get-ChildItem -File -Filter *.flac | Measure-AudioFile "ReplayGain 2.0" -PassThru | Save-AudioFileMetadata }

Convert your whole FLAC library to VBR AAC, with SoundCheck tags calculated from album ReplayGain information:

   Get-ChildItem C:\Users\Myself\Music -Filter *.flac -Recurse | Get-AudioFile | Export-AudioFile "Apple AAC" "C:\Output\{Artist}\{Album}" -Name "{TrackNumber} - {Title}" -Setting @{AddSoundCheck = "Album"}

Convert your whole FLAC library to VBR MP3, with ReplayGain directly applied to the resulting volume levels:

   Get-ChildItem C:\Users\Myself\Music -Filter *.flac -Recurse | Get-AudioFile | Export-AudioFile "Lame MP3" "C:\Output\{Artist}\{Album}" -Name "{TrackNumber} - {Title}" -Setting @{ApplyGain = "Album"}

Convert your whole FLAC library to VBR AAC, with embedded cover art retrieved from images located in each subdirectory. Embedded images are scaled and/or converted to JPEG for efficiency, where necessary:

   foreach ($directory in Get-ChildItem C:\Users\Myself\Music -Directory -Recurse)
   {
       $cover = $directory | Get-ChildItem -File -Include *.png,*.jpg | Get-AudioCoverArt | Convert-AudioCoverArt -MaxWidth 500 -ConvertToLossy
       $files = $directory | Get-ChildItem -File -Filter *.flac | Get-AudioFile
       if ($files -and $cover)
       {
           $files | Set-AudioFileCoverArt $cover
       }
       $files | Export-AudioFile "Apple AAC" "C:\Output\{Artist}\{Album}" -Name "{TrackNumber} - {Title}"
   }

Externals links