Recherche avancée

Médias (91)

Autres articles (98)

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;

  • Ecrire une actualité

    21 juin 2013, par

    Présentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
    Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
    Vous pouvez personnaliser le formulaire de création d’une actualité.
    Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...)

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-je poster des contenus à partir d’une tablette Ipad ?
    Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir

Sur d’autres sites (8850)

  • c++ - using FFmpeg encode and UDP with a Webcam

    14 mars, par Rendres

    I'm trying to get frames from a Webcam using OpenCV, encode them with FFmpeg and send them using UDP.

    



    I did before a similar project that instead of sending the packets with UDP, it saved them in a video file.

    



    My code is.

    



    #include &#xA;#include &#xA;#include &#xA;#include &#xA;&#xA;extern "C" {&#xA;#include <libavcodec></libavcodec>avcodec.h>&#xA;#include <libavformat></libavformat>avformat.h>&#xA;#include <libavutil></libavutil>opt.h>&#xA;#include <libavutil></libavutil>imgutils.h>&#xA;#include <libavutil></libavutil>mathematics.h>&#xA;#include <libswscale></libswscale>swscale.h>&#xA;#include <libswresample></libswresample>swresample.h>&#xA;}&#xA;&#xA;#include <opencv2></opencv2>opencv.hpp>&#xA;&#xA;using namespace std;&#xA;using namespace cv;&#xA;&#xA;#define WIDTH 640&#xA;#define HEIGHT 480&#xA;#define CODEC_ID AV_CODEC_ID_H264&#xA;#define STREAM_PIX_FMT AV_PIX_FMT_YUV420P&#xA;&#xA;static AVFrame *frame, *pFrameBGR;&#xA;&#xA;int main(int argc, char **argv)&#xA;{&#xA;VideoCapture cap(0);&#xA;const char *url = "udp://127.0.0.1:8080";&#xA;&#xA;AVFormatContext *formatContext;&#xA;AVStream *stream;&#xA;AVCodec *codec;&#xA;AVCodecContext *c;&#xA;AVDictionary *opts = NULL;&#xA;&#xA;int ret, got_packet;&#xA;&#xA;if (!cap.isOpened())&#xA;{&#xA;    return -1;&#xA;}&#xA;&#xA;av_log_set_level(AV_LOG_TRACE);&#xA;&#xA;av_register_all();&#xA;avformat_network_init();&#xA;&#xA;avformat_alloc_output_context2(&amp;formatContext, NULL, "h264", url);&#xA;if (!formatContext)&#xA;{&#xA;    av_log(NULL, AV_LOG_FATAL, "Could not allocate an output context for &#x27;%s&#x27;.\n", url);&#xA;}&#xA;&#xA;codec = avcodec_find_encoder(CODEC_ID);&#xA;if (!codec)&#xA;{&#xA;    av_log(NULL, AV_LOG_ERROR, "Could not find encoder.\n");&#xA;}&#xA;&#xA;stream = avformat_new_stream(formatContext, codec);&#xA;&#xA;c = avcodec_alloc_context3(codec);&#xA;&#xA;stream->id = formatContext->nb_streams - 1;&#xA;stream->time_base = (AVRational){1, 25};&#xA;&#xA;c->codec_id = CODEC_ID;&#xA;c->bit_rate = 400000;&#xA;c->width = WIDTH;&#xA;c->height = HEIGHT;&#xA;c->time_base = stream->time_base;&#xA;c->gop_size = 12;&#xA;c->pix_fmt = STREAM_PIX_FMT;&#xA;&#xA;if (formatContext->flags &amp; AVFMT_GLOBALHEADER)&#xA;    c->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;&#xA;&#xA;av_dict_set(&amp;opts, "preset", "fast", 0);&#xA;&#xA;av_dict_set(&amp;opts, "tune", "zerolatency", 0);&#xA;&#xA;ret = avcodec_open2(c, codec, NULL);&#xA;if (ret &lt; 0)&#xA;{&#xA;    av_log(NULL, AV_LOG_ERROR, "Could not open video codec.\n");&#xA;}&#xA;&#xA;pFrameBGR = av_frame_alloc();&#xA;if (!pFrameBGR)&#xA;{&#xA;    av_log(NULL, AV_LOG_ERROR, "Could not allocate video frame.\n");&#xA;}&#xA;&#xA;frame = av_frame_alloc();&#xA;if (!frame)&#xA;{&#xA;    av_log(NULL, AV_LOG_ERROR, "Could not allocate video frame.\n");&#xA;}&#xA;&#xA;frame->format = c->pix_fmt;&#xA;frame->width = c->width;&#xA;frame->height = c->height;&#xA;&#xA;ret = avcodec_parameters_from_context(stream->codecpar, c);&#xA;if (ret &lt; 0)&#xA;{&#xA;    av_log(NULL, AV_LOG_ERROR, "Could not open video codec.\n");&#xA;}&#xA;&#xA;av_dump_format(formatContext, 0, url, 1);&#xA;&#xA;ret = avformat_write_header(formatContext, NULL);&#xA;if (ret != 0)&#xA;{&#xA;    av_log(NULL, AV_LOG_ERROR, "Failed to connect to &#x27;%s&#x27;.\n", url);&#xA;}&#xA;&#xA;Mat image(Size(HEIGHT, WIDTH), CV_8UC3);&#xA;SwsContext *swsctx = sws_getContext(WIDTH, HEIGHT, AV_PIX_FMT_BGR24, WIDTH, HEIGHT, AV_PIX_FMT_YUV420P, SWS_BILINEAR, NULL, NULL, NULL);&#xA;int frame_pts = 0;&#xA;&#xA;while (1)&#xA;{&#xA;    cap >> image;&#xA;&#xA;    int numBytesYUV = av_image_get_buffer_size(STREAM_PIX_FMT, WIDTH, HEIGHT, 1);&#xA;    uint8_t *bufferYUV = (uint8_t *)av_malloc(numBytesYUV * sizeof(uint8_t));&#xA;&#xA;    avpicture_fill((AVPicture *)pFrameBGR, image.data, AV_PIX_FMT_BGR24, WIDTH, HEIGHT);&#xA;    avpicture_fill((AVPicture *)frame, bufferYUV, STREAM_PIX_FMT, WIDTH, HEIGHT);&#xA;&#xA;    sws_scale(swsctx, (uint8_t const *const *)pFrameBGR->data, pFrameBGR->linesize, 0, HEIGHT, frame->data, frame->linesize);&#xA;&#xA;    AVPacket pkt = {0};&#xA;    av_init_packet(&amp;pkt);&#xA;&#xA;    frame->pts = frame_pts;&#xA;&#xA;    ret = avcodec_encode_video2(c, &amp;pkt, frame, &amp;got_packet);&#xA;    if (ret &lt; 0)&#xA;    {&#xA;        av_log(NULL, AV_LOG_ERROR, "Error encoding frame\n");&#xA;    }&#xA;&#xA;    if (got_packet)&#xA;    {&#xA;        pkt.pts = av_rescale_q_rnd(pkt.pts, c->time_base, stream->time_base, AVRounding(AV_ROUND_NEAR_INF | AV_ROUND_PASS_MINMAX));&#xA;        pkt.dts = av_rescale_q_rnd(pkt.dts, c->time_base, stream->time_base, AVRounding(AV_ROUND_NEAR_INF | AV_ROUND_PASS_MINMAX));&#xA;        pkt.duration = av_rescale_q(pkt.duration, c->time_base, stream->time_base);&#xA;        pkt.stream_index = stream->index;&#xA;&#xA;        return av_interleaved_write_frame(formatContext, &amp;pkt);&#xA;&#xA;        cout &lt;&lt; "Seguro que si" &lt;&lt; endl;&#xA;    }&#xA;    frame_pts&#x2B;&#x2B;;&#xA;}&#xA;&#xA;avcodec_free_context(&amp;c);&#xA;av_frame_free(&amp;frame);&#xA;avformat_free_context(formatContext);&#xA;&#xA;return 0;&#xA;}&#xA;

    &#xA;&#xA;

    The code compiles but it returns Segmentation fault in the function av_interleaved_write_frame(). I've tried several implementations or several codecs (in this case I'm using libopenh264, but using mpeg2video returns the same segmentation fault). I tried also with av_write_frame() but it returns the same error.

    &#xA;&#xA;

    As I told before, I only want to grab frames from a webcam connected via USB, encode them to H264 and send the packets through UDP to another PC.

    &#xA;&#xA;

    My console log when I run the executable is.

    &#xA;&#xA;

    [100%] Built target display&#xA;[OpenH264] this = 0x0x244b4f0, Info:CWelsH264SVCEncoder::SetOption():ENCODER_OPTION_TRACE_CALLBACK callback = 0x7f0c302a87c0.&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:CWelsH264SVCEncoder::InitEncoder(), openh264 codec version = 5a5c4f1&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:iUsageType = 0,iPicWidth= 640;iPicHeight= 480;iTargetBitrate= 400000;iMaxBitrate= 400000;iRCMode= 0;iPaddingFlag= 0;iTemporalLayerNum= 1;iSpatialLayerNum= 1;fFrameRate= 25.000000f;uiIntraPeriod= 12;eSpsPpsIdStrategy = 0;bPrefixNalAddingCtrl = 0;bSimulcastAVC=0;bEnableDenoise= 0;bEnableBackgroundDetection= 1;bEnableSceneChangeDetect = 1;bEnableAdaptiveQuant= 1;bEnableFrameSkip= 0;bEnableLongTermReference= 0;iLtrMarkPeriod= 30, bIsLosslessLink=0;iComplexityMode = 0;iNumRefFrame = 1;iEntropyCodingModeFlag = 0;uiMaxNalSize = 0;iLTRRefNum = 0;iMultipleThreadIdc = 1;iLoopFilterDisableIdc = 0 (offset(alpha/beta): 0,0;iComplexityMode = 0,iMaxQp = 51;iMinQp = 0)&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:sSpatialLayers[0]: .iVideoWidth= 640; .iVideoHeight= 480; .fFrameRate= 25.000000f; .iSpatialBitrate= 400000; .iMaxSpatialBitrate= 400000; .sSliceArgument.uiSliceMode= 1; .sSliceArgument.iSliceNum= 0; .sSliceArgument.uiSliceSizeConstraint= 1500;uiProfileIdc = 66;uiLevelIdc = 41&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Warning:SliceArgumentValidationFixedSliceMode(), unsupported setting with Resolution and uiSliceNum combination under RC on! So uiSliceNum is changed to 6!&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:Setting MaxSpatialBitrate (400000) the same at SpatialBitrate (400000) will make the    actual bit rate lower than SpatialBitrate&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Warning:bEnableFrameSkip = 0,bitrate can&#x27;t be controlled for RC_QUALITY_MODE,RC_BITRATE_MODE and RC_TIMESTAMP_MODE without enabling skip frame.&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Warning:Change QP Range from(0,51) to (12,42)&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:WELS CPU features/capacities (0x4007fe3f) detected:   HTT:      Y, MMX:      Y, MMXEX:    Y, SSE:      Y, SSE2:     Y, SSE3:     Y, SSSE3:    Y, SSE4.1:   Y, SSE4.2:   Y, AVX:      Y, FMA:      Y, X87-FPU:  Y, 3DNOW:    N, 3DNOWEX:  N, ALTIVEC:  N, CMOV:     Y, MOVBE:    Y, AES:      Y, NUMBER OF LOGIC PROCESSORS ON CHIP: 8, CPU CACHE LINE SIZE (BYTES):        64&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:WelsInitEncoderExt() exit, overall memory usage: 4542878 bytes&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:WelsInitEncoderExt(), pCtx= 0x0x245a400.&#xA;Output #0, h264, to &#x27;udp://192.168.100.39:8080&#x27;:&#xA;Stream #0:0, 0, 1/25: Video: h264 (libopenh264), 1 reference frame, yuv420p, 640x480 (0x0), 0/1, q=2-31, 400 kb/s, 25 tbn&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Debug:RcUpdateIntraComplexity iFrameDqBits = 385808,iQStep= 2016,iIntraCmplx = 777788928&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Debug:[Rc]Layer 0: Frame timestamp = 0, Frame type = 2, encoding_qp = 30, average qp = 30, max qp = 33, min qp = 27, index = 0, iTid = 0, used = 385808, bitsperframe = 16000, target = 64000, remainingbits = -257808, skipbuffersize = 200000&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Debug:WelsEncoderEncodeExt() OutputInfo iLayerNum = 2,iFrameSize = 48252&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Debug:WelsEncoderEncodeExt() OutputInfo iLayerId = 0,iNalType = 0,iNalCount = 2, first Nal Length=18,uiSpatialId = 0,uiTemporalId = 0,iSubSeqId = 0&#xA;[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Debug:WelsEncoderEncodeExt() OutputInfo iLayerId = 1,iNalType = 1,iNalCount = 6, first Nal Length=6057,uiSpatialId = 0,uiTemporalId = 0,iSubSeqId = 0&#xA;[libopenh264 @ 0x244aa00] 6 slices&#xA;./scriptBuild.sh: line 20: 10625 Segmentation fault      (core dumped) ./display&#xA;

    &#xA;&#xA;

    As you can see, FFmpeg uses libopenh264 and configures it correctly. However, no matter what. It always returns the same Segmentation fault error...

    &#xA;&#xA;

    I've used commands like this.

    &#xA;&#xA;

    ffmpeg -s 640x480 -f video4linux2 -i /dev/video0 -r 30 -vcodec libopenh264 -an -f h264 udp://127.0.0.1:8080&#xA;

    &#xA;&#xA;

    And it works perfectly, but I need to process the frames before sending them. Thats why I'm trying to use the libs.

    &#xA;&#xA;

    My FFmpeg version is.

    &#xA;&#xA;

    ffmpeg version 3.3.6 Copyright (c) 2000-2017 the FFmpeg developers&#xA;built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04.3)&#xA;configuration: --disable-yasm --enable-shared --enable-libopenh264 --cc=&#x27;gcc -fPIC&#x27;&#xA;libavutil      55. 58.100 / 55. 58.100&#xA;libavcodec     57. 89.100 / 57. 89.100&#xA;libavformat    57. 71.100 / 57. 71.100&#xA;libavdevice    57.  6.100 / 57.  6.100&#xA;libavfilter     6. 82.100 /  6. 82.100&#xA;libswscale      4.  6.100 /  4.  6.100&#xA;libswresample   2.  7.100 /  2.  7.100&#xA;

    &#xA;&#xA;

    I tried to get more information of the error using gbd, but it didn't give me debugging info.

    &#xA;&#xA;

    How can I solve this problem ? I don't know what else can I try...

    &#xA;&#xA;

    Thank you !

    &#xA;

  • ffmpeg - Take Frame Accurate Screenshot

    20 septembre 2019, par mike

    trying to find a way to take frame accurate screenshots with ffmpeg WITHOUT re-encoding the video.

    When I use :

    ffmpeg -ss -i input -vframes 1 -q:v 2 output.jpg

    with -ss being hh:mm:ss.ms, not matter how I specify the milliseconds, it is never frame accurate with this command. it seems to be landing on the nearest keyframe (which is not accurate enough for my application).

    So, my question is :

    Without re-encoding the video (ergo specifying -ss flag AFTER the input) is there any way to pull frame accurate screenshots via ffmpeg ?

    If not, is there another solution on Windows that would allow that via command line ?

    Thanks !


    ffmpeg log report part 1 :

    ffmpeg started on 2018-01-22 at 02:52:59
    Report written to "ffmpeg-20180122-025259.log"
    Command line:
    "D:\\ffmpeg-3.4.1-win64-static\\bin\\ffmpeg.exe" -ss 1:31:25.9885 -i "V:\\Test\\BDMV\\STREAM\\00000.m2ts" -vframes 1 -q:v 2 -report output.jpg
    ffmpeg version N-89674-g57d0c24132 Copyright (c) 2000-2018 the FFmpeg developers
     built with gcc 7.2.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-amf --enable-cuda --enable-cuvid --enable-d3d11va --enable-nvenc --enable-dxva2 --enable-avisynth --enable-libmfx
     libavutil      56.  7.100 / 56.  7.100
     libavcodec     58.  9.100 / 58.  9.100
     libavformat    58.  3.100 / 58.  3.100
     libavdevice    58.  0.100 / 58.  0.100
     libavfilter     7.  8.100 /  7.  8.100
     libswscale      5.  0.101 /  5.  0.101
     libswresample   3.  0.101 /  3.  0.101
     libpostproc    55.  0.100 / 55.  0.100
    Splitting the commandline.
    Reading option '-ss' ... matched as option 'ss' (set the start time offset) with argument '1:31:25.9885'.
    Reading option '-i' ... matched as input url with argument 'V:\Test\BDMV\STREAM\00000.m2ts'.
    Reading option '-vframes' ... matched as option 'vframes' (set the number of video frames to output) with argument '1'.
    Reading option '-q:v' ... matched as option 'q' (use fixed quality scale (VBR)) with argument '2'.
    Reading option '-report' ... matched as option 'report' (generate a report) with argument '1'.
    Reading option 'output.jpg' ... matched as output url.
    Finished splitting the commandline.
    Parsing a group of options: global .
    Applying option report (generate a report) with argument 1.
    Successfully parsed a group of options.
    Parsing a group of options: input url V:\Test\BDMV\STREAM\00000.m2ts.
    Applying option ss (set the start time offset) with argument 1:31:25.9885.
    Successfully parsed a group of options.
    Opening an input file: V:\Test\BDMV\STREAM\00000.m2ts.
    [NULL @ 000001e53135a680] Opening 'V:\Test\BDMV\STREAM\00000.m2ts' for reading
    [file @ 000001e53135b740] Setting default whitelist 'file,crypto'
    [mpegts @ 000001e53135a680] Format mpegts probed with size=2048 and score=50
    [mpegts @ 000001e53135a680] stream=0 stream_type=1b pid=1011 prog_reg_desc=HDMV
    [mpegts @ 000001e53135a680] stream=1 stream_type=86 pid=1100 prog_reg_desc=HDMV
    [mpegts @ 000001e53135a680] stream=2 stream_type=90 pid=1200 prog_reg_desc=HDMV
    [mpegts @ 000001e53135a680] Before avformat_find_stream_info() pos: 0 bytes read:32768 seeks:0 nb_streams:3
    [mpegts @ 000001e53135a680] parser not found for codec hdmv_pgs_subtitle, packets or times may be invalid.
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [AVBSFContext @ 000001e5313b4380] nal_unit_type: 9, nal_ref_idc: 0
    [AVBSFContext @ 000001e5313b4380] nal_unit_type: 7, nal_ref_idc: 3
    [AVBSFContext @ 000001e5313b4380] nal_unit_type: 8, nal_ref_idc: 3
    [AVBSFContext @ 000001e5313b4380] nal_unit_type: 6, nal_ref_idc: 0
    [AVBSFContext @ 000001e5313b4380] nal_unit_type: 6, nal_ref_idc: 0
    [AVBSFContext @ 000001e5313b4380] nal_unit_type: 5, nal_ref_idc: 3
    [AVBSFContext @ 000001e5313b4380] nal_unit_type: 5, nal_ref_idc: 3
    [AVBSFContext @ 000001e5313b4380] nal_unit_type: 5, nal_ref_idc: 3
    [AVBSFContext @ 000001e5313b4380] nal_unit_type: 5, nal_ref_idc: 3
    [h264 @ 000001e53135c940] nal_unit_type: 9, nal_ref_idc: 0
    [h264 @ 000001e53135c940] nal_unit_type: 7, nal_ref_idc: 3
    [h264 @ 000001e53135c940] nal_unit_type: 8, nal_ref_idc: 3
    [h264 @ 000001e53135c940] nal_unit_type: 6, nal_ref_idc: 0
    [h264 @ 000001e53135c940] nal_unit_type: 6, nal_ref_idc: 0
    [h264 @ 000001e53135c940] nal_unit_type: 5, nal_ref_idc: 3
    [h264 @ 000001e53135c940] nal_unit_type: 5, nal_ref_idc: 3
    [h264 @ 000001e53135c940] nal_unit_type: 5, nal_ref_idc: 3
    [h264 @ 000001e53135c940] nal_unit_type: 5, nal_ref_idc: 3
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] Format yuv420p chosen by get_format().
    [h264 @ 000001e53135c940] Reinit context to 1920x1088, pix_fmt: yuv420p
    [h264 @ 000001e53135c940] no picture
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [h264 @ 000001e53135c940] ct_type:0 pic_struct:0
    [mpegts @ 000001e53135a680] max_analyze_duration 7000000 reached at 7008000 microseconds st:1
    [mpegts @ 000001e53135a680] rfps: 23.916667 0.014415
    [mpegts @ 000001e53135a680] rfps: 23.916667 0.014415
    [mpegts @ 000001e53135a680] rfps: 24.000000 0.002352
    [mpegts @ 000001e53135a680] rfps: 24.000000 0.007275
    [mpegts @ 000001e53135a680] rfps: 48.000000 0.009407
    [mpegts @ 000001e53135a680] rfps: 48.000000 0.013337
    [mpegts @ 000001e53135a680] rfps: 23.976024 0.000000
    [mpegts @ 000001e53135a680] rfps: 23.976024 0.000000
    [mpegts @ 000001e53135a680] rfps: 47.952048 0.000000
    [mpegts @ 000001e53135a680] rfps: 47.952048 0.000000
    [mpegts @ 000001e53135a680] start time for stream 2 is not set in estimate_timings_from_pts
    [mpegts @ 000001e53135a680] Could not find codec parameters for stream 2 (Subtitle: hdmv_pgs_subtitle (pgssub) ([144][0][0][0] / 0x0090)): unspecified size
    Consider increasing the value for the 'analyzeduration' and 'probesize' options
    [mpegts @ 000001e53135a680] After avformat_find_stream_info() pos: 0 bytes read:2494608 seeks:2 frames:828
    [NULL @ 000001e53135c940] nal_unit_type: 7, nal_ref_idc: 3
    [NULL @ 000001e53135c940] nal_unit_type: 8, nal_ref_idc: 3
    [NULL @ 000001e53135c940] ct_type:0 pic_struct:0
    [NULL @ 000001e53135c940] nal_unit_type: 7, nal_ref_idc: 3
    [NULL @ 000001e53135c940] nal_unit_type: 8, nal_ref_idc: 3
    [NULL @ 000001e53135c940] nal_unit_type: 7, nal_ref_idc: 3
    [NULL @ 000001e53135c940] nal_unit_type: 8, nal_ref_idc: 3
    [NULL @ 000001e53135c940] ct_type:0 pic_struct:0
    [NULL @ 000001e53135c940] nal_unit_type: 7, nal_ref_idc: 3
    [NULL @ 000001e53135c940] nal_unit_type: 8, nal_ref_idc: 3
    [NULL @ 000001e53135c940] ct_type:0 pic_struct:0
    [NULL @ 000001e53135c940] ct_type:0 pic_struct:0
    [NULL @ 000001e53135c940] nal_unit_type: 7, nal_ref_idc: 3
    [NULL @ 000001e53135c940] nal_unit_type: 8, nal_ref_idc: 3
    [NULL @ 000001e53135c940] ct_type:0 pic_struct:0
    [NULL @ 000001e53135c940] ct_type:0 pic_struct:0
    [NULL @ 000001e53135c940] nal_unit_type: 7, nal_ref_idc: 3
    [NULL @ 000001e53135c940] nal_unit_type: 8, nal_ref_idc: 3
    [NULL @ 000001e53135c940] ct_type:0 pic_struct:0
    [NULL @ 000001e53135c940] ct_type:0 pic_struct:0
    [NULL @ 000001e53135c940] nal_unit_type: 7, nal_ref_idc: 3
    [NULL @ 000001e53135c940] nal_unit_type: 8, nal_ref_idc: 3
    [NULL @ 000001e53135c940] ct_type:0 pic_struct:0
    [NULL @ 000001e53135c940] nal_unit_type: 7, nal_ref_idc: 3
    [NULL @ 000001e53135c940] nal_unit_type: 8, nal_ref_idc: 3
    [NULL @ 000001e53135c940] ct_type:0 pic_struct:0
    [NULL @ 000001e53135c940] nal_unit_type: 7, nal_ref_idc: 3
    [NULL @ 000001e53135c940] nal_unit_type: 8, nal_ref_idc: 3
    [NULL @ 000001e53135c940] ct_type:0 pic_struct:0
    [NULL @ 000001e53135c940] nal_unit_type: 7, nal_ref_idc: 3
    [NULL @ 000001e53135c940] nal_unit_type: 8, nal_ref_idc: 3
    [NULL @ 000001e53135c940] ct_type:0 pic_struct:0
    [NULL @ 000001e53135c940] nal_unit_type: 7, nal_ref_idc: 3
    [NULL @ 000001e53135c940] nal_unit_type: 8, nal_ref_idc: 3
    [NULL @ 000001e53135c940] ct_type:0 pic_struct:0
    [NULL @ 000001e53135c940] nal_unit_type: 7, nal_ref_idc: 3
    [NULL @ 000001e53135c940] nal_unit_type: 8, nal_ref_idc: 3
    [NULL @ 000001e53135c940] ct_type:0 pic_struct:0
    [NULL @ 000001e53135c940] nal_unit_type: 7, nal_ref_idc: 3
    [NULL @ 000001e53135c940] nal_unit_type: 8, nal_ref_idc: 3
    [NULL @ 000001e53135c940] ct_type:0 pic_struct:0
    [NULL @ 000001e53135c940] ct_type:0 pic_struct:0
    Input #0, mpegts, from 'V:\Test\BDMV\STREAM\00000.m2ts':
     Duration: 01:39:08.15, start: 600.000000, bitrate: 25263 kb/s
     Program 1
       Stream #0:0[0x1011], 169, 1/90000: Video: h264 (High) (HDMV / 0x564D4448), yuv420p(progressive), 1920x1080 [SAR 1:1 DAR 16:9], 23.98 fps, 23.98 tbr, 90k tbn, 47.95 tbc
       Stream #0:1[0x1100], 659, 1/90000: Audio: dts (DTS-HD MA) ([134][0][0][0] / 0x0086), 48000 Hz, stereo, s16p
       Stream #0:2[0x1200], 0, 1/90000: Subtitle: hdmv_pgs_subtitle ([144][0][0][0] / 0x0090)
    Successfully opened the file.
  • how to add audio to existing video using FFMPEG at specific time ?

    29 juin 2023, par Yanshof

    I have video file (.avi) that contain video of 10 minutes. &#xA;I also have audio file (.wav) that contain 1 minute of sound.

    &#xA;&#xA;

    I need to add the audio to the exist video but the audio need to start at after one minute of the video

    &#xA;&#xA;

    How to do it ?

    &#xA;&#xA;

    ( prefer using ffmpeg if its possible )

    &#xA;&#xA;

    try already this query ( 30 seconds delay )

    &#xA;&#xA;

    -i video.avi -i audio.wav -filter_complex \"[1]adelay=30000|30000[aud];[0][aud]amix\" - c:v copy out.avi"&#xA;

    &#xA;&#xA;

    Attached the log of ffmpeg when trying to merge more then one wav :

    &#xA;&#xA;

    ffmpeg started on 2018-01-10 at 11:14:57&#xA;Report written to "ffmpeg-20180110-111457.log"&#xA;Command line:&#xA;ffmpeg.exe -report -i "..\\merged.avi" -i "Storage\\1.wav" -i "Storage\\2.wav" -i "Storage\\3.wav" -filter_complex "adelay=30000|30000" "adelay=91000|91000" "adelay=151000|151000" -c:v copy "Storage\\ALL.AVI"&#xA;ffmpeg version 3.4.1 Copyright (c) 2000-2017 the FFmpeg developers&#xA;  built with gcc 7.2.0 (GCC)&#xA;  configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-bzlib --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --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-cuda --enable-cuvid --enable-d3d11va --enable-nvenc --enable-dxva2 --enable-avisynth --enable-libmfx&#xA;  libavutil      55. 78.100 / 55. 78.100&#xA;  libavcodec     57.107.100 / 57.107.100&#xA;  libavformat    57. 83.100 / 57. 83.100&#xA;  libavdevice    57. 10.100 / 57. 10.100&#xA;  libavfilter     6.107.100 /  6.107.100&#xA;  libswscale      4.  8.100 /  4.  8.100&#xA;  libswresample   2.  9.100 /  2.  9.100&#xA;  libpostproc    54.  7.100 / 54.  7.100&#xA;Splitting the commandline.&#xA;Reading option &#x27;-report&#x27; ... matched as option &#x27;report&#x27; (generate a report) with argument &#x27;1&#x27;.&#xA;Reading option &#x27;-i&#x27; ... matched as input url with argument &#x27;..\mergedVideoOnly.avi&#x27;.&#xA;Reading option &#x27;-i&#x27; ... matched as input url with argument &#x27;\Storage\0030_0130.wav&#x27;.&#xA;Reading option &#x27;-i&#x27; ... matched as input url with argument &#x27;\Storage\0130_0230.wav&#x27;.&#xA;Reading option &#x27;-i&#x27; ... matched as input url with argument &#x27;\Storage\0230_0330.wav&#x27;.&#xA;Reading option &#x27;-filter_complex&#x27; ... matched as option &#x27;filter_complex&#x27; (create a complex filtergraph) with argument &#x27;adelay=30000|30000&#x27;.&#xA;Reading option &#x27;adelay=91000|91000&#x27; ... matched as output url.&#xA;Reading option &#x27;adelay=151000|151000&#x27; ... matched as output url.&#xA;Reading option &#x27;-c:v&#x27; ... matched as option &#x27;c&#x27; (codec name) with argument &#x27;copy&#x27;.&#xA;Reading option &#x27;ALL.AVI&#x27; ... matched as output url.&#xA;Finished splitting the commandline.&#xA;Parsing a group of options: global .&#xA;Applying option report (generate a report) with argument 1.&#xA;Applying option filter_complex (create a complex filtergraph) with argument adelay=30000|30000.&#xA;Successfully parsed a group of options.&#xA;Parsing a group of options: input url ..\mergedVideoOnly.avi.&#xA;Successfully parsed a group of options.&#xA;Opening an input file: ..\mergedVideoOnly.avi.&#xA;[NULL @ 042ed360] Opening &#x27;..\mergedVideoOnly.avi&#x27; for reading&#xA;[file @ 042ee300] Setting default whitelist &#x27;file,crypto&#x27;&#xA;[avi @ 042ed360] Format avi probed with size=2048 and score=100&#xA;[avi @ 042ee500] use odml:1&#xA;[avi @ 042ed360] Before avformat_find_stream_info() pos: 5690 bytes read:100744 seeks:4 nb_streams:1&#xA;[avi @ 042ed360] parser not found for codec scpr, packets or times may be invalid.&#xA;[avi @ 042ed360] parser not found for codec scpr, packets or times may be invalid.&#xA;[avi @ 042ed360] max_analyze_duration 5000000 reached at 5000000 microseconds st:0&#xA;[avi @ 042ed360] rfps: 2.916667 0.012539&#xA;[avi @ 042ed360] rfps: 2.916667 0.012539&#xA;[avi @ 042ed360] rfps: 3.000000 0.000000&#xA;[avi @ 042ed360] rfps: 3.083333 0.012539&#xA;[avi @ 042ed360] rfps: 3.083333 0.012539&#xA;[avi @ 042ed360] rfps: 5.916667 0.012539&#xA;[avi @ 042ed360] rfps: 5.916667 0.012539&#xA;[avi @ 042ed360] rfps: 6.000000 0.000000&#xA;[avi @ 042ed360] rfps: 6.000000 0.000000&#xA;[avi @ 042ed360] rfps: 6.083333 0.012539&#xA;[avi @ 042ed360] rfps: 6.083333 0.012539&#xA;[avi @ 042ed360] rfps: 8.916667 0.012539&#xA;[avi @ 042ed360] rfps: 8.916667 0.012539&#xA;[avi @ 042ed360] rfps: 9.000000 0.000000&#xA;[avi @ 042ed360] rfps: 9.083333 0.012539&#xA;[avi @ 042ed360] rfps: 9.083333 0.012539&#xA;[avi @ 042ed360] rfps: 11.916667 0.012539&#xA;[avi @ 042ed360] rfps: 11.916667 0.012539&#xA;[avi @ 042ed360] rfps: 12.000000 0.000000&#xA;[avi @ 042ed360] rfps: 12.000000 0.000000&#xA;[avi @ 042ed360] rfps: 12.083333 0.012539&#xA;[avi @ 042ed360] rfps: 12.083333 0.012539&#xA;[avi @ 042ed360] rfps: 14.916667 0.012539&#xA;[avi @ 042ed360] rfps: 14.916667 0.012539&#xA;[avi @ 042ed360] rfps: 15.000000 0.000000&#xA;[avi @ 042ed360] rfps: 15.083333 0.012539&#xA;[avi @ 042ed360] rfps: 15.083333 0.012539&#xA;[avi @ 042ed360] rfps: 17.916667 0.012539&#xA;[avi @ 042ed360] rfps: 17.916667 0.012539&#xA;[avi @ 042ed360] rfps: 18.000000 0.000000&#xA;[avi @ 042ed360] rfps: 18.000000 -0.000000&#xA;[avi @ 042ed360] rfps: 18.083333 0.012539&#xA;[avi @ 042ed360] rfps: 18.083333 0.012539&#xA;[avi @ 042ed360] rfps: 20.916667 0.012539&#xA;[avi @ 042ed360] rfps: 20.916667 0.012539&#xA;[avi @ 042ed360] rfps: 21.000000 0.000000&#xA;[avi @ 042ed360] rfps: 21.083333 0.012539&#xA;[avi @ 042ed360] rfps: 21.083333 0.012539&#xA;[avi @ 042ed360] rfps: 23.916667 0.012539&#xA;[avi @ 042ed360] rfps: 23.916667 0.012539&#xA;[avi @ 042ed360] rfps: 24.000000 0.000000&#xA;[avi @ 042ed360] rfps: 24.000000 -0.000000&#xA;[avi @ 042ed360] rfps: 24.083333 0.012539&#xA;[avi @ 042ed360] rfps: 24.083333 0.012539&#xA;[avi @ 042ed360] rfps: 26.916667 0.012539&#xA;[avi @ 042ed360] rfps: 26.916667 0.012539&#xA;[avi @ 042ed360] rfps: 27.000000 0.000000&#xA;[avi @ 042ed360] rfps: 27.083333 0.012539&#xA;[avi @ 042ed360] rfps: 27.083333 0.012539&#xA;[avi @ 042ed360] rfps: 29.916667 0.012539&#xA;[avi @ 042ed360] rfps: 29.916667 0.012539&#xA;[avi @ 042ed360] rfps: 30.000000 0.000000&#xA;[avi @ 042ed360] rfps: 30.000000 -0.000000&#xA;[avi @ 042ed360] rfps: 33.000000 0.000000&#xA;[avi @ 042ed360] rfps: 36.000000 0.000000&#xA;[avi @ 042ed360] rfps: 36.000000 -0.000000&#xA;[avi @ 042ed360] rfps: 39.000000 0.000000&#xA;[avi @ 042ed360] rfps: 42.000000 0.000000&#xA;[avi @ 042ed360] rfps: 42.000000 0.000000&#xA;[avi @ 042ed360] rfps: 45.000000 0.000000&#xA;[avi @ 042ed360] rfps: 48.000000 0.000000&#xA;[avi @ 042ed360] rfps: 48.000000 0.000000&#xA;[avi @ 042ed360] rfps: 51.000000 0.000000&#xA;[avi @ 042ed360] rfps: 54.000000 0.000000&#xA;[avi @ 042ed360] rfps: 54.000000 -0.000000&#xA;[avi @ 042ed360] rfps: 57.000000 0.000000&#xA;[avi @ 042ed360] rfps: 60.000000 0.000000&#xA;[avi @ 042ed360] rfps: 60.000000 0.000000&#xA;[avi @ 042ed360] rfps: 120.000000 0.000000&#xA;[avi @ 042ed360] rfps: 120.000000 -0.000000&#xA;[avi @ 042ed360] rfps: 240.000000 0.000000&#xA;[avi @ 042ed360] rfps: 240.000000 -0.000000&#xA;[avi @ 042ed360] rfps: 23.976024 0.001038&#xA;[avi @ 042ed360] rfps: 23.976024 0.001038&#xA;[avi @ 042ed360] rfps: 29.970030 0.001622&#xA;[avi @ 042ed360] rfps: 29.970030 0.001622&#xA;[avi @ 042ed360] rfps: 59.940060 0.006487&#xA;[avi @ 042ed360] rfps: 59.940060 0.006487&#xA;[avi @ 042ed360] rfps: 11.988012 0.000259&#xA;[avi @ 042ed360] rfps: 11.988012 0.000259&#xA;[avi @ 042ed360] rfps: 14.985015 0.000405&#xA;[avi @ 042ed360] rfps: 14.985015 0.000405&#xA;[avi @ 042ed360] rfps: 47.952048 0.004152&#xA;[avi @ 042ed360] rfps: 47.952048 0.004152&#xA;[avi @ 042ed360] After avformat_find_stream_info() pos: 105829 bytes read:175139 seeks:4 frames:15&#xA;Input #0, avi, from &#x27;..\mergedVideoOnly.avi&#x27;:&#xA;  Metadata:&#xA;    encoder         : Lavf57.83.100&#xA;  Duration: 00:00:25.33, start: 0.000000, bitrate: 113 kb/s&#xA;    Stream #0:0, 15, 1/3: Video: scpr (SCPR / 0x52504353), rgb0, 1920x1200, 112 kb/s, 3 fps, 3 tbr, 3 tbn, 3 tbc&#xA;Successfully opened the file.&#xA;Parsing a group of options: input url " "\Storage\0030_0130.wav.&#xA;Successfully parsed a group of options.&#xA;Opening an input file: " "\Storage\1.wav.&#xA;[NULL @ 03be0180] Opening &#x27;" "\Storage\1.wav&#x27; for reading&#xA;[file @ 03be0820] Setting default whitelist &#x27;file,crypto&#x27;&#xA;[wav @ 03be0180] Format wav probed with size=2048 and score=99&#xA;[wav @ 03be0180] Before avformat_find_stream_info() pos: 44 bytes read:65580 seeks:1 nb_streams:1&#xA;[wav @ 03be0180] probing stream 0 pp:32&#xA;[wav @ 03be0180] probing stream 0 pp:31&#xA;[wav @ 03be0180] probing stream 0 pp:30&#xA;[wav @ 03be0180] probing stream 0 pp:29&#xA;[wav @ 03be0180] probing stream 0 pp:28&#xA;[wav @ 03be0180] probing stream 0 pp:27&#xA;[wav @ 03be0180] probing stream 0 pp:26&#xA;[wav @ 03be0180] probing stream 0 pp:25&#xA;[wav @ 03be0180] probing stream 0 pp:24&#xA;[wav @ 03be0180] probing stream 0 pp:23&#xA;[wav @ 03be0180] probing stream 0 pp:22&#xA;[wav @ 03be0180] probing stream 0 pp:21&#xA;[wav @ 03be0180] probing stream 0 pp:20&#xA;[wav @ 03be0180] probing stream 0 pp:19&#xA;[wav @ 03be0180] probing stream 0 pp:18&#xA;[wav @ 03be0180] probing stream 0 pp:17&#xA;[wav @ 03be0180] probing stream 0 pp:16&#xA;[wav @ 03be0180] probing stream 0 pp:15&#xA;[wav @ 03be0180] probing stream 0 pp:14&#xA;[wav @ 03be0180] probing stream 0 pp:13&#xA;[wav @ 03be0180] probing stream 0 pp:12&#xA;[wav @ 03be0180] probing stream 0 pp:11&#xA;[wav @ 03be0180] probing stream 0 pp:10&#xA;[wav @ 03be0180] probing stream 0 pp:9&#xA;[wav @ 03be0180] probing stream 0 pp:8&#xA;[wav @ 03be0180] probing stream 0 pp:7&#xA;[wav @ 03be0180] probing stream 0 pp:6&#xA;[wav @ 03be0180] probing stream 0 pp:5&#xA;[wav @ 03be0180] probing stream 0 pp:4&#xA;[wav @ 03be0180] probing stream 0 pp:3&#xA;[wav @ 03be0180] probing stream 0 pp:2&#xA;[wav @ 03be0180] probing stream 0 pp:1&#xA;[wav @ 03be0180] probed stream 0&#xA;[wav @ 03be0180] parser not found for codec pcm_s16le, packets or times may be invalid.&#xA;[wav @ 03be0180] max_analyze_duration 5000000 reached at 5120000 microseconds st:0&#xA;[wav @ 03be0180] After avformat_find_stream_info() pos: 131116 bytes read:196652 seeks:1 frames:22&#xA;Guessed Channel Layout for Input Stream #1.0 : mono&#xA;Input #1, wav, from &#x27;" "\Storage\0030_0130.wav&#x27;:&#xA;  Duration: 00:00:56.80, bitrate: 128 kb/s&#xA;    Stream #1:0, 22, 1/8000: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 8000 Hz, mono, s16, 128 kb/s&#xA;Successfully opened the file.&#xA;Parsing a group of options: input url " "\Storage\2.wav.&#xA;Successfully parsed a group of options.&#xA;Opening an input file: " "\Storage\2.wav.&#xA;[NULL @ 03bed760] Opening &#x27;" "\Storage\2.wav&#x27; for reading&#xA;[file @ 03bb3100] Setting default whitelist &#x27;file,crypto&#x27;&#xA;[wav @ 03bed760] Format wav probed with size=2048 and score=99&#xA;[wav @ 03bed760] Before avformat_find_stream_info() pos: 44 bytes read:65580 seeks:1 nb_streams:1&#xA;[wav @ 03bed760] probing stream 0 pp:32&#xA;[wav @ 03bed760] probing stream 0 pp:31&#xA;[wav @ 03bed760] probing stream 0 pp:30&#xA;[wav @ 03bed760] probing stream 0 pp:29&#xA;[wav @ 03bed760] probing stream 0 pp:28&#xA;[wav @ 03bed760] probing stream 0 pp:27&#xA;[wav @ 03bed760] probing stream 0 pp:26&#xA;[wav @ 03bed760] probing stream 0 pp:25&#xA;[wav @ 03bed760] probing stream 0 pp:24&#xA;[wav @ 03bed760] probing stream 0 pp:23&#xA;[wav @ 03bed760] probing stream 0 pp:22&#xA;[wav @ 03bed760] probing stream 0 pp:21&#xA;[wav @ 03bed760] probing stream 0 pp:20&#xA;[wav @ 03bed760] probing stream 0 pp:19&#xA;[wav @ 03bed760] probing stream 0 pp:18&#xA;[wav @ 03bed760] probing stream 0 pp:17&#xA;[wav @ 03bed760] probing stream 0 pp:16&#xA;[wav @ 03bed760] probing stream 0 pp:15&#xA;[wav @ 03bed760] probing stream 0 pp:14&#xA;[wav @ 03bed760] probing stream 0 pp:13&#xA;[wav @ 03bed760] probing stream 0 pp:12&#xA;[wav @ 03bed760] probing stream 0 pp:11&#xA;[wav @ 03bed760] probing stream 0 pp:10&#xA;[wav @ 03bed760] probing stream 0 pp:9&#xA;[wav @ 03bed760] probing stream 0 pp:8&#xA;[wav @ 03bed760] probing stream 0 pp:7&#xA;[wav @ 03bed760] probing stream 0 pp:6&#xA;[wav @ 03bed760] probing stream 0 pp:5&#xA;[wav @ 03bed760] probing stream 0 pp:4&#xA;[wav @ 03bed760] probing stream 0 pp:3&#xA;[wav @ 03bed760] probing stream 0 pp:2&#xA;[wav @ 03bed760] probing stream 0 pp:1&#xA;[wav @ 03bed760] probed stream 0&#xA;[wav @ 03bed760] parser not found for codec pcm_s16le, packets or times may be invalid.&#xA;[wav @ 03bed760] max_analyze_duration 5000000 reached at 5120000 microseconds st:0&#xA;[wav @ 03bed760] After avformat_find_stream_info() pos: 131116 bytes read:196652 seeks:1 frames:22&#xA;Guessed Channel Layout for Input Stream #2.0 : mono&#xA;Input #2, wav, from &#x27;" "\Storage\0130_0230.wav&#x27;:&#xA;  Duration: 00:00:59.81, bitrate: 128 kb/s&#xA;    Stream #2:0, 22, 1/8000: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 8000 Hz, mono, s16, 128 kb/s&#xA;Successfully opened the file.&#xA;Parsing a group of options: input url " "\Storage\3.wav.&#xA;Successfully parsed a group of options.&#xA;Opening an input file: " "\Storage\3.wav.&#xA;[NULL @ 03bfeea0] Opening &#x27;" "\Storage\3.wav&#x27; for reading&#xA;[file @ 03bfe8e0] Setting default whitelist &#x27;file,crypto&#x27;&#xA;[wav @ 03bfeea0] Format wav probed with size=2048 and score=99&#xA;[wav @ 03bfeea0] Before avformat_find_stream_info() pos: 44 bytes read:65580 seeks:1 nb_streams:1&#xA;[wav @ 03bfeea0] probing stream 0 pp:32&#xA;[wav @ 03bfeea0] probing stream 0 pp:31&#xA;[wav @ 03bfeea0] probing stream 0 pp:30&#xA;[wav @ 03bfeea0] probing stream 0 pp:29&#xA;[wav @ 03bfeea0] probing stream 0 pp:28&#xA;[wav @ 03bfeea0] probing stream 0 pp:27&#xA;[wav @ 03bfeea0] probing stream 0 pp:26&#xA;[wav @ 03bfeea0] probing stream 0 pp:25&#xA;[wav @ 03bfeea0] probing stream 0 pp:24&#xA;[wav @ 03bfeea0] probing stream 0 pp:23&#xA;[wav @ 03bfeea0] probing stream 0 pp:22&#xA;[wav @ 03bfeea0] probing stream 0 pp:21&#xA;[wav @ 03bfeea0] probing stream 0 pp:20&#xA;[wav @ 03bfeea0] probing stream 0 pp:19&#xA;[wav @ 03bfeea0] probing stream 0 pp:18&#xA;[wav @ 03bfeea0] probing stream 0 pp:17&#xA;[wav @ 03bfeea0] probing stream 0 pp:16&#xA;[wav @ 03bfeea0] probing stream 0 pp:15&#xA;[wav @ 03bfeea0] probing stream 0 pp:14&#xA;[wav @ 03bfeea0] probing stream 0 pp:13&#xA;[wav @ 03bfeea0] probing stream 0 pp:12&#xA;[wav @ 03bfeea0] probing stream 0 pp:11&#xA;[wav @ 03bfeea0] probing stream 0 pp:10&#xA;[wav @ 03bfeea0] probing stream 0 pp:9&#xA;[wav @ 03bfeea0] probing stream 0 pp:8&#xA;[wav @ 03bfeea0] probing stream 0 pp:7&#xA;[wav @ 03bfeea0] probing stream 0 pp:6&#xA;[wav @ 03bfeea0] probing stream 0 pp:5&#xA;[wav @ 03bfeea0] probing stream 0 pp:4&#xA;[wav @ 03bfeea0] probing stream 0 pp:3&#xA;[wav @ 03bfeea0] probing stream 0 pp:2&#xA;[wav @ 03bfeea0] probing stream 0 pp:1&#xA;[wav @ 03bfeea0] probed stream 0&#xA;[wav @ 03bfeea0] parser not found for codec pcm_s16le, packets or times may be invalid.&#xA;[wav @ 03bfeea0] max_analyze_duration 5000000 reached at 5120000 microseconds st:0&#xA;[wav @ 03bfeea0] After avformat_find_stream_info() pos: 131116 bytes read:196652 seeks:1 frames:22&#xA;Guessed Channel Layout for Input Stream #3.0 : mono&#xA;Input #3, wav, from &#x27;" "\Storage\0230_0330.wav&#x27;:&#xA;  Duration: 00:00:59.81, bitrate: 128 kb/s&#xA;    Stream #3:0, 22, 1/8000: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 8000 Hz, mono, s16, 128 kb/s&#xA;Successfully opened the file.&#xA;detected 4 logical cores&#xA;[Parsed_adelay_0 @ 03c0c460] Setting &#x27;delays&#x27; to value &#x27;30000|30000&#x27;&#xA;Parsing a group of options: output url adelay=91000|91000.&#xA;Successfully parsed a group of options.&#xA;Opening an output file: adelay=91000|91000.&#xA;[NULL @ 03c17640] Unable to find a suitable output format for &#x27;adelay=91000|91000&#x27;&#xA;adelay=91000|91000: Invalid argument&#xA;[AVIOContext @ 042ee400] Statistics: 175139 bytes read, 4 seeks&#xA;[AVIOContext @ 03be0900] Statistics: 196652 bytes read, 1 seeks&#xA;[AVIOContext @ 03bca7e0] Statistics: 196652 bytes read, 1 seeks&#xA;[AVIOContext @ 03bfe9a0] Statistics: 196652 bytes read, 1 seeks&#xA;

    &#xA;