Problème lors de la concaténation de 2 vidéos en mode Copy

Started by Tengri, November 04, 2022, 03:13:19 PM

Previous topic - Next topic

Tengri

Bonjour,

Je débute complètement avec Avidemux donc pardon d'avance si je pose des questions évidentes.

J'essaie de concaténer deux vidéos ayant des sources et des caractéristiques différentes. La 1ère est au format 1280x720, la 2nde au format 640x360. J'ai bien compris, de manière empirique  ;D , que je devais d'abord faire correspondre les formats de ces 2 vidéos, j'ai donc réencodé la 2nde afin de calquer toutes ses caractéristiques sur la 1ère : pour la vidéo, format 1280x720 et rééchantillonnage de la fréquence d'image à 29,97 fps ; pour l'audio, rééchantillonnage de la fréquence à 48000 Hz et ajustement du bitrate à 96 kbps.

Idéalement, j'aimerais ensuite pouvoir concaténer ces deux vidéos en mode Copy, sans avoir à réencoder pour ne pas perdre plus en qualité. Néanmoins l'opération échoue : à la fin de la 1ère vidéo, l'audio embraye correctement sur la 2nde vidéo, mais l'image, elle, saute et je n'ai plus que de gros pixels verts jusqu'à la fin.

J'ai édité les informations des 2 vidéos pour voir si quelque chose clochait, mais j'avoue que mes compétences en matière de montage s'arrêtent là. Y a-t-il moyen que je fusionne ces 2 vidéos en mode Copy, ou dois-je nécessairement en passer par un nouvel encodage ? (ce qui est un peu bête, car ça m'oblige à encoder 2 fois de suite la 2nde vidéo)

Les caractéristiques de mes 2 vidéos sont reproduites ci-dessous. Merci d'avance pour votre aide précieuse.  :D

Quote from: Vidéo 1Général
Format                                   : Matroska
Version du format                        : Version 4
Taille du fichier                        : 1,81 Gio
Durée                                    : 1 h 42 min
Débit global moyen                       : 2 519 kb/s
Date d'encodage                          : UTC 2022-09-19 21:26:38
Application utilisée                     : mkvmerge v53.0.0 ('Fool's Gold') 64-bit
Bibliothèque utilisée                    : libebml v1.4.1 + libmatroska v1.6.2

Vidéo
ID                                       : 1
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Profil du format                         : High@L4.1
Paramètres du format                     : CABAC / 3 Ref Frames
Paramètres du format, CABAC              : Oui
Paramètres du format, RefFrames          : 3 images
Identifiant du codec                     : V_MPEG4/ISO/AVC
Durée                                    : 1 h 42 min
Débit                                    : 2 430 kb/s
Largeur                                  : 1 280 pixels
Hauteur                                  : 720 pixels
Format à l'écran                         : 16/9
Type d'images/s                          : Constant
Images par seconde                       : 29,970 (30000/1001) Im/s
Espace de couleurs                       : YUV
Sous-échantillonnage de la chrominance   : 4:2:0
Profondeur des couleurs                  : 8 bits
Type de balayage                         : Progressif
Bits/(Pixel*Image)                       : 0.088
Taille du flux                           : 1,74 Gio (96%)
Bibliothèque utilisée                    : x264 core 59 r859M ce13bb6
Paramètres d'encodage                    : cabac=1 / ref=2 / deblock=1:-2:-1 / analyse=0x3:0x113 / me=hex / subme=5 / me-prepass=0 / brdo=0 / mixed_ref=1 / me_range=12 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / chroma_qp_offset=0 / threads=3 / nr=0 / decimate=1 / mbaff=0 / fgo=0 / bframes=3 / b_pyramid=1 / b_adapt=1 / b_bias=0 / direct=3 / wpredb=1 / bime=0 / keyint=300 / keyint_min=30 / scenecut=40(pre) / rc=2pass / bitrate=2430 / ratetol=1.0 / rceq='blurCplx^(1-qComp)' / qcomp=1.00 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / pb_ratio=1.30 / aq=2:1.00
Langue                                   : Anglais
Default                                  : Oui
Forced                                   : Non

Audio
ID                                       : 2
Format                                   : AAC LC
Format/Info                              : Advanced Audio Codec Low Complexity
Identifiant du codec                     : A_AAC-2
Durée                                    : 1 h 42 min
Débit                                    : 96,0 kb/s
Canaux                                   : 2 canaux
Channel layout                           : L R
Echantillonnage                          : 48,0 kHz
Images par seconde                       : 46,875 Im/s (1024 SPF)
Mode de compression                      : Avec perte
Taille du flux                           : 70,6 Mio (4%)
Langue                                   : Anglais
Default                                  : Oui
Forced                                   : Non


Quote from: Vidéo 2Général
Format                                   : Matroska
Version du format                        : Version 4
Taille du fichier                        : 302 Mio
Durée                                    : 16 min 44s
Débit global moyen                       : 2 520 kb/s
Application utilisée                     : Lavf58.76.100
Bibliothèque utilisée                    : Lavf58.76.100
ErrorDetectionType                       : Per level 1

Vidéo
ID                                       : 1
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Profil du format                         : High@L3.1
Paramètres du format                     : CABAC / 4 Ref Frames
Paramètres du format, CABAC              : Oui
Paramètres du format, RefFrames          : 4 images
Identifiant du codec                     : V_MPEG4/ISO/AVC
Durée                                    : 16 min 44s
Débit nominal                            : 2 420 kb/s
Largeur                                  : 1 280 pixels
Hauteur                                  : 720 pixels
Format à l'écran                         : 16/9
Type d'images/s                          : Constant
Images par seconde                       : 29,970 (30000/1001) Im/s
Espace de couleurs                       : YUV
Sous-échantillonnage de la chrominance   : 4:2:0
Profondeur des couleurs                  : 8 bits
Type de balayage                         : Progressif
Bits/(Pixel*Image)                       : 0.088
Bibliothèque utilisée                    : x264 core 157 r2969
Paramètres d'encodage                    : cabac=1 / ref=3 / deblock=1:0:0 / analyse=0x3:0x113 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=12 / lookahead_threads=2 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=250 / keyint_min=25 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=2pass / mbtree=1 / bitrate=2420 / ratetol=1.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / aq=1:1.00
Default                                  : Oui
Forced                                   : Non

Audio
ID                                       : 2
Format                                   : AAC LC
Format/Info                              : Advanced Audio Codec Low Complexity
Identifiant du codec                     : A_AAC-2
Durée                                    : 16 min 44s
Canaux                                   : 2 canaux
Channel layout                           : L R
Echantillonnage                          : 48,0 kHz
Images par seconde                       : 46,875 Im/s (1024 SPF)
Mode de compression                      : Avec perte
Langue                                   : Français
Default                                  : Oui
Forced                                   : Non


eumagga0x2a

Bonjour,

Quote from: Tengri on November 04, 2022, 03:13:19 PMY a-t-il moyen que je fusionne ces 2 vidéos en mode Copy, ou dois-je nécessairement en passer par un nouvel encodage ?

Chargez la première vidéo dans Avidemux, appuyez sur Alt + Retour, notez la taille et la séquence intitulée "Video Codec Extradata" (qui signifie "configuration du décodeur"). Répétez la même chose pour la deuxième vidéo.

Afin de pouvoir concaténer des vidéos, les deux configurations du décodeur doivent correspondre parfaitement.

Votre cas n'est pas sans espoir car vous connaissez la configuration de l'encodeur vidéo utilisé pour générer le première vidéo :

Paramètres d'encodage                    : cabac=1 / ref=2 / deblock=1:-2:-1 / analyse=0x3:0x113 / me=hex / subme=5 / me-prepass=0 / brdo=0 / mixed_ref=1 / me_range=12 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / chroma_qp_offset=0 / threads=3 / nr=0 / decimate=1 / mbaff=0 / fgo=0 / bframes=3 / b_pyramid=1 / b_adapt=1 / b_bias=0 / direct=3 / wpredb=1 / bime=0 / keyint=300 / keyint_min=30 / scenecut=40(pre) / rc=2pass / bitrate=2430 / ratetol=1.0 / rceq='blurCplx^(1-qComp)' / qcomp=1.00 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / pb_ratio=1.30 / aq=2:1.00
Votre objectif serait de recréer cette configuration avec le plugin x264. Actuellement, la configuration est très différente :

Paramètres d'encodage                    : cabac=1 / ref=3 / deblock=1:0:0 / analyse=0x3:0x113 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=12 / lookahead_threads=2 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=250 / keyint_min=25 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=2pass / mbtree=1 / bitrate=2420 / ratetol=1.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / aq=1:1.00
Veuillez noter que même avec une configuration d'encodeur correspondante, la grande différence de version de la bibliothèque x264 (59 contre 157) peut ce traduire par une configuration du décodeur différente.

Il peut être beaucoup plus facile d'encoder la deuxième vidéo à l'aide d'un codec intermédiaire sans perte (Ut Video ou HuffYUV) ou d'utiliser du profil "Mezzanine" du plugin x264, d'ajouter la deuxième vidéo, puis de ré-encoder les deux.

Tengri

Bonjour,
Merci beaucoup pour votre réponse.
J'ai bien compris la marche à suivre pour éviter de réencoder. Ça me paraît néanmoins être un processus long et fastidieux, pour un résultat incertain.
Vous semblez proposer une autre solution plus simple, mais pour le coup j'avoue que je n'ai pas tout compris. Pourriez-vous détailler un petit peu svp?
Merci d'avance.

Quote from: eumagga0x2aIl peut être beaucoup plus facile d'encoder la deuxième vidéo à l'aide d'un codec intermédiaire sans perte (Ut Video ou HuffYUV) ou d'utiliser du profil "Mezzanine" du plugin x264, d'ajouter la deuxième vidéo, puis de ré-encoder les deux.

eumagga0x2a

Bonjour,

je voulais dire que vous devriez répéter toutes ces étapes –

Quote from: Tengri on November 04, 2022, 03:13:19 PMj'ai donc réencodé la 2nde afin de calquer toutes ses caractéristiques sur la 1ère : pour la vidéo, format 1280x720 et rééchantillonnage de la fréquence d'image à 29,97 fps ; pour l'audio, rééchantillonnage de la fréquence à 48000 Hz et ajustement du bitrate à 96 kbps.

– pour la deuxième vidéo originale, mais sélectionnez un encodeur vidéo différent : soit "Ut Video (ffmpeg)" ou "(FF)HuffYUV" (ou "Mpeg4 AVC (x264)", mais en utilisant la configuration / le préréglage "Mezzanine"). Veuillez noter que le débit binaire vidéo avec des codecs sans perte tels que Ut Video et HuffYUV est énorme!

Chargez ensuite la première vidéo, sélectionnez l'encodeur vidéo que vous préférez pour la sortie finale, puis ajoutez la deuxième vidéo et réencodez les deux.

Tengri

Bonjour,

Merci pour votre explication.
J'ai finalement utilisé le codec x264 en mode Mezzanine, puis réencodé les 2 vidéos ensemble.

Petite(s) question(s) par curiosité :

- si j'avais voulu utiliser le mode Copy, aurais-je eu un moyen rapide de configurer les paramètres d'encodage exactement comme souhaité ? Car sinon, comment savoir à quoi correspondent toutes ces abréviations ?

QuoteParamètres d'encodage                    : cabac=1 / ref=2 / deblock=1:-2:-1 / analyse=0x3:0x113 / me=hex / subme=5 / me-prepass=0 / brdo=0 / mixed_ref=1 / me_range=12 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / chroma_qp_offset=0 / threads=3 / nr=0 / decimate=1 / mbaff=0 / fgo=0 / bframes=3 / b_pyramid=1 / b_adapt=1 / b_bias=0 / direct=3 / wpredb=1 / bime=0 / keyint=300 / keyint_min=30 / scenecut=40(pre) / rc=2pass / bitrate=2430 / ratetol=1.0 / rceq='blurCplx^(1-qComp)' / qcomp=1.00 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / pb_ratio=1.30 / aq=2:1.00

- y a-t-il moyen de réduire le débit avec Ut Video ou HuffYUV ? Car la taille des fichiers est effectivement énoooorme  :o

- ma première vidéo ayant à l'origine un débit de 2430 kbps, y a-t-il un intérêt à "gonfler" le débit à 4000 kbps ou plus lors du réencodage pour limiter la perte de qualité, ou vais-je augmenter la taille de mon fichier pour rien ?

Merci d'avance.

eumagga0x2a

Bonjour,

désolé pour le long retard.

Quote from: Tengri on November 09, 2022, 03:59:54 PM- si j'avais voulu utiliser le mode Copy, aurais-je eu un moyen rapide de configurer les paramètres d'encodage exactement comme souhaité ?

Non, malheureusement il n'y en a pas.

Quote from: Tengri on November 09, 2022, 03:59:54 PMCar sinon, comment savoir à quoi correspondent toutes ces abréviations ?

Les abréviations sont des options de ligne de commande pour x264 (une interface de ligne de commande pour la bibliothèque libx264). Si vous basculez l'interface utilisateur d'Avidemux vers la langue allemande, vous verrez que la traduction allemande inclut des références aux options de ligne de commande. Cela pourrait être utile ici.

libx264 imprime sa configuration dans le journal d'Avidemux (%localappdata%\avidemux\admlog.txt sous Windows) lors du démarrage de l'encodage.

Quote from: Tengri on November 09, 2022, 03:59:54 PM- y a-t-il moyen de réduire le débit avec Ut Video ou HuffYUV ?

Non, les paramètres par défaut fournissent déjà la meilleure compression possible avec ces codecs.

Quote from: Tengri on November 09, 2022, 03:59:54 PM- ma première vidéo ayant à l'origine un débit de 2430 kbps, y a-t-il un intérêt à "gonfler" le débit à 4000 kbps ou plus lors du réencodage pour limiter la perte de qualité, ou vais-je augmenter la taille de mon fichier pour rien ?

À moins que vous n'ayez absolument besoin que le débit corresponde à certaines limites fixes, ne vous souciez pas du débit, mais spécifiez une qualité constante suffisamment élevée (20 ou moins) et laissez la bibliothèque x264 utiliser autant de débit que nécessaire pour cette qualité.