J'essaie d'utiliser FFmpeg pour extraire l'audio d'un mp4 et je continue à rencontrer cette erreur:
CFileffmpegvideo.mp4: No such file or directory exist.
Je suis dans l'invite de commande (dans Windows 7) et j'ai le chemin d'accès C:\Files\ffmpeg
(Où est ffmpeg).
Je lance cette ligne de commande
ffmpeg -i C: \ Files \ ffmpeg \ video.mp4 -f mp3 -ab 320000 -vn music.mp3
Le fichier se trouve dans le même dossier que ffmpeg. Je sais que je manque quelque chose de simple ici, mais qu'est-ce que c'est?
Voici une courte vidéo montrant le processus exact.
Réponses:
J'ai recréé votre situation (du mieux que j'ai pu) sur cet ordinateur après avoir regardé votre vidéo. J'ai téléchargé la même version de ffmpeg (je ne connais pas la construction, car je suis limité à utiliser la version 32 bits), j'ai copié l'exécutable du dossier bin dans le dossier principal, j'ai mis un fichier mp4 appelé "video.mp4" dans là, et utilisé vos paramètres de ligne de commande exacts, moins le chemin absolu ...
..et cela a parfaitement fonctionné pour moi. Maintenant, je ne l'ai pas fait à partir de la même structure de répertoire que vous aviez configurée (c: \ files \ ffmpeg). Avez-vous installé ffmpeg ailleurs sur l'ordinateur? Avez-vous pensé à essayer une version / build précédente? Et 32 bits contre 64 bits ... ou vice versa? Est-ce la première fois que vous utilisez cette version de ffmpeg? Ou ... cela a-t-il parfaitement fonctionné jusqu'à présent? Avez-vous essayé de renommer le fichier d'entrée (idiot, je sais)?
la source
Vous pouvez avoir une double extension de fichier, votre "video.mp4" est en fait "video.mp4.mp4" (regardez la capture d'écran de votre dossier Windows, README.txt a l'extension cachée)
la source
compris le problème.
si vous tapez dir dans la fenêtre d'invite ff, vérifiez à quel dossier il fait référence.
Pour moi, il faisait en fait référence au dossier bin, pas au dossier dans lequel se trouve le fichier batch ffmpeg.
J'ai mis le fichier vidéo dans le dossier "bin" et il l'a trouvé sans problème.
la source
Il semble que ffmpeg ait des problèmes avec votre nom de fichier absolu. Je suppose que, comme il est plus concentré sur les environnements de type Unix, il utilise \ comme caractère d'échappement. Essayez plutôt d'utiliser des barres obliques.
la source
Effectuez une recherche DIR du répertoire pour voir si le nom de fichier n'a pas été changé en "File.mp4.mp4" ou similaire. C'était mon problème avec Windows Vista et 7.
la source
Je sais que c'est un ancien poste mais juste au cas où quelqu'un d'autre tomberait dessus et aurait besoin d'aide; vous pouvez ajouter le chemin d'accès complet à tous les fichiers impliqués et vous pouvez l'exécuter de n'importe où!
Modifiez cette commande avec les valeurs appropriées et copiez / collez-la dans une invite de commande:
C:\ReplaceThisWithFFMpegInstallFolder\ffmpeg.exe -i "C:\ReplaceThisWithSourceFolder\ReplaceThisWithVideoFileName.mp4" -f mp3 -ab 320000 -vn "C:\ReplaceThisWithDestinationFolder\ReplaceThisWithAudioFileName.mp3"
la source
Assurez-vous que le nom de fichier n'a pas d'espace de fin. Dans mon cas, il y avait un espace après l'extension .mp4, ce qui rend la syntaxe correcte: "input.mp4"
la source
J'avais un problème comme celui-ci avec une build Win64 via Cygwin. Je pense que la conversion de chemin automatique nous l'erreur, et je souhaite que cela fonctionne dans plus de scénarios comme avec les chemins de style * NIX.
Cela se produirait également lorsque j'appelais manuellement cygpath lors du transfert des données de chemin depuis mon presse-papiers.
Je pensais que les chemins de style Windows étaient le problème au début, mais c'est parce que lorsque je déplace + clic droit pour copier leurs chemins dans l'explorateur de fichiers, il ajoute des guillemets autour d'eux.
J'essayais d'utiliser cette méthode:
ffmpeg -v error -i file.avi -f null -
https://superuser.com/a/100290/175686Ainsi, le résultat qui fonctionne est des chemins de style Windows sans guillemets.
Un autre lien astucieux: /unix/77016/ffmpeg-pattern-type-glob-not-loading-files-in-correct-order
la source
J'ai eu cette erreur car mon nom de fichier contenait un espace. Pour le résoudre, 1) définissez le répertoire de travail avec
Pushd
2) mettez votre nom de fichier entre guillemets""
Voir ici pour un exemple de travail
la source