Seperti yang disarankan di sini saya menggunakan cat
perintah untuk menggabungkan beberapa file .mp3 menjadi satu file .mp3.
Bayangkan, saya memiliki file .mp3 berikut dalam folder saat ini:
001001.mp3 001002.mp3 001003.mp3 001004.mp3 001005.mp3
atau, seperti ini:
096001.mp3 096002.mp3 096003.mp3 096004.mp3
Saya perlu menyatukan file .mp3 ini di sana urutan naik, yaitu 001001.mp3+001002.mp3+001003.mp3+etc.
Untuk menggabungkan file .mp3 ini menjadi satu, saya menjalankan perintah berikut dalam folder saat ini:
cat *.mp3 > final.mp3
Saya menguji file .mp3 final dan itu yang saya harapkan, tapi saya harus yakin bahwa perintah di atas mengambil file di sana urutan yang menaik.
Bisakah saya yakin bahwa perintah di atas selalu menyatukan file dalam urutan menaik?
Terima kasih tuan !
sumber
find . -maxdepth 1 -iname '*.mp3' -print0 | sort -z | xargs -0 mp3wrap output.mp3
*.mp3
harus mencukupi (dan bekerja dengan spasi).$ brew install mp3wrap
.*.mp3
dijamin untuk menjaga urutan abjad. Jika file Anda diberi nama09.mp3
,10.mp3
,11.mp3
, itu mungkin apa yang Anda inginkan. Jika file Anda diberi nama9.mp3
,10.mp3
,11.mp3
, itu mungkin bukan apa yang Anda inginkan, tetapi Anda dapat melakukannya`ls *.mp3 | sort -n`
.mp3wrap tampaknya menjadi solusi yang cukup layak, tetapi ketika saya memutar file yang dihasilkan, cap waktu itu tidak benar. Sepertinya mp3wrap paling baik digunakan saat Anda menggabungkan mp3 ke dalam file yang Anda tahu akan Anda bagi nanti.
Saya hanya ingin menggabungkan beberapa mp3 secara permanen. Saya akhirnya menggunakan ffmpeg untuk menyatukan file:
Pertama, instal ffmpeg
Ubuntu 15.04+
Ubuntu 14.10 dan di bawahnya
Buka http://ffmpeg.org/download.html , unduh salah satu build statis, undar, dan salin ke / usr / local / bin
ffmpeg -i "concat:file1.mp3|file2.mp3" -acodec copy output.mp3
Info lebih lanjut: https://trac.ffmpeg.org/wiki/Concatenate#protocol
https://superuser.com/a/314245
sumber
ffmpeg
hilang, tetapiavconv
ganti: askubuntu.com/questions/432542/…output.mp3
melalui amp3val
dan Anda akan melihat segala macam kesalahan yang akan membuat masalah pemutaran di Chrome64 + (lihat bugs.chromium.org/p/chromium/issues/detail?id=794782 dan bugs.chromium.org/p/chromium/ masalah / detail? id = 806601 # c10 )Seperti yang disarankan sebelumnya,
mp3wrap
adalah solusi yang baik. Ini mungkin tidak berfungsi sepanjang waktu. Sejauh yang saya tahu,mp3wrap
mengasumsikan bahwa semua file input memiliki karakteristik yang sama seperti VBR vs CBR, bitrate, dan sebagainya. Jika asumsi ini tidak terpenuhi, kemungkinan besar akan gagal. Dalam hal ini, satu-satunya solusi adalah mendekode semua file mp3 ke format mentah seperti.wav
, menggabungkannya dengan program sepertisox
dan menyelesaikannya dengan mengkode ulang semua ke mp3.sumber
Itu semacam abjad berdasarkan karakter tunggal. Itu berarti bahwa "01" muncul sebelum "1", karena nol memiliki nilai lebih rendah dari satu.
Ini sebuah contoh. Saya punya direktori dengan file bernama 1, 2, 3, 04, 05, dan 06. Itu adalah file teks yang berisi nama file mereka sendiri:
Jadi, ya itu akan; tetapi Anda perlu memastikan bahwa semua file Anda 'empuk' dengan benar.
Skrip bash script yang bagus ini akan memungkinkan Anda membandingkan nama file secara visual, membuatnya sangat mudah untuk menemukan kesalahan:
Outputnya akan terlihat seperti ini:
Jika tidak, Anda harus memberi nama file: Script Bash untuk membuat nama file di StackOverflow menjelaskan cara melakukannya.
Sunting. Pilih jawaban Oli, itu jauh lebih baik. : P
Saya akan meninggalkan milik saya karena itu menambahkan sesuatu, tetapi Anda harus menggunakan solusinya,
Ingatlah bahwa
sort
masih akan mengurutkan hal-hal dengan cara yang saya jelaskan di atas, Anda masih perlu memberi nama file jika panjangnya tidak sama.sumber
Kebanyakan orang menyarankan
mp3wrap
, tetapi ada kerugiannya: file yang dihasilkan tidak melaporkan panjang penuh di beberapa pemain, dan kemudian Anda tidak dapat mencari melewati titik itu.mp3cat
melakukan pekerjaan dengan cepat dan baik, sejauh yang saya tahu. Ini dapat diunduh di http://mulholland.xyz/dev/mp3cat/ , dan digunakan sebagai berikut:kemungkinan lain adalah
sox
tetapi tampaknya sangat lambat (mungkin ia menerjemahkan dan memasukkan kembali audio?)
sumber
Saya menemukan layanan audio-joiner online bekerja dengan sangat baik dan menjaga cap waktu yang benar (bertentangan dengan mp3wrap).
sumber
Anda mungkin ingin mencoba menggunakan program pengeditan audio khusus (seperti Audacity )
sumber
Saya suka komentar bmaupin , namun bisa menghasilkan nomor (versi) alami dengan menggunakan
sort -V
:dan Anda tidak harus berurusan dengan karakter khusus seperti
' " () [] {}
dalam nama file.sumber