Ερώτημα για yt-dlp

Αγαπητοί μου φίλοι καλημέρα σας.

Θα ήθελα τη βοήθειά σας, αφού προσπάθησα να τα καταφέρω από μόνος μου, χωρίς αποτέλεσμα.
Κατεβάζω λοιπόν ένα βιντεάκι από το YouTube με yt-dlp.

Η εντολή που χρησιμοποιώ είναι :

yt-dlp --ignore-errors --embed-thumbnail --extract-audio --audio-format mp3 --format bestaudio --audio-quality 0 -o '~/Downloads/%(title)s-%(artist)s.%(ext)s' <video_URL>

Θέλω όμως το εξαγόμενο αρχείο MP3 να έχει writing library τον Lame 3.100 .
Το ffmpeg χρησιμοποιεί ως writing library το Lavf58.76.100.

Πώς μπορώ να το αλλάξω αυτό;
Ποια είναι η εντολή που θα πρέπει να χρησιμοποιήσω;
Ποιο script πρέπει να χρησιμοποιήσω στον Ffmpeg για να είναι μόνιμη αλλαγή.

Ευχαριστώ πολύ και κάθε βοήθεια ευπρόσδεκτη…

Μπορώ να ρωτήσω γιατί;

Ευχαριστώ για τον χρόνο σου.
Δεν έχει σχέση με τεχνικές λεπτομέρειες και ποιότητα.
Θα έλεγα για λόγους …συναισθηματικούς με κίνδυνο να φαίνεται η απάντηση μου αστεία.
Απλώς … όλα τα χρόνια όταν μπορούσα να επιλέξω κωδικοποιητή,επέλεγα τον LAME.
Συν ότι στα 62 μου χρόνια έχω αποκτήσει και κάποιες παραξενιές…
Ευχαριστώ και πάλι.

1 «Μου αρέσει»

Ναι αυτό με τις παραξενιές το καταλαβαίνω απόλυτα.
Από όσο είδα το ffmpeg μπορεί να ρυθμιστεί να διαλέγει τον lame για κωδικοποιητή αλλά δεν ξέρω πως μπορεί να γίνει αυτό στο yt-dlp. Ίσως κάποιος πιο έμπειρος να έχει την απάντηση…

1 «Μου αρέσει»

Η κωδικοποίση γίνεται με lame, το lavf είναι απλά το κομμάτι του ffmpeg που κάνει τη πλέξη. Μπορείς να πάρεις οποιοδήποτε αρχείο ήχου και να κάνεις τη μετατροπή με ρητή χρήση του lame με την εντολή[0]:

ffmpeg -i input.opus -codec:a libmp3lame -qscale:a 0 output.mp3

και θα δεις η writing library να είναι πάλι lavf. Στη συγκεκριμένη περίπτωση είναι αναγκαίο γιαί ο lame δέχεται μόνο raw pcm (και αρχεία που περίεχουν raw pcm όπως wav) οπότε αναγκαστικά το αρχικό αρχείο πρέπει να διαβαστεί και να μετατραπεί πριν δωθεί σto lame για να το κωδικοποίησει σε mp3.

Χειροκίνητα αυτό, π.χ. για opus που δίνει το youtube-dl όταν ζητάς bestaudio και extract, γίνεται (η εντολή opusdec βρίσκεται στο πακέτο opus-tools):

opusdec --force-wav inpus.opus - | lame -V0 - output.mp3

Φυσικά αν ήταν m4a ή κάτι άλλο η εντολή διαφέρει ενώ πρέπει να έχεις το κατάλληλο εργαλείο. Εν τέλη αυτή τη δουλειά κάνει το ffmpeg, να είναι ένας ελβετικό σουγιάς για μετατροπές media συνδυάζοντας τα κατάλληλα εργαλεία.

Αν παρόλα αυτά θες το αποτέλεσμα που ζητάς:

yt-dlp --ignore-errors --embed-thumbnail --extract-audio --format bestaudio -o '~/Downloads/%(title)s-%(artist)s' --exec "opusdec --force-wav {} - | lame -V0 - {}.mp3 && rm {}" <video_URL>
5 «Μου αρέσει»

Αγαπητέ konfou,

Χίλια ευχαριστώ για τον χρόνο που διέθεσες για την …παραξενιά μου.
Απόλυτη επιτυχία

General
Complete name : /home/nik/Downloads/El Tambor-Danny Serrano, Daniel Serrano Escribano, Daniel Serrano Escribano.opus.mp3
Format : MPEG Audio
File size : 12.3 MiB
Duration : 6 min 28 s
Overall bit rate mode : Variable
Overall bit rate : 266 kb/s
Writing library : *[u]*LAME3.100*[/u]*

Audio
Format : MPEG Audio
Format version : Version 1
Format profile : Layer 3
Format settings : Joint stereo
Duration : 6 min 28 s
Bit rate mode : Variable
Bit rate : 266 kb/s
Minimum bit rate : 32.0 kb/s
Channel(s) : 2 channels
Sampling rate : 48.0 kHz
Frame rate : 41.667 FPS (1152 SPF)
Compression mode : Lossy
Stream size : 12.3 MiB (100%)
Writing library : ***LAME3.100***
Encoding settings : -m j -V 0 -q 0 -lowpass 24 --vbr-new -b 32¨

Υποκλίνομαι στις γνώσεις , στην εμπειρία αλλά κύρια στην καλή σου διάθεση για υποστήριξη και βοήθεια.

Και πάλι ευχαριστώ…

Το θέμα θεωρείται λυμένο.

1 «Μου αρέσει»

Αυτό το νήμα έκλεισε αυτόματα 2 ημέρες μετά την τελευταία απάντηση. Δεν επιτρέπονται πλέον νέες απαντήσεις.