Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 16/12/2019, à 12:43

Jarodd

ffmpeg coupe la fin de la vidéo

Bonjour,

J'ai des vidéos au format .ts, que je convertis en .mp4 pour une meilleure compatibilité avec les différents lecteurs. La conversion se fait bien, mais j'ai une erreur avec ffmpeg, et il me manque 8 ou 9 secondes pour chaque vidéo traitée. Le reste est bon, son + image, et bien synchronisé.

Voici la commande tapée, et l'erreur obtenue :

jarodd@ubuntu:~/Bureau$ ffmpeg -i video.ts -acodec copy -vcodec copy video.mp4
ffmpeg version 3.4.6-0ubuntu0.18.04.1 Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 7 (Ubuntu 7.3.0-16ubuntu3)
  configuration: --prefix=/usr --extra-version=0ubuntu0.18.04.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-librsvg --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
  libavutil      55. 78.100 / 55. 78.100
  libavcodec     57.107.100 / 57.107.100
  libavformat    57. 83.100 / 57. 83.100
  libavdevice    57. 10.100 / 57. 10.100
  libavfilter     6.107.100 /  6.107.100
  libavresample   3.  7.  0 /  3.  7.  0
  libswscale      4.  8.100 /  4.  8.100
  libswresample   2.  9.100 /  2.  9.100
  libpostproc    54.  7.100 / 54.  7.100
Input #0, mpegts, from 'video.ts':
  Duration: 00:11:59.08, start: 10.000000, bitrate: 2157 kb/s
  Program 16727 
    Stream #0:0[0x22](qaa): Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 111 kb/s
    Stream #0:1[0x21]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p(progressive), 1280x720 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc
Output #0, mp4, to '21.mp4':
  Metadata:
    encoder         : Lavf57.83.100
    Stream #0:0: Video: h264 (High) (avc1 / 0x31637661), yuv420p(progressive), 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 25 fps, 25 tbr, 90k tbn, 90k tbc
    Stream #0:1(qaa): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 111 kb/s
Stream mapping:
  Stream #0:1 -> #0:0 (copy)
  Stream #0:0 -> #0:1 (copy)
Press [q] to stop, [?] for help
frame=16617 fps=0.0 q=-1.0 size=  168704kB time=00:11:04.66 bitrate=2079.3kbits/[mpegts @ 0x5650e2986ba0] PES packet size mismatch
[AVBSFContext @ 0x5650e2b1e620] Input packet too small
[AVBSFContext @ 0x5650e2b1e620] Failed to send packet to filter aac_adtstoasc for stream 0
av_interleaved_write_frame(): Invalid data found when processing input
frame=17755 fps=0.0 q=-1.0 Lsize=  180949kB time=00:11:50.16 bitrate=2087.3kbits/s speed=1.01e+03x    
video:172218kB audio:8548kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.101001%
Conversion failed!
jarodd@ubuntu:~/Bureau$

J'utilise ffmpeg 3.4.6 sur Ubuntu 18.04.

Qu'est-ce que je dois faire pour ne pas avoir cette coupure ? Je ne comprends pas l'erreur retournée par ffmpeg.

Merci pour votre aide.


Ubuntu 22.04.3 LTS (64 bits)

Hors ligne

#2 Le 16/12/2019, à 22:17

melixgaro

Re : ffmpeg coupe la fin de la vidéo

Bonjour,

es-tu sûr que la vidéo d'origine n'est pas elle-même corrompue ?


Linux depuis ~2007. Xubuntu seulement.

Hors ligne

#3 Le 17/12/2019, à 09:43

Jarodd

Re : ffmpeg coupe la fin de la vidéo

Bonjour,
Je viens de vérifier, les fichiers .ts se lisent bien. Ils vont 11mn58/59s, les mp4 obtenus avec ffmpeg font 11mn50s.
Y a-t-il une commande/option pour tester le fichier, et voir une erreur qui n'apparaîtrait pas à la lecture ? (j'utilise VLC)


Ubuntu 22.04.3 LTS (64 bits)

Hors ligne

#4 Le 17/12/2019, à 10:55

grandtoubab

Re : ffmpeg coupe la fin de la vidéo

Salut
AVBSFContext @ 0x5650e2b1e620] Failed to send packet to filter aac_adtstoasc for stream 0 c'est le flux audio qui provoque une erreur
A la place de copier les codecs, tu peux les choisir
exemple

-acodec mp3 -vcodec h264

ça peut réparer des trames foireuses même si la conversion est plus longue

pour lister tous les codecs disponible dans la version de ffmpeg installée

ffmpeg -codecs

exemple
mp3                  MP3 (MPEG audio layer 3) (decoders: mp3float mp3 ) (encoders: libmp3lame libshine )
h264                 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (decoders: h264 h264_v4l2m2m ) (encoders: libx264 libx264rgb h264_omx h264_v4l2m2m h264_vaapi )

Dernière modification par grandtoubab (Le 17/12/2019, à 11:24)


Linux tout seul sur HP Pavilion DV7 et Acer Aspire T650, Canon MG3650 en wifi
Debian 11 Bullseye Gnome/Xorg, Gnome/Wayland avec SDDM
https://bidouilledebian.wordpress.com/
ON M'A VU DANS LE VERCORS, SAUTER A L'ELASTIQUE..... J'AI DANS LES BOTTES DES MONTAGNES DE QUESTIONS....

Hors ligne

#5 Le 18/12/2019, à 15:01

Jarodd

Re : ffmpeg coupe la fin de la vidéo

Bonjour,

Merci pour le conseil.
J'ai bien mp3 et h264 dans la liste des codecs. J'ai testé une conversion avec ces codecs, le fichier n'est pas coupé à la fin. Je teste sa lecture ce soir sur la box.
Par contre j'ai des erreurs dans les logs :

[mpegts @ 0x55fc6a471ba0] PES packet size mismatch:11:49.46 bitrate=1738.1kbits/s speed= 5.3x    
[aac @ 0x55fc6a478700] Input buffer exhausted before END element found
Error while decoding stream #0:0: Invalid data found when processing input
[aac @ 0x55fc6a478700] Multiple frames in a packet.
[aac @ 0x55fc6a478700] channel element 2.6 is not allocated
Error while decoding stream #0:0: Invalid data found when processing input
[aac @ 0x55fc6a478700] channel element 3.14 is not allocated
Error while decoding stream #0:0: Invalid data found when processing input
[aac @ 0x55fc6a478700] channel element 3.15 is not allocated
Error while decoding stream #0:0: Invalid data found when processing input

C'est peut-être sans conséquence sur le fichier final, sur une lecture rapide avec VLC il semble correct.


Ubuntu 22.04.3 LTS (64 bits)

Hors ligne