Newest 'ffmpeg' Questions - Stack Overflow

http://stackoverflow.com/questions/tagged/ffmpeg

Les articles publiés sur le site

  • Simple Build of Libavcodec.so and libavformat.so on Mac

    11 mai 2013, par Dave Lowerre

    Who needs ffmpeg? Not me. What I need is to be able to decode a video stream along with its audio stream, so that can put the frames on an opengl surface in sync with the audio.

    FFmpeg is a tool that transcodes video. That is not what I need. I need its libraries.

    The problem is that every example for building FFmpeg includes junk I just dont need. The latest example I wasted my time on:

    https://github.com/appunite/AndroidFFmpeg

    uses things like freetype2 that I really, REALLY, do not need. Whats more annoying is that it wont even build as described because the example references freetype, not freetype2 so the build steps are broken. Don't even get me started on the problems I had with libtool.

    The kicker is finding libav.org, where they describe on their about page the chaos in the ffmpeg project. Perhaps that is why this is so difficult.

    So, should it be so hard to build just the shared libs? Can someone point me to some documentation, or a tutorial that works? I admit that this is new territory for me but all I have found using Google is chaos.

  • Finding the time of a thumbnail in a video

    10 mai 2013, par Liam

    I have a large set of pre-generated thumbnails and videos. What is the easiest way to figure out the specific time in the video of the associated thumbnail?

    I'd imagine that I would have to use something to loop through all the frames in a video to find a match. What libraries should I use? Something like OpenCV maybe? ffmpeg?

    Python is preferred but not required.

  • How to amplify audio in Libav

    10 mai 2013, par user1915649

    I use the avcodec_encode_audio() function to encode raw data from microphone, but it is very quiet (all mic settings set to max). Is there a quick way to amplify the audio or I must do it manually with each sample?

    P.S. AFAIK, ffmpeg has -vol to amplify audio. Can I use it somehow from my C-code (using Libav)?

  • Stream copy given start and end time in ffmpeg

    10 mai 2013, par praks411

    I'm trying a small program which cuts clip from video file given start and end time. For this I'm doing a simple stream copy of both audio and video stream. I just copied the pts and dts from input packet to output with proper re-scaling. However the output which I'm getting is blank for some duration and then only for last few seconds it is displayed. I thought this could to problem of incorrent pts and dts. So I just manually set pts and dts using counter for each stream. Though I'm able to get the clip but video is very fast and audio goes fine. Please someone explain me how to set current pts and dts for both audio and video stream, when doing stream copy.

    Thanks Pradeep

  • FFMPEG result video freezes in the middle of playback

    10 mai 2013, par Revoluzifer

    I'm trying stitch four source videos together into one grid. For testing purposes I'm working with a single source flv using this command:

    ffmpeg -i woohoo.flv -i woohoo.flv -i woohoo.flv -i woohoo.flv \
    -filter_complex "[0:0]pad=iw:ih[a];[1:0]scale=w=iw/2:h=ih/2[b];
    [2:0]scale=w=iw/2:h=ih/2[c];[3:0]scale=w=iw/2:h=ih/2[d];
    [0:0]scale=w=iw/2:h=ih/2[e];[a][b]overlay=w[x];[x][c]overlay=0:h[y];
    [y][d]overlay=w:h[z];[z][e]overlay=0:0" -qscale 1 stitched.avi
    

    The stitching itself is working great, but somehow the resulting video does not show as expected. After running for a few frames, it gets stuck at a single frame for most of the video, skipping the frames which should be there.

    While encoding ffmpeg throws a freaking lot of messages like:

    [Parsed_overlay_8 @ 000000000459e080] Buffer queue overflow, dropping.
    

    Any hints on how to solve my problem? My source flv is h.264 encoded, coming from Red5 media server.

    Edit: Output is:

    root@s15757871:/opt/red5/webapps/woohoo/streams# ffmpeg -i out_3.mp4 -i 3.mp4 -filter_complex "[0:0]pad=iw:ih[a];[1:0]scale=w=iw/2:h=ih/2[b];[a][b]overlay=w:h" -vcodec libx264 -r 30 -acodec copy out_final.mp4
    ffmpeg version N-52943-g500220a Copyright (c) 2000-2013 the FFmpeg developers
    built on May 10 2013 09:46:03 with gcc 4.4.3 (Ubuntu 4.4.3-4ubuntu5.1)
    configuration: --enable-gpl --enable-libx264 --enable-libmp3lame --enable-nonfree --enable-libaacplus
      libavutil      52. 30.100 / 52. 30.100
      libavcodec     55.  7.100 / 55.  7.100
      libavformat    55.  4.101 / 55.  4.101
      libavdevice    55.  0.100 / 55.  0.100
      libavfilter     3. 63.101 /  3. 63.101
      libswscale      2.  3.100 /  2.  3.100
      libswresample   0. 17.102 /  0. 17.102
      libpostproc    52.  3.100 / 52.  3.100
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'out_3.mp4':
      Metadata:
        major_brand     : isom
        minor_version   : 512
        compatible_brands: isomiso2avc1mp41
        encoder         : Lavf55.4.101
    Duration: 00:00:26.53, start: 0.000000, bitrate: 513 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 640x360 [SAR 1:1 DAR 16:9], 447 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(und): Audio: mp3 (mp4a / 0x6134706D), 44100 Hz, mono, s16p, 62 kb/s
    Metadata:
      handler_name    : SoundHandler
    Input #1, mov,mp4,m4a,3gp,3g2,mj2, from '3.mp4':
      Metadata:
        major_brand     : isom
        minor_version   : 512
        compatible_brands: isomiso2avc1mp41
        encoder         : Lavf55.4.101
    Duration: 00:00:26.60, start: 0.000000, bitrate: 639 kb/s
    Stream #1:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 640x360 [SAR 1:1 DAR 16:9], 574 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc
    Metadata:
      handler_name    : VideoHandler
    Stream #1:1(und): Audio: mp3 (mp4a / 0x6134706D), 44100 Hz, mono, s16p, 62 kb/s
    Metadata:
      handler_name    : SoundHandler
    File 'out_final.mp4' already exists. Overwrite ? [y/N] y
    [libx264 @ 0x19baee0] using SAR=1/1
    [libx264 @ 0x19baee0] using cpu capabilities: MMX2 SSE2Fast SSEMisalign LZCNT
    [libx264 @ 0x19baee0] profile High, level 3.0
    [libx264 @ 0x19baee0] 264 - core 132 r2310 76a5c3a - H.264/MPEG-4 AVC codec - Copyleft 2003-2013 - 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=-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=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 'out_final.mp4':
      Metadata:
        major_brand     : isom
        minor_version   : 512
        compatible_brands: isomiso2avc1mp41
    encoder         : Lavf55.4.101
    Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 640x360 [SAR 1:1 DAR 16:9], q=-1--1, 15360 tbn, 30 tbc
    Stream #0:1(und): Audio: mp3 (i[0][0][0] / 0x0069), 44100 Hz, mono, 62 kb/s
    Metadata:
      handler_name    : SoundHandler
    Stream mapping:
      Stream #0:0 (h264) -> pad
      Stream #1:0 (h264) -> scale
      overlay -> Stream #0:0 (libx264)
      Stream #0:1 -> #0:1 (copy)
    Press [q] to stop, [?] for help
    Buffer queue overflow, dropping.     583kB time=00:00:08.00 bitrate= 597.3kbits/s
    [Parsed_overlay_2 @ 0x19be420] Buffer queue overflow, dropping.
    Last message repeated 202 times
    frame=  795 fps= 96 q=-2.0 Lsize=    1700kB time=00:00:27.04 bitrate= 514.9kbits/s dup=203 drop=0
    video:1487kB audio:196kB subtitle:0 global headers:0kB muxing overhead 1.025454%
    [libx264 @ 0x19baee0] frame I:4     Avg QP:19.83  size: 34019
    [libx264 @ 0x19baee0] frame P:322   Avg QP:22.85  size:  3858
    [libx264 @ 0x19baee0] frame B:469   Avg QP:24.57  size:   305
    [libx264 @ 0x19baee0] consecutive B-frames: 13.8% 15.8% 20.0% 50.3%
    [libx264 @ 0x19baee0] mb I  I16..4: 10.5% 47.8% 41.7%
    [libx264 @ 0x19baee0] mb P  I16..4:  1.4%  3.0%  0.8%  P16..4: 27.1% 14.4%  9.2%  0.0% 0.0%    skip:44.1%
    [libx264 @ 0x19baee0] mb B  I16..4:  0.0%  0.1%  0.0%  B16..8: 15.3%  1.5%  0.2%  direct: 0.3%  skip:82.6%  L0:39.7% L1:53.8% BI: 6.5%
    [libx264 @ 0x19baee0] 8x8 transform intra:56.6% inter:64.9%
    [libx264 @ 0x19baee0] coded y,uvDC,uvAC intra: 58.4% 72.9% 39.0% inter: 8.3% 11.9% 1.0%
    [libx264 @ 0x19baee0] i16 v,h,dc,p: 63% 18% 10% 10%
    [libx264 @ 0x19baee0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 23% 17% 20%  4%  7%  9%  6%  6%  8%
    [libx264 @ 0x19baee0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 27% 21% 13%  5%  7%  8%  6%  6%  7%
    [libx264 @ 0x19baee0] i8c dc,h,v,p: 52% 18% 22%  9%
    [libx264 @ 0x19baee0] Weighted P-Frames: Y:7.5% UV:4.0%
    [libx264 @ 0x19baee0] ref P L0: 70.8% 16.9%  9.3%  2.8%  0.2%
    [libx264 @ 0x19baee0] ref B L0: 90.6%  8.1%  1.3%
    [libx264 @ 0x19baee0] ref B L1: 96.4%  3.6%
    [libx264 @ 0x19baee0] kb/s:459.39
    

    The source mp4 files used here have successfully been converted from flv by ffmpeg before.