Bagaimana cara mendapatkan audio kualitas terbaik menggunakan youtube-dl?

16

Saya menggunakan youtube-dlLinux untuk mengunduh video dari YouTube dan mengekstrak audio. Ini adalah cara saya membangun koleksi musik kecil.

Bagaimanapun, saya tahu bahwa ada opsi --audio-quality=dengan 0 menjadi yang terbaik dan 9 menjadi yang terburuk. Apakah ini semua yang perlu saya lakukan untuk mendapatkan audio kualitas terbaik?

Juga, apakah ada yang tahu jika mengunduh dari soundcloud bisa mendapatkan kualitas yang lebih tinggi?

pengguna365967
sumber

Jawaban:

21

Ini --audio-qualitytidak mempengaruhi kualitas audio sumber. Ini adalah opsi pemrosesan pos dan akan menyandikan ulang audio.

Karena segala jenis pengkodean ulang (lossy) akan benar-benar menurunkan kualitas streaming — atau paling tidak membuatnya lebih besar dalam ukurannya — saya akan merekomendasikan untuk tidak memposting sama sekali proses audio.

Untuk mendapatkan kualitas audio terbaik, Anda hanya perlu memilih format sumber berkualitas tinggi. Sebenarnya, youtube-dlakan melakukannya secara default, tetapi Anda dapat mengaturnya secara eksplisit --audio-format best. YouTube (dan penyedia lainnya) menyimpan codec audio yang berbeda dengan bitrate yang berbeda, dan youtube-dlakan memilih yang terbaik dari itu.

Jika Anda telah ffmpegmenginstal pada sistem Anda, maka youtube-dldapat mengekstrak audio secara otomatis:

youtube-dl --audio-format best -x <url>

Jika tidak, Anda akan mendapatkan file video dari mana Anda harus mengekstrak komponen audio.

slhck
sumber
Jika ffmpegtidak memasukkan ulang maka mengapa saya memilih format audio? Jika saya memasukkan baris itu tetapi dengan aacsebaliknya, saya tidak mendapatkan file yang sama tetapi dengan ekstensi yang berbeda. Saya mendapatkan file yang berbeda dengan ukuran dan bitrate yang sedikit berbeda.
Blrp
1
Ok, tapi itu tidak benar-benar menjawab pertanyaanku. Saya bertanya secara spesifik tentang konversi video ke audio. Jika ada perintah yang mengambil audio dari MP4 dan menyimpannya sebagai file audio tanpa memasukkan ulang, seharusnya hanya ada satu hasil yang mungkin, kan? Namun, perintah ffmpeg di posting Anda menghasilkan hasil yang berbeda tergantung pada ekstensi yang saya pilih untuk audio. Jadi apakah selalu ada satu ekstensi audio yang benar, tergantung pada ekstensi video, yang saya dapatkan audio tanpa reencoding? Atau bagaimana lagi cara saya melakukannya?
Blrp
1
Saya mengerti sekarang. Pertama, saya mengklarifikasi jawaban saya — itu sedikit lebih kompleks daripada yang dibutuhkan. Juga, mungkin jawaban ini menarik untuk dibaca. Bahkan jika bitstream codec audio tidak disentuh (yaitu, disalin), ekstensi menentukan bagaimana itu dibungkus dalam format. Tidak ada pemetaan 1: 1 di sini. Beberapa format membutuhkan lebih banyak ruang daripada yang lain. Anda dapat menggunakan ffmpeg -i in.mp4 -c:a copy -vn out.m4adan berakhir dengan file yang berbeda dari ffmpeg -i in.mp4 -c:a copy -vn out.mkv, meskipun keduanya berisi data audio yang sama persis (dan karenanya memiliki kualitas audio yang sama).
slhck
1
Saya yakin itu tidak menyandikan ulang. Itu tidak memiliki kemampuan untuk melakukannya. Alasan Anda mendapatkan bitrate yang sama adalah karena YouTube memiliki variasi yang sangat terbatas dalam bitrate audio / codec yang mereka gunakan, berbeda dengan representasi video. Mungkin YouTube sedikit tidak menentu ketika menetapkan bitrate video dan audio, dan Anda mungkin melihat bitrate audio yang lebih tinggi untuk kualitas video yang lebih rendah — dalam hal ini, saya pikir youtube-dlmasih memilih format video kualitas tertinggi. Apakah Anda memiliki contoh video tertentu?
slhck
1
Sepertinya saya baik-baik saja. Misalnya pada yang kedua, ketika Anda menggunakan -xsebagai opsi, itu akan mengunduh varian audio saja dengan bitrate tertinggi (256k, format kode 141, lihat bersama youtube-dl -F <url>). Semua komponen audio lain dari representasi audiovisual lainnya memiliki bitrate lebih rendah.
slhck
5

Tetap dengan format musik asli Youtube untuk menghindari pengodean ulang:

youtube-dl -f bestaudio[ext=m4a] --embed-thumbnail --add-metadata <Video-URL>

menghasilkan m4afile atau

youtube-dl -f bestaudio --extract-audio --embed-thumbnail --add-metadata <Video-URL>

Yang terakhir ini juga dapat menampilkan kembali dalam oggfile jika format kualitas audio tertinggi adalah OPUS daripada AAC.

Anda dapat mencantumkan format yang tersedia dengan

youtube-dl -F <Video-URL>
Frank Breitling
sumber
Apa perbedaan antara bestaudio[ext=m4a]dan --extract-audio? Mengapa yang terakhir kemungkinan menghasilkan oggtetapi tidak yang pertama?
Hashim
[ext=m4a]membatasi pilihan Anda ke format m4a yang tersedia dan tanpa --extract-audiomenyimpannya dalam format wadah m4a yang sama. Dengan --extract-audiodata audio diekstraksi dan disimpan dalam wadah ogg.
Frank Breitling
Maaf ini terlambat, tetapi itu tidak benar-benar menjelaskan mengapa yang terakhir akan menghasilkan .oggfile secara khusus. Kenapa .oggkapan .oggbelum ditentukan?
Hashim
Pemahaman saya adalah bahwa kualitas audio terbaik yang tersedia adalah dalam format OPUS daripada AAC kemudian disimpan dalam wadah ogg. Saya telah memperbarui jawaban saya sesuai dengan itu.
Frank Breitling
2

Gunakan perintah:

youtube-dl -f bestaudio "url"
pengguna598527
sumber