FFmpeg: «[h264 @ < hexnumber >] AVC: потребляется только n байтов вместо n + 6»

StackOverflow https://stackoverflow.com/questions/1441242

  •  10-07-2019
  •  | 
  •  

Вопрос

Когда я конвертирую HD-видео, я получаю сообщения: «[h264 @] AVC: потребляется только n байтов вместо n + 6»

Есть ли способ решить проблему? Или есть возможность избавиться от этих сообщений?

~ $ ffmpeg -i original.mp4 -ar 22050 -qscale 7 -s 480x270 result.flv 
FFmpeg version 0.5, Copyright (c) 2000-2009 Fabrice Bellard, et al.
  configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/man --enable-static --enable-shared --cc=x86_64-pc-linux-gnu-gcc --disable-debug --disable-ffplay --disable-ipv6 --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-libxvid --disable-demuxer=v4l --disable-demuxer=v4l2 --disable-demuxer=alsa --disable-demuxer=oss --disable-muxer=alsa --disable-muxer=oss --enable-pthreads --enable-libspeex --enable-libopenjpeg --disable-altivec --cpu=nocona --disable-vhook --enable-gpl --enable-postproc --enable-avfilter --enable-avfilter-lavf --enable-swscale --disable-stripping --enable-hardcoded-tables
  libavutil     49.15. 0 / 49.15. 0
  libavcodec    52.20. 0 / 52.20. 0
  libavformat   52.31. 0 / 52.31. 0
  libavdevice   52. 1. 0 / 52. 1. 0
  libavfilter    0. 4. 0 /  0. 4. 0
  libswscale     0. 7. 1 /  0. 7. 1
  libpostproc   51. 2. 0 / 51. 2. 0
  built on Sep  4 2009 12:52:09, gcc: 4.1.2 (Gentoo 4.1.2 p1.0.1)

Seems stream 0 codec frame rate differs from container frame rate: 59.94 (60000/1001) -> 29.97 (30000/1001)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'original.mp4':
  Duration: 00:04:22.37, start: 0.000000, bitrate: 921 kb/s
    Stream #0.0(eng): Video: h264, yuv420p, 480x270, 29.97 tbr, 29.97 tbn, 59.94 tbc
    Stream #0.1(eng): Audio: aac, 48000 Hz, stereo, s16
Output #0, flv, to 'result.flv':
    Stream #0.0(eng): Video: flv, yuv420p, 480x270, q=2-31, 200 kb/s, 90k tbn, 29.97 tbc
    Stream #0.1(eng): Audio: libmp3lame, 22050 Hz, stereo, s16, 64 kb/s
Stream mapping:
  Stream #0.0 -> #0.0
  Stream #0.1 -> #0.1
Press [q] to stop encoding
[h264 @ 0x62b200]AVC: Consumed only 147 bytes instead of 153
[h264 @ 0x62b200]AVC: Consumed only 2117 bytes instead of 2123
[h264 @ 0x62b200]AVC: Consumed only 28 bytes instead of 34

Спасибо.

Это было полезно?

Решение

Возможно, проблема в том, что к концу кадра добавлены шесть сторожевых байтов. Они абсолютно безвредны, но вставляются некоторыми кодировщиками в качестве маркеров. Пока команда на самом деле не исправит это, вам нужно будет исправить & amp; восстановить FFMPEG. Команда частично исправила это в случаях, когда все оставшиеся байты являются нулями, однако ошибка возникает достаточно часто, когда определенные кодировщики (в частности, Adobe) ведут себя глупо.

Обратите внимание, что это может быть настоящей ошибкой; вам нужно будет сбросить последние несколько байтов фреймов, чтобы убедиться, что там нет ничего, что вам нужно.

Источник: http://lists.mplayerhq.hu /pipermail/ffmpeg-devel/2009-February/062507.html

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top