Comment puis-je extraire l'audio aac d'un fichier mp4?
J'ai essayé avec ffmpeg et -acodec copy
mais si j'utilise mp4 en sortie, la vidéo sera toujours encodée et le fichier sera de la même taille.
Si j'utilise m4a en sortie, la vidéo restera malgré tout encodée et la taille du fichier sera presque identique.
Avec aac en sortie, je ne peux pas ouvrir le fichier dans puddletag bien que la taille du fichier suggère que la vidéo a été supprimée.
Merci d'avance
J'ai finalement trouvé la solution moi-même en utilisant mp4 ou m4a comme format de sortie et en ajoutant -vn pour empêcher également la copie de la vidéo.
ffmpeg -i input.mp4 -vn -c:a copy output.m4a
(Source: https://superuser.com/a/706622/180675 )
Cela semble simple maintenant:]
Décapage rapide et sans perte
Une autre option:
MP4Box -add infile.mp4#audio outfile.m4a
MP4Box fait partie du paquet gpac.
Juste pour le plaisir, vous pouvez également le faire en utilisant vlc. Le script ci-dessous supprime tous les fichiers * .mp4 du répertoire actuel en * .m4a. Certains messages d'erreur peuvent être ignorés.
#!/bin/bash
quote=\"
executable="/usr/bin/vlc"
argument3=vlc://quit
#parameters
accessvalue=file
muxvalue=mp4
for x in *.mp4; do
inputname="${x}"
strippedname=${x%.mp4}
outputname=${strippedname}.m4a
quote_outputname=${quote}./${outputname}${quote}
echo ${inputname}
echo ${quote_outputname}
qtranscode=#transcode{vcodec=none}: # rm this commnt, cont' nxt line !!
standard{access=$accessvalue,mux=$muxvalue,dst=${quote_outputname}}
argument1="$inputname"
argument2=--sout=$qtranscode
"$executable" -I dummy "$argument1" "$argument2" "$argument3"
done