Portál AbcLinuxu, 12. května 2025 04:43
Řešení dotazu:
lame -q 9 --bcr -b 128 pokus.wav pokus.mp3
a převedlo se to. Ve výpisu se objevilo
lame: unrec option --bcr LAME 3.97 32bits (http://www.mp3dev.org/) CPU features: MMX (ASM used), 3DNow! (ASM used), SSE, SSE2 Using polyphase lowpass filter, transition band: 16538 Hz - 17071 Hz Encoding pokus.wav to pokus.mp3 Encoding as 44.1 kHz 128 kbps j-stereo MPEG-1 Layer III (11x) qval=9 Frame | CPU time/estim | REAL time/estim | play/CPU | ETA 1150/1150 (100%)| 0:00/ 0:00| 0:00/ 0:00| 47.684x| 0:00 ------------------------------------------------------------------------------- kbps MS % long % 128.0 100.0 100.0 Writing LAME Tag...done ReplayGain: -4.0dB
lame-3.97-2plf2007.1.i586
a mám Mandriva Linux 2008.0, ale je to balík z bonusového DVD, které bylo k te knize s tím Linuxem, a z te same knihy jsem předtím použil instalačni DVD pro instalaci operačního systému.
#!/bin/bash #1.2 # k vytvoreni tohoto skriptu bylo vyuzito navrhu Ondreje Cecake a LS_999 z abclinuxu #tento skript slouzi k hromadnemu prevodu souboru wmv, wma, mp2, mp3 a ogg #do mp3 souboru s konstantnim bitratem 128 kb/s # #Skript musi byt nastaven s priznakem spustitelny # #Pokud nebude umisteni skriptu shodne s adresarem prevadenych souboru, #je potreba zadat cestu k tomuto adresari. #cd /home/ty/adresar_s_prevadenymi soubory mkdir prevedene_soubory for SOURCE in *.[oOwWmM][gGaAmMpP][gGvVaA23] do lame -q 9 --cbr -b 128 audiodump.wav "prevedene_soubory/$TARGET.mp3" done exit # v radku lame parametr -b znací bitrate vysledne mp3 "lze menit dle potreb" #Skript můžete upravit podle svých potřeb. #Parametr: -q 0 -nastavuje kvalitu a rychlost převodu. #Rozsah je 0-9. 0 je nejpomalejší a nejkvalitnější. #Parametr: -b 128 -nastavuje bitrate výsledné mp3. #Možnosti jsou následující: 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320spustil ho z konzole a vypsalo to
Could not find "audiodump.wav". Could not find "audiodump.wav". Could not find "audiodump.wav". Could not find "audiodump.wav". Could not find "audiodump.wav". Could not find "audiodump.wav". Could not find "audiodump.wav". Could not find "audiodump.wav". Could not find "audiodump.wav". Could not find "audiodump.wav". Could not find "audiodump.wav". Could not find "audiodump.wav". Could not find "audiodump.wav". Could not find "audiodump.wav". Could not find "audiodump.wav".a tak dále. Virobilo to jenom složku "prevedene_soubory" ale žádné mp3 v mi nevzniky. Proč?
lame -q 9 --cbr -b 128 $SOURCE "prevedene_soubory/$SOURCE.mp3"
lame -q 9 --cbr -b 128 $SOURCE "prevedene_soubory/$SOURCE.mp3"jde to dobře. Ale těsně předtím, víte co jsem ještě zkoušel? Už jsem si nevěděl rady, tak jsem vyzkoušel v tom skriptu ten řádek
lame -q 9 --cbr -b 128 audiodump.wav "prevedene_soubory/$TARGET.mp3"nahradit padesáti řádky pro každý soubor zvlášť
lame -q 9 --cbr -b 128 jmenosouboru.wav jmenosouboru.mp3a tak dále a to je blbost, protože to už ten skript byl na jedno použití, navíc psaní takového skriptu bylo zdlouhavé a ani nefungoval, jak by měl. Během pěti minut jsem měl sice všech 50 souborů převedených, ale v konzoli se program nechtěl zastavit - běželo to půl hodiny vkuse, dokud jsem nezmáčkl ctrt c. Ale tady ten nový skript jde dobře. Taky jsem ho vyzkoušel.
#!/bin/bash #1.1 # k vytvoreni tohoto skriptu bylo vyuzito navrhu Ondreje Cecake a LS_999 z abclinuxu #tento skript slouzi k hromadnemu prevodu souboru wmv, wma, mp2, mp3 a ogg do mp3 souboru s konstntnim bitratem 128 kb/s #cd /mnt/data/prevod_do_mp3 mkdir prevedene_soubory for SOURCE in *.[oOwWmM][gGaAmMpP][gGvVaA23] do mplayer "$SOURCE" -ao pcm TARGET=${SOURCE%.*} lame -q 9 --cbr -b 128 audiodump.wav "prevedene_soubory/$TARGET.mp3" # volby programu lame done rm -f audiodump.wav exit # v radku lame parametr -b znací bitrate vysledne mp3 "lze menit dle potreb"Chybělo ti tam:
mplayer "$SOURCE" -ao pcm TARGET=${SOURCE%.*}
for SOURCE in *.[oOwWmM][gGaAmMpP][gGvVaA23]nahradil bych to za
for SOURCE in *.[oO][gG][gG] *.[wW][mM][aAvV] *.[mM][pP][23]
#! /bin/sh #prepneme se do adresare, ve kterm mame wav a chceme prevest na mp3 a spustime skript. for i in *.wav do filename=`echo $i | sed s/.wav//` lame -b 320 "$filename.wav" "$filename.mp3" doneupravuji pouze hodnotu za -b podle potřeby ..
#!/bin/bash find -type f -name '*.[wW][aA][vV]' -exec lame {} \;Pouze když potřebuji tak doplním nějaké parametry za lame.....
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.