Itt van egy Linux audio MP3 puzzle, amely egy ideje hibáztat:
Hogyan vághatom le az első néhány másodpercet egy MP3-ról hangfájl? (Nem tudom elérni, hogy ffmpeg -ss
00:01 vagy 1.000 formátumban dolgozzon.)
Eddig, hogy azt tegyek, amit akarok, igénybe veszem GUI mód, amely talán lassabb egyetlen fájlnál, és határozottan lassabb egy fájlcsomagnál.
Megjegyzések
- Frissítés. Később megbotlott abban a tényben, hogy az ffmpeg nagyon válogatós a –ss idő formátumban, és az első 9 másodpercet a legkönnyebben le tudtam vágni, például az -ss 00:00:09 megadásával (vegye figyelembe, hogy mindhárom számra szüksége van ó: mm: ss formátum) Az általam használt verzió régi lehet. FFmpeg SVN-r18709 verzió, Copyright (c) 2000-2009 Fabrice Bellard et al.
Válasz
Az mp3 fájlok Linux alatt történő szerkesztéséhez ajánlom a sox alkalmazást. egy egyszerűen használható trim
effekt, amely megteszi, amit kért (lásd: man sox
az adatmezőknél – keresés (nyomja meg a ) a” trim start “) kifejezésre. Példa:
sox input.mp3 output.mp3 trim 1 5
Nem említette, de ha csak a csend a fájlok elején a silence
effektust sokkal hasznosabbnak találja (man sox
, keressen rá a “periódusok fölött” kifejezésre )
Megjegyzések
- Köszönöm, fantasztikus: sikerült. Végül az
trim
-t használtam az egyszerűség kedvéért. Az egyetlen downersox FAIL formats: can't open output file 'blah.mp3': SoX was compiled without MP3 encoding support
volt – tehát, írja be újra az ffmpeg: / - Ez szokatlannak tűnik. A számítógépemen problémamentesen működik az mp3 fájlokkal. Ez a beépítési idő konfigurációjának kérdése. Hogyan telepítette?
- @rozcietrzewiacz, ha soxot telepít egy disztribútorból, akkor valószínűleg MP3-támogatás nélkül is megkapja a soxot (licencproblémák miatt). Például a Fedora 17-en:
no handler for file extension mp3
- I ' m nehezen értem, hogyan lehet mp3-ot összeállítani a sox-szal támogatás. Nincs GYIK, nincs google, semmi. És a kérdés az ffmpeg használatával történt vágásról szólt.
Válasz
Megpróbálhatta a mp3splt , amely képes felosztani az MP3 és Ogg fájlokat, és előnye, hogy nem kódolja újra a fájlt, elkerülve ezzel a minőségromlást.
Megjegyzések
- tetszik; köszönöm. Ez egyszerű, és mégis rengeteg lehetősége van … Például: itt van az imént használt parancs, amely az osztási időket hozzáadja a fájlnévhez:
mp3splt "$file" 4.12 27.55.7
… Lehetővé teszi egyéni kimeneti név formázása és több osztott pont.
Válasz
Győződjön meg arról, hogy az idő specifikáció órákkal kezdődik.
A ffmpeg man oldal idézése:
pozíció lehet másodpercben vagy “hh: mm: ss [.xxx]” formában
Ez azt jelenti, hogy a 2. szintaxis kiválasztásakor csak a .xxx
rész nem kötelező. Else ffmpeg hibásan elemezheti másodpercként.
Ugyanez vonatkozik az időtartamra is:
az időtartam másodpercben megadott szám lehet, vagy itt: “hh: mm: ss [.xxx]”
Egy másik buktató az ffmpeg argumentumok rendezése (pl. a -ss
/ -t
opcióinak a -i
opció elé kell kerülniük.
Példa
$ wget http://traffic.libsyn.com/twiv/TWiV179.mp3 $ ffmpeg -ss 1:05:59.3 -t 00:02:03.9 -i TWiV179.mp3 -acodec copy \ what_is_a_hmm_twiv179.mp3
A -ss 1:05:59.3 -t 2:03.9
specifikációval más eredményt kapna (azaz egy 2 másodperces hosszú darabot).
(Fedora 17-en tesztelve ffmpeg 0.10.7 verzióval.)