Iată un puzzle MP3 audio pentru Linux care m-a bătut de ceva vreme:

Cum să decupezi câteva secunde începând de pe un MP3 fișier audio? (Nu pot obține ffmpeg -ss să funcționeze fie în format 00:01, fie în format 1.000)

Până acum, pentru a face ceea ce vreau, recurg să o fac în o manieră GUI care este poate mai lentă pentru un singur fișier și cu siguranță mai lentă pentru un lot de fișiere.

Comentarii

  • O actualizare. Mai târziu, eu m-am împiedicat de faptul că ffmpeg este foarte pretențios în ceea ce privește formatul orei –ss și am reușit să reduc foarte ușor primele 9 secunde, de exemplu, specificând -ss 00:00:09 (rețineți că are nevoie de toate cele 3 numere din hh: mm: ss format) Versiunea pe care o foloseam poate fi veche … FFmpeg versiunea SVN-r18709, Copyright (c) 2000-2009 Fabrice Bellard și colab.

Răspuns

Pentru editarea mp3-urilor sub Linux, aș recomanda sox . Are un efect simplu de utilizat trim care va face ceea ce cereți (consultați man sox pentru datails – căutare (apăsați /) pentru” trim start „). Exemplu:

sox input.mp3 output.mp3 trim 1 5 

Nu l-ați menționat, dar dacă scopul dvs. este doar să eliminați tăcerea la începutul fișierelor, veți găsi efectul silence mult mai util (man sox, căutați „perioadele de mai sus” )

Comentarii

  • Mulțumesc, minunat: a funcționat. Am ajuns să folosesc trim pentru simplitate. Singurul downer a fost sox FAIL formats: can't open output file 'blah.mp3': SoX was compiled without MP3 encoding support – deci, reintroduceți ffmpeg: /
  • Acest lucru pare neobișnuit. Pe computerul meu, funcționează fără probleme cu mp3-urile. Este o chestiune de configurare în timp de construcție. Cum l-ați instalat?
  • @rozcietrzewiacz, dacă instalați sox dintr-un depozit de distribuție, cel mai probabil veți obține sox fără suport MP3 (din cauza problemelor de licență). De exemplu, pe Fedora 17: no handler for file extension mp3
  • ' îmi este greu să înțeleg cum să compilez sox cu mp3 a sustine. Fără întrebări frecvente, fără google, nimic. Și întrebarea a fost despre tăierea folosind ffmpeg …

Răspuns

Ai putea încerca să folosești mp3splt , care poate împărți fișierele MP3 și Ogg și are avantajul că nu recodifică fișierul, evitând astfel pierderea calității.

Comentarii

  • Îmi place; Mulțumiri. Este simplu și totuși are o mulțime de opțiuni … De exemplu: iată comanda pe care tocmai am folosit-o, care adaugă timpii împărțiți la numele fișierului: mp3splt "$file" 4.12 27.55.7 … Permite formatarea personalizată a numelui de ieșire și mai multe puncte divizate.

Răspuns

Asigurați-vă că specificațiile dvs. de timp încep cu ore.

Pentru a cita pagina manuală ffmpeg :

poate fi fie în secunde, fie în forma „hh: mm: ss [.xxx]”

Asta înseamnă că atunci când alegeți a doua sintaxă doar .xxx partea este opțională. Altfel ffmpeg ar putea să-l analizeze greșit ca secunde.

La fel este valabil și pentru durata:

durata poate fi un număr în secunde sau în „hh: mm: ss [.xxx]”

O altă capcană este ordonarea argumentelor ffmpeg (de ex. -ss / -t opțiunile pentru un fișier de intrare trebuie să apară înainte de opțiunea -i).

Exemplu

$ 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 

Cu specificația -ss 1:05:59.3 -t 2:03.9 veți obține un rezultat diferit (adică o piesă lungă de 2 secunde).

(Testat pe Fedora 17 cu versiunea ffmpeg 0.10.7.)

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *