Aqui está um quebra-cabeça de áudio MP3 do Linux que está me incomodando há algum tempo:

Como cortar os primeiros segundos de um MP3 arquivo de áudio? (Não consigo fazer com que ffmpeg -ss funcione com o formato 00:01 ou 1.000)

Até agora, para fazer o que eu quero, eu recorro em uma forma de GUI que talvez seja mais lenta para um único arquivo e definitivamente mais lenta para um lote de arquivos.

Comentários

  • Uma atualização. Mais tarde, eu descobri o fato de que o ffmpeg é muito exigente quanto ao formato de hora –ss, e fui capaz de cortar mais facilmente os primeiros 9 segundos, por exemplo, especificando -ss 00:00:09 (note que ele precisa de todos os 3 números em formato hh: mm: ss) A versão que eu estava usando pode ser antiga … FFmpeg versão SVN-r18709, Copyright (c) 2000-2009 Fabrice Bellard, et al.

Resposta

Para editar mp3 “s no linux, recomendo sox . um efeito trim simples de usar que fará o que você pedir (consulte man sox para datails – pesquisa (pressione /) para” início de corte “). Exemplo:

sox input.mp3 output.mp3 trim 1 5 

Você não mencionou isso, mas se seu objetivo é apenas remover o silêncio no início dos arquivos, você encontrará o silence efeito muito mais útil (man sox, pesquise por “períodos acima” )

Comentários

  • Obrigado, incrível: funcionou. Acabei usando o trim para simplificar. O único downer foi sox FAIL formats: can't open output file 'blah.mp3': SoX was compiled without MP3 encoding support – então, digite novamente ffmpeg: /
  • Isso parece incomum. No meu computador, funciona sem problemas com mp3s. É uma questão de configuração em tempo de construção. Como você o instalou?
  • @rozcietrzewiacz, se você instalar o sox de um repositório de distribuição, provavelmente obterá o sox sem suporte para MP3 (por causa de problemas de licença). Por exemplo, no Fedora 17: no handler for file extension mp3
  • Eu ' estou tendo dificuldade em entender como compilar sox com mp3 Apoio, suporte. Sem FAQ, sem google, nada. E a questão era sobre cortar usando ffmpeg …

Resposta

Você poderia tentar usar mp3splt , que pode dividir arquivos MP3 e Ogg e tem a vantagem de não recodificar o arquivo, evitando perda de qualidade.

Comentários

  • Eu gosto; obrigado. É simples, mas tem muitas opções … Por exemplo: aqui está o comando que acabei de usar, que adiciona os tempos parciais ao nome do arquivo: mp3splt "$file" 4.12 27.55.7 … Permite formatação de nome de saída personalizada e vários pontos de divisão.

Resposta

Certifique-se de que suas especificações de tempo comecem com horas.

Para citar a página do manual do ffmpeg :

posição pode ser em segundos ou na forma “hh: mm: ss [.xxx]”

Isso significa que quando você escolhe a 2ª sintaxe, apenas a .xxx parte é opcional. Caso contrário, o ffmpeg pode interpretá-lo incorretamente como segundos.

O mesmo vale para a duração:

a duração pode ser um número em segundos ou in “hh: mm: ss [.xxx]”

Outra armadilha é a ordenação dos argumentos ffmpeg (por exemplo, o -ss / -t opções para um arquivo de entrada devem vir antes da opção -i).

Exemplo

$ 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 

Com a especificação -ss 1:05:59.3 -t 2:03.9 você obteria um resultado diferente (ou seja, um pedaço de 2 segundos).

(Testado em Fedora 17 com ffmpeg versão 0.10.7.)

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *