📄 cdda2mp3
字号:
# !/bin/sh# Demo script for processing all audio tracks with a mp3 decoder# based on a news article by Tom Kludy# This variant uses named pipes in order to save space.# There is another variant of this script, which uses temporary# wav files (see cdda2mp3.new).## usage: cdda2mp3 <name prefix for all mp3 files>## list_audio_tracks is a (symbolic) link to cdda2wav# and used to generate a list of audio track numbers and start# sectors, which in turn are used in a loop to spawn cdda2wav# and the post processor on a track by track basis.# specify the audio track listing program and its optionsLAT=list_audio_tracksLAT_OPTIONS=# specify the sampling program and its options# do not specify the track option here!CDDA2WAV=cdda2wavCDDA2WAV_OPTS='-Owav -H -P0 -q'# for normal use, comment out the next line#DEBUG='-d1'# the post processor is fed through a named pipe to avoid space waste# specify the post processing program and its optionsMP_CODER=l3enc#MP_OPTIONS='2>/dev/null 1>/dev/null'MP_OPTIONS='-br 128000'#MP_OPTIONS='-hq'# name of the named pipeNPIPEPREFIX='npipe'$$NPIPE=$NPIPEPREFIX".wav"FILEPREFIX=${1:-audiotrack}mkfifo $NPIPE# clean up named pipe on exit, abort, ...trap "rm -rf $NPIPE" 0 2 3 4 6 7 8 10 11 12 13 15# feed track numbers and start sectors into loop$LAT $LAT_OPTIONS | while read TRACK STARTSECTOR;do $CDDA2WAV $CDDA2WAV_OPTS -t$TRACK $DEBUG $NPIPE &# echo n | $MP_CODER $NPIPE $FILEPREFIX$TRACK.mp3 $MP_OPTIONS $MP_CODER $NPIPE $FILEPREFIX$TRACK.mp3 $MP_OPTIONS # check result code RES=$? if [ $RES = 0 ] ; then echo File $FILEPREFIX$TRACK.mp3 finished successfully. else echo File $FILEPREFIX$TRACK.mp3 failed \(result $RES\). Aborted. >&2 break fidone
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -