1 votes

La base de temps principale de la première liaison d'entrée (1/12800) ne correspond pas à la base de temps correspondante de la deuxième liaison d'entrée (1/90000).

Je reçois l'erreur First input link main timebase (1/12800) do not match the corresponding second input link xfade timebase (1/90000) quand je lance la commande ffmpeg suivante :

ffmpeg -y -progress .progressinfo.dat 
 -i "E:/tmp/_MERGED.Test0.mp4" -i "E:/tmp/f3.ts" 
 -filter_complex "
 [0][1:v]xfade=transition=fade:duration=1:offset=1.645,format=yuv420p ; 
 [0:a][1:a]acrossfade=d=1" 
 -movflags +faststart  "E:/_MERGED.Test.mp4" 

Comment puis-je réparer cela ?

1voto

Rotem Points 483

Vous pouvez corriger la base de temps en utilisant settb filtre .

Dans le cas où il y a un problème avec l'audio, utilisez asettb filtre.

Dans le documentation par exemple, le settb est suivi par setpts=PTS-STARTPTS pour avoir corrigé les timestamps.


Ligne de commande :

ffmpeg -y -progress .progressinfo.dat 
       -i "E:/tmp/_MERGED.Test0.mp4" 
       -i "E:/tmp/f3.ts" 
       -filter_complex "[0:v]settb=AVTB,setpts=PTS-STARTPTS[v0];
                        [1:v]settb=AVTB,setpts=PTS-STARTPTS[v1];
                        [v0][v1]xfade=transition=fade:duration=1:offset=1.645,format=yuv420p;
                        [0:a]asettb=AVTB,asetpts=PTS-STARTPTS[a0];
                        [1:a]asettb=AVTB,asetpts=PTS-STARTPTS[a1];
                        [a0][a1]acrossfade=d=1" 
        -movflags +faststart 
        "E:\tmp\out_MERGED.Test.mp4"

0voto

user1432181 Points 113

Donc après beaucoup d'aide de Rotem (merci encore Rotem), et différentes tentatives et beaucoup de problèmes résultants, je pense que j'ai trouvé ma solution - et c'était de renoncer à essayer de le faire en une seule fois et de le décomposer en 3 - (a) fusionner la vidéo + (b) fusionner l'audio + (c) fusionner la vidéo et l'audio ensemble.

Pour ce faire, j'ai trouvé une page web très utile https://romander.github.io/ffmpeg-script-générateur/ qui m'a donné les commandes dont j'avais besoin (utiliser le " Générer des scripts audio et vidéo séparément ? (scripts séparés plus efficaces) ").

(Note, j'ai aussi ajouté -crf 0 aux commandes de fusion vidéo (a) et de fusion finale (c) de ffmpeg).

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X