Her er et Linux-lyd MP3-puslespil, der har bugget mig et stykke tid:
Sådan trimmer du de første par sekunder fra en MP3 lydfil? (Jeg kan ikke få ffmpeg -ss
til at arbejde med enten 00:01 eller 1.000 format)
Indtil videre, for at gøre hvad jeg vil, ty jeg til at gøre det i en GUI-måde, der måske er langsommere for en enkelt fil, og bestemt langsommere for en batch af filer.
Kommentarer
- En opdatering. Senere, jeg snuble over det faktum, at ffmpeg er meget kræsen med –ss tidsformat, og jeg var i stand til let at trimme de første 9 sekunder for eksempel ved at angive -ss 00:00:09 (bemærk, at det har brug for alle 3 numre i tt: mm: ss-format) Den version, jeg brugte, kan være gammel … FFmpeg version SVN-r18709, Copyright (c) 2000-2009 Fabrice Bellard, et al.
Svar
Til redigering af mp3er under linux anbefaler jeg sox . Det har en brugervenlig trim
effekt, der vil gøre det, du beder om (se man sox
for datails – søg (tryk /
) til” trim start “). Eksempel:
sox input.mp3 output.mp3 trim 1 5
Du nævnte det ikke, men hvis dit mål bare er at fjerne stilhed i begyndelsen af filer finder du silence
effekt meget mere nyttigt (man sox
, søg efter “ovenstående perioder” )
Kommentarer
- Tak, fantastisk: det fungerede. Jeg endte med at bruge
trim
for at gøre det nemmere. Den eneste downer varsox FAIL formats: can't open output file 'blah.mp3': SoX was compiled without MP3 encoding support
– så indtast ffmpeg igen: / - Det virker usædvanligt. På min computer fungerer det uden problemer med mp3er. Det er et spørgsmål om byggetidskonfiguration. Hvordan installerede du det?
- @rozcietrzewiacz, hvis du installerer sox fra et distributionslager, får du højst sandsynligt sox uden MP3-support (på grund af licensproblemer). For eksempel på Fedora 17:
no handler for file extension mp3
- Jeg ' har svært ved at forstå, hvordan man kompilerer sox med mp3 support. Ingen FAQ, ingen google, intet. Og spørgsmålet handlede om at trimme ved hjælp af ffmpeg …
Svar
Du kan prøve at bruge mp3splt , som kan dele MP3- og Ogg-filer og har den fordel, at den ikke koder filen igen og derved undgår kvalitetstab.
Kommentarer
- Jeg kan godt lide det; tak. Det er simpelt og har alligevel masser af muligheder … For eksempel: her er den kommando, jeg lige har brugt, som tilføjer deltiderne til filnavnet:
mp3splt "$file" 4.12 27.55.7
… Det tillader formatering af brugerdefineret outputnavn og flere splitpunkter.
Svar
Sørg for, at dine tidsspecifikationer starter med timer.
For at citere ffmpeg man-siden :
position kan være enten i sekunder eller i “hh: mm: ss [.xxx]” form
Det betyder, at når du vælger 2. syntaks, kun .xxx
del er valgfri. Ellers ffmpeg kan parse det forkert som sekunder.
Det samme gælder for varighed:
varighed kan være et tal i sekunder, eller i “hh: mm: ss [.xxx]”
En anden faldgrube er rækkefølgen af ffmpeg-argumenter (f.eks. -ss
/ -t
mulighederne for en inputfil skal komme før -i
-indstillingen).
Eksempel
$ 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
Med specifikationen -ss 1:05:59.3 -t 2:03.9
får du et andet resultat (dvs. et stykke på 2 sekunder).
(Testet på Fedora 17 med ffmpeg version 0.10.7.)