Exact Audio Copy 通称 EAC と ffmpeg.exe 使って aac-he なファイルを生成する際に、メタデータとかジャケットとかも内包させてしまえ!
用意する
EAC と ffmpeg はインスコしてる事。
ffmpeg.exe に関しては c:\Program Files\ffmpeg 以下のディレクトリに置いている事。
エンコードオプション
EAC の GUI からじゃと、ffmpeg に渡せるスイッチに限界があるけ、直接レジストリに書き込んでやると幸せになれる✌
EAC.reg
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\SOFTWARE\AWSoftware\EACU\Compression Options]
"ExternalEncoderProgram"="C:\\Program Files\\ffmpeg\\ffmpeg.exe"
"ExternalEncoderOptions"="-i %source% -i %coverfile% -map 0 -map 1 -c copy -disposition:1 attached_pic -metadata:s:a:0 language=jpn -metadata \"ARTIST=%artist%\" -metadata \"TITLE=%title%\" -metadata \"ALBUM=%albumtitle%\" -metadata \"DATE=%year%\" -metadata \"TRACK=%tracknr%\" -metadata \"GENRE=%genre%\" -metadata \"ALBUM_ARTIST=%albuminterpret%\" -metadata \"COMPOSER=%composer%\" -metadata \"DISCNUMBER=%cdnumber%\" -metadata \"COMMENT=CRC:%TRACKCRC%\" -metadata \"TOTALTRACKS=%numtracks%\" -c:a libfdk_aac -profile:a aac_he_v2 -b:a %bitrate%k \"%dest%\""
"ExternalEncodeRate"=hex:30,00,00,00
"ExternalEncoderType"=hex:14,00,00,00
"ExternalEncoderID3Tag"=hex:00
"UseExternalEncoder"=hex:ff
"ExternalEncoderHQ"=hex:ff
"ExternalEncoderDeleteSource"=hex:ff
"ExternalEncoderCreateCRC"=hex:ff
"ExternalEncoderCheckReturnCode"=hex:ff
"ExternalEncoderExtension"="m4a"
"ExternalEncoderProgram2nd"="C:\\Program Files\\ffmpeg\\ffmpeg.exe"
"ExternalEncoderOptions2nd"="-i %source% -i %coverfile% -map 0 -map 1 -c copy -disposition:1 attached_pic -metadata:s:a:0 language=jpn -metadata \"ARTIST=%artist%\" -metadata \"TITLE=%title%\" -metadata \"ALBUM=%albumtitle%\" -metadata \"DATE=%year%\" -metadata \"TRACK=%tracknr%\" -metadata \"GENRE=%genre%\" -metadata \"ALBUM_ARTIST=%albuminterpret%\" -metadata \"COMPOSER=%composer%\" -metadata \"DISCNUMBER=%cdnumber%\" -metadata \"COMMENT=CRC:%TRACKCRC%\" -metadata \"TOTALTRACKS=%numtracks%\" -c:a libmp3lame -b:a %bitrate%k \"%dest%\""
"ExternalEncodeRate2nd"=hex:80,00,00,00
"ExternalEncoderType2nd"=hex:00,00,00,00
"ExternalEncoderID3Tag2nd"=hex:ff
"UseExternalEncoder2nd"=hex:00
"ExternalEncoderHQ2nd"=hex:ff
"ExternalEncoderCreateCRC2nd"=hex:ff
"ExternalEncoderCheckReturnCode2nd"=hex:00
"ExternalEncoderExtension2nd"="mp3"
"ID3FileNamingConvention"="%T - %A"
"ID3CommentFieldText"="Exact Audio Copy"
"ID3CommentFieldType"=hex:04,00,00,00
"ID3FilenameReplaceSpaces"=hex:00
"UseID3V11"=hex:00
"WriteID3UTF16"=hex:00
"DoID3Unsync"=hex:00
"UseID3V2"=hex:00
"UseTracknumberTotal"=hex:00
"V2.4.0"=hex:00
"AddCoverToID3V2"=hex:00
"WriteV1Tags"=hex:00
"ID3V2Padding"=hex:04,00,00,00
テストは失敗しよる
テストエンコードのボタン押しても、エラーで帰ってくるのじゃが、これはテストじゃと正しいジャケット映像ファイルが用意されん為じゃけ、基本スルーで桶♪
参考url
ffmpeg にメタデータを渡す際にお手本としたページ
https://wiki.hydrogenaud.io/index.php?title=EAC_and_FLAC_(FFMPEG)
aac-he のプロファイル指定する際にお手本としたページ
https://trac.ffmpeg.org/wiki/Encode/AAC