Recherche avancée

Médias (0)

Mot : - Tags -/clipboard

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (50)

Sur d’autres sites (9112)

  • Choppy result from FFMPEG Concatenate

    21 juin 2018, par stonehenge

    I am using this code to merge mp4 files that all have identical encoding, format, etc. My issue is that there is choppiness / flickering at the seams where the videos are combined.
    ffmpeg -f concat -i mylist.txt -c copy output.mp4

    How can I ensure the files merge smoothly ?

    Here is the output from the command prompt.

    ffmpeg version N-91329-g830695be36 Copyright (c) 2000-2018 the FFmpeg developers
         built with gcc 7.3.0 (GCC)
         configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-bzlib --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth
         libavutil      56. 18.102 / 56. 18.102
         libavcodec     58. 20.103 / 58. 20.103
         libavformat    58. 17.100 / 58. 17.100
         libavdevice    58.  4.101 / 58.  4.101
         libavfilter     7. 25.100 /  7. 25.100
         libswscale      5.  2.100 /  5.  2.100
         libswresample   3.  2.100 /  3.  2.100
         libpostproc    55.  2.100 / 55.  2.100
       [mov,mp4,m4a,3gp,3g2,mj2 @ 000001d1aab03b80] Auto-inserting h264_mp4toannexb bitstream filter
       Input #0, concat, from 'mylist.txt':
         Duration: N/A, start: 0.000000, bitrate: 74 kb/s
           Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 74 kb/s, 24 fps, 24 tbr, 24k tbn, 48 tbc
           Metadata:
             handler_name    : VideoHandler
       Output #0, mp4, to 'output2.mp4':
         Metadata:
           encoder         : Lavf58.17.100
           Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 74 kb/s, 24 fps, 24 tbr, 24k tbn, 24k tbc
           Metadata:
             handler_name    : VideoHandler
       Stream mapping:
         Stream #0:0 -> #0:0 (copy)
       Press [q] to stop, [?] for help
       [mov,mp4,m4a,3gp,3g2,mj2 @ 000001d1aab0c340] Auto-inserting h264_mp4toannexb bitstream filter
           Last message repeated 1 times
       frame=  195 fps=0.0 q=-1.0 Lsize=      77kB time=00:00:08.00 bitrate=  78.8kbits/s speed= 167x
       video:73kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 5.518728%

    ffmpeg version N-91329-g830695be36 Copyright (c) 2000-2018 the FFmpeg developers
     built with gcc 7.3.0 (GCC)
     configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-bzlib --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth
     libavutil      56. 18.102 / 56. 18.102
     libavcodec     58. 20.103 / 58. 20.103
     libavformat    58. 17.100 / 58. 17.100
     libavdevice    58.  4.101 / 58.  4.101
     libavfilter     7. 25.100 /  7. 25.100
     libswscale      5.  2.100 /  5.  2.100
     libswresample   3.  2.100 /  3.  2.100
     libpostproc    55.  2.100 / 55.  2.100
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '0_10secs.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf58.17.100
     Duration: 00:00:09.71, start: 0.375000, bitrate: 74 kb/s
       Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 71 kb/s, 24 fps, 24 tbr, 24k tbn, 48 tbc (default)
       Metadata:
         handler_name    : VideoHandler
    Input #1, mov,mp4,m4a,3gp,3g2,mj2, from '5_10secs.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf58.17.100
     Duration: 00:00:09.71, start: 0.375000, bitrate: 75 kb/s
       Stream #1:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 72 kb/s, 24 fps, 24 tbr, 24k tbn, 48 tbc (default)
       Metadata:
         handler_name    : VideoHandler
    Input #2, mov,mp4,m4a,3gp,3g2,mj2, from '0_3secs.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf58.17.100
     Duration: 00:00:02.71, start: 0.375000, bitrate: 75 kb/s
       Stream #2:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 70 kb/s, 24 fps, 24 tbr, 24k tbn, 48 tbc (default)
       Metadata:
         handler_name    : VideoHandler
    Input #3, mov,mp4,m4a,3gp,3g2,mj2, from '10_10secs.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf58.17.100
     Duration: 00:00:09.71, start: 0.375000, bitrate: 75 kb/s
       Stream #3:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 72 kb/s, 24 fps, 24 tbr, 24k tbn, 48 tbc (default)
       Metadata:
         handler_name    : VideoHandler
    At least one output file must be specified
  • FFmpeg generated video length doesn't match expected length [on hold]

    21 juin 2018, par BentCoder

    I am using command below to generate video out of images. The problem is the length out the video generated. It is always 5 seconds less than expected. If I have 4 images, I expect to see 20 seconds of video but I am getting 15 seconds instead. The very last image img-03.jpg just appears at the end of the video as if it is a cover image. Any idea why and solution ?

    Command

    ffmpeg -y -framerate 1/5 -f image2 \
    -i img-%2d.jpg \
    -c:v libvpx-vp9 \
    -r 25 \
    -crf 30 -b:v 0 \
    video.webm

    Images

    img-00.jpg
    img-01.jpg
    img-02.jpg
    img-03.jpg

    Output

    ffmpeg version 3.2.10-1~deb9u1~bpo8+1 Copyright (c) 2000-2018 the FFmpeg developers
     built with gcc 4.9.2 (Debian 4.9.2-10)
     configuration: --prefix=/usr --extra-version='1~deb9u1~bpo8+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 --disable-libebur128 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librubberband --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-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
     libavutil      55. 34.101 / 55. 34.101
     libavcodec     57. 64.101 / 57. 64.101
     libavformat    57. 56.101 / 57. 56.101
     libavdevice    57.  1.100 / 57.  1.100
     libavfilter     6. 65.100 /  6. 65.100
     libavresample   3.  1.  0 /  3.  1.  0
     libswscale      4.  2.100 /  4.  2.100
     libswresample   2.  3.100 /  2.  3.100
     libpostproc    54.  1.100 / 54.  1.100
    Input #0, image2, from 'img-%2d.jpg':
     Duration: 00:00:20.00, start: 0.000000, bitrate: N/A
       Stream #0:0: Video: mjpeg, yuvj444p(pc, bt470bg/unknown/unknown), 854x480 [SAR 1:1 DAR 427:240], 0.20 fps, 0.20 tbr, 0.20 tbn, 0.20 tbc
    [swscaler @ 0x55f2af60e800] deprecated pixel format used, make sure you did set range correctly
    [libvpx-vp9 @ 0x55f2af6276a0] v1.3.0
    Output #0, webm, to 'video.webm':
     Metadata:
       encoder         : Lavf57.56.101
       Stream #0:0: Video: vp9 (libvpx-vp9), yuv420p, 854x480 [SAR 1:1 DAR 427:240], q=-1--1, 25 fps, 1k tbn, 25 tbc
       Metadata:
         encoder         : Lavc57.64.101 libvpx-vp9
       Side data:
         cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
    Stream mapping:
     Stream #0:0 -> #0:0 (mjpeg (native) -> vp9 (libvpx-vp9))
    Press [q] to stop, [?] for help
    Input stream #0:0 frame changed from size:854x480 fmt:yuvj444p to size:854x480 fmt:yuvj420p
    [swscaler @ 0x55f2af602b60] deprecated pixel format used, make sure you did set range correctly
    frame=    4 fps=0.0 q=0.0 Lsize=     214kB time=00:00:15.00 bitrate= 117.0kbits/s speed=  16x    
    video:214kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.234810%
  • FFMPEG MKV Causing Errors in DASH JS

    24 juin 2018, par Mike

    I’m getting the following browser errors (on all browsers) using Dash JS when transcoding and MKV file :

    ERROR DOMException: Failed to read the 'buffered' property from 'SourceBuffer': This SourceBuffer has been removed from the parent media source.

    and...

    dash.all.min.js:26 Uncaught (in promise) DOMException: Failed to load because no supported source was found.

    What’s weird is I have no issues when I transcode a MP4 file. I’m using FFMPEG in conjunction with Bento4 to build MPEG DASH and HLS files for my video player.

    What I did to single out FFMPEG was to transcode a video that gave me errors on my test server on my local machine (which works) and start the Bento4 process on that file. Doing that, I had no issues and everything played just fine.

    I have removed FFMPEG and reinstalled it multiple times and I always get the same result. I’m sure I screwed something up on my server, but for the life of me I can’t seem to figure out where to start with fixing the issue.

    FFMPEG Version

    ffmpeg version N-91321-ge85c608 Copyright (c) 2000-2018 the FFmpeg developers

    built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-28)

    configuration:
    --prefix=/root/ffmpeg_build
    --pkg-config-flags=--static
    --extra-cflags=-I/root/ffmpeg_build/include
    --extra-ldflags=-L/root/ffmpeg_build/lib
    --extra-libs=-lpthread
    --extra-libs=-lm
    --bindir=/root/bin
    --enable-gpl
    --enable-libfdk_aac
    --enable-libfreetype
    --enable-libmp3lame
    --enable-libopus
    --enable-libvorbis
    --enable-libtheora
    --enable-libx264
    --enable-nonfree
    libavutil      56. 18.102 / 56. 18.102
    libavcodec     58. 20.102 / 58. 20.102
    libavformat    58. 17.100 / 58. 17.100
    libavdevice    58.  4.101 / 58.  4.101
    libavfilter     7. 25.100 /  7. 25.100
    libswscale      5.  2.100 /  5.  2.100
    libswresample   3.  2.100 /  3.  2.100
    libpostproc    55.  2.100 / 55.  2.100

    FFMPEG Command

    ffmpeg
    -i ${DIRECTORY}/${INPUT_FILE}
    -progress ${DIRECTORY}/transcode.log
    -s 1920x1080
    -c:v libx264
    -b:v 3000k
    -c:a aac
    -b:a 32k
    -minrate 3000k
    -maxrate 3000k
    -bufsize 6000k
    -g 96
    -keyint_min 96
    -sc_threshold 0
    -profile:v high
    -flags +cgop
    -movflags faststart
    -preset ultrafast
    -pix_fmt yuv420p
    ${DIRECTORY}/ffmpeg_1920_1080_3000.mp4 &> ${DIRECTORY}/ffmpeg.log

    Also, I get no errors and and if I access the output files directly, they play just fine.

    I’m sure I’m not including all the information needed to troubleshoot this, so let me know if there is better information I can provide.

    What would cause FFMPEG to transcode MP4 and not MKV ?

    EDIT
    One last thing, I converted the MKV to an MP4 then used the above command and it worked. It’s like MP4 to MP4 is fine, but MKV to MP4 is broke.