Como posso dividir um arquivo mp3?

35

Eu tenho um grande arquivo mp3 que vem da cópia de um CD completo. Eu gostaria de dividi-lo em um arquivo por música. Será ótimo encontrar um software que possa dividir o arquivo automaticamente, detectando o início e o final de cada música.

Fundo extra:

Eu tentei mp3splt e audácia. O primeiro não consegue detectar automaticamente as músicas e a audácia parece incapaz de fazê-lo.

Eu gostaria de gravar as músicas em um CD (formato mp3) para tocar no rádio do carro. Ele não suporta nada sofisticado, nem sequer possui um conector USB.

Javier Rivera
fonte
O CD foi originalmente um grande sucesso de arquivo ou possui faixas individuais quando está em um CD player?
23811 djeikyb
Veja também
dovid
Apenas um aviso de que usar um .cuearquivo para carregar isso e reproduzir cada faixa individualmente é outra opção.
earthmeLon
O Audacity pode detectar músicas identificando silêncios entre elas. No entanto, é melhor dividi-los com mp3splt para que não sejam decodificados + recodificados. Veja meu fluxo de trabalho como resposta abaixo.
FairMiles

Respostas:

14

Você pode dividir seu mp3 grande em pedaços pequenos usando a função "dividir" ou "dividir novo" no audacity, e depois separar a parte do áudio que deseja misturar em um arquivo diferente para exportá-lo.

Na próxima captura de tela, criei uma nova faixa estéreo para colocar o áudio dividido em uma faixa diferente (apenas para fins visuais), depois movi a segunda parte do áudio para essa faixa e selecionei uma parte do áudio que pode ser exportado para um novo arquivo.

insira a descrição da imagem aqui

Você não precisa dividir o áudio para exportar a parte do áudio para um arquivo diferente, basta selecionar o áudio e escolher "Exportar seleção" no menu Arquivo.

Na próxima captura de tela, estou fazendo o que disse nas palavras acima.

insira a descrição da imagem aqui

Se você ainda possui o CD, é possível copiar o áudio com um arquivo por música usando o "Sound Juicer", que permitirá escolher como copiar a mídia do CD. Dessa forma, você terá um arquivo mp3 por música. E a tarefa de misturar todas as músicas em um arquivo grande será facilmente alcançada pelo Audacity, caso você precise fazê-lo.

O Sound Juicer pode ser instalado via synaptic ou mergulhando no site em: http://burtonini.com/blog/computers/sound-juicer

Uma captura de tela é colocada aqui para que você veja o Sound Juicer em ação. (Desculpe, não tenho um CD para copiar agora, por isso a lista de reprodução está vazia)

insira a descrição da imagem aqui

Geppettvs D'Constanzo
fonte
48

O Audacity é ruim para isso - pois recodifica o mp3 e a qualidade é reduzida. Eu uso o ffmpeg para cortar mp3 - acredito que não faz re-codificação:

  • hora de início, duração:

    ffmpeg -i InputFile -vn -acodec copy -ss 00:00:00 -t 00:01:32 OutputFile
    
  • hora de início, hora de término:

    ffmpeg -i InputFile -vn -acodec copy -ss 00:00:00 -to 00:01:32 OutputFile
    

também se pode incluir milissegundos com, por exemplo 00:00:00.000.

Adobe
fonte
Por favor, veja os comentários para responder jet.
Javier Rivera
É possível argumentar que uma única transcodificação com perda possa ser ouvida quando reproduzida a partir de um som do carro, mas esse deve ser o caminho a seguir, independentemente do uso.
Nit
2
Para sua informação, esses argumentos SEMPRE funcionarão com "avconv", se você estiver em uma distro que substituiu ffmpeg por libav. A ressalva é que você deve colocar o argumento -ss antes do argumento -i. Além disso, observe que o argumento para -t é duração, não busca tempo.
ACK_stoverflow
@ Adobe Eu gosto dessa abordagem. Você sabe se pode especificar a granularidade em milissegundos? Eu preciso cortar a primeira parte de vários mp3s que começam com a mesma sequência indesejada.
frakman1 2/03
@ frakman1, você quer especificar milissegundos? Assim: ffmpeg -i a.ogg -ss 00:01:02.500 -t 00:01:03.250 -c copy x2.ogg( fonte )
Adobe
32

Você diz que tentou o mp3splt, mas leu a página de manual completa ?

Eu pergunto porque o -smodo de silêncio pode ter parâmetros para ajudá-lo a determinar o silêncio.

Aqui está um exemplo da página de manual com parâmetros opcionais:

mp3splt -s -p th=-50,nt=10 album.mp3
  • th: nível limite (dB) a ser considerado silêncio
  • nt número de faixas

Há também um -cmodo de consulta ao banco de dados CDDB. Se este for um CD conhecido, você pode obter a lista de faixas on-line. Isso também nomeará as faixas corretamente e (acho) até configurará as tags.

É uma ferramenta incrivelmente poderosa e uma das suas melhores opções para preservar a qualidade ... Portanto, não descarte imediatamente.

Oli
fonte
2
Não. A verdade é que eu apenas usei a GUI mp3split-gtk. Eu vou olhar para eles.
Javier Rivera
Má sorte. A única opção não disponível na GUI é fornecer o número de faixas. Mas apenas o ignorou e encontrou o mesmo número de faixas que na GUI.
Javier Rivera
9

você pode tentar algo como:

ffmpeg -i /path/music.mp3 -t 00:10:00 -ss 00:20:00 -acodec copy /path/save.mp3

jato
fonte
Claro, mas precisarei encontrar manualmente cada hora da música. Será mais rápido fazê-lo com audácia, pelo menos eu posso ver a onda.
Javier Rivera
Se você quiser criar um script, então o ffmpeg pode ajudar
jchook 26/08
2

O mp3splt funciona bem. Quão bem depende do que você precisa para começar e do que você espera para obter resultados. Mais entradas = mais saídas. Se você souber o número de músicas contidas nos arquivos mp3 grandes, isso ajudará a informar que o número de arquivos de saída está correto. Você DEVE ter seções de silêncio entre suas músicas no arquivo mp3 grande. A chave para mp3splt é encontrar o valor correto para "th". Se "th" for muito baixo, você poderá ter muitas saídas, portanto todas as suas músicas serão fragmentadas. Se estiver muito alta, suas músicas não serão divididas e você poderá ter mais de uma música por divisão. Vamos supor que você tenha um arquivo grande e nada mais: por exemplo, nenhum índice para títulos ou horas.

Meu arquivo grande é chamado "artist.ogg" Aqui está o comando que eu usei:

mp3splt -s -p th = -40 artist.ogg

Isso resultou em 34 músicas divididas corretamente, cada uma nomeada em série como artist_silence_01.ogg -xx.ogg etc.

Novamente, se você tiver muitas divisões, tente "th = -48". Se houver muito poucos, tente "th = -36".

A partir desses arquivos de saída, você precisará renomeá-los para os títulos das músicas desejadas e adicionar rótulos às propriedades do arquivo. [Não conheço nenhuma macro para isso, portanto deve ser um processo manual].

espero que isto ajude.

atualizar PS. Até agora, o mp3splt funciona para arquivos mp3 e ogg. Ainda não tenho sucesso para arquivos m4a.

Rob Grune
fonte
2

Eu posso recomendar mp3DirectCut . Faz conversão sem perdas e funciona bem no Wine:

Captura de tela

ejboy
fonte
1

A resposta a seguir sobre o estouro de pilha é provavelmente relevante:

https://stackoverflow.com/questions/36074224/how-to-split-video-or-audio-by-silent-parts

Resumindo esta resposta, você pode usar ffmpeg para identificar regiões silenciosas:

ffmpeg -i "input.mov" -af silencedetect=noise=-30dB,d=0.5 -f null - 2> vol.txt

E depois divida os arquivos usando a receita da Adobe:

ffmpeg -i InputFile -vn -acodec copy -ss 00:00:00 -t 00:01:32 OutputFile

Isso exigirá um pouco de análise de sua parte

Att Righ
fonte
0

Obtive resultados de qualidade (embora não totalmente automáticos) com o Audacity + mp3splt.

Se você não tiver um .cueou um .cddbarquivo com limites de música (por exemplo, não é um álbum reconhecido), você pode:

  1. Rotule manualmente a faixa no Audacity, conforme explicado em seu manual , provavelmente ajudada pela detecção automática de silêncio anterior (com Analyze> Silence Finder ..., veja aqui ) para uma primeira tentativa em quebras notórias
  2. Exporte os rótulos (com Arquivo> Exportar rótulos ..., veja aqui ) para um arquivo de texto simples e
  3. Alimente o arquivo .txt ao mp3splt na opção -A(as mp3splt -A labels.txt Album.mp3).

Ele produzirá rapidamente (sem decodificação + recodificação) um arquivo para cada segmento usando cada nome de rótulo como nome do arquivo.

Apenas tome cuidado ao usar rótulos de região (e não rótulos de ponto , veja aqui ) para marcar o início e o fim de cada música no Audacity.

FairMiles
fonte