複数ディスクのオーディオブック セットをリッピングすると、トラックが期待どおりに番号付けされません (過去に何十冊ものオーディオブックをリッピングしたときの私の経験に基づく)
ファイル名とタグに予期しないトラック番号が含まれる理由をご存知の方がいらっしゃいましたら、ご協力いただければ幸いです。
次のようなコマンドを使用しています。
abcde -c myAudiobookConfigFile.cfg -p -W 01
abcde -c myAudiobookConfigFile.cfg -p -W 02
abcde -c myAudiobookConfigFile.cfg -p -W ...
abcde -c myAudiobookConfigFile.cfg -p -W n
abcde が CDDB エントリを編集するように要求したら、それを編集してトラックに 1 ~ 14 の番号を付けます。その結果、次のような名前のファイルが作成されると予想されます...
"Author - Album - Track 01.mp3"
"Author - Album - Track 02.mp3"
"Author - Album - Track 03.mp3"
しかし、私が得ているのは次のようなものです...
"Author - Album - Track 64.mp3"
"Author - Album - Track 65.mp3"
"Author - Album - Track 66.mp3"
そして、-W 02 を使用してディスク 2 をリッピングすると、以下のようなファイルが生成されます。これらのファイルは、ディスクのファイル セット内では連続していますが、前のディスクとは連続していません。
"Author - Album - Track 99.mp3"
"Author - Album - Track 100.mp3"
"Author - Album - Track 101.mp3"
これはインターネット ベースのメタデータから来ていると仮定し (ローカルの .cddb* フォルダーはすべて削除しました)、構成ファイルで cddb とタグ付けアクションを無効にしましたが、効果はありませんでした。
これが私の.abcde.cfgファイルです
# -----------------$HOME/.abcde.conf----------------- #
#
# A sample configuration file to convert music cds to
# MP3 format using lame, eyeD3 and abcde version 2.7.2
#
# http://andrews-corner.org/linux/abcde/index.html
# -------------------------------------------------- #
# Control EYE3D
EYED3OPTS="--non-std-genres"
# Encode tracks immediately after reading. Saves disk space, gives
# better reading of 'scratchy' disks and better troubleshooting of
# encoding process but slows the operation of abcde quite a bit:
LOWDISK=y
# Specify the method to use to retrieve the track information,
# the alternative is to specify 'musicbrainz':
CDDBMETHOD=cddb
# Make a local cache of cddb entries and then volunteer to use
# these entries when and if they match the cd:
CDDBCOPYLOCAL="y"
CDDBLOCALDIR="$HOME/.cddb"
CDDBLOCALRECURSIVE="y"
CDDBUSELOCAL="y"
# Specify the encoder to use for MP3. In this case 'lame':
OGGENCODERSYNTAX=oggenc # Specify encoder for Ogg Vorbis
MP3ENCODERSYNTAX=lame # Specify encoder for MP3
FLACENCODERSYNTAX=flac # Specify encoder for FLAC
MPCENCODERSYNTAX=mpcenc # Specify encoder for Musepack
AACENCODERSYNTAX=fdkaac # Specify encoder for AAC
OPUSENCODERSYNTAX=opusenc # Specify encoder for Opus
WVENCODERSYNTAX=wavpack # Specify encoder for Wavpack
MKAENCODERSYNTAX=ffmpeg # Specify encoder for MKA (AC3 via FFmpeg)
# Specify the path to the selected encoder. In most cases the encoder
# should be in your $PATH as I illustrate below, otherwise you will
# need to specify the full path. For example: /usr/bin/lame
OGGENC=oggenc # Path to Ogg Vorbis encoder
LAME=lame # Path to MP3 encoder
FLAC=flac # Path to FLAC encoder
MPCENC=mpcenc # Path to Musepack encoder
FDKAAC=fdkaac # Path to the AAC encoder
OPUSENC=opusenc # Path to Opus encoder
WVENC=wavpack # Path to WavPack encoder
FFMPEG=ffmpeg # Path to FFmpeg (AC3 via FFmpeg)
# Specify your required encoding options here. Multiple options can
# be selected as '--preset standard --another-option' etc.
# The '-V 2' option gives VBR encoding between 170-210 kbits/s.
OGGENCOPTS='-q 6' # Options for Ogg Vorbis
LAMEOPTS='-V 2' # Options for MP3
FLACOPTS='-s -e -V -8' # Options for FLAC
MPCENCOPTS='--extreme' # Options for Musepack
FDKAACENCOPTS='-p 2 -m 5 -a 1' # Options for fdkaac
OPUSENCOPTS="--vbr --bitrate 128" # Options for Opus
WVENCOPTS="-hx3" # Options for WavPack
APENCOPTS="-c4000" # Options for Monkey's Audio
TTAENCOPTS="" # Options for True Audio
TWOLAMENCOPTS="--bitrate 320" # Options for MP2
FFMPEGENCOPTS="-c:a ac3 -b:a 448k" # Options for MKA (AC3 via FFmpeg)
# Output type for MP3.
OUTPUTTYPE="mp3,ogg,flac"
# The cd ripping program to use. There are a few choices here: cdda2wav,
# dagrab, cddafs (Mac OS X only) and flac. New to abcde 2.7 is 'libcdio'.
CDROMREADERSYNTAX=cdda2wav
# Give the location of the ripping program and pass any extra options,
# if using libcdio set 'CD_PARANOIA=cd-paranoia'.
CDPARANOIA=cdparanoia
CDPARANOIAOPTS="--never-skip=40"
# Give the location of the CD identification program:
CDDISCID=cd-discid
# Give the base location here for the encoded music files.
OUTPUTDIR="$HOME/Music"
# The default actions that abcde will take.
#ACTIONS=cddb,playlist,read,encode,tag,move,clean
ACTIONS=cddb,read,encode,tag,move,clean
# Decide here how you want the tracks labelled for a standard 'single-artist',
# multi-track encode and also for a multi-track, 'various-artist' encode:
OUTPUTFORMAT='${OUTPUT}/${ARTISTFILE}-${ALBUMFILE}/${TRACKNUM} - ${TRACKFILE}'
VAOUTPUTFORMAT='${OUTPUT}/Various-${ALBUMFILE}/${TRACKNUM} - ${ARTISTFILE}-${TRACKFILE}'
# Decide here how you want the tracks labelled for a standard 'single-artist',
# single-track encode and also for a single-track 'various-artist' encode.
# (Create a single-track encode with 'abcde -1' from the commandline.)
ONETRACKOUTPUTFORMAT='${OUTPUT}/${ARTISTFILE}-${ALBUMFILE}/${ALBUMFILE}'
VAONETRACKOUTPUTFORMAT='${OUTPUT}/Various-${ALBUMFILE}/${ALBUMFILE}'
# Create playlists for single and various-artist encodes. I would suggest
# commenting these out for single-track encoding.
PLAYLISTFORMAT='${OUTPUT}/${ARTISTFILE}-${ALBUMFILE}/${ALBUMFILE}.m3u'
VAPLAYLISTFORMAT='${OUTPUT}/Various-${ALBUMFILE}/${ALBUMFILE}.m3u'
# This function takes out dots preceding the album name, and removes a grab
# bag of illegal characters. It allows spaces, if you do not wish spaces add
# in -e 's/ /_/g' after the first sed command.
mungefilename ()
{
echo "$@" | sed -e 's/^\.*//' | tr -d ":><|*/\"'?[:cntrl:]"
}
# What extra options?
MAXPROCS=8 # Run a few encoders simultaneously
PADTRACKS=y # Makes tracks 01 02 not 1 2
EXTRAVERBOSE=2 # Useful for debugging
COMMENT='ripped on Ubuntu using abcde' # Place a comment...
EJECTCD=y # Please eject cd when finished :-)
そしてオーディオブックをリッピングするときに拡張するもの
# Give the base location here for the encoded music files.
OUTPUTDIR="$HOME/Videos/Audiobooks"
# The default actions that abcde will take.
#### ACTIONS=cddb,playlist,read,encode,tag,move,clean
# Decide here how you want the tracks labelled for a standard 'single-artist',
# multi-track encode and also for a multi-track, 'various-artist' encode:
OUTPUTFORMAT='${OUTPUT}/${ARTISTFILE} - ${ALBUMFILE}/${TRACKNUM} - ${ARTISTFILE} - ${ALBUMFILE}'
VAOUTPUTFORMAT='${OUTPUT}/Various Artists/${ARTISTFILE} - ${ALBUMFILE}/${TRACKNUM} ${ARTISTFILE} - ${TRACKFILE}'
# [originalValues] OUTPUTFORMAT='${OUTPUT}/${ARTISTFILE}-${ALBUMFILE}/${TRACKNUM}.${TRACKFILE}'
# [originalValues] VAOUTPUTFORMAT='${OUTPUT}/Various-${ALBUMFILE}/${TRACKNUM}.${ARTISTFILE}-${TRACKFILE}'
# Decide here how you want the tracks labelled for a standard 'single-artist',
# single-track encode and also for a single-track 'various-artist' encode.
# (Create a single-track encode with 'abcde -1' from the commandline.)
ONETRACKOUTPUTFORMAT='${OUTPUT}/${ARTISTFILE} - ${ALBUMFILE}/${TRACKNUM} - ${ARTISTFILE} - ${ALBUMFILE}'
VAONETRACKOUTPUTFORMAT='${OUTPUT}/Various Artists/${ARTISTFILE} - ${ALBUMFILE}/${TRACKNUM} ${ARTISTFILE} - ${TRACKFILE}'
# [originalValues] ONETRACKOUTPUTFORMAT='${OUTPUT}/${ARTISTFILE}-${ALBUMFILE}/${ALBUMFILE}'
# [originalValues] VAONETRACKOUTPUTFORMAT='${OUTPUT}/Various-${ALBUMFILE}/${ALBUMFILE}'
# Create playlists for single and various-artist encodes. I would suggest
# commenting these out for single-track encoding.
PLAYLISTFORMAT='${OUTPUT}/${ARTISTFILE} - ${ALBUMFILE}/${ALBUMFILE}.m3u'
VAPLAYLISTFORMAT='${OUTPUT}/${ARTISTFILE} - ${ALBUMFILE}/${ALBUMFILE}.m3u'
# This function takes out dots preceding the album name, and removes a grab
# bag of illegal characters. It allows spaces, if you do not wish spaces add
# in -e 's/ /_/g' after the first sed command.
mungefilename ()
{
echo "$@" | sed -e 's/^\.*//' | tr -d ":><|*/\"'?[:cntrl:]"
}
# What extra options?
MAXPROCS=2 # Run a few encoders simultaneously
PADTRACKS=y # Makes tracks 01 02 not 1 2
EXTRAVERBOSE=0 # Useful for debugging
COMMENT='ripped on Ubuntu using abcde' # Place a comment...
EJECTCD=y # Please eject cd when finished :-)
答え1
-W スイッチは数値でなければなりません (つまり、01 ではなく 1)
abcde -c myAudiobookConfigFile.cfg -p -W 1
abcde -c myAudiobookConfigFile.cfg -p -W 2
abcde -c myAudiobookConfigFile.cfg -p -W ...
abcde -c myAudiobookConfigFile.cfg -p -W 9