2017-09-04 8 views
0

En utilisant Ffmpeg sur Android pour faire une vidéo à partir d'une image unique fusionnée avec un fichier audio, cela fonctionne, mais la vidéo de sortie ne cherche pas à timbres ex - toujours à partir de 0:00, sur la recherche de la vidéo à venir, il suffit de redémarrer toute la vidéo depuis le début.ffmpeg en utilisant une image unique et un fichier audio, mais la vidéo de sortie ne peut pas être recherchée (reprend seulement 0:00, même si recherché)

La commande est je -

-y -framerate 30 -i "+ImagePath+" -i "+AudioPath+" -vsync vfr -c:v libx264 -codec:a copy -pix_fmt yuv420p -crf 23 "+OutputVideoPath 

cela peut-être dû à une seule image seule? (une image dans la vidéo) si oui, que peut-on utiliser pour convertir une seule image en vidéo rechercheable.

+0

est votre format AAC fichier audio? Sinon, essayez sans '-codec: une copie'. Essayez simplement comme suit: '-y -framerate 30 -i" + ImagePath + "-i" + AudioPath + "-c: v libx264 -pix_fmt yuv420p -crf 18" + OutputVideoPath' vérifie aussi la fin '" + OutputVideoPath' est-il supposé être comme ça? –

+0

@ VC.One Utilisé la requête sans '-codec: copy' et il ne pouvait toujours pas produire les résultats souhaités. De plus, cela a rendu le processus très lent. Aide s'il vous plaît je suis coincé. –

+0

MP4 devrait avoir un codec audio AAC. Assurez-vous que votre entrée est au format AAC (alors peut juste 'c: une copie') ou bien elle convertira du MP3 en AAC (prend du temps). À tout moment dans les données A + V mixtes, si des problèmes tels que la vidéo gelée ou ne la recherchent pas, la partie sonore est source de problème. Même si vous choisissez MP3 assurez-vous que c'est ** stéréo **, à ** 16 bits ** et un taux d'échantillonnage de ** 44 **. 1 kHz ou ** 48 ** kHz. Je vais tester votre commande quand je suis sur FFmpeg plus tard –

Répondre

0

Cette commande permet de créer un MP4 en recherche (en utilisant l'entrée du fichier image et de l'audio MP3).

ffmpeg -y -i AUDIO.file -f image2 -loop 1 -r 2 -i IMAGE.file -shortest -c:a copy -c:v libx264 -crf 18 -framerate 30 -preset veryfast -movflags +faststart OUTPUT.mp4 

Il suffit de remplacer AUDIO.file et IMAGE.file et OUTPUT.mp4 avec vos noms de fichiers personnalisés.

Essayez ceci dans votre code Android:

-y -i "+AudioPath+" -f image2 -loop 1 -r 2 -i "+ImagePath+" -shortest -c:a copy -c:v libx264 -crf 18 -framerate 30 -preset veryfast -movflags +faststart "+OutputVideoPath+" 

Essayez la configuration de votre code comme ceci:

"-y -i "+AudioPath+" -f image2 -loop 1 -r 2 -i "+ImagePath+" -shortest -c:a copy -c:v libx264 -crf 18 -framerate 30 -preset veryfast -movflags +faststart "+OutputVideoPath 
+1

Changez l'entrée '-r' en' -framerate' et la sortie '-framerate' en' -r'. – LordNeckbeard

+0

@ VC.One Impossible d'analyser la valeur d'option "0x0" comme taille d'image Impossible d'analyser la valeur de l'option "-1" au format de pixel Impossible d'analyser la valeur de l'option "0x0" comme taille d'image Erreur de définition de l'option video_size à la valeur 0x0. Erreur lors de l'application des options au filtre. Erreur lors de l'ouverture des filtres! –

+0

J'ai utilisé FFmpeg sur la ligne de commande de bureau et j'avais ** pas d'erreur **. Est-il possible que votre exemple de code affiché ait commencé comme: '" -y -i "+ AudioPath' etc ...? ** Voir la mise à jour **. Si l'erreur persiste, veuillez afficher le journal complet de cette nouvelle commande. –