
Recherche avancée
Autres articles (98)
-
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 septembre 2013, parCertains 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, parPré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 2013Puis-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 RendresI'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 
#include 
#include 
#include 

extern "C" {
#include <libavcodec></libavcodec>avcodec.h>
#include <libavformat></libavformat>avformat.h>
#include <libavutil></libavutil>opt.h>
#include <libavutil></libavutil>imgutils.h>
#include <libavutil></libavutil>mathematics.h>
#include <libswscale></libswscale>swscale.h>
#include <libswresample></libswresample>swresample.h>
}

#include <opencv2></opencv2>opencv.hpp>

using namespace std;
using namespace cv;

#define WIDTH 640
#define HEIGHT 480
#define CODEC_ID AV_CODEC_ID_H264
#define STREAM_PIX_FMT AV_PIX_FMT_YUV420P

static AVFrame *frame, *pFrameBGR;

int main(int argc, char **argv)
{
VideoCapture cap(0);
const char *url = "udp://127.0.0.1:8080";

AVFormatContext *formatContext;
AVStream *stream;
AVCodec *codec;
AVCodecContext *c;
AVDictionary *opts = NULL;

int ret, got_packet;

if (!cap.isOpened())
{
 return -1;
}

av_log_set_level(AV_LOG_TRACE);

av_register_all();
avformat_network_init();

avformat_alloc_output_context2(&formatContext, NULL, "h264", url);
if (!formatContext)
{
 av_log(NULL, AV_LOG_FATAL, "Could not allocate an output context for '%s'.\n", url);
}

codec = avcodec_find_encoder(CODEC_ID);
if (!codec)
{
 av_log(NULL, AV_LOG_ERROR, "Could not find encoder.\n");
}

stream = avformat_new_stream(formatContext, codec);

c = avcodec_alloc_context3(codec);

stream->id = formatContext->nb_streams - 1;
stream->time_base = (AVRational){1, 25};

c->codec_id = CODEC_ID;
c->bit_rate = 400000;
c->width = WIDTH;
c->height = HEIGHT;
c->time_base = stream->time_base;
c->gop_size = 12;
c->pix_fmt = STREAM_PIX_FMT;

if (formatContext->flags & AVFMT_GLOBALHEADER)
 c->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;

av_dict_set(&opts, "preset", "fast", 0);

av_dict_set(&opts, "tune", "zerolatency", 0);

ret = avcodec_open2(c, codec, NULL);
if (ret < 0)
{
 av_log(NULL, AV_LOG_ERROR, "Could not open video codec.\n");
}

pFrameBGR = av_frame_alloc();
if (!pFrameBGR)
{
 av_log(NULL, AV_LOG_ERROR, "Could not allocate video frame.\n");
}

frame = av_frame_alloc();
if (!frame)
{
 av_log(NULL, AV_LOG_ERROR, "Could not allocate video frame.\n");
}

frame->format = c->pix_fmt;
frame->width = c->width;
frame->height = c->height;

ret = avcodec_parameters_from_context(stream->codecpar, c);
if (ret < 0)
{
 av_log(NULL, AV_LOG_ERROR, "Could not open video codec.\n");
}

av_dump_format(formatContext, 0, url, 1);

ret = avformat_write_header(formatContext, NULL);
if (ret != 0)
{
 av_log(NULL, AV_LOG_ERROR, "Failed to connect to '%s'.\n", url);
}

Mat image(Size(HEIGHT, WIDTH), CV_8UC3);
SwsContext *swsctx = sws_getContext(WIDTH, HEIGHT, AV_PIX_FMT_BGR24, WIDTH, HEIGHT, AV_PIX_FMT_YUV420P, SWS_BILINEAR, NULL, NULL, NULL);
int frame_pts = 0;

while (1)
{
 cap >> image;

 int numBytesYUV = av_image_get_buffer_size(STREAM_PIX_FMT, WIDTH, HEIGHT, 1);
 uint8_t *bufferYUV = (uint8_t *)av_malloc(numBytesYUV * sizeof(uint8_t));

 avpicture_fill((AVPicture *)pFrameBGR, image.data, AV_PIX_FMT_BGR24, WIDTH, HEIGHT);
 avpicture_fill((AVPicture *)frame, bufferYUV, STREAM_PIX_FMT, WIDTH, HEIGHT);

 sws_scale(swsctx, (uint8_t const *const *)pFrameBGR->data, pFrameBGR->linesize, 0, HEIGHT, frame->data, frame->linesize);

 AVPacket pkt = {0};
 av_init_packet(&pkt);

 frame->pts = frame_pts;

 ret = avcodec_encode_video2(c, &pkt, frame, &got_packet);
 if (ret < 0)
 {
 av_log(NULL, AV_LOG_ERROR, "Error encoding frame\n");
 }

 if (got_packet)
 {
 pkt.pts = av_rescale_q_rnd(pkt.pts, c->time_base, stream->time_base, AVRounding(AV_ROUND_NEAR_INF | AV_ROUND_PASS_MINMAX));
 pkt.dts = av_rescale_q_rnd(pkt.dts, c->time_base, stream->time_base, AVRounding(AV_ROUND_NEAR_INF | AV_ROUND_PASS_MINMAX));
 pkt.duration = av_rescale_q(pkt.duration, c->time_base, stream->time_base);
 pkt.stream_index = stream->index;

 return av_interleaved_write_frame(formatContext, &pkt);

 cout << "Seguro que si" << endl;
 }
 frame_pts++;
}

avcodec_free_context(&c);
av_frame_free(&frame);
avformat_free_context(formatContext);

return 0;
}




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.



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.



My console log when I run the executable is.



[100%] Built target display
[OpenH264] this = 0x0x244b4f0, Info:CWelsH264SVCEncoder::SetOption():ENCODER_OPTION_TRACE_CALLBACK callback = 0x7f0c302a87c0.
[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:CWelsH264SVCEncoder::InitEncoder(), openh264 codec version = 5a5c4f1
[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)
[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
[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Warning:SliceArgumentValidationFixedSliceMode(), unsupported setting with Resolution and uiSliceNum combination under RC on! So uiSliceNum is changed to 6!
[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:Setting MaxSpatialBitrate (400000) the same at SpatialBitrate (400000) will make the actual bit rate lower than SpatialBitrate
[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Warning:bEnableFrameSkip = 0,bitrate can't be controlled for RC_QUALITY_MODE,RC_BITRATE_MODE and RC_TIMESTAMP_MODE without enabling skip frame.
[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Warning:Change QP Range from(0,51) to (12,42)
[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
[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:WelsInitEncoderExt() exit, overall memory usage: 4542878 bytes
[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Info:WelsInitEncoderExt(), pCtx= 0x0x245a400.
Output #0, h264, to 'udp://192.168.100.39:8080':
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
[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Debug:RcUpdateIntraComplexity iFrameDqBits = 385808,iQStep= 2016,iIntraCmplx = 777788928
[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
[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Debug:WelsEncoderEncodeExt() OutputInfo iLayerNum = 2,iFrameSize = 48252
[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Debug:WelsEncoderEncodeExt() OutputInfo iLayerId = 0,iNalType = 0,iNalCount = 2, first Nal Length=18,uiSpatialId = 0,uiTemporalId = 0,iSubSeqId = 0
[libopenh264 @ 0x244aa00] [OpenH264] this = 0x0x244b4f0, Debug:WelsEncoderEncodeExt() OutputInfo iLayerId = 1,iNalType = 1,iNalCount = 6, first Nal Length=6057,uiSpatialId = 0,uiTemporalId = 0,iSubSeqId = 0
[libopenh264 @ 0x244aa00] 6 slices
./scriptBuild.sh: line 20: 10625 Segmentation fault (core dumped) ./display




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



I've used commands like this.



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




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



My FFmpeg version is.



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




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



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



Thank you !


-
ffmpeg - Take Frame Accurate Screenshot
20 septembre 2019, par miketrying 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 YanshofI have video file (.avi) that contain video of 10 minutes. 
I also have audio file (.wav) that contain 1 minute of sound.



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



How to do it ?



( prefer using ffmpeg if its possible )



try already this query ( 30 seconds delay )



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




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



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