บันทึกเทคนิกการแปลงไฟล์เสียง
Submitted by wd on Wed, 2007-01-03 19:30
เอามาจาก
- gentoo : HOWTO Create an Audio CD
- thep.blogspot.com: รีดเพลง MP3
- ubuntuforums: From .mp3 to .m4a conversion
การเปลี่ยนชื่อไฟล์
for i in *.mp3; do mv "$i" `echo $i | tr ' ' '_'`; done
for i in *.[Mm][Pp]3; do mv "$i" `echo $i | tr '[A-Z]' '[a-z]'`; done
for i in *.MP3; do mv "$i" "`basename "$i" .MP3`.mp3"; done
การแปลงเป็น WAV
ffmpeg -i infile.xxx -acodec pcm_s16le -ar 44100 -ac 2 -f wav outfile.wav
(มีความรู้สึกว่าแปลงด้วย ffmpeg เสียงครบกว่าแปลงด้วย mplayer ซึ่งเสียงจะนุ่มลงเล็กน้อย)
ถ้าแปลงทีละไดเรกทอรี่ คำสั่งคือ
for i in *; do ffmpeg -i "$i" -acodec pcm_s16le -ar 44100 -ac 2 \ -f wav "$i.wav"; done
แทรกนิด แปลงจาก mp3 เป็น mp3 ผ่านไลบรารี libmp3lame แบบเล็ก แต่ฟังได้ดี
for i in *; do ffmpeg -i "$i" -acodec libmp3lame -ab 24k -ar 11025 -ac 2 \ "mp3/$i"; done
for i in *.mp3; do mpg321 -w "`basename "$i" .mp3`.wav" "$i"; done
for i in *.mp3; do madplay -o "`basename "$i" .mp3`.wav" "$i"; done
for i in *.mp3; do lame --decode "$i" "`basename "$i" .mp3`.wav"; done
for i in *.ogg ; do ogg123 -d wav -f "`basename "$i" .ogg`.wav" "$i"; done
for i in *.wma; do mplayer -vo null -vc dummy -af resample=44100 \ -ao pcm:waveheader:file="${i%.wma}.wav" "$i" ; done
รูปแบบอื่น
aptitude install faac faac -b 16 -c 44100 -w --title "TITLE" --artist "ARTIST" INFILE.wav
ได้ไฟล์ออกมาเป็น INFILE.m4a (คุณภาพดีกว่าแปลงจาก ffmpeg)
Normalize (เกลี่ย) เสียง
คำสั่งคือ
normalize-audio -m *.wav
หรือ
mp3gain -c -r *mp3
แต่งเสียง
เกลี่ยเสียง ลดเสียงทุ้มลง 18db เพิ่มเสียงแหลม 3db
sox --norm INFILE.wav OUTFILE.wav bass -24 treble +3
Rip Audio
cdda2wav -D /dev/cdrom -t TRACK 01
update
$ ffmpeg -i sound.mp3 -ar 16000 -ab 8 -ac 1 sound.wma
อีกรุ่นนึง
$ ffmpeg -i sound.mp3 -acodec wmav2 -ab 24k -ac 1 -ar 11025 sound.wma
$ ffmpeg -i sound.rm sound.wav
รูปแบบที่เลือกใช้
เลือกใช้ mp3 เนื่องจากแพร่หลาย และไม่ผูกติดกับวินโดวส์
เลือกใช้ตัวแปลงคือ lame เนื่องจากเสียงนุ่มนวลกว่า
$ lame -h -b 16 INFILE.XXX OUTFILE.mp3
$ lame -h -b 128 INFILE.XXX OUTFILE.mp3
$ for i in *mp3; do mplayer -vo null -vc dummy -af resample=44100 -ao pcm:waveheader:file=/tmp/x.wav "$i"; ffmpeg -i /tmp/x.wav -acodec libmp3lame -ab 32k -ar 11025 -ac 2 "24k/$i"; done; rm /tmp/x.wav
$ lame --mp3input -m m --resample 24 -h INFILE.mp3 OUTFILE.mp3
$ ffmpeg -i INFILE.mpg -f 3gp -vcodec mpeg4 -b 150000 -s 320x240 -r 18 -acodec libfaac -ab 64000 -ar 24000 -ac 2 OUTFILE.3gp
หมายเหตุ
การติดตั้งแพกเกจที่เกี่ยวข้อง
$ sudo aptitude install ffmpeg
$ sudo aptitude install mpg321
$ sudo aptitude install madplay
$ sudo aptitude install lame
$ sudo aptitude install vorbis-tools
$ sudo aptitude install mplayer
$ sudo aptitude install normalize-audio
$ sudo aptitude install cdda2wav
- Printer-friendly version
- Log in or register to post comments
- 12720 reads
Comments
เอ่อ... ขออภัยครับ
ผมใช้ drupal-4.5.8 สร้าง first account แล้วแต่ login ไม่ได้นะครับ มันกลับมาให้ login เหมือนเดิมนะครับ ไม่ยอมให้ผ่านไปไหน ไม่ทราบว่าพอจะมีหนทางแก้ไขมั๊ยครับ ขอบคุณคับ
ลอง 4.7 ดีกว่า
เพิ่งกลับมาจากเที่ยวเชียงใหม่ เอิ๊ก ๆ
ผมเริ่มใช้รุ่น 4.6 แล้วครับ ไม่ลองรุ่น 4.7.5 ดูล่ะครับ น่าจะทันสมัยกว่า ต่อเติมเพิ่มขยายง่ายกว่าครับ
รุ่นต่ำกว่า 4.6 ไม่ค่อยอยากให้ใช้ เพราะเขาเปลี่ยนแปลงเยอะครับ เดี๋ยวมีปัญหาตอนอัปเกรด
Hosting
Hosting ที่เช่าอยู่มันมีให้แค่ php-4.3.2 นะครับและไม่ upgradeให้ เลยใช้ version สูงกว่านี้ไม่ได้(ทั้งที่ใจอยากจะใช้ ตัวใหม่สุดด้วยซ้ำ)
งั้นถามใหม่ครับ
table users ใน MySql เนี่ย user ที่ active แล้ว ใช้งานได้แล้ว มีค่าแต่ละ ฟิลด์ ยังไงบ้างครับ เช่น status เป็น 0 หรือ 1 อะไรประมาณนี้นะครับ จะลองแก้ไขตรง ๆ ดู
ขัดใจจริง ๆ ครับว่าทำไมมัน login ด้วย first user ไม่ได้ กลับมาที่หน้า login ตลอด
ปล. มาเที่ยวเชียงใหม่บ้านผมน่าจะบอกกันบ้าง จะได้พาทัวร์ (ฮิ ๆ )
หา Host ใหม่
ผมคิดว่าน่าจะ
1. หาโฮสต์ใหม่ ถ้าเขามี php-4.3.3 ก็ใช้กับ Drupal-4.7.5 ได้แล้ว หรือ...
2. สร้างโฮสต์เอง ข้อเสียคือต้องเปิดเครื่อง 24ชม. แต่ข้อดึคือทดลองได้สุด ๆ จะเล่นอะไรก็ไม่มีข้อจำกัด
table users ใน MySql เขาเก็บพวก permission ไว้ที่ฟิลด์ data ซึ่งเป็นฟิลด์สุดท้าย
แต่ผมคิดว่าคงไม่เกี่ยวกับดาต้าเบสนะครับ คงเกี่ยวกับ php มากกว่า
ถ้าเป็น Drupal-4.7 กับ php5 ผมเจอปัญหาคล้ายกันกับของคุณสุขุม
เป็นเรื่องฟังก์ชั่น session ต้องแก้ด้วยการไปเติมการปิด session ต่อท้ายอีกทีนึง
ต่อท้่ายไฟล์ index.php น่ะครับ
ผมว่าหาโฮสต์ใหม่ดีกั่ว :) ยกเว้นถ้าจะลองเล่นเฉย ๆ มาแพะที่นี่ก็ได้นะครับ :)
ปล.ผมไปเที่ยวแบบโหด กลับมาป่วยเลยครับ แต่ยังโชคดีที่ได้ขึ้นพระพุทธบาทสี่รอย
ขนาดว่าเป็นหลังปีใหม่ ผู้คนยังเยอะสุด ๆ
ปลื้มใจแทนคนไปเที่ยวด้วย ว่าสภาพคนบนดอยสุเทพ พลุกพล่านเหมือนตลาดพาหุรัดที่กรุงเทพฯ
สาธุ ๆ ๆ ๆ อนุโมทนามิ _/|\_
เฮ้อ !!! กว่าจะได้
ตอนแรก ลบ cookies ให้หมดนะครับ
ปรากฏว่า frefox ผ่าน IE ไม่ผ่าน
ก็เลยปรึกษา google อย่างละเอียดอีกทีก็ไปเจอ
http://drupal.org/node/6696
โดยแก้ไข user.module
FROM this:
TO this:
เลยขออนุญาตแปะไว้กันลืมนะครับ
ขอบคุณมากครับที่ช่วยเหลือ
สุขุม
แจ๋วครับ :)
จะบอกว่าขอบคูณที่โพสต์มากกว่าครับ ;D
จะได้รู้กันเยอะ ๆ
ขออนุญาตเหมือนกัน ปรับแก้ให้ดูง่ายขึ้นเล็กน้อยนะครับ :)