Recherche avancée

Médias (91)

Autres articles (104)

  • Encoding and processing into web-friendly formats

    13 avril 2011, par

    MediaSPIP automatically converts uploaded files to internet-compatible formats.
    Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
    Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
    Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
    All uploaded files are stored online in their original format, so you can (...)

  • Gestion de la ferme

    2 mars 2010, par

    La ferme est gérée dans son ensemble par des "super admins".
    Certains réglages peuvent être fais afin de réguler les besoins des différents canaux.
    Dans un premier temps il utilise le plugin "Gestion de mutualisation"

  • ANNEXE : Les plugins utilisés spécifiquement pour la ferme

    5 mars 2010, par

    Le site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)

Sur d’autres sites (10875)

  • Generating video from images and audio by FFmpeg

    24 mars 2020, par Cody

    I am new to FFmpeg and video/audio encoding. I try to use Fluent ffmpeg to generate a MP4 video from images and audio.

    There are 2 inputs only :

    If the audio duration is longer video length, just discard the excessive part of audio at the end.
    And all the images have to be shown in same duration.(i.e. The video should be in n/d FPS for n images and video with d second)

    Since the image input are not in number sequence, I use concat demuxer as input :

           let VIDEO_DURATION = 8;
           let ffmpeg = await FfmpegUtil.createCommand();
           let imageFiles: string[] = ["foo.jpg", "bar.jpg", ...]; //assume there are 67 image files
           let demuxerFile = await FfmpegUtil.createConcatDemuxerFile(imageFiles);
           let audioFile: string = "path/to/audio.wav";

           ffmpeg.input(demuxerFile)
               .inputOption(
                   "-f", "concat",
                   "-safe", "0",
               )
               .input(audioFile)
               .outputOption(
                   "-r", `${imageFiles.length}/${VIDEO_DURATION}`,
               )
               .duration(VIDEO_DURATION)
               .save("path/to/output.mp4")
           ;

    it will spawn a ffmpeg command :

    ffmpeg
       -f concat
       -safe 0
       -i path/to/demuxerFile.txt
       -i path/to/audio.wav
       -y
       -r 67/8
       -t 8
       path/to/output.mp4

    However the output file cannot be played.

    I also tried "-framerate", ${imageFiles.length}/${VIDEO_DURATION} in .outputOption(), it still output a file cannot be played and I found the frame rate always be 25 in its file property.

    Update 1 (added spawned command & ffmpeg console log) :

    spawned ffmpeg command & console log ("-r", `${imageFiles.length}/${VIDEO_DURATION}` as outputOption) :

    ffmpeg -f concat -safe 0 -i path/to/demuxerFile.txt -i path/to/audio.wav -y -r 67/8 -t 8 path/to/output_r.mp4

    ffmpeg version git-2020-01-26-5e62100 Copyright (c) 2000-2020 the FFmpeg developers
     built with gcc 9.2.1 (GCC) 20200122
     configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --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-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
     libavutil      56. 38.100 / 56. 38.100
     libavcodec     58. 67.100 / 58. 67.100
     libavformat    58. 36.100 / 58. 36.100
     libavdevice    58.  9.103 / 58.  9.103
     libavfilter     7. 71.100 /  7. 71.100
     libswscale      5.  6.100 /  5.  6.100
     libswresample   3.  6.100 /  3.  6.100
     libpostproc    55.  6.100 / 55.  6.100
    Input #0, concat, from 'path/to/demuxerFile.txt':
     Duration: N/A, start: 0.000000, bitrate: N/A
       Stream #0:0: Video: mjpeg (Baseline), yuvj444p(pc, bt470bg/unknown/unknown), 4677x4677 [SAR 256:256 DAR 1:1], 25 tbr, 25 tbn, 25 tbc
    Guessed Channel Layout for Input Stream #1.0 : stereo
    Input #1, wav, from 'path/to/audio.wav':
     Metadata:
       artist          : TextAloud: IVONA Kimberly22
       date            : 2018
       genre           : Speech
       title           : 38750336.mp3
       album           : Created: 7/26/2018 4:56:13 PM
       encoder         : Lavf58.16.100
       encoded_by      : Lame MP3
     Duration: 00:00:15.57, bitrate: 705 kb/s
       Stream #1:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 22050 Hz, stereo, s16, 705 kb/s
    Stream mapping:
     Stream #0:0 -> #0:0 (mjpeg (native) -> h264 (libx264))
     Stream #1:0 -> #0:1 (pcm_s16le (native) -> aac (native))
    Press [q] to stop, [?] for help
    [libx264 @ 000001e395041400] using SAR=1/1
    [libx264 @ 000001e395041400] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
    [libx264 @ 000001e395041400] profile High 4:4:4 Predictive, level 6.0, 4:4:4, 8-bit
    [libx264 @ 000001e395041400] 264 - core 159 - H.264/MPEG-4 AVC codec - Copyleft 2003-2019 - http://www.videolan.org/x264.html - options: 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=4 threads=6 lookahead_threads=1 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=8 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
    Output #0, mp4, to 'path/to/output_r.mp4':
     Metadata:
       encoder         : Lavf58.36.100
       Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuvj444p(pc, progressive), 4677x4677 [SAR 256:256 DAR 1:1], q=-1--1, 8.38 fps, 17152 tbn, 8.38 tbc
       Metadata:
         encoder         : Lavc58.67.100 libx264
       Side data:
         cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
       Stream #0:1: Audio: aac (LC) (mp4a / 0x6134706D), 22050 Hz, stereo, fltp, 128 kb/s
       Metadata:
         encoder         : Lavc58.67.100 aac
    frame=    3 fps=0.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=    5 fps=4.2 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A dup=0 drop=4 speed=   0x    
    frame=    6 fps=3.4 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A dup=0 drop=7 speed=   0x    
    frame=    8 fps=3.4 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A dup=0 drop=10 speed=   0x    
    frame=   10 fps=3.5 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A dup=0 drop=14 speed=   0x    
    frame=   11 fps=3.2 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A dup=0 drop=16 speed=   0x    
    frame=   13 fps=3.2 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A dup=0 drop=20 speed=   0x    
    frame=   14 fps=3.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A dup=0 drop=22 speed=   0x    
    frame=   16 fps=3.1 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A dup=0 drop=26 speed=   0x    
    frame=   17 fps=2.9 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A dup=0 drop=28 speed=   0x    
    frame=   18 fps=2.8 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A dup=0 drop=31 speed=   0x    
    frame=   20 fps=2.9 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A dup=0 drop=34 speed=   0x    
    frame=   21 fps=2.8 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A dup=0 drop=36 speed=   0x    
    frame=   23 fps=2.9 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A dup=0 drop=40 speed=   0x    
    frame=   24 fps=2.8 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A dup=0 drop=42 speed=   0x    
    frame=   24 fps=0.7 q=-1.0 Lsize=     752kB time=00:00:08.03 bitrate= 766.4kbits/s dup=0 drop=43 speed=0.22x    
    video:624kB audio:125kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.359236%
    [libx264 @ 000001e395041400] frame I:1     Avg QP:12.79  size:257554
    [libx264 @ 000001e395041400] frame P:15    Avg QP:13.10  size: 20487
    [libx264 @ 000001e395041400] frame B:8     Avg QP:13.10  size:  9231
    [libx264 @ 000001e395041400] consecutive B-frames: 45.8% 25.0% 12.5% 16.7%
    [libx264 @ 000001e395041400] mb I  I16..4: 18.4% 79.2%  2.4%
    [libx264 @ 000001e395041400] mb P  I16..4:  1.0%  3.3%  0.4%  P16..4:  1.0%  0.2%  0.2%  0.0%  0.0%    skip:93.9%
    [libx264 @ 000001e395041400] mb B  I16..4:  0.1%  0.2%  0.1%  B16..8:  1.8%  0.1%  0.0%  direct: 2.9%  skip:94.7%  L0:58.1% L1:40.2% BI: 1.7%
    [libx264 @ 000001e395041400] 8x8 transform intra:75.0% inter:82.7%
    [libx264 @ 000001e395041400] coded y,u,v intra: 6.1% 3.5% 4.4% inter: 0.2% 1.2% 0.5%
    [libx264 @ 000001e395041400] i16 v,h,dc,p: 80% 16%  3%  2%
    [libx264 @ 000001e395041400] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 46%  8% 44%  0%  0%  0%  0%  0%  0%
    [libx264 @ 000001e395041400] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 29% 27% 25%  3%  3%  3%  4%  3%  3%
    [libx264 @ 000001e395041400] Weighted P-Frames: Y:0.0% UV:0.0%
    [libx264 @ 000001e395041400] ref P L0: 75.6%  3.3% 14.8%  6.3%
    [libx264 @ 000001e395041400] ref B L0: 88.6% 10.7%  0.7%
    [libx264 @ 000001e395041400] ref B L1: 98.7%  1.3%
    [libx264 @ 000001e395041400] kb/s:1783.06
    [aac @ 000001e3951e7f80] Qavg: 55135.730

    spawned ffmpeg command & console log ("-framerate", `${imageFiles.length}/${VIDEO_DURATION}` as outputOption) :

    ffmpeg -f concat -safe 0 -i path/to/demuxerFile.txt -i path/to/audio.wav -y -framerate 67/8 -t 8 path/to/output_framerate.mp4

    ffmpeg version git-2020-01-26-5e62100 Copyright (c) 2000-2020 the FFmpeg developers
     built with gcc 9.2.1 (GCC) 20200122
     configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --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-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
     libavutil      56. 38.100 / 56. 38.100
     libavcodec     58. 67.100 / 58. 67.100
     libavformat    58. 36.100 / 58. 36.100
     libavdevice    58.  9.103 / 58.  9.103
     libavfilter     7. 71.100 /  7. 71.100
     libswscale      5.  6.100 /  5.  6.100
     libswresample   3.  6.100 /  3.  6.100
     libpostproc    55.  6.100 / 55.  6.100
    Input #0, concat, from 'path/to/demuxerFile.txt':
     Duration: N/A, start: 0.000000, bitrate: N/A
       Stream #0:0: Video: mjpeg (Baseline), yuvj444p(pc, bt470bg/unknown/unknown), 4677x4677 [SAR 256:256 DAR 1:1], 25 tbr, 25 tbn, 25 tbc
    Guessed Channel Layout for Input Stream #1.0 : stereo
    Input #1, wav, from 'path/to/audio.wav':
     Metadata:
       artist          : TextAloud: IVONA Kimberly22
       date            : 2018
       genre           : Speech
       title           : 38750336.mp3
       album           : Created: 7/26/2018 4:56:13 PM
       encoder         : Lavf58.16.100
       encoded_by      : Lame MP3
     Duration: 00:00:15.57, bitrate: 705 kb/s
       Stream #1:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 22050 Hz, stereo, s16, 705 kb/s
    Stream mapping:
     Stream #0:0 -> #0:0 (mjpeg (native) -> h264 (libx264))
     Stream #1:0 -> #0:1 (pcm_s16le (native) -> aac (native))
    Press [q] to stop, [?] for help
    [libx264 @ 000002460bda4740] using SAR=1/1
    [libx264 @ 000002460bda4740] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
    [libx264 @ 000002460bda4740] profile High 4:4:4 Predictive, level 6.0, 4:4:4, 8-bit
    [libx264 @ 000002460bda4740] 264 - core 159 - H.264/MPEG-4 AVC codec - Copyleft 2003-2019 - http://www.videolan.org/x264.html - options: 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=4 threads=6 lookahead_threads=1 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=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
    Output #0, mp4, to 'path/to/output_framerate.mp4':
     Metadata:
       encoder         : Lavf58.36.100
       Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuvj444p(pc, progressive), 4677x4677 [SAR 256:256 DAR 1:1], q=-1--1, 25 fps, 12800 tbn, 25 tbc
       Metadata:
         encoder         : Lavc58.67.100 libx264
       Side data:
         cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
       Stream #0:1: Audio: aac (LC) (mp4a / 0x6134706D), 22050 Hz, stereo, fltp, 128 kb/s
       Metadata:
         encoder         : Lavc58.67.100 aac
    frame=    3 fps=0.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=    6 fps=5.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=    9 fps=5.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   12 fps=5.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   14 fps=4.6 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   16 fps=4.4 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   18 fps=3.9 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   20 fps=3.9 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   22 fps=3.8 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   23 fps=3.6 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   25 fps=3.6 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   27 fps=3.3 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   28 fps=3.1 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   30 fps=3.1 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   33 fps=3.2 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   36 fps=3.3 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   38 fps=3.1 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   39 fps=3.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   40 fps=2.6 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   41 fps=2.4 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   42 fps=2.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   43 fps=1.9 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   44 fps=1.9 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   45 fps=1.8 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   46 fps=1.8 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   47 fps=1.4 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   49 fps=1.5 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   50 fps=1.5 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   51 fps=1.5 q=28.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   51 fps=1.3 q=28.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
    frame=   52 fps=1.3 q=28.0 size=       0kB time=00:00:00.04 bitrate=   8.3kbits/s speed=0.00114x    
    frame=   53 fps=1.3 q=28.0 size=       0kB time=00:00:00.04 bitrate=   8.3kbits/s speed=0.00111x    
    frame=   54 fps=1.2 q=28.0 size=       0kB time=00:00:00.04 bitrate=   8.3kbits/s speed=0.00101x    
    frame=   55 fps=1.2 q=28.0 size=       0kB time=00:00:00.13 bitrate=   2.8kbits/s speed=0.00297x    
    frame=   56 fps=1.1 q=28.0 size=       0kB time=00:00:00.18 bitrate=   2.1kbits/s speed=0.00377x    
    frame=   57 fps=1.1 q=28.0 size=     256kB time=00:00:00.23 bitrate=9033.3kbits/s speed=0.00461x    
    frame=   58 fps=1.1 q=28.0 size=     256kB time=00:00:00.27 bitrate=7527.8kbits/s speed=0.00514x    
    frame=   59 fps=1.0 q=28.0 size=     256kB time=00:00:00.32 bitrate=6452.4kbits/s speed=0.00571x    
    frame=   60 fps=1.0 q=28.0 size=     256kB time=00:00:00.37 bitrate=5645.8kbits/s speed=0.00643x    
    frame=   62 fps=1.0 q=28.0 size=     256kB time=00:00:00.37 bitrate=5645.8kbits/s speed=0.00605x    
    frame=   62 fps=1.0 q=28.0 size=     256kB time=00:00:00.41 bitrate=5018.5kbits/s speed=0.00668x    
    frame=   63 fps=1.0 q=28.0 size=     256kB time=00:00:00.46 bitrate=4516.7kbits/s speed=0.00727x    
    frame=   64 fps=1.0 q=28.0 size=     256kB time=00:00:00.51 bitrate=4106.1kbits/s speed=0.00778x    
    frame=   65 fps=1.0 q=28.0 size=     256kB time=00:00:00.55 bitrate=3763.9kbits/s speed=0.00827x    
    frame=   66 fps=1.0 q=28.0 size=     256kB time=00:00:00.60 bitrate=3474.4kbits/s speed=0.00884x    
    frame=   67 fps=1.0 q=28.0 size=     256kB time=00:00:00.65 bitrate=3226.2kbits/s speed=0.00943x    
    frame=   67 fps=0.6 q=-1.0 Lsize=     872kB time=00:00:08.03 bitrate= 888.9kbits/s speed=0.0752x    
    video:744kB audio:125kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.391708%
    [libx264 @ 000002460bda4740] frame I:1     Avg QP:15.80  size:216204
    [libx264 @ 000002460bda4740] frame P:29    Avg QP:15.19  size: 10747
    [libx264 @ 000002460bda4740] frame B:37    Avg QP:17.07  size:  6300
    [libx264 @ 000002460bda4740] consecutive B-frames: 17.9% 14.9% 31.3% 35.8%
    [libx264 @ 000002460bda4740] mb I  I16..4: 11.4% 86.0%  2.6%
    [libx264 @ 000002460bda4740] mb P  I16..4:  0.5%  1.9%  0.2%  P16..4:  0.7%  0.2%  0.1%  0.0%  0.0%    skip:96.5%
    [libx264 @ 000002460bda4740] mb B  I16..4:  0.1%  0.2%  0.0%  B16..8:  1.3%  0.2%  0.0%  direct: 0.7%  skip:97.5%  L0:57.4% L1:40.7% BI: 1.9%
    [libx264 @ 000002460bda4740] 8x8 transform intra:79.7% inter:31.4%
    [libx264 @ 000002460bda4740] coded y,u,v intra: 5.7% 2.9% 3.7% inter: 0.1% 0.5% 0.2%
    [libx264 @ 000002460bda4740] i16 v,h,dc,p: 70% 23%  4%  2%
    [libx264 @ 000002460bda4740] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 45%  8% 45%  0%  0%  0%  0%  0%  0%
    [libx264 @ 000002460bda4740] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 29% 26% 25%  3%  3%  4%  4%  3%  2%
    [libx264 @ 000002460bda4740] Weighted P-Frames: Y:0.0% UV:0.0%
    [libx264 @ 000002460bda4740] ref P L0: 72.6%  3.0% 16.6%  7.7%
    [libx264 @ 000002460bda4740] ref B L0: 75.7% 20.6%  3.7%
    [libx264 @ 000002460bda4740] ref B L1: 97.7%  2.3%
    [libx264 @ 000002460bda4740] kb/s:2271.59
    [aac @ 000002460bda8580] Qavg: 55135.730
  • FFmpeg seeking (-ss) not working on some devices

    4 juin 2020, par ClassA

    As the title states, -ss command is not working on some devices, like the Huawei Mate 10.

    



    Here is the command I'm using and how I get the values :

    



    Format formatter = new SimpleDateFormat("00:" + "mm:ss.SS");
// Video duration
long duration = getDuration();
// Video duration devided by 6 (I want to get 5 images)
long img1 = duration / 6;
String firstThumbTime = formatter.format(img1);
// Screen dimentions devided by 7
String dimentions = width + ":" + height;

String[] a = {"-ss", firstThumbTime, "-i", mStringFilePath, "-vframes", "1", "-s", dimentions, imageThumbsDirectory + "/" + "thumb1.bmp"};


    



    The command above looks like this :

    



    -ss 00:00:00.47 -i /storage/emulated/0/Android/data/com.my.package/files/MyVideos/2020_02_19_16_00_20.mp4 -vframes 1 -s 154:274 /storage/emulated/0/Android/data/com.my.package/files/ThumbTemp/thumb1.bmp


    



    The strange thing is that it completes without an error, but the output file is unreadable.

    



    I do not have the logs currently, but I have a user that can send it to me if you need it.

    




    



    I'm 100% sure that it is caused by -ss because I use a similar command for trimming a video elsewhere in my application and when the user exports the video without setting trimming points(-ss), then the video works.

    



    Here is the 2 command I use for trimming a video :

    



    Working :

    



    String[] s = {"-i", videonInputPath, "-crf", "18", "-c:v", "libx264", "-preset", "ultrafast", videoOutputPath};


    



    Not working

    



    String[] s = {"-ss", startValue, "-i", videonInputPath, "-crf", "18", "-c:v", "libx264", "-preset", "ultrafast", videoOutputPath};


    




    



    This is the first time a user sends me this issue, so it has to be something with his device.

    



    Any advice would greatly be appreciated.

    




    



    EDIT :

    



    Log as requested by @Gyan in the comment section below (Added -v 48 to command) :

    



    ffmpeg version n4.0-39-gda39990 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 4.9.x (GCC) 20150123 (prerelease)
configuration: --target-os=linux --cross-prefix=/root/bravobit/ffmpeg-android/toolchain-android/bin/arm-linux-androideabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/root/bravobit/ffmpeg-android/toolchain-android/sysroot --enable-pic --enable-libx264 --enable-ffprobe --enable-libopus --enable-libvorbis --enable-libfdk-aac --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-fontconfig --enable-libvpx --enable-libass --enable-yasm --enable-pthreads --disable-debug --enable-version3 --enable-hardcoded-tables --disable-ffplay --disable-linux-perf --disable-doc --disable-shared --enable-static --enable-runtime-cpudetect --enable-nonfree --enable-network --enable-avresample --enable-avformat --enable-avcodec --enable-indev=lavfi --enable-hwaccels --enable-ffmpeg --enable-zlib --enable-gpl --enable-small --enable-nonfree --pkg-config=pkg-config --pkg-config-flags=--static --prefix=/root/bravobit/ffmpeg-android/build/armeabi-v7a --extra-cflags='-I/root/bravobit/ffmpeg-android/toolchain-android/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all' --extra-ldflags='-L/root/bravobit/ffmpeg-android/toolchain-android/lib -Wl,-z,relro -Wl,-z,now -pie' --extra-cxxflags=
libavutil 56. 14.100 / 56. 14.100
libavcodec 58. 18.100 / 58. 18.100
libavformat 58. 12.100 / 58. 12.100
libavdevice 58. 3.100 / 58. 3.100
libavfilter 7. 16.100 / 7. 16.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 1.100 / 5. 1.100
libswresample 3. 1.100 / 3. 1.100
libpostproc 55. 1.100 / 55. 1.100
Splitting the commandline.
Reading option '-ss' ... matched as option 'ss' (set the start time offset) with argument '00:30:02.58'.
Reading option '-i' ... matched as input url with argument '/storage/emulated/0/Download/email/VID-20180720-WA0001.mp4'.
Reading option '-v' ... matched as option 'v' (set logging level) with argument '48'.
Reading option '-vframes' ... matched as option 'vframes' (set the number of video frames to output) with argument '1'.
Reading option '-s' ... matched as option 's' (set frame size (WxH or abbreviation)) with argument '154:308'.
Reading option '/storage/emulated/0/Android/data/com.my.package/files/ThumbTemp/thumb1.bmp' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option v (set logging level) with argument 48.
Successfully parsed a group of options.
Parsing a group of options: input url /storage/emulated/0/Download/email/VID-20180720-WA0001.mp4.
Applying option ss (set the start time offset) with argument 00:30:02.58.
Successfully parsed a group of options.
Opening an input file: /storage/emulated/0/Download/email/VID-20180720-WA0001.mp4.
[NULL @ 0xf1fa5000] Opening '/storage/emulated/0/Download/email/VID-20180720-WA0001.mp4' for reading
[file @ 0xf1f94000] Setting default whitelist 'file,crypto'
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xf1fa5000] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xf1fa5000] ISO: File Type Major Brand: mp42
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xf1fa5000] Unknown dref type 0x206c7275 size 12
Last message repeated 1 times
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xf1fa5000] rfps: 29.833333 0.018442
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xf1fa5000] rfps: 29.916667 0.003419
Last message repeated 1 times
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xf1fa5000] rfps: 30.000000 0.000764
Last message repeated 1 times
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xf1fa5000] rfps: 60.000000 0.003057
Last message repeated 1 times
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xf1fa5000] rfps: 120.000000 0.012228
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xf1fa5000] rfps: 29.970030 0.000295
Last message repeated 1 times
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xf1fa5000] rfps: 59.940060 0.001178
Last message repeated 1 times
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xf1fa5000] Before avformat_find_stream_info() pos: 6937 bytes read:32768 seeks:0 nb_streams:2
[h264 @ 0xf1fda380] nal_unit_type: 7, nal_ref_idc: 1
[h264 @ 0xf1fda380] nal_unit_type: 8, nal_ref_idc: 1
[h264 @ 0xf1fda380] nal_unit_type: 6, nal_ref_idc: 0
[h264 @ 0xf1fda380] nal_unit_type: 5, nal_ref_idc: 1
[h264 @ 0xf1fda380] Format yuv420p chosen by get_format().
[h264 @ 0xf1fda380] Reinit context to 848x480, pix_fmt: yuv420p
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xf1fa5000] All info found
[mov,mp4,m4a,3gp,3g2,mj2 @ 0xf1fa5000] After avformat_find_stream_info() pos: 67446 bytes read:67446 seeks:0 frames:45
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/emulated/0/Download/email/VID-20180720-WA0001.mp4':
Metadata:
major_brand : mp42
minor_version : 1
compatible_brands: mp41mp42isom
creation_time : 2018-07-20T19:57:44.000000Z
Duration: 00:00:15.52, start: 0.000000, bitrate: 1679 kb/s
Stream #0:0(und), 1, 1/600: Video: h264, 1 reference frame (avc1 / 0x31637661), yuv420p(tv, bt709, left), 848x480, 0/1, 1622 kb/s, 30.02 fps, 29.97 tbr, 600 tbn, 1200 tbc (default)
Metadata:
rotate : 90
creation_time : 2018-07-20T19:57:44.000000Z
handler_name : Core Media Video
Side data:
displaymatrix: rotation of -90.00 degrees
Stream #0:1(und), 44, 1/44100: Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 53 kb/s (default)
Metadata:
creation_time : 2018-07-20T19:57:44.000000Z
handler_name : Core Media Audio
Successfully opened the file.
Parsing a group of options: output url /storage/emulated/0/Android/data/com.my.package/files/ThumbTemp/thumb1.bmp.
Applying option vframes (set the number of video frames to output) with argument 1.
Applying option s (set frame size (WxH or abbreviation)) with argument 154:308.
Successfully parsed a group of options.
Opening an output file: /storage/emulated/0/Android/data/com.my.package/files/ThumbTemp/thumb1.bmp.
Successfully opened the file.
detected 8 logical cores
[h264 @ 0xf1fdbf80] nal_unit_type: 7, nal_ref_idc: 1
[h264 @ 0xf1fdbf80] nal_unit_type: 8, nal_ref_idc: 1
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> bmp (native))
Press [q] to stop, [?] for help
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Last message repeated 1 times
[h264 @ 0xf1fdbf80] nal_unit_type: 5, nal_ref_idc: 1
[h264 @ 0xf1fdbf80] Format yuv420p chosen by get_format().
[h264 @ 0xf1fdbf80] Reinit context to 848x480, pix_fmt: yuv420p
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0xf1fdc300] nal_unit_type: 1, nal_ref_idc: 1
[h264 @ 0xf1fdc680] nal_unit_type: 1, nal_ref_idc: 1
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Last message repeated 1 times
[h264 @ 0xf1fdca00] nal_unit_type: 1, nal_ref_idc: 1
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0xf1fdcd80] nal_unit_type: 1, nal_ref_idc: 1
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0xf1fdd100] nal_unit_type: 1, nal_ref_idc: 1
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0xf1fdd480] nal_unit_type: 1, nal_ref_idc: 1
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0xf1fdd800] nal_unit_type: 1, nal_ref_idc: 1
[h264 @ 0xf1fddb80] nal_unit_type: 1, nal_ref_idc: 1
[graph 0 input from stream 0:0 @ 0xf1fe9360] Setting 'video_size' to value '848x480'
[graph 0 input from stream 0:0 @ 0xf1fe9360] Setting 'pix_fmt' to value '0'
[graph 0 input from stream 0:0 @ 0xf1fe9360] Setting 'time_base' to value '1/600'
[graph 0 input from stream 0:0 @ 0xf1fe9360] Setting 'pixel_aspect' to value '0/1'
[graph 0 input from stream 0:0 @ 0xf1fe9360] Setting 'sws_param' to value 'flags=2'
[graph 0 input from stream 0:0 @ 0xf1fe9360] Setting 'frame_rate' to value '30000/1001'
[graph 0 input from stream 0:0 @ 0xf1fe9360] w:848 h:480 pixfmt:yuv420p tb:1/600 fr:30000/1001 sar:0/1 sws_param:flags=2
[transpose @ 0xf1fe9420] Setting 'dir' to value 'clock'
[scaler_out_0_0 @ 0xf1fe9540] Setting 'w' to value '154'
[scaler_out_0_0 @ 0xf1fe9540] Setting 'h' to value '308'
[scaler_out_0_0 @ 0xf1fe9540] Setting 'flags' to value 'bicubic'
[scaler_out_0_0 @ 0xf1fe9540] w:154 h:308 flags:'bicubic' interl:0
[format @ 0xf1fe95a0] Setting 'pix_fmts' to value 'bgra|bgr24|rgb565le|rgb555le|rgb444le|rgb8|bgr8|rgb4_byte|bgr4_byte|gray|pal8|monob'
[AVFilterGraph @ 0xf1fb20c0] query_formats: 7 queried, 6 merged, 0 already done, 0 delayed
[scaler_out_0_0 @ 0xf1fe9540] picking bgr24 out of 12 ref:yuv420p alpha:0
[transpose @ 0xf1fe9420] w:848 h:480 dir:1 -> w:480 h:848 rotation:clockwise vflip:0
[scaler_out_0_0 @ 0xf1fe9540] w:480 h:848 fmt:yuv420p sar:0/1 -> w:154 h:308 fmt:bgr24 sar:0/1 flags:0x4
Output #0, image2, to '/storage/emulated/0/Android/data/com.my.package/files/ThumbTemp/thumb1.bmp':
Metadata:
major_brand : mp42
minor_version : 1
compatible_brands: mp41mp42isom
encoder : Lavf58.12.100
Stream #0:0(und), 0, 1001/30000: Video: bmp, 1 reference frame, bgr24(left), 154x308, 0/1, q=2-31, 200 kb/s, 29.97 fps, 29.97 tbn, 29.97 tbc (default)
Metadata:
encoder : Lavc58.18.100 bmp
creation_time : 2018-07-20T19:57:44.000000Z
handler_name : Core Media Video
Side data:
displaymatrix: rotation of -0.00 degrees
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0xf1fdbf80] nal_unit_type: 1, nal_ref_idc: 1
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0xf1fdc300] nal_unit_type: 1, nal_ref_idc: 1
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0xf1fdc680] nal_unit_type: 1, nal_ref_idc: 1
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0xf1fdca00] nal_unit_type: 1, nal_ref_idc: 1
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0xf1fdcd80] nal_unit_type: 1, nal_ref_idc: 1
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0xf1fdd100] nal_unit_type: 1, nal_ref_idc: 1
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0xf1fdd480] nal_unit_type: 1, nal_ref_idc: 1
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Last message repeated 9 times
[out_0_0 @ 0xf1fe94e0] EOF on sink link out_0_0:default.
No more output streams to write to, finishing.
frame= 0 fps=0.0 q=0.0 Lsize=N/A time=00:00:00.00 bitrate=N/A speed= 0x 
video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Input file #0 (/storage/emulated/0/Download/email/VID-20180720-WA0001.mp4):
Input stream #0:0 (video): 16 packets read (153990 bytes); 16 frames decoded; 
Input stream #0:1 (audio): 0 packets read (0 bytes); 
Total: 16 packets (153990 bytes) demuxed
Output file #0 (/storage/emulated/0/Android/data/com.my.package/files/ThumbTemp/thumb1.bmp):
Output stream #0:0 (video): 0 frames encoded; 0 packets muxed (0 bytes); 
Total: 0 packets (0 bytes) muxed
Output file is empty, nothing was encoded (check -ss / -t / -frames parameters if used)
16 frames successfully decoded, 0 decoding errors
[AVIOContext @ 0xf1fbc000] Statistics: 221436 bytes read, 1 seeks


    


  • Statically built FFMPEG binary segmentation fault

    12 février 2020, par stevendesu

    I want to create a custom build of FFMPEG which rips out everything except for the ability to transmux HLS videos to MP4, and I need this build to be 100% static with no external dependencies

    I tried using the following configuration :

    ./configure \
       --extra-cflags='-static -static-libstdc++ -static-libgcc' \
       --extra-cxxflags='-static -static-libstdc++ -static-libgcc' \
       --extra-ldflags='-static -static-libstdc++ -static-libgcc' \
       --pkg-config-flags='--static' \
       --enable-static \
       --disable-shared \
       --disable-runtime-cpudetect \
       --disable-autodetect \
       --disable-ffplay \
       --disable-ffprobe \
       --disable-doc \
       --disable-avdevice \
       --disable-swresample \
       --disable-swscale \
       --disable-postproc \
       --disable-pthreads \
       --disable-w32threads \
       --disable-os2threads \
       --enable-network \
       --disable-dct \
       --disable-dwt \
       --disable-error-resilience \
       --disable-lsp \
       --disable-lzo \
       --disable-mdct \
       --disable-rdft \
       --disable-fft \
       --disable-faan \
       --disable-pixelutils \
       --disable-encoders \
       --disable-decoders \
       --disable-hwaccels \
       --disable-muxers \
       --enable-muxer=mov \
       --enable-muxer=mp4 \
       --disable-demuxers \
       --enable-demuxer=hls \
       --enable-demuxer=mpegts \
       --enable-demuxer=h264 \
       --enable-demuxer=aac \
       --disable-parsers \
       --enable-parser=h264 \
       --enable-parser=aac \
       --disable-bsfs \
       --disable-protocols \
       --enable-protocol=tcp \
       --enable-protocol=tls \
       --enable-protocol=http \
       --enable-protocol=https \
       --enable-protocol=hls \
       --disable-indevs \
       --disable-outdevs \
       --disable-devices \
       --disable-filters \
       --disable-alsa \
       --disable-appkit \
       --disable-avfoundation \
       --disable-bzlib \
       --disable-coreimage \
       --disable-iconv \
       --disable-lzma \
       --enable-openssl \
       --disable-sndio \
       --disable-sdl2 \
       --disable-securetransport \
       --disable-xlib \
       --disable-zlib \
       --disable-amf \
       --disable-audiotoolbox \
       --disable-cuda-llvm \
       --disable-cuvid \
       --disable-d3d11va \
       --disable-dxva2 \
       --disable-ffnvcodec \
       --disable-nvdec \
       --disable-nvenc \
       --disable-v4l2-m2m \
       --disable-vaapi \
       --disable-vdpau \
       --disable-videotoolbox \
       --disable-debug

    This looked about like what I wanted :

    install prefix            /usr/local
    source path               .
    C compiler                gcc
    C library                 glibc
    ARCH                      x86 (generic)
    big-endian                no
    runtime cpu detection     no
    standalone assembly       yes
    x86 assembler             nasm
    MMX enabled               yes
    MMXEXT enabled            yes
    3DNow! enabled            yes
    3DNow! extended enabled   yes
    SSE enabled               yes
    SSSE3 enabled             yes
    AESNI enabled             yes
    AVX enabled               yes
    AVX2 enabled              yes
    AVX-512 enabled           yes
    XOP enabled               yes
    FMA3 enabled              yes
    FMA4 enabled              yes
    i686 features enabled     yes
    CMOV is fast              yes
    EBX available             yes
    EBP available             yes
    debug symbols             no
    strip symbols             yes
    optimize for size         no
    optimizations             yes
    static                    yes
    shared                    no
    postprocessing support    no
    network support           yes
    threading support         no
    safe bitstream reader     yes
    texi2html enabled         no
    perl enabled              yes
    pod2man enabled           yes
    makeinfo enabled          no
    makeinfo supports HTML    no

    External libraries:
    openssl

    External libraries providing hardware acceleration:

    Libraries:
    avcodec                 avfilter                avformat                avutil

    Programs:
    ffmpeg

    Enabled decoders:

    Enabled encoders:

    Enabled hwaccels:

    Enabled parsers:
    aac                     h264

    Enabled demuxers:
    aac                     h264                    hls                     mpegts

    Enabled muxers:
    mov                     mp4

    Enabled protocols:
    hls                     http                    https                   tcp                     tls

    Enabled filters:
    aformat                 anull                   atrim                   format                  hflip                   null                    transpose               trim                    vflip

    Enabled bsfs:
    null

    Enabled indevs:

    Enabled outdevs:

    License: LGPL version 2.1 or later

    It included several filters which I won’t ever need or use, but these filters are pulled in automatically if you don’t specify --disable-avfilter, and specifying --disable-avfilter prevents the ffmpeg binary from being produced. So I’m stuck with those.

    Using these parameters and then running make, I received a binary that was about 5.9 MB in size and looked right :

    $> ldd ffmpeg
           not a dynamic executable

    But when I try to run it :

    $> ./ffmpeg -version
    Segmentation fault

    Using valgrind to try and inspect the cause of the segmentation fault :

    $> valgrind ./ffmpeg -version
    .... lots of stuff ...
    ==61362== Jump to the invalid address stated on the next line
    ==61362==    at 0x0: ???
    ==61362==    by 0x70BB1B: ??? (in /src/FFmpeg/ffmpeg)
    ==61362==    by 0x70B2E6: ??? (in /src/FFmpeg/ffmpeg)
    ==61362==    by 0x4033F9: ??? (in /src/FFmpeg/ffmpeg)
    ==61362==    by 0x1FFF000677: ???
    ==61362==  Address 0x0 is not stack'd, malloc'd or (recently) free'd
    ==61362==
    ==61362==
    ==61362== Process terminating with default action of signal 11 (SIGSEGV)
    ==61362==  Bad permissions for mapped region at address 0x0
    ==61362==    at 0x0: ???
    ==61362==    by 0x70BB1B: ??? (in /src/FFmpeg/ffmpeg)
    ==61362==    by 0x70B2E6: ??? (in /src/FFmpeg/ffmpeg)
    ==61362==    by 0x4033F9: ??? (in /src/FFmpeg/ffmpeg)
    ==61362==    by 0x1FFF000677: ???
    ==61362==
    ==61362== HEAP SUMMARY:
    ==61362==     in use at exit: 0 bytes in 0 blocks
    ==61362==   total heap usage: 0 allocs, 0 frees, 0 bytes allocated
    ==61362==
    ==61362== All heap blocks were freed -- no leaks are possible
    ==61362==
    ==61362== For counts of detected and suppressed errors, rerun with: -v
    ==61362== Use --track-origins=yes to see where uninitialised values come from
    ==61362== ERROR SUMMARY: 93 errors from 90 contexts (suppressed: 0 from 0)
    Segmentation fault

    Attempting to access memory at location 0x0 sounds like trying to follow a null pointer. But I’m not sure how to fix this.

    gdb backtrace

    When I first ran gdb ./ffmpeg gdb immediately gave me a segmentation fault and I wasn’t kicked into the gdb REPL, so I couldn’t investigate

    After rebuilding ffmpeg I was able to get in this time :

    $> gdb ./ffmpeg

    GNU gdb (Ubuntu 8.1-0ubuntu3.2) 8.1.0.20180409-git
    Copyright (C) 2018 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later /gnu.org/licenses/gpl.html>
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
    and "show warranty" for details.
    This GDB was configured as "x86_64-linux-gnu".
    Type "show configuration" for configuration details.
    For bug reporting instructions, please see:
    /www.gnu.org/software/gdb/bugs/>.
    Find the GDB manual and other documentation resources online at:
    /www.gnu.org/software/gdb/documentation/>.
    For help, type "help".
    Type "apropos word" to search for commands related to "word"...
    Reading symbols from ffmpeg...done.
    (gdb) r
    Starting program: /src/FFmpeg/ffmpeg
    warning: Error disabling address space randomization: Operation not permitted

    Program received signal SIGSEGV, Segmentation fault.
    0x0000000000000000 in ?? ()
    (gdb) bt
    #0  0x0000000000000000 in ?? ()
    #1  0x0000000000f9a8d5 in __register_frame_info_bases.part.6 ()
    #2  0x00000000004445fd in frame_dummy ()
    #3  0x0000000000000001 in ?? ()
    #4  0x0000000000ebd20c in __libc_csu_init ()
    #5  0x0000000000ebc9d7 in __libc_start_main ()
    #6  0x000000000044451a in _start ()
    (gdb)

    I tried grep’ing the code base for __register_frame_info_bases and found nothing. So I’m not really sure where to go from here

    A fix, but not an explanation

    By randomly removing configuration parameters and rebuilding I discovered that --disable-pthreads was causing the segmentation fault. When I remove this, ffmpeg runs just fine

    I don’t know why this is the case, though. Why would they make it possible to remove something that you need to run ?