Export und Encoding meiner Songs

So handhabe ich das Encoding meiner Songs

Übersicht

Die benötigten Dateiformate für die zu exportierenden Audios orientieren sich an den von verschiedenen Webbrowsern beim Html5 AUDIO Tag unterstützten Audioformaten.

encoding_audio_4_web.png

Legende:

  • orange: Konverter-Tools
  • grau: temporäre Ausgabe-Datei
  • grün: Zieldatei

Meine Dateien haben eine Namenskonvention:

[Titel]_[Kanäle]_.[Extension]

  • Kanäle: 2.0 | 5.1
  • Extension: mp3 | ogg | m4a | ac3

Die einzelnen Dateien der unterschiedlichen Formate eines Songs haben demzufolge folgende Namen:

  • stereo
    • [Titel]_2.0_.mp3
    • [Titel]_2.0_.ogg
  • surround
    • [Titel]_5.1_.ac3
    • [Titel]_5.1_.ogg
    • [Titel]_5.1_.m4a

 

stereo-Dateien

Ziel-Formate:

  • .MP3 (Mepg 1 Layer III)
  • .OGG (Ogg)

MP3

Im Magix Music Maker Export wird die stereo-Version als MP3 erstellt. Damit habe ich meine erste Ausgabedatei für das Web.

OGG

In einer Batchdatei wird aus dieser mit ffmpeg eine WAV Datei erstellt (mit anderen Formaten kann oggenc2 nicht umgehen); diese wird dann nach OGG umgewandelt.

oggenc2 kann man auch die Daten für das Tagging übergeben.

set OGGENC="[Pfad]\oggenc2.exe"  
set FFMPEG="[Pfad]\ffmpeg.exe"  
(...)  
set infile=%~1  
set basename=%~n1  
set tmpfile=%basename%.wav  
set outOgg=%basename%_2.0_.ogg  
set outMp3=%basename%_2.0_.mp3  
(...)  
rem --- ogg erstellen  
%ffmpeg% -i %infile% %tmpfile%  
%oggenc2% -t "%sTITLE%" -l "%sALBUM%" -a "%sARTIST%" -d "%sYEAR%" -G "%sGENRE%" -o %outOgg% %tmpfile%  
del %tmpfile%  
  
rem --- mp3 mit korrektem Namen kopieren  
copy /Y %infile% %outMp3%  

surround-Dateien

Ziel-Formate

  • .AC3 (Dolby Digital)
  • .M4A (AAC; Mpeg 4)
  • .OGG (Ogg)

Im Magix Music Maker Export wird die 5.1-surround-Version nach WAV konvertiert.
In einer Batchdatei wird die WAV Datei mit den verschiedenen Konvertern in 3 Zieformate umgewandelt.

AC3

Hinweis: Das AC3 Format wird von keinem Browser als HTML 5 Audioformat unterstützt. Ich hatte in der Pre Html 5 Ära einen Webplayer geschrieben, mit dem man mit Hilfe des VLC Plugins Surround Audio wiedergeben konnte. Es hat somit historische Gründe, dass ich dies hier mit aufführe.
AC3 Dateien nehmen keine Metadaten auf.

set AFTEN="[Pfad]\aften.exe"  
set OGGENC="[Pfad]\oggenc2"  
set FFMPEG="[Pfad]\ffmpeg.exe"  
set AACENC="[Pfad]\neroAacEnc.exe"  
set AACTAG="[Pfad]\neroAacTag.exe"  
(...)  
set infile=%~1  
set basename=%~n1  
set basename=%basename:.wav=%  
set basename=%basename:_5.1_=%  
  
:: Ausgabefiles 5.1:  
set outAc3=%basename%_5.1_.ac3  
set outOgg=%basename%_5.1_.ogg  
set outAac=%basename%_5.1_.m4a  
(...)  
  
rem --- ac3 erstellen  
if NOT exist %outAc3% (  
    %AFTEN% %infile% %outAc3%  
)  

M4A

Das nachfolgende Snippet schliesst sich dem obigen Code vom AC3 an.
Der AAC Encoder von NERO kann leider keine Tags in die Datei schreiben. Aber es gibt ein weiteres Tool im Paket: Mit der neroAacTag.exe kann man diese in einem 2. Aufruf eintragen lassen.

if NOT exist %outAac% (  
    %AACENC% -he -if %infile% -of %outAac%  
    %AACTAG% -meta:title="%sTITLE%" -meta:album="%sALBUM%" -meta:artist="%sARTIST%" -meta:year="%sYEAR%" -meta:genre="%sGENRE%" %outAac%  
)  

OGG

Zuguterletzt noch das Ogg-File. Der Aufruf ist analog zur stereo-Variante. Einzig das Eingangsfile ist kein stereo-WAV, sondern in 5.1 WAV.

if NOT exist %outOgg% (  
    %oggenc2% -t "%sTITLE%" -l "%sALBUM%" -a "%sARTIST%" -d "%sYEAR%" -G "%sGENRE%" -o %outOgg% %infile%  
)