Apakah ada di antara Anda yang tahu cara menambahkan keheningan dengan durasi tetap ke akhir MP3, di Linux? Misalnya menggunakan MEncoder, FFmpeg, dll?
Itu harus berupa baris perintah karena akan dituliskan dan dijalankan di server kami.
Saya mencari di sekitar ini dan yang terbaik yang bisa saya lakukan adalah menggunakan pad
fungsi di SoX , tetapi itu tidak akan berfungsi dengan MP3.
Saya bisa mengonversinya menjadi WAV, menggunakan SoX, lalu mengonversinya kembali ke MP3 lagi dan menyalin metadata (minus durasinya) dari yang asli ke MP3 yang baru. Tapi, sebelum saya menulis skrip untuk itu saya pikir saya akan melihat apakah ada solusi satu-hit.
Jawaban:
Anda dapat melakukannya dengan mudah dengan
pad
argumen SoX dan sintaks berikut:Contoh:
Keheningan itu dalam hitungan detik. (Penggunaan lain dimungkinkan menggunakan sintaks yang berbeda, sehingga dapat menyisipkan keheningan itu pada posisi tertentu. Lihat dokumentasi SoX untuk lebih lanjut.)
sumber
Dengan ffmpeg, Anda dapat menggunakan filter aevalsrc untuk menghasilkan keheningan, dan kemudian dalam perintah kedua gunakan protokol concat untuk menggabungkannya tanpa kehilangan:
Anda dapat mengontrol lama kesunyian dengan mengubah
-t 10
waktu apa pun dalam detik yang Anda inginkan. Tentu saja, Anda hanya perlu menghasilkan keheningan sekali, maka Anda dapat menyimpan file di sekitar dan menggunakannya untuk membalut setiap file yang Anda inginkan. Anda juga mungkin ingin mencari demuxer concat - itu sedikit lebih intensif prosesor, tetapi Anda mungkin lebih mudah untuk masuk ke skrip shell.Jika Anda ingin melakukannya dalam satu perintah, Anda dapat menggunakan filter concat - ini akan mengharuskan Anda untuk menyandikan ulang audio Anda (karena filtergraphs tidak kompatibel dengan
-codec copy
), sehingga opsi di atas mungkin yang terbaik untuk Anda. Tapi ini mungkin berguna bagi siapa saja yang bekerja dengan PCM mentah, ingin menambahkan keheningan sampai akhir sebelum menyandikan audio:Kontrol panjang keheningan dengan mengubah
d=10
ke waktu apa pun (dalam detik) yang Anda inginkan. Jika Anda menggunakan metode ini, Anda mungkin menemukan panduan pengodean MP3 FFmpeg ini berguna.sumber
ffmpeg version 0.8.4-4:0.8.4-0ubuntu0.12.04.1, Copyright (c) 2000-2012 the Libav developers built on Nov 6 2012 16:51:33 with gcc 4.6.3 *** THIS PROGRAM IS DEPRECATED *** This program is only provided for compatibility and will be removed in a future release. Please use avconv instead. Unrecognized option 'filter_complex' Failed to set value 'aevalsrc=0' for option 'filter_complex'
avconv
sebagai gantinya - sintaksnya harus sama, ganti sajaffmpeg
denganavconv
.