SoundOut

SoundOut je pomocí GUI řízený zvukový výstupní modul pro AviSynth.

Instalace a použití

Zkopírujte soubory "SoundOut.dll" a "libsndfile-1.dll" do vaší složky AviSynth pluginů, obvykle je to "c:\program files\avisynth 2.5\plugins". Pokud chcete mít "SoundOut.dll" umístěný jinde, měli by jste přesunout "libsndfile-1.dll" do vaší systémové složky system32, obvykle "c:\windows\system32".

Přidejte SoundOut() do vašeho skriptu tam, kde by jste rádi exportovali audio. Pokud máte vaše video uložené v proměnné, použijte SoundOut(variable) pro přidání SoundOut. Při otevření vašeho skriptu by se mělo objevit GUI. Zde je jednoduchý příklad jeho použití:

AviSource("myvideo.avi")
SoundOut()

pokud potřebujete nějaké zpracování vzorků, pro změnu rychlosti vzorků (samplerate) nebo jinak editovat vaše video, musíte to udělat před výzvou modulu SoundOut. Jako zde:

AviSource("myvideo.avi")
Amplifydb(3)
SSRC(44100)
SoundOut()

Výstupní moduly

WAV/AIF/CAF

Tyto vám umožní exportovat nekomprimované audio do následujících formátů:

Všimněte si, že 8 bitové vzorky NEjsou podporovány v Core Audio File a Sun/NeXT AU formátech.

FLAC

Tento vám umožní exportovat bezztrátově komprimovaný audio FLAC formát.

FLAC podporuje 8,16 nebo 24 bit audio. Jakýkoli jiný formát je vnitřně převeden na 24 bit.

APE

Tento vám umožní exportovat bezztrátově komprimované audio do Monkey Audio Codec (APE) formátu.

APE nepodporuje vstupní velikosti vzorků, které jsou větší než 2GB. Používejte pouze pro menší soubory.

APE podporuje 8, 16 nebo 24 bit audio. Jakýkoli další formát je vnitřně převeden do 24 bit.

MP2

Tento vám umožní komprimovat vaše audio do MPEG 1 Layer 2 (MP2).

TwoLame podporuje jen 16 mono nebo stereo audio. Pokud se pokusíte komprimovat více než dva kanály, zobrazí se chyba. Jakýkoli jiný formát než 16 bit celočíselných vzorků je vnitřně převeden na 16 bit.

MP3

Tento vám umožní komprimovat vaše audio do MPEG 1 Layer 3 (MP3) použitím enkodéru LAME v3.97.

LAME podporuje do dvou kanálů audia a následující rychlosti vzorků: 48000, 44100, 32000, 24000, 22050, 16000, 12000, 11025 a 8000 Hz.

AC3

Tento vám umožní komprimovat vaše audio do A/52 (AC3). Enkódování je prováděno pomocí libaften.

Aften podporuje 1 až 6 kanálové audio. Podporované rychlosti vzorků jsou 48000, 44100 nebo 32000 vzorků za sekundu.

Mapování kanálu je:

OGG

Tento vám umožní komprimovat vaše audio do Vorbis kódovaného OGG souboru. Je možné zadat průměrný bitrate, nebo dělat enkódování jako CBR.

Výstup příkazového řádku

Tento výstupní modul vám umožní vysílat do jakéhokoli programu, který podporuje vstup z stdin. To vám dává úplnou kontrolu nad vaším enkódováním, pokud použijete nástroje pro příkazový řádek.

Můžete vybrat formát SoundOut, který by měl být doručen aplikaci, kterou používáte. Existují tři WAV formáty a RAW PCM data. Ty jsou vysílány do stdin aplikace. Program sestaví příkazový řádek ze 4 částí, výkonné, možností příkazového řádku před výstupním souborem, výstupního souboru který je vybrán, a možností příkazového řádku za jménem výstupního souboru.

Existují dva způsoby zadání výkonné části (executable). Buď zadáte úplnou cestu k výkonné aplikaci (executable), nebo jednoduše zadejte jméno vykonávajícího souboru, a umístěte ho do podsložky nazvané SoundOut ve vaší složce s pluginy.

Exportování ze skriptu

Je možné použít SoundOut jako obyčejný filtr, spuštěním uvnitř skriptu a zadáním parametrů pro každý výstupní režim. Parametry sestávají ze dvou věcí: Obecných parametrů, které mohou být užitečné pro všechny filtry, a parametrů specifických pro filtr, které zadávají parametry do aktivního výstupního modulu.

Parametr out určuje zda bude zobrazeno GUI, pokud je správně nastaven, filtr začne exportovat audio jakmile se spustí.

Pokud není parametr out nastaven, je stále možné nastavit doplňkové parametry. Výchozí hodnoty budou ostatně získány z registru, ale specifické parametry je přepíší.

Obecné parametry

WAV/AIF/CAF Skriptové parametry:

Audio bude zapsáno ve formátu doručeném do SoundOut pluginu. Všechny vnitřní zvukové formáty jsou podporovány.

FLAC Skriptové parametry:

APE Skriptové parametry:

MP2 Skriptové parametry:

MP3 Skriptové parametry:

AC3 Skriptové parametry:

OGG Skriptové parametry:

Wavpack Skriptové parametry:

Skriptové parametry pro výstup z příkazového řádku:

Příklady

SoundOut(output = "mp3", filename="c:\outputFile.mp3", autoclose = true, showprogress=true, mode = 2, cbrrate = 192)
Zajistí mp3 výstupní modul s CBR při 192kbit/sec.

Implementační poznámky

SoundOut je vícevláknový (Multithreaded), a používá jedno vlákno pro vyžádání audia z předchozích filtrů, a jiné vlákno pro enkódování. Vlákna mají dánu prioritu "below normal".

Dva exporty najednou můžete zkusit spustit jen na vlastní nebezpečí. Je to pravděpodobně pomalejší a může to vést potenciálně k pádům. Můžete bezpečně exportovat zvuk když enkódujete, pokud vaše enkódování nečte audio z AviSynthu.

Seznam změn

v2.60 Původní vydání; založeno na v1.1.1

v1.1.1

v1.1.0

v1.0.3

v1.0.2

v1.0.1
- Updated libaften to rev. 512.
- Added overwriteFile="yes"/"no"/"ask". Default is Ask.

v1.0.0
- The application will not exit, as long as an encode window is open.
- Fixed "nofilename" not being recognized in script.
- LFE no longer overridden by registry, when using GUI.

v0.9.9
- Added ReplayGain calculation to Analyze.
- Parent filters are now blocked, or silent samples are returned, if the filter is currently exporting sound.
- Video is automatically added, if none is present. (black 32x32 RGB32)
- Buttons for export are disabled when output window is open.
- Main window is now minimized when export module is selected.
- Fixed Analyze bug on 16 bit samples.
- Fixed WAVEFORMATEXTENSIBLE channel mapping in Commandline Output.
- AC3 output: LFE option disabled when not relevant.
- AC3 output: LFE option named properly.

v0.9.8
- Added Analyze option to calculate average, maximum and RMS levels. Only available through GUI.
- WAVEFORMATEXTENSIBLE in commandline out attempts to set channel maps based on channel number.
- Fixed thread race issue on very fast encoders.
- Minor GUI tweaks.

v0.9.7
- Added channelmapping to AC3 output.
- Added LFE channel indicator switch to AC3 output.
- GUI now spawned in a new thread, fixing GUI lockup in foobar2000 and similar.
- Fixed general thread race issue, where a fast encoder might lead to incomplete output.
- Fixed WAVE_FORMAT_EXTENSIBLE header without info in CmdLine Output.
- Fixed "Format" not working on Commandline output.
- Fixed Filename dialog not appearing.
- Forced final samplereading to be correct.
- Removed "private" option from MP2 GUI and script, as there is no way to set it via twolame.
- Removed DAB Extensions from MP2 GUI, as TwoLame reports it as not functioning.

v0.9.6
- Added complete script customization.
- Added possibility to set output file from script.
- Added window autoclose option to script.
- Added option to script to disable progress window.
- GUI creates message handle thread.
- Settings are now saved to registry if output filter initializes successfully.
- Updated documentation.

v0.9.5
- Added Broadcast WAVE out.
- Fixed OGG Vorbis support.
- Fixed Text fields not being correctly read.
- Fixed AC3 settings not being restored properly.
- Added: MP2 settings are now saved.

v0.9.4
- Added OGG Vorbis support.
- Added: Parameters stored (on save) and read to registry.
- Added: "No filename needed" option in commandline output, to disable output filename prompt.
- Fixed collision between libaften and libvorbis.
- Updated libaften to rev 257.
- Enabled SSE optimizations in libaften.
- Hopefully fixed issue with commandline executable filename becoming garbled.

v 0.9.3
- Added Commandline piping output.
- Added MP3 / LAME output.
- Fixed AC3 VBR Error sometimes wrongly being displayed.
- Fixed AC3 DRC Setting not being respected.
- Various GUI bugfixes.

v 0.9.2
- Updated AC3 GUI.
- Fixed crash in WAV output.
- More stats during conversion.

v 0.9.1
- Added AC3 Output.
- Added new parameter handling.
- Fixed last block not being encoded.

$English Date: 2008/10/26 14:19:43 $

Český překlad:1.9.2009