From adishavit at gmail.com Thu Aug 1 08:29:07 2013 From: adishavit at gmail.com (Adi Shavit) Date: Thu, 1 Aug 2013 09:29:07 +0300 Subject: [Libav-user] Extracting Closed Captions Message-ID: Hi, I was wondering if ffmpeg/libav knows how to extract closed captions from a video (similar to ccextractor). I am not referring to a subtitle stream but to the closed captions which are apparently encoded within the video frames. All similar questions I found did not seem to provide a conclusive answer. Thanks, Adi -------------- next part -------------- An HTML attachment was scrubbed... URL: From brian at lorf.org Thu Aug 1 19:55:40 2013 From: brian at lorf.org (Brian Lewis) Date: Thu, 1 Aug 2013 13:55:40 -0400 Subject: [Libav-user] stubborn valgrind issue In-Reply-To: <20130731165030.GJ1294@x> References: <20130731081016.GH1294@x> <20130731165030.GJ1294@x> Message-ID: <20130801175540.GM1294@x> The very same test case test.c, when compiled against libraries from ffmpeg 2.0, doesn't produce any invalid-read or use-of-uninitialized-memory errors in valgrind. Can someone please confirm that this makes sense? Maybe valgrind cleanliness was not a big concern before? From cehoyos at ag.or.at Thu Aug 1 20:46:45 2013 From: cehoyos at ag.or.at (Carl Eugen Hoyos) Date: Thu, 1 Aug 2013 18:46:45 +0000 (UTC) Subject: [Libav-user] stubborn valgrind issue References: <20130731081016.GH1294@x> <20130731165030.GJ1294@x> <20130801175540.GM1294@x> Message-ID: Brian Lewis writes: > The very same test case test.c, when compiled against > libraries from ffmpeg 2.0, doesn't produce any > invalid-read or use-of-uninitialized-memory errors in > valgrind. Please use git bisect to find the commit introducing the problem. Carl Eugen From cehoyos at ag.or.at Thu Aug 1 21:00:11 2013 From: cehoyos at ag.or.at (Carl Eugen Hoyos) Date: Thu, 1 Aug 2013 19:00:11 +0000 (UTC) Subject: [Libav-user] Extracting Closed Captions References: Message-ID: Adi Shavit writes: > I was wondering if ffmpeg/libav knows how to extract > closed captions from a video No, but what kind of source file are you working with? Carl Eugen From adishavit at gmail.com Fri Aug 2 08:40:52 2013 From: adishavit at gmail.com (Adi Shavit) Date: Fri, 2 Aug 2013 09:40:52 +0300 Subject: [Libav-user] Extracting Closed Captions In-Reply-To: References: Message-ID: I recorded a live TV MTP mpg. VLC displays the captions. Adi On Thu, Aug 1, 2013 at 10:00 PM, Carl Eugen Hoyos wrote: > Adi Shavit writes: > > > I was wondering if ffmpeg/libav knows how to extract > > closed captions from a video > > No, but what kind of source file are you working with? > > Carl Eugen > > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user > -------------- next part -------------- An HTML attachment was scrubbed... URL: From soho123.2012 at gmail.com Fri Aug 2 11:38:16 2013 From: soho123.2012 at gmail.com (Soho Soho123) Date: Fri, 2 Aug 2013 17:38:16 +0800 Subject: [Libav-user] ffmpeg can not post new video data to ffserver Message-ID: Hi All, I got the problem about ffmpeg post fail to ffserver. I use the solution ffmpeg+ ffserver for a stream server. the stream can work for a few minutes, then ffmpeg can not post video data via http://localhost:8090/feed1.ffm the command line I use for ffmpeg: ffmpeg -loglevel debug -f video4linux2 -r 30 -s 1280x720 -input_format h264 -i /dev/video1 -vcodec copy http://localhost:8090/feed1.ffm ffserver can not receive new video data from ffmpeg if the stream is running for about 30~60 minutes. I check the errno from ffmpeg av_interleaved_write_frame() it says "No such file or directory" errno is 2 Does anyone have ideas? -------------- next part -------------- An HTML attachment was scrubbed... URL: From ggarra13 at gmail.com Fri Aug 2 23:26:14 2013 From: ggarra13 at gmail.com (Gonzalo Garramuno) Date: Fri, 02 Aug 2013 18:26:14 -0300 Subject: [Libav-user] Encoding AC3 Message-ID: <51FC23F6.5020704@gmail.com> I copied the latest docs/example muxing.c and decoding_enconding.c and modified it to my needs. I am able to save a movie with synced sound if I use audio codec pcm_s16le and convert the float values into s16 values using swresample. However, when I want to save ac3 to keep the data in float (fltp), the video gets created fine, but the audio comes out of sync. My guess is that I am not using proper pts/dts values. From er.anshul.maheshwari at gmail.com Sat Aug 3 05:14:34 2013 From: er.anshul.maheshwari at gmail.com (Anshul maheshwari) Date: Sat, 3 Aug 2013 08:44:34 +0530 Subject: [Libav-user] Encoding AC3 In-Reply-To: <51FC23F6.5020704@gmail.com> References: <51FC23F6.5020704@gmail.com> Message-ID: Mai On Aug 3, 2013 2:56 AM, "Gonzalo Garramuno" wrote: > > I copied the latest docs/example muxing.c and decoding_enconding.c and modified it to my needs. > I am able to save a movie with synced sound if I use audio codec pcm_s16le and convert the float values into s16 values using swresample. However, when I want to save ac3 to keep the data in float (fltp), the video gets created fine, but the audio comes out of sync. My guess is that I am not using proper pts/dts values. > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user Hi gonzalo Are u passing, the pts ur self. Or they are auto generated? Thanks Anshul -------------- next part -------------- An HTML attachment was scrubbed... URL: From er.anshul.maheshwari at gmail.com Sat Aug 3 05:17:46 2013 From: er.anshul.maheshwari at gmail.com (Anshul maheshwari) Date: Sat, 3 Aug 2013 08:47:46 +0530 Subject: [Libav-user] Extracting Closed Captions In-Reply-To: References: Message-ID: On Aug 2, 2013 12:11 PM, "Adi Shavit" wrote: > > I recorded a live TV MTP mpg. > VLC displays the captions. > Adi > > On Thu, Aug 1, 2013 at 10:00 PM, Carl Eugen Hoyos wrote: >> >> Adi Shavit writes: >> >> > I was wondering if ffmpeg/libav knows how to extract >> > closed captions from a video >> >> No, but what kind of source file are you working with? >> >> Carl Eugen >> >> _______________________________________________ >> Libav-user mailing list >> Libav-user at ffmpeg.org >> http://ffmpeg.org/mailman/listinfo/libav-user > > > > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user > Please dont top post -------------- next part -------------- An HTML attachment was scrubbed... URL: From ggarra13 at gmail.com Sat Aug 3 17:41:56 2013 From: ggarra13 at gmail.com (Gonzalo Garramuno) Date: Sat, 03 Aug 2013 12:41:56 -0300 Subject: [Libav-user] Encoding AC3 In-Reply-To: References: <51FC23F6.5020704@gmail.com> Message-ID: <51FD24C4.4080201@gmail.com> On 03/08/13 00:14, Anshul maheshwari wrote: > > Mai > On Aug 3, 2013 2:56 AM, "Gonzalo Garramuno" > wrote: > > > > I copied the latest docs/example muxing.c and decoding_enconding.c > and modified it to my needs. > > I am able to save a movie with synced sound if I use audio codec > pcm_s16le and convert the float values into s16 values using > swresample. However, when I want to save ac3 to keep the data in > float (fltp), the video gets created fine, but the audio comes out of > sync. My guess is that I am not using proper pts/dts values. > > _______________________________________________ > > Libav-user mailing list > > Libav-user at ffmpeg.org > > http://ffmpeg.org/mailman/listinfo/libav-user > > Hi gonzalo > > Are u passing, the pts ur self. > Or they are auto generated? > > Thanks > Anshul > > Sorry. They are autogenerated. There's a generation of pts in the following code (taken from the examples): audio_time += audio_st->pts.val * av_q2d(audio_st->time_base); -------------- next part -------------- An HTML attachment was scrubbed... URL: From ggarra13 at gmail.com Mon Aug 5 01:05:56 2013 From: ggarra13 at gmail.com (Gonzalo Garramuno) Date: Sun, 04 Aug 2013 20:05:56 -0300 Subject: [Libav-user] Encoding AC3 In-Reply-To: <51FD24C4.4080201@gmail.com> References: <51FC23F6.5020704@gmail.com> <51FD24C4.4080201@gmail.com> Message-ID: <51FEDE54.2040604@gmail.com> On 03/08/13 12:41, Gonzalo Garramuno wrote: > Sorry. They are autogenerated. There's a generation of pts in the > following code (taken from the examples): > > audio_time += audio_st->pts.val * av_q2d(audio_st->time_base); > > I apologize. The above should be: audio_time = audio_st->pts.val * av_q2d(audio_st->time_base); video_time = video_st->pts.val * av_q2d(video_st->time_base); while ( audio_time < video_time ) { write_audio_frame(oc, audio_st, img); audio_time = audio_st->pts.val * av_q2d(audio_st->time_base); } write_video_frame( oc, video_st, img ); where img is the class container for audio and video. -------------- next part -------------- An HTML attachment was scrubbed... URL: From pfischer at como.com Mon Aug 5 11:09:05 2013 From: pfischer at como.com (=?utf-8?Q?Patrick_Fischer?=) Date: Mon, 5 Aug 2013 11:09:05 +0200 Subject: [Libav-user] calc next audio pts value Message-ID: Hello ? I would like to understand how i can calc the diff to the next PTS Value. Im processing a dvb stream. To be in sync i detect if a frame is missing and add a dummy frame. For video frames a can use this formula: ? ?(1/fps) * 90000 * NUMBER_OF_THE_FRAME example: (1 / 30) * 90000 * 1 = 3600 ? i can't find out the formula for audio pts values. if i print out the diff to the last audio pts it is ??? Stream #0:2[0x66](deu): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 256 kb/s diff to last pts 2880 ? If i take an other video: ??? Stream #0:1[0x1412](deu): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 192 kb/s diff to last pts 2160 ? Can anybody give me a hint? ? Best Regards Patrick -------------- next part -------------- An HTML attachment was scrubbed... URL: From soho123.2012 at gmail.com Mon Aug 5 16:17:09 2013 From: soho123.2012 at gmail.com (Soho Soho123) Date: Mon, 5 Aug 2013 22:17:09 +0800 Subject: [Libav-user] VLC CANNOT play rtp stream that output by ffmpeg + ffserver Message-ID: Hi All, The problem is : when I use the command to capture video and audio: ffmpeg -loglevel debug -debug_ts -f video4linux2 -r 30 -s 640x480 -input_format h264 -i /dev/video1 -f alsa -ar 48000 -ac 2 -i hw:0 -vcodec copy -acodec copy http://localhost:8090/feed1.ffm then ffserver can service the VLC client request for live stream. video can be displayed, but there is no audio output because VLC says "PTS out of range" Does anyone have idea? -------------- next part -------------- An HTML attachment was scrubbed... URL: From soho123.2012 at gmail.com Mon Aug 5 16:34:48 2013 From: soho123.2012 at gmail.com (Soho Soho123) Date: Mon, 5 Aug 2013 22:34:48 +0800 Subject: [Libav-user] [HELP]capture audio question about Non-monotonous DTS?????? Message-ID: HI all, when I try to capture audio and video from USB web cam and usb sound card. the command : ffmpeg -loglevel debug -f video4linux2 -r 30 -s 640x480 -input_format h264 -i /dev/video1 -f alsa -ar 48000 -ac 2 -i hw:0 -vcodec copy -acodec copy http://localhost:8090/feed1.ffm I got the warning message from ffmpeg: Non-monotonous DTS in output stream 0:0; previous: 254883622, current: 254883581; changing to 254883623. This may result in incorrect timestamps in the output file and the VLC player can not play audio data , but video data can be displayed. Does anyone have idea and the timestamp ? -------------- next part -------------- An HTML attachment was scrubbed... URL: From soho123.2012 at gmail.com Mon Aug 5 19:13:49 2013 From: soho123.2012 at gmail.com (Soho Soho123) Date: Tue, 6 Aug 2013 01:13:49 +0800 Subject: [Libav-user] [HELP]how to avoid "ALSA buffer xrun." Message-ID: Hi All, When I use ffmpeg to capture video and sound (USB device), I can see the message from alsa-audio-common.c "ALSA buffer xrun." the command line I use : ffmpeg -loglevel debug -f video4linux2 -r 30 -s 640x480 -input_format h264 -i /dev/video1 -f alsa -ar 48000 -ac 2 -i hw:0 -vcodec copy -acodec copy http://localhost:8090/feed1.ffm In record case, it seems ffmpeg get audio slower than usb device capture the sound, such that the buffer overflow, right? Does anyone have idea how to avoid the issue about "ALSA buffer xrun" when ffmpeg capture sound from usb sound card? thanks! -------------- next part -------------- An HTML attachment was scrubbed... URL: From nsugino at 3way.com.ar Tue Aug 6 12:58:09 2013 From: nsugino at 3way.com.ar (Nicolas Sugino) Date: Tue, 6 Aug 2013 07:58:09 -0300 Subject: [Libav-user] calc next audio pts value In-Reply-To: References: Message-ID: 2013/8/5 Patrick Fischer > ** > > Hello > > > > I would like to understand how i can calc the diff to the next PTS Value. > > Im processing a dvb stream. To be in sync i detect if a frame is missing > and add a dummy frame. > > For video frames a can use this formula: > > > > (1/fps) * 90000 * NUMBER_OF_THE_FRAME > > example: > > (1 / 30) * 90000 * 1 = 3600 > > > > i can't find out the formula for audio pts values. > > if i print out the diff to the last audio pts it is > > Stream #0:2[0x66](deu): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, > stereo, s16p, 256 kb/s > > diff to last pts 2880 > > > > If i take an other video: > > Stream #0:1[0x1412](deu): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 > Hz, stereo, s16p, 192 kb/s > > diff to last pts 2160 > > > > Can anybody give me a hint? > > > > Best Regards > > Patrick > > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user > > Hi I've been using the following: being: AVCodecContext *cc; AVStream *st; then: (cc->frame_size / cc->sample_rate) * (st->time_base.den / st->time_base.num) * number I first multiply everything and then do the divisions for rounding reasons. Also, that 90000 you put in the first formula would be the stream (time_base.den / stream time_base.num), it may not be always 90000. I don't know if this is the right way, but this way seemed to work for me. If someone knows better please add further info or correct this Regards -------------- next part -------------- An HTML attachment was scrubbed... URL: From aworldgonewrong at gmail.com Wed Aug 7 10:53:25 2013 From: aworldgonewrong at gmail.com (John Freeman) Date: Wed, 7 Aug 2013 09:53:25 +0100 Subject: [Libav-user] RTP Extended headers Message-ID: I notice that in rtp_parse_packet_internal (rtpdec.c) the extended headers in RTP packets are ignored. I am trying to find a way of accessing these extended headers, as the stream I am using contains important data in these headers. Is there any way without delving into private data, that I can get access to the raw RTP data before demuxing? I am currently ripping apart the priv_data pointer in AVFormatContext to get to the data, but this approach is too hacky for me and potentially dangerous ~ Jay -------------- next part -------------- An HTML attachment was scrubbed... URL: From adishavit at gmail.com Wed Aug 7 16:32:12 2013 From: adishavit at gmail.com (Adi Shavit) Date: Wed, 7 Aug 2013 17:32:12 +0300 Subject: [Libav-user] Reducing the Frame-Rate of a Network Video Stream In-Reply-To: References: <1375172003820-4658293.post@n4.nabble.com> Message-ID: Hi, I have some questions about extracting the time stamps: 1. Given a packet, I have AVPacket.pts and also AVFrame.pts and AVFrame.pkt_pts. I noticed that every few frames (about 1 in 3) AVPacket.pts is different from AVFrame.pts and AVFrame.pkt_pts - after avcodec_decode_video2(). Which one should I be using to do fps dropping? How do I access the correct timestamp (is there a function instead of direct access?) and how do I measure the difference in msec? Thanks, Adi On Tue, Jul 30, 2013 at 1:34 PM, Alex Cohn wrote: > On Tue, Jul 30, 2013 at 12:35 PM, Adi Shavit wrote: > > Hi Mike, > > > > > > On Tue, Jul 30, 2013 at 11:13 AM, mikeversteeg > wrote: > >> Check the PTS of each frame and use that to decide whether to throw it > out or > >> not. > > > > Ah, thanks. > > These will give me the play-timestamps, right? > > > >> That way there is no need to decode frames you won't be using. > > Do you mean, no need to PROCESS, not decode. > > Don't I have to decode all frames? > > If I could not-decode (via the decoder) some of the frames that would > > be great and further save cpu. Can I do that, just skip some encoded > > frames? Wouldn't that mess up the following frames? > > > > Thanks, > > Adi > > You must decode all frames, or skip to the next IDR frame, if you want > to avoid artiifacts. Yes PTS is play timestamp. The units may depend > on your stream format, and are generally expressed in terms of the > timebase. > > BR, > Alex Cohn > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user > -------------- next part -------------- An HTML attachment was scrubbed... URL: From nisar.med at gmail.com Wed Aug 7 19:19:26 2013 From: nisar.med at gmail.com (Nisar Ahmed) Date: Wed, 7 Aug 2013 22:19:26 +0500 Subject: [Libav-user] writing h.264 raw frames to mp4 movie Message-ID: Dear list, I am writing my first libav program and facing problem in muxing h.264 raw frames to mp4. I referred to muxing.c sample but that sample encodes frames to h.264 before writing to file however in my case I dont have to encoding, the frames are already compressed. I need to know the what steps do I need to follow in order to create correct mp4 movie currently I am doing the following AVOutputFormat* outputFormat AVFormatContext* formatContext char* filename = "c:\\export.mp4"; outputFormat = av_guess_format(NULL, filename, NULL); formatContext = avformat_alloc_context(); AVCodec* codec = avcodec_find_encoder(outputFormat->video_codec); AVStream* st = avformat_new_stream(formatContext , codec); c = st->codec; c->bit_rate = 400000; c->width = 720; c->height = 480; c->time_base.den = 2997; c->time_base.num = 100; c->gop_size = 12; /* emit one intra frame every twelve frames at most */ c->pix_fmt = AV_PIX_FMT_YUV420P; av_dump_format(formatContext, 0, filename, 1); if (!(outputFormat->flags & AVFMT_NOFILE)) { if (avio_open(&formatContext->pb, filename, AVIO_FLAG_WRITE) < 0) { return 1; } } /* Write the stream header, if any. */ avformat_write_header(formatContext, NULL); The following code writes the data in another callback function having data and dataLen as parameters.. data is the pointer to h.264 frame data and dataLen is the length in bytes AVPacket pkt = { 0 }; av_init_packet(&pkt); pkt.stream_index = 0; pkt.flags = 0; pkt.pts = videoFrameNumber; pkt.dts = videoFrameNumber; pkt.size = dataLen; pkt.data = data; av_interleaved_write_frame(formatContext, &pkt); videoFrameNumber += 100; and finally av_write_trailer(formatContext); int i = 0; for (i = 0; i < formatContext->nb_streams; i++) { av_freep(&formatContext->streams[i]->codec); av_freep(&formatContext->streams[i]); } if (!(formatContext->oformat->flags & AVFMT_NOFILE)) { avio_close(formatContext->pb); } av_free(formatContext); The movie is created but when I run ffmpeg -i c:\output.mp4 the following error Could not find codec parameters for stream 0 (Video: h264 (avc1 / 0x31637661), 720x480, 318244 kb/s): unspecified pixel format Please help! -------------- next part -------------- An HTML attachment was scrubbed... URL: From yaiba243 at gmail.com Thu Aug 8 02:11:23 2013 From: yaiba243 at gmail.com (Phu Nguyen Anh) Date: Thu, 8 Aug 2013 07:11:23 +0700 Subject: [Libav-user] Encoding & muxing to m4a problem Message-ID: <6F199C062DE648F191B11216DD08326C@gmail.com> Hi there, I'm a newbie to libav and now having trouble encoding & mux a sound sample array to m4a file. The process done without any problem, but output file is not hearable and the size is very small, e.g. I have around 88000 sound samples but output file size is only around 1.8KB. My code below is mostly base on decoding_encoding.c & muxing.c samples from ffmpeg, but no pts, dts parts are set as I donot understand how to set them for audio encoding yet. Maybe problem comes from that? Please help. ~~~~~ avcodec_register_all(); av_register_all(); codec = avcodec_find_encoder(CODEC_ID_AAC); c = avcodec_alloc_context3(codec); c->bit_rate = 64000; c->sample_fmt = AV_SAMPLE_FMT_FLTP; c->sample_rate = rate; c->channel_layout = AV_CH_LAYOUT_MONO; c->channels = 1; c->strict_std_compliance = FF_COMPLIANCE_EXPERIMENTAL; // Open it avcodec_open2(c, codec, NULL) < 0); frame = avcodec_alloc_frame(); frame->nb_samples = c->frame_size; frame->format = c->sample_fmt; frame->channel_layout = c->channel_layout; buffer_size = av_samples_get_buffer_size(NULL, c->channels, c->frame_size, c->sample_fmt, 0); samples = (uint16_t *)av_malloc(buffer_size); // setup the data pointers in the AVFrame avcodec_fill_audio_frame(frame, c->channels, c->sample_fmt, (const uint8_t*)samples, buffer_size, 0); // allocate the output media context avformat_alloc_output_context2(&oc, NULL, NULL, filename); ofmt = oc->oformat; audio_st = avformat_new_stream(oc, NULL); audio_st->codec = c; if (oc->oformat->flags & AVFMT_GLOBALHEADER) c->flags |= CODEC_FLAG_GLOBAL_HEADER; // open the output file if (!(ofmt->flags & AVFMT_NOFILE)) { avio_open(&oc->pb, filename, AVIO_FLAG_WRITE); } ret = avformat_write_header(oc, NULL); // captureBuffer is a sound buffer captured with parameters: mono, 16bit/sample, sample rate = 22050 captureBufPtr = captureBuffer; samplesLeft = samplesCaptured; samplesToCopy = 0; if (frame) { frame->pts = 0; } // Encoding loop for (;samplesLeft > 0;) { av_init_packet(&pkt); pkt.data = NULL; // packet data will be allocated by the encoder pkt.size = 0; samplesToCopy = samplesLeft >= frame->nb_samples? frame->nb_samples : samplesLeft; memcpy(samples, captureBufPtr, samplesToCopy * 2); captureBufPtr += samplesToCopy * 2; samplesLeft -= samplesToCopy; ret = avcodec_encode_audio2(c, &pkt, frame, &got_output); ret = av_interleaved_write_frame(oc, &pkt); av_free_packet(&pkt); } // Get delayed frame for (got_output = 1; got_output;) { ret = avcodec_encode_audio2(c, &pkt, NULL, &got_output); if (got_output) { ret = av_interleaved_write_frame(oc, &pkt); av_free_packet(&pkt); } } if (oc) { av_write_trailer(oc); } ~~~~~ -------------- next part -------------- An HTML attachment was scrubbed... URL: From bersac_1 at hotmail.fr Thu Aug 8 16:18:34 2013 From: bersac_1 at hotmail.fr (asqz) Date: Thu, 8 Aug 2013 07:18:34 -0700 (PDT) Subject: [Libav-user] Circular buffer overrun while not reading udp stream Message-ID: <1375971514605-4658354.post@n4.nabble.com> Hi, I am reading an udp stream with the function av_read_frame. While I am constantly doing it, my program doesn't have any problem. The problem occur when I stop reading it for a while, and then reading it again. After a while not reading the udp stream, this error message pop : *Circular buffer overrun. To avoid, increase fifo_size URL option. To survive in such case, use overrun_nonfatal option * When I resume the stream reading, it read successfully read some packet and then display error : * slice end not reached but screenspace end (3 left 000000, score= -352)* After this av_read_frame return the value -5 and my program cam't read successfully any packet. It seems like I have to stop some buffer to be filled by the udp stream. I tried the function av_read_pause without success. Can you help me fix this problem please ? -- View this message in context: http://libav-users.943685.n4.nabble.com/Circular-buffer-overrun-while-not-reading-udp-stream-tp4658354.html Sent from the libav-users mailing list archive at Nabble.com. From kalileo at universalx.net Fri Aug 9 08:44:07 2013 From: kalileo at universalx.net (Kalileo) Date: Fri, 9 Aug 2013 13:44:07 +0700 Subject: [Libav-user] Circular buffer overrun while not reading udp stream In-Reply-To: <1375971514605-4658354.post@n4.nabble.com> References: <1375971514605-4658354.post@n4.nabble.com> Message-ID: On Aug 8, 2013, at 21:18 , asqz wrote: > ... > It seems like I have to stop some buffer to be filled by the udp stream. I > tried the function av_read_pause without success. > > Can you help me fix this problem please ? > How about closing the stream and reopen when you're ready to read again? From battistel at gmail.com Fri Aug 9 12:55:25 2013 From: battistel at gmail.com (Massimo Battistel) Date: Fri, 9 Aug 2013 12:55:25 +0200 Subject: [Libav-user] AVFilter proper configuration Message-ID: Hello, regarding the following example: http://ffmpeg.org/doxygen/trunk/doc_2examples_2filtering_video_8c-example.html I cannot make it work with "fps=fps=25" filter. I get non monotone pts. Do I have to modify something on "Init_Filters"? thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: From bersac_1 at hotmail.fr Fri Aug 9 13:40:03 2013 From: bersac_1 at hotmail.fr (asqz) Date: Fri, 9 Aug 2013 04:40:03 -0700 (PDT) Subject: [Libav-user] Circular buffer overrun while not reading udp stream In-Reply-To: References: <1375971514605-4658354.post@n4.nabble.com> Message-ID: >>How about closing the stream and reopen when you're ready to read again? I tried and it worked. I close the AVFormatContext and reopen it, but it take something like 4 seconds. Another way to restart successfully could be to clean the beffer before resuming reading. Is there a way to do that ? Moroever the error : Circular buffer overrun. To avoid, increase fifo_size URL option. To survive in such case, use overrun_nonfatal optionIs still displayed. Do you know how to get rid of this error ? Cordially,Guillaume Bersac -- View this message in context: http://libav-users.943685.n4.nabble.com/Circular-buffer-overrun-while-not-reading-udp-stream-tp4658354p4658356.html Sent from the libav-users mailing list archive at Nabble.com. From martijnvdc at gmail.com Sat Aug 10 01:57:13 2013 From: martijnvdc at gmail.com (Martijn Vandecasteele) Date: Sat, 10 Aug 2013 01:57:13 +0200 Subject: [Libav-user] Dynamically changing the target bitrate for VP8 and Opus Message-ID: Hello, I am trying to implement an audio and video stream over a network. However, i need to change the bitrate during encoding, to adapt to the connection's bandwidth. I tried changing the bit_rate variable of the codec context, which did not seem to do anything. I assume this variable is only used during codec initiation? I also tried changing the crf value for VP8 using av_opt_set_double, but it also had no effect. Is there a way to control the bitrate without re-initialising the codec every time i need a different bitrate? -------------- next part -------------- An HTML attachment was scrubbed... URL: From nicolas.george at normalesup.org Sat Aug 10 13:00:41 2013 From: nicolas.george at normalesup.org (Nicolas George) Date: Sat, 10 Aug 2013 13:00:41 +0200 Subject: [Libav-user] What exactly is AVFilterPad and AVFilterInOut within libavfilter? In-Reply-To: <1375218256232-4658321.post@n4.nabble.com> References: <1375218256232-4658321.post@n4.nabble.com> Message-ID: <20130810110041.GH9838@phare.normalesup.org> Le duodi 12 thermidor, an CCXXI, sunswang a ?crit?: > I am currently trying to figure out how to resolve the "output pad .... no > source found" error from a modification of the ffmpeg audio filter example > because I am using a filter that requires 2 or more inputs. Please do not trim error messages. > However, I am having trouble understanding exactly what "AVFilterPad", AVFilterPad is used to describe an input or output of a filter: its type, its name, pointers to functions used to handle incoming or outgoing frames and a few more technical details. It is part of the filter. > "AVFilterInOut" are in playing a roll towards filtering. AVFilterInOut is mostly a way of encoding the information "the 4th input of the concat filter": a pointer to the filter context, and the index of the designated input or output. Plus a next pointer to build a linked list, and possibly a name if the structure comes from parsing a graph description. For example, if you parse a graph that says "[0:a] [ex] amerge", you get two AVFilterInOut for the input: - one pointing to the context for amerge, index #0, name "0:a"; - one pointing to the context for amerge, index #1, name "ex"; and one AVFilterInOut for the output: - pointing to the context for amerge, index #0 (it has only one output), name NULL. Regards, -- Nicolas George -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: Digital signature URL: From lucas.soltic at orange.fr Sat Aug 10 16:11:59 2013 From: lucas.soltic at orange.fr (Lucas Soltic) Date: Sat, 10 Aug 2013 16:11:59 +0200 Subject: [Libav-user] About audio decoding Message-ID: Hello, Until now, I was using avcodec_audio_decode3(). But as I moved on to FFmpeg 2.0, I got issues with some decoders that indicated I should move on to avcodec_audio_decode4(). So that's what I am doing at the moment. However, there is one part of the audio decode example that I do not understand: if (avpkt.size < AUDIO_REFILL_THRESH) { /* Refill the input buffer, to avoid trying to decode * incomplete frames. Instead of this, one could also use * a parser, or use a proper container format through * libavformat. */ memmove(inbuf, avpkt.data, avpkt.size); avpkt.data = inbuf; len = fread(avpkt.data + avpkt.size, 1, AUDIO_INBUF_SIZE - avpkt.size, f); if (len > 0) avpkt.size += len; } Does that mean that AVPacket can contain incomplete frames? I would have expected an AVPacket to contain one or several frames, but not incomplete ones? I also do not understand what the 'parser' and 'proper container format' solutions would be. Regards, Lucas -------------- next part -------------- An HTML attachment was scrubbed... URL: From nicolas.george at normalesup.org Sat Aug 10 16:32:14 2013 From: nicolas.george at normalesup.org (Nicolas George) Date: Sat, 10 Aug 2013 16:32:14 +0200 Subject: [Libav-user] About audio decoding In-Reply-To: References: Message-ID: <20130810143214.GA31924@phare.normalesup.org> Le tridi 23 thermidor, an CCXXI, Lucas Soltic a ?crit?: > Hello, > However, there is one part of the audio decode example that I do not > understand: > if (avpkt.size < AUDIO_REFILL_THRESH) { > /* Refill the input buffer, to avoid trying to decode > * incomplete frames. Instead of this, one could also use > * a parser, or use a proper container format through > * libavformat. */ > memmove(inbuf, avpkt.data, avpkt.size); > avpkt.data = inbuf; > len = fread(avpkt.data + avpkt.size, 1, > AUDIO_INBUF_SIZE - avpkt.size, f); > if (len > 0) > avpkt.size += len; > } > > Does that mean that AVPacket can contain incomplete frames? I would have > expected an AVPacket to contain one or several frames, but not incomplete > ones? Depends on what "can" you mean exactly. If you read a file using libavformat, the packets it returns are supposed to always contain exactly one frame, and never incomplete ones. In that sense, a packet can not contain incomplete frames. But if you give a packet with incomplete frames to libavcodec, it will decode what can be decoded, return the number of bytes consumed and properly leave the incomplete frame for later. In that sense, a packet can contain incomplete frames. > I also do not understand what the 'parser' and 'proper container format' > solutions would be. Look at what the code in the example does: it uses stdio to read directly from a MP2 file. A proper container format is a file format designed to store various streams in various codecs, such as Matroska, Ogg, NUT, MP4, AVI, etc. The format has generic data structures to delimit packets and store timestamps. That is the best way of storing audio-video content. Some formats are just the packets concatenated together, without any header or delimiter. It is called an elementary stream, and does not work with all codecs. For example, it works with most MPEG codecs, but usually not with the Vorbis codecs. A parser is a stripped-down decoder that is used to find packet boundaries and various additional information in an elementary stream; libavformat uses them for you whenever necessary. Regards, -- Nicolas George -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: Digital signature URL: From lucas.soltic at orange.fr Sat Aug 10 17:40:47 2013 From: lucas.soltic at orange.fr (Lucas Soltic) Date: Sat, 10 Aug 2013 17:40:47 +0200 Subject: [Libav-user] About audio decoding In-Reply-To: <20130810143214.GA31924@phare.normalesup.org> References: <20130810143214.GA31924@phare.normalesup.org> Message-ID: <8ACDF01C-5B50-4DEB-8CFB-3DE9EF57AFC0@orange.fr> Le 10 ao?t 2013 ? 16:32, Nicolas George a ?crit : > Le tridi 23 thermidor, an CCXXI, Lucas Soltic a ?crit : >> Hello, >> However, there is one part of the audio decode example that I do not >> understand: >> if (avpkt.size < AUDIO_REFILL_THRESH) { >> /* Refill the input buffer, to avoid trying to decode >> * incomplete frames. Instead of this, one could also use >> * a parser, or use a proper container format through >> * libavformat. */ >> memmove(inbuf, avpkt.data, avpkt.size); >> avpkt.data = inbuf; >> len = fread(avpkt.data + avpkt.size, 1, >> AUDIO_INBUF_SIZE - avpkt.size, f); >> if (len > 0) >> avpkt.size += len; >> } >> >> Does that mean that AVPacket can contain incomplete frames? I would have >> expected an AVPacket to contain one or several frames, but not incomplete >> ones? > > Depends on what "can" you mean exactly. > > If you read a file using libavformat, the packets it returns are supposed to > always contain exactly one frame, and never incomplete ones. In that sense, > a packet can not contain incomplete frames. > > But if you give a packet with incomplete frames to libavcodec, it will > decode what can be decoded, return the number of bytes consumed and properly > leave the incomplete frame for later. In that sense, a packet can contain > incomplete frames. So if all of my packets are created through av_malloc(sizeof(AVPacket)) + av_init_packet() + av_read_frame(), I will always get one and only one frame (may it be valid or not) per packet? Thus I don't have to care of the above piece of code. Am I right? By the way.. I just noticed that av_read_frame()'s documentation states the following: It will split what is stored in the file into frames and return one for each call. So it seems like I'm right... >> I also do not understand what the 'parser' and 'proper container format' >> solutions would be. > > Look at what the code in the example does: it uses stdio to read directly > from a MP2 file. A proper container format is a file format designed to > store various streams in various codecs, such as Matroska, Ogg, NUT, MP4, > AVI, etc. The format has generic data structures to delimit packets and > store timestamps. That is the best way of storing audio-video content. > > Some formats are just the packets concatenated together, without any header > or delimiter. It is called an elementary stream, and does not work with all > codecs. For example, it works with most MPEG codecs, but usually not with > the Vorbis codecs. A parser is a stripped-down decoder that is used to find > packet boundaries and various additional information in an elementary > stream; libavformat uses them for you whenever necessary. Hmm ok I understand now :), many thanks for the explanation! > > Regards, > > -- > Nicolas George > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user From battistel at gmail.com Sat Aug 10 18:26:51 2013 From: battistel at gmail.com (Massimo Battistel) Date: Sat, 10 Aug 2013 18:26:51 +0200 Subject: [Libav-user] AVFilter proper configuration In-Reply-To: References: Message-ID: I found what was wrong. On "InitFilters" function, when setting args (char args[512]), I had to use stream timebase (AVStream) and not codec timebase (AVCodecContext). I don't know if this can be considered a bug. Second thing, fps filter do not modify frame->pts. Is it correct? thanks 2013/8/9 Massimo Battistel > Hello, > regarding the following example: > > > http://ffmpeg.org/doxygen/trunk/doc_2examples_2filtering_video_8c-example.html > > I cannot make it work with "fps=fps=25" filter. I get non monotone pts. > Do I have to modify something on "Init_Filters"? > > thanks > > -- Massimo Battistel. -------------- next part -------------- An HTML attachment was scrubbed... URL: From yousef.alhashemi at gmail.com Mon Aug 12 00:09:04 2013 From: yousef.alhashemi at gmail.com (Yousef Alhashemi) Date: Mon, 12 Aug 2013 01:09:04 +0300 Subject: [Libav-user] using ffmpeg libraries to split a video Message-ID: Hi, I asked a question on the ffmpeg support forum (ffmpeg.gusari.org) and someone pointed me to this list, so I'm repeating my question here: I would like to use ffmpeg libraries to split a video into equal-sized chunks of smaller files. For example, let's say I have a 100MB video that I'd like to split into 10 10MB videos using the same audio/video codec and container format. On the command-line, it would be something like this (assuming 10MB of data = 10 seconds of video): ffmpeg -i input.file -ss "00:00:00" -t "00:00:10" -vcodec copy -acodec copy output.file (and repeat the same for the remaining 9 chunks) My question is, what are the actual ffmpeg library calls that do the equivalent of this command? I can dig in the code and find out myself but that would take me a lot of time because I'm not familiar with the (large) code base of ffmpeg. I would appreciate any help from ffmpeg developers; I imagine this is easy to answer. Thanks, Yousef -------------- next part -------------- An HTML attachment was scrubbed... URL: From jyavenard at gmail.com Mon Aug 12 05:36:56 2013 From: jyavenard at gmail.com (Jean-Yves Avenard) Date: Mon, 12 Aug 2013 13:36:56 +1000 Subject: [Libav-user] what is "fltp" for audio when using ffmpeg In-Reply-To: References: Message-ID: On 31 July 2013 17:43, Soho Soho123 wrote: > Hi All, > > > I got the problem when I try to capture audio + video from USB web cam by > ffmepg. > the problem is audio can not play when I use VLC to play the stream that > ffserver output. > the question is : > I use ffmepg the encode audio to "wmav1" but, I can see the log that is > output by audio filter. > the audio format is "fltp". > What is "fltp"? Does anyone have idea? 32 bits floats, planar (as opposed in interleaved) From aworldgonewrong at gmail.com Mon Aug 12 10:14:06 2013 From: aworldgonewrong at gmail.com (John Freeman) Date: Mon, 12 Aug 2013 09:14:06 +0100 Subject: [Libav-user] Scale in RTSP Message-ID: Why doesn't libav support scale in the RTSP PLAY command? The RTSP RFC defines the usage in section 12.34. I really need to use scale in my application without changing the libav source code. -------------- next part -------------- An HTML attachment was scrubbed... URL: From yellowy4321 at gmail.com Mon Aug 12 23:20:25 2013 From: yellowy4321 at gmail.com (sunswang) Date: Mon, 12 Aug 2013 14:20:25 -0700 (PDT) Subject: [Libav-user] What exactly is AVFilterPad and AVFilterInOut within libavfilter? In-Reply-To: <20130810110041.GH9838@phare.normalesup.org> References: <1375218256232-4658321.post@n4.nabble.com> <20130810110041.GH9838@phare.normalesup.org> Message-ID: <1376342425769-4658367.post@n4.nabble.com> Thanks Nicolas George That matches what I previously concluded in my adventures in the FFMPEG source code. For people who are developing with AVFilter this, I recommend taking a look at avfilter_graph_parse2 instead of doing avfilter_graph_parse_ptr, parse2 will setup most of the inputs and outputs for you so you don't have to manually set it up like those provided in the official examples Mike -- View this message in context: http://libav-users.943685.n4.nabble.com/What-exactly-is-AVFilterPad-and-AVFilterInOut-within-libavfilter-tp4658321p4658367.html Sent from the libav-users mailing list archive at Nabble.com. From andrey2067 at gmail.com Tue Aug 13 10:38:48 2013 From: andrey2067 at gmail.com (Andrey Mochenov) Date: Tue, 13 Aug 2013 11:38:48 +0300 Subject: [Libav-user] HLS options problem Message-ID: Hi gentlemen, We are using FFmpeg libraries git-ee94362 libavformat v55.2.100. We are trying to write a simple HLS code example based on muxing.c standard one. Let be two input streams, video and audio (they can be synthetic, doesn't matter). Our purpose is to mux them into M3U8 playlist using HLS. Suppose, duration of every TS segment file be 3 sec, and the desirable maximum number of entries in M3U8 output file be 100. >From the FFmpeg application sources, one can see that the Apple HTTP Live Streaming segmenter implemented in hlsenc.c file. And the relevant options there are, as well: "hls_list_size", "hls_time", etc. The problem is that we have not succeeded to set/get/find these options in a conventional way, as shown in the following code: // Here is a part of main() program int64_t i1 = 0; void *target_obj; AVFormatContext *ofmt_ctx = NULL; AVOutputFormat *ofmt = NULL; avformat_alloc_output_context2(&ofmt_ctx, NULL, NULL, "Example_Out.m3u8"); ofmt = ofmt_ctx->oformat; // The relevant options ("hls_list_size", "hls_time") are located under ofmt->priv_class->option. // But AVClass *priv_class is not the first member of the AVOutputFormat. // So, due to the documentation, av_opt_find...(), av_opt_get...() and av_opt_set...() // cannot be used for options within AVOutputFormat. // In practice, any of the following three lines causes exception. const AVOption *o = av_opt_find2(ofmt, "segment_list_size", NULL, 0, AV_OPT_SEARCH_CHILDREN, &target_obj); av_opt_get_int(ofmt, "segment_list_size", AV_OPT_SEARCH_CHILDREN, &i1); av_opt_set_int(ofmt, "segment_list_size", 10, AV_OPT_SEARCH_CHILDREN); Our question: If there is a way to overcome the problem, i.e. to set/get/find options for AVOutputFormat, like for AVCodecContext (for example)? Thank you, Andrey Mochenov. -------------- next part -------------- An HTML attachment was scrubbed... URL: From onemda at gmail.com Tue Aug 13 14:40:11 2013 From: onemda at gmail.com (Paul B Mahol) Date: Tue, 13 Aug 2013 12:40:11 +0000 Subject: [Libav-user] HLS options problem In-Reply-To: References: Message-ID: On 8/13/13, Andrey Mochenov wrote: > Hi gentlemen, > > We are using FFmpeg libraries git-ee94362 libavformat v55.2.100. > We are trying to write a simple HLS code example based on muxing.c standard > one. > Let be two input streams, video and audio (they can be synthetic, doesn't > matter). > Our purpose is to mux them into M3U8 playlist using HLS. > Suppose, duration of every TS segment file be 3 sec, and the desirable > maximum number of entries in M3U8 output file be 100. > From the FFmpeg application sources, one can see that the Apple HTTP Live > Streaming segmenter implemented in hlsenc.c file. > And the relevant options there are, as well: "hls_list_size", "hls_time", > etc. > The problem is that we have not succeeded to set/get/find these options in > a conventional way, as shown in the following code: > > // Here is a part of main() program > int64_t i1 = 0; > void *target_obj; > AVFormatContext *ofmt_ctx = NULL; > AVOutputFormat *ofmt = NULL; > > avformat_alloc_output_context2(&ofmt_ctx, NULL, NULL, "Example_Out.m3u8"); > ofmt = ofmt_ctx->oformat; > > // The relevant options ("hls_list_size", "hls_time") are located under > ofmt->priv_class->option. > // But AVClass *priv_class is not the first member of the AVOutputFormat. > // So, due to the documentation, av_opt_find...(), av_opt_get...() and > av_opt_set...() > // cannot be used for options within AVOutputFormat. > // In practice, any of the following three lines causes exception. > const AVOption *o = av_opt_find2(ofmt, "segment_list_size", NULL, > 0, AV_OPT_SEARCH_CHILDREN, &target_obj); > av_opt_get_int(ofmt, "segment_list_size", AV_OPT_SEARCH_CHILDREN, &i1); > av_opt_set_int(ofmt, "segment_list_size", 10, AV_OPT_SEARCH_CHILDREN); > > Our question: If there is a way to overcome the problem, i.e. to > set/get/find options for AVOutputFormat, like for AVCodecContext (for > example)? Why for AVOutputFormat? Isn't what you need AVFormatContext ? > > Thank you, > Andrey Mochenov. > From andrey2067 at gmail.com Tue Aug 13 14:57:47 2013 From: andrey2067 at gmail.com (Andrey Mochenov) Date: Tue, 13 Aug 2013 15:57:47 +0300 Subject: [Libav-user] HLS options problem In-Reply-To: References: Message-ID: Hi Paul, Thank you, it is exactly what we need. Andrey. On Tue, Aug 13, 2013 at 3:40 PM, Paul B Mahol wrote: > On 8/13/13, Andrey Mochenov wrote: > > Hi gentlemen, > > > > We are using FFmpeg libraries git-ee94362 libavformat v55.2.100. > > We are trying to write a simple HLS code example based on muxing.c > standard > > one. > > Let be two input streams, video and audio (they can be synthetic, doesn't > > matter). > > Our purpose is to mux them into M3U8 playlist using HLS. > > Suppose, duration of every TS segment file be 3 sec, and the desirable > > maximum number of entries in M3U8 output file be 100. > > From the FFmpeg application sources, one can see that the Apple HTTP Live > > Streaming segmenter implemented in hlsenc.c file. > > And the relevant options there are, as well: "hls_list_size", "hls_time", > > etc. > > The problem is that we have not succeeded to set/get/find these options > in > > a conventional way, as shown in the following code: > > > > // Here is a part of main() program > > int64_t i1 = 0; > > void *target_obj; > > AVFormatContext *ofmt_ctx = NULL; > > AVOutputFormat *ofmt = NULL; > > > > avformat_alloc_output_context2(&ofmt_ctx, NULL, NULL, > "Example_Out.m3u8"); > > ofmt = ofmt_ctx->oformat; > > > > // The relevant options ("hls_list_size", "hls_time") are located under > > ofmt->priv_class->option. > > // But AVClass *priv_class is not the first member of the AVOutputFormat. > > // So, due to the documentation, av_opt_find...(), av_opt_get...() and > > av_opt_set...() > > // cannot be used for options within AVOutputFormat. > > // In practice, any of the following three lines causes exception. > > const AVOption *o = av_opt_find2(ofmt, "segment_list_size", NULL, > > 0, AV_OPT_SEARCH_CHILDREN, &target_obj); > > av_opt_get_int(ofmt, "segment_list_size", AV_OPT_SEARCH_CHILDREN, &i1); > > av_opt_set_int(ofmt, "segment_list_size", 10, AV_OPT_SEARCH_CHILDREN); > > > > Our question: If there is a way to overcome the problem, i.e. to > > set/get/find options for AVOutputFormat, like for AVCodecContext (for > > example)? > > Why for AVOutputFormat? Isn't what you need AVFormatContext ? > > > > Thank you, > > Andrey Mochenov. > > > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user > -------------- next part -------------- An HTML attachment was scrubbed... URL: From onemda at gmail.com Wed Aug 14 03:44:43 2013 From: onemda at gmail.com (Paul B Mahol) Date: Wed, 14 Aug 2013 01:44:43 +0000 Subject: [Libav-user] using ffmpeg libraries to split a video In-Reply-To: References: Message-ID: On 8/11/13, Yousef Alhashemi wrote: > Hi, > > I asked a question on the ffmpeg support forum (ffmpeg.gusari.org) and > someone pointed me to this list, so I'm repeating my question here: > > I would like to use ffmpeg libraries to split a video into equal-sized > chunks of smaller files. For example, let's say I have a 100MB video that > I'd like to split into 10 10MB videos using the same audio/video codec and > container format. On the command-line, it would be something like this > (assuming 10MB of data = 10 seconds of video): ffmpeg -i input.file -ss > "00:00:00" -t "00:00:10" -vcodec copy -acodec copy output.file (and repeat > the same for the remaining 9 chunks) > > My question is, what are the actual ffmpeg library calls that do the > equivalent of this command? I can dig in the code and find out myself but > that would take me a lot of time because I'm not familiar with the (large) > code base of ffmpeg. I would appreciate any help from ffmpeg developers; I > imagine this is easy to answer. It is far from easy answer, you are actually asking someone to write code for you. From er.anshul.maheshwari at gmail.com Wed Aug 14 05:51:54 2013 From: er.anshul.maheshwari at gmail.com (Anshul maheshwari) Date: Wed, 14 Aug 2013 09:21:54 +0530 Subject: [Libav-user] using ffmpeg libraries to split a video In-Reply-To: References: Message-ID: On Aug 14, 2013 7:14 AM, "Paul B Mahol" wrote: > > On 8/11/13, Yousef Alhashemi wrote: > > Hi, > > > > I asked a question on the ffmpeg support forum (ffmpeg.gusari.org) and > > someone pointed me to this list, so I'm repeating my question here: > > > > I would like to use ffmpeg libraries to split a video into equal-sized > > chunks of smaller files. For example, let's say I have a 100MB video that > > I'd like to split into 10 10MB videos using the same audio/video codec and > > container format. On the command-line, it would be something like this > > (assuming 10MB of data = 10 seconds of video): ffmpeg -i input.file -ss > > "00:00:00" -t "00:00:10" -vcodec copy -acodec copy output.file (and repeat > > the same for the remaining 9 chunks) > > > > My question is, what are the actual ffmpeg library calls that do the > > equivalent of this command? I can dig in the code and find out myself but > > that would take me a lot of time because I'm not familiar with the (large) > > code base of ffmpeg. I would appreciate any help from ffmpeg developers; I > > imagine this is easy to answer. > > It is far from easy answer, you are actually asking someone to write > code for you. > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user You may want to see the hls code, search for file hls -------------- next part -------------- An HTML attachment was scrubbed... URL: From yousef.alhashemi at gmail.com Wed Aug 14 08:41:47 2013 From: yousef.alhashemi at gmail.com (Yousef Alhashemi) Date: Wed, 14 Aug 2013 09:41:47 +0300 Subject: [Libav-user] using ffmpeg libraries to split a video In-Reply-To: References: Message-ID: On Wed, Aug 14, 2013 at 4:44 AM, Paul B Mahol wrote: It is far from easy answer, you are actually asking someone to write > code for you. > I'm not asking anyone to write code for me; I'm just asking about the specific sequence of ffmpeg API calls that do what I want. E.g. 1) Fictional_FFMPEG_Call_OpenFile(); 2) Fictional_FFMPEG_Call_ReadVideoFrames(); 3) Fictional_FFMPEG_Call_ReadAudioTrack(); 4) etc. I can take care of the details. Thanks, Yousef -------------- next part -------------- An HTML attachment was scrubbed... URL: From battistel at gmail.com Wed Aug 14 10:07:16 2013 From: battistel at gmail.com (Massimo Battistel) Date: Wed, 14 Aug 2013 10:07:16 +0200 Subject: [Libav-user] Dinamically change volume Message-ID: hello, I see libavfilter has the command "avfilter_graph_send_command" to change filters parameters on runtime. I also see not all the filters implement the "process_command" method, volume filter including. Is it possible to add "process_command" to volume filter? thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: From omkarshetkar at gmail.com Wed Aug 14 10:56:16 2013 From: omkarshetkar at gmail.com (Omkar Shetkar) Date: Wed, 14 Aug 2013 14:26:16 +0530 Subject: [Libav-user] FFMPEG for HLS V4 Message-ID: Hi All, I am beginner in using FFMPEG library. I wanted to use this library to support HLS V4. Which version of HLS is supported by the latest release of FFMPEG(2.0.1) ? In which version of FFMPEG I can find support for HLS V4? Please clarify. -- Regards Omkar -------------- next part -------------- An HTML attachment was scrubbed... URL: From onemda at gmail.com Wed Aug 14 14:21:05 2013 From: onemda at gmail.com (Paul B Mahol) Date: Wed, 14 Aug 2013 12:21:05 +0000 Subject: [Libav-user] Dinamically change volume In-Reply-To: References: Message-ID: On 8/14/13, Massimo Battistel wrote: > hello, > I see libavfilter has the command "avfilter_graph_send_command" to change > filters parameters on runtime. > I also see not all the filters implement the "process_command" method, > volume filter including. > > Is it possible to add "process_command" to volume filter? Yes it is. You could open feature request on bug tracker. From hamidi at gmail.com Wed Aug 14 14:38:35 2013 From: hamidi at gmail.com (hamidi) Date: Wed, 14 Aug 2013 17:08:35 +0430 Subject: [Libav-user] 920523 - does ffmpeg support 4HKH? Message-ID: hi Hikvision company offers a DVR Card (DS-4016HCI). when i get stream and dump it to a file i see that the first four characters are 4HKH. the format seems weird. i could find a filter for Windows Media Player to play it. so it's a video file anyway. but ffmpeg can't understand it. i could not play it by ffplay. it doesn't recognize it. also vlc can't play it. i tried to set the card to change the format to something familiar, but i couldn't find a way. so, i thought about helping ffmpeg to recognize it. but i have no idea how it may be possible. any help/clue appreciated. -------------- next part -------------- An HTML attachment was scrubbed... URL: From joe.flowers at nofreewill.com Wed Aug 14 17:44:09 2013 From: joe.flowers at nofreewill.com (Joe Flowers) Date: Wed, 14 Aug 2013 11:44:09 -0400 Subject: [Libav-user] --disable-pthreads ??? Message-ID: Hello Everyone, I am writing a program that uses the FFMPeg libraries for audio encoding and decoding, and I'm wondering if I should use the "--enable-pthreads" configure option and what will be the harm if I use the "--disable-pthreads" option? It is possible that separate threads in our program will be using these same FFMPEg functions at the same time. Do we need to synchronize access to these functions with a mutex, with or without the --disable-pthreads option being set? Are the same context or frame objects shared across threads? Thanks! Joe ---------------- -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrey2067 at gmail.com Thu Aug 15 13:29:07 2013 From: andrey2067 at gmail.com (Andrey Mochenov) Date: Thu, 15 Aug 2013 14:29:07 +0300 Subject: [Libav-user] HLS: Exactly constant segment duration Message-ID: Hi, We are using FFmpeg libraries git-ee94362 libavformat v55.2.100. Our purpose is to mux two streams (video and audio) into M3U8 playlist using HLS. In addition, we want the duration of every TS segment file be exactly 3.0 sec (frame rate is 25 fps). To reach it, we are trying to set several options and properties, namely: - segment_time - keyint_min - scenechange_threshold - gop_size - force_key_frames. And our code looks as below: AVCodecContext *codec_ctx = NULL; AVFormatContext *ofmt_ctx = NULL; int ret = 0, gopSize = (int)(3.0 * 25); // 3 sec * 25 fps // ofmt_ctx and codec_ctx initialization and filling are OK, but: codec_ctx->time_base.num = 1; codec_ctx->time_base.den = 25 // fps // It seems, that the following three lines have no effect without explisit setting of the "hls_time" property codec_ctx->keyint_min = gopSize; // in FFMpeg application, the corresponding option is "-keyint_min 3" codec_ctx->scenechange_threshold = 0; // in FFMpeg application, the corresponding option is "-sc_threshold 0" codec_ctx->gop_size = gopSize; // in FFMpeg application, the corresponding option is "-g 3" ret = av_opt_set_double(ofmt_ctx, "hls_time", 3.0, AV_OPT_SEARCH_CHILDREN); // Any of the following lines causes "Option not found" error. ret = av_opt_set(codec_ctx->priv_data, "profile", "main", AV_OPT_SEARCH_CHILDREN); ret = av_opt_set(codec_ctx->priv_data, "preset", "ultrafast", AV_OPT_SEARCH_CHILDREN); ret = av_opt_get(ofmt_ctx, "segment_time", AV_OPT_SEARCH_CHILDREN, &str); ret = av_opt_set((ofmt_ctx, "segment_time", "3.0", AV_OPT_SEARCH_CHILDREN); Anyway, the TS files durations are different, (~2-3 sec), and not EXACTLY 3.0 sec. Our question: What is the best way to solve the problem? Andrey Mochenov. -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrey2067 at gmail.com Thu Aug 15 13:41:18 2013 From: andrey2067 at gmail.com (Andrey Mochenov) Date: Thu, 15 Aug 2013 14:41:18 +0300 Subject: [Libav-user] Watermarks implementation Message-ID: Hi, We are using FFmpeg libraries git-ee94362 libavformat v55.2.100. Our purpose is to add watermark (semi-transparent PNG image) on the video. The corresponding option in MMpeg application is "-vf". Our question: How to implement the feature using FFmpeg libraries? Andrey Mochenov. -------------- next part -------------- An HTML attachment was scrubbed... URL: From onemda at gmail.com Thu Aug 15 13:43:57 2013 From: onemda at gmail.com (Paul B Mahol) Date: Thu, 15 Aug 2013 11:43:57 +0000 Subject: [Libav-user] Watermarks implementation In-Reply-To: References: Message-ID: On 8/15/13, Andrey Mochenov wrote: > Hi, > > We are using FFmpeg libraries git-ee94362 libavformat v55.2.100. > Our purpose is to add watermark (semi-transparent PNG image) on the video. > The corresponding option in MMpeg application is "-vf". > > Our question: How to implement the feature using FFmpeg libraries? By using overlay filter, there are examples how to use filters with libraries. > > Andrey Mochenov. > From malutik at yandex.ru Thu Aug 15 20:23:08 2013 From: malutik at yandex.ru (=?koi8-r?B?5cvB1MXSyc7B?=) Date: Thu, 15 Aug 2013 22:23:08 +0400 Subject: [Libav-user] How to feed data to libav from ethernet streams with video&audio threads Message-ID: <585971376590988@web14d.yandex.ru> An HTML attachment was scrubbed... URL: From andrey.krieger.utkin at gmail.com Thu Aug 15 21:29:58 2013 From: andrey.krieger.utkin at gmail.com (Andrey Utkin) Date: Thu, 15 Aug 2013 22:29:58 +0300 Subject: [Libav-user] How to feed data to libav from ethernet streams with video&audio threads In-Reply-To: <585971376590988@web14d.yandex.ru> References: <585971376590988@web14d.yandex.ru> Message-ID: 2013/8/15 ????????? : > I guess how to collect video frame but don't know how to specify correct > context( AVFormatContext) and > write data to AVPacket structure (possibly using av_packet_from_data). > > Please suggest how to feed data to libav from ethernet streams to > get file ***.avi which consists of video and audio threads. See avformat_new_stream(). Call it for each elementary stream you have, on the output file context. The rest depends on whether you transcode data or remux it (i.e. just copy AVPackets you got). -- Andrey Utkin From gga96 at skymesh.com.au Fri Aug 16 01:54:48 2013 From: gga96 at skymesh.com.au (Glen) Date: Fri, 16 Aug 2013 09:54:48 +1000 Subject: [Libav-user] Help or Higher Level Interface Libraries Message-ID: <5B90443FD2AB4E5D8AEF74E702C190BC@GlenPC> Hi All, I have not worked with the FFmpeg libraries before and would appreciate some initial guidance. I am researching a new project that involves the random access of the decoded video frames. I believe there is a need to initially map the ?I? frame offsets in the input stream to gain the random access required. The mapping I can do. Where I need help is, having found the ?I? frame offset how do I proceed to extract the AVFrame (a pointer to the decoded frame matrix) using the FFmpeg libraries. The libraries cover an extensive amount of data and I am getting lost in the detail. Can you please help to get the interface sorted? Or is there an approved 3rd party higher level library that interfaces with the backed FFmpeg libs? All help is appreciated. Glen -------------- next part -------------- An HTML attachment was scrubbed... URL: From krueger at lesspain.de Fri Aug 16 10:06:54 2013 From: krueger at lesspain.de (=?UTF-8?Q?Robert_Kr=C3=BCger?=) Date: Fri, 16 Aug 2013 10:06:54 +0200 Subject: [Libav-user] Help or Higher Level Interface Libraries In-Reply-To: <5B90443FD2AB4E5D8AEF74E702C190BC@GlenPC> References: <5B90443FD2AB4E5D8AEF74E702C190BC@GlenPC> Message-ID: On Fri, Aug 16, 2013 at 1:54 AM, Glen wrote: > Hi All, > > I have not worked with the FFmpeg libraries before and would appreciate some > initial guidance. > > I am researching a new project that involves the random access of the > decoded video frames. > > I believe there is a need to initially map the ?I? frame offsets in the > input stream to gain the random access required. The mapping I can do. > > Where I need help is, having found the ?I? frame offset how do I proceed to > extract the AVFrame (a pointer to the decoded frame matrix) using the FFmpeg > libraries. The libraries cover an extensive amount of data and I am getting > lost in the detail. > > Can you please help to get the interface sorted? > > Or is there an approved 3rd party higher level library that interfaces with > the backed FFmpeg libs? there may be some projects out there but "approved" by the ffmpeg project, I don't know. For the task you describe, getting something to work with libavformat and libavcodec should not be too difficult although the learning curve is a bit steep at the beginning. I would start with demuxing.c in the examples directory and then take a look at the avformat_seek_file function to add the random access to the I-frames. Good luck, Robert From malutik at yandex.ru Fri Aug 16 11:20:25 2013 From: malutik at yandex.ru (=?koi8-r?B?5cvB1MXSyc7B?=) Date: Fri, 16 Aug 2013 13:20:25 +0400 Subject: [Libav-user] How to feed data to libav from ethernet streams with video&audio threads In-Reply-To: References: <585971376590988@web14d.yandex.ru> Message-ID: <160651376644825@web17f.yandex.ru> An HTML attachment was scrubbed... URL: From andrey.krieger.utkin at gmail.com Fri Aug 16 11:27:36 2013 From: andrey.krieger.utkin at gmail.com (Andrey Utkin) Date: Fri, 16 Aug 2013 12:27:36 +0300 Subject: [Libav-user] How to feed data to libav from ethernet streams with video&audio threads In-Reply-To: <160651376644825@web17f.yandex.ru> References: <585971376590988@web14d.yandex.ru> <160651376644825@web17f.yandex.ru> Message-ID: 2013/8/16 ????????? : > Where is a mistake? No guesses which mistake is fatal here (although you have spare avio_open() as i see). You have to use debugger to see what instruction produces failure. Or try forming minimal isolated code snippet (and media file) which reproduces your problem, and compiles on linux (because the majority of developers doesn't use Visual Studio). -- Andrey Utkin From nisar.med at gmail.com Fri Aug 16 16:00:35 2013 From: nisar.med at gmail.com (Nisar Ahmed) Date: Fri, 16 Aug 2013 19:00:35 +0500 Subject: [Libav-user] muxing h264/aac stream Message-ID: I am muxing h264/aac stream to mp4 coming from an encoder and having issues syncing audio and video streams. I suspect that the problem is with PTS and DTS but I am not sure what values should i set to properly sync both streams. I have set the time_base of video stream's AVCodecContext to 1001/30000 and each AVPacket gets a duration of 1001 I am recieving time stamps from the encoder with each NAL packet which is set as PTS of the AVPacket. the sequence of PTS/DTS I set is (2002/0, 0/1001, 1001/2002, 5005/3003, 3003/4004...) Audio stream AVCodecContext sample rate is 48000 and PTS/DTS are simply multiples of 1024 starting from 0 and AVPacket duration is 1024. The output movie 's frame rate is 20fps when it should be 29.97fps as it is ntsc. Please tell me how to debug this problem and what are the guidelines of creating pts/dts for both video and audio in my case -------------- next part -------------- An HTML attachment was scrubbed... URL: From nfxjfg at googlemail.com Fri Aug 16 17:46:48 2013 From: nfxjfg at googlemail.com (wm4) Date: Fri, 16 Aug 2013 17:46:48 +0200 Subject: [Libav-user] Help or Higher Level Interface Libraries In-Reply-To: <5B90443FD2AB4E5D8AEF74E702C190BC@GlenPC> References: <5B90443FD2AB4E5D8AEF74E702C190BC@GlenPC> Message-ID: <20130816174648.4ba671bd@debian> On Fri, 16 Aug 2013 09:54:48 +1000 "Glen" wrote: > Hi All, > > I have not worked with the FFmpeg libraries before and would appreciate some initial guidance. > > I am researching a new project that involves the random access of the decoded video frames. There's this library: https://code.google.com/p/ffmpegsource/ It provides a stable interface to the ffmpeg libraries, as well as random access to video frames at least. From stears333 at gmail.com Fri Aug 16 11:06:42 2013 From: stears333 at gmail.com (=?ISO-8859-1?B?wWThbSBK4W5vc3N5?=) Date: Fri, 16 Aug 2013 11:06:42 +0200 Subject: [Libav-user] When will ffmpeg incorporate the LENTOID HEVC codec Message-ID: Hello! When will the ffmpeg inforporate the (X265 or the LENTOID) HEVC codecs? Thank you for your reply! Adam Janossy -------------- next part -------------- An HTML attachment was scrubbed... URL: From er.anshul.maheshwari at gmail.com Fri Aug 16 23:10:59 2013 From: er.anshul.maheshwari at gmail.com (Anshul maheshwari) Date: Sat, 17 Aug 2013 02:40:59 +0530 Subject: [Libav-user] muxing h264/aac stream In-Reply-To: References: Message-ID: - On Aug 16, 2013 7:30 PM, "Nisar Ahmed" wrote: > > I am muxing h264/aac stream to mp4 coming from an encoder and having issues syncing audio and video streams. > > I suspect that the problem is with PTS and DTS but I am not sure what values should i set to properly sync both streams. > > I have set the time_base of video stream's AVCodecContext to 1001/30000 and each AVPacket gets a duration of 1001 > > I am recieving time stamps from the encoder with each NAL packet which is set as PTS of the AVPacket. the sequence of PTS/DTS I set is (2002/0, 0/1001, 1001/2002, 5005/3003, 3003/4004...) > > Audio stream AVCodecContext sample rate is 48000 and PTS/DTS are simply multiples of 1024 starting from 0 and AVPacket duration is 1024. > > The output movie 's frame rate is 20fps when it should be 29.97fps as it is ntsc. > > Please tell me how to debug this problem and what are the guidelines of creating pts/dts for both video and audio in my case > > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user > Hi naseer If you are getting timestamp with encoder, i would suggest "dont try to manuplate that" you may set that same timestamp as presentation timestamp (pts) if your video is realtime then try not to generate B type video frame hence no need to set dts. Whatever clock is set by encoder try generating the pts of audio according to that. @enjoy Anshul -------------- next part -------------- An HTML attachment was scrubbed... URL: From nisar.med at gmail.com Sat Aug 17 08:05:40 2013 From: nisar.med at gmail.com (Nisar Ahmed) Date: Sat, 17 Aug 2013 11:05:40 +0500 Subject: [Libav-user] muxing h264/aac stream In-Reply-To: References: Message-ID: Thanks for your answer, when I set timestamp of decoder, the frame rate jumps up to a very large value pts/dts = (2002/0, 0/0, 1001/0, 5005/0, 3003/0...) am I setting the time_base to correct values 1001/30000 and pkt.duration = 1001? the timescale of the timestamp is also 30000 On Sat, Aug 17, 2013 at 2:10 AM, Anshul maheshwari < er.anshul.maheshwari at gmail.com> wrote: > - > > On Aug 16, 2013 7:30 PM, "Nisar Ahmed" wrote: > > > > I am muxing h264/aac stream to mp4 coming from an encoder and having > issues syncing audio and video streams. > > > > I suspect that the problem is with PTS and DTS but I am not sure what > values should i set to properly sync both streams. > > > > I have set the time_base of video stream's AVCodecContext to 1001/30000 > and each AVPacket gets a duration of 1001 > > > > I am recieving time stamps from the encoder with each NAL packet which > is set as PTS of the AVPacket. the sequence of PTS/DTS I set is (2002/0, > 0/1001, 1001/2002, 5005/3003, 3003/4004...) > > > > Audio stream AVCodecContext sample rate is 48000 and PTS/DTS are simply > multiples of 1024 starting from 0 and AVPacket duration is 1024. > > > > The output movie 's frame rate is 20fps when it should be 29.97fps as it > is ntsc. > > > > Please tell me how to debug this problem and what are the guidelines of > creating pts/dts for both video and audio in my case > > > > _______________________________________________ > > Libav-user mailing list > > Libav-user at ffmpeg.org > > http://ffmpeg.org/mailman/listinfo/libav-user > > > Hi naseer > > If you are getting timestamp with encoder, i would suggest "dont try to > manuplate that" you may set that same timestamp as presentation timestamp > (pts) if your video is realtime then try not to generate B type video frame > hence no need to set dts. > Whatever clock is set by encoder try generating the pts of audio according > to that. > > @enjoy > Anshul > > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From gaoyuan1024 at gmail.com Sun Aug 18 05:26:11 2013 From: gaoyuan1024 at gmail.com (gaoyuan) Date: Sun, 18 Aug 2013 11:26:11 +0800 Subject: [Libav-user] motion vector extraction in H.264 video Message-ID: <002c01ce9bc2$b1c065e0$154131a0$@gmail.com> Hi, all! I'm trying to extract motion vector in the H.264 video using Zeranoe's FFmpeg Builds. FFmpeg version: 2013-06-23 git-c329713 libavutil 52. 37.101 / 52. 37.101 libavcodec 55. 16.100 / 55. 16.100 libavformat 55. 9.100 / 55. 9.100 libavdevice 55. 2.100 / 55. 2.100 libavfilter 3. 77.101 / 3. 77.101 libswscale 2. 3.100 / 2. 3.100 libswresample 0. 17.102 / 0. 17.102 libpostproc 52. 3.100 / 52. 3.100 This FFmpeg build was configured with: --disable-static --enable-shared --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetype --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib I refered to the method in this blog http://jiasi.blogspot.com/2011/05/motion-vector-extraction.html and compiled the code in VS 2012 under windows 7. I've set the debug_mv of AVCodecContext as FF_DEBUG_VIS_MV_P_FOR | FF_DEBUG_VIS_MV_B_FOR, and get the result as followed. But the motion_val in AVFrame did't have the corresponding value. Have you guys meet with this problem? Thanks Gao Yuan :) -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/jpeg Size: 45757 bytes Desc: not available URL: From soho123.2012 at gmail.com Sun Aug 18 07:50:39 2013 From: soho123.2012 at gmail.com (Soho Soho123) Date: Sun, 18 Aug 2013 13:50:39 +0800 Subject: [Libav-user] Fwd: HELP!HELP! ffmpeg+ffserver stability issue via 127.0.0.1 http post In-Reply-To: References: Message-ID: Hi All, When I try to setup a stream server with ffmpeg+ ffserver. the problem I got is : ffmpeg use tcp to connect ffserver. then ffmpeg use http post to send video data to ffserver via loopback. the source of video data is from usb webcam, ffmpeg capture video then post to ffserver via tcp socket through loopback netdev. it is not stable via http 127.0.0.1 post. since sometime ffserver says : there is not new data ready for read (the result is from poll). then no any data can be sent to remote vlc client for preview. the video stream will be disconnected. Does anyone have idea about http post to 127.0.0.1 from ffmpeg to ffserver? why it is not stable? -------------- next part -------------- An HTML attachment was scrubbed... URL: From soho123.2012 at gmail.com Sun Aug 18 07:51:02 2013 From: soho123.2012 at gmail.com (Soho Soho123) Date: Sun, 18 Aug 2013 13:51:02 +0800 Subject: [Libav-user] Fwd: [HELP][HELP]ffmpeg can not post new video data to ffserver In-Reply-To: References: Message-ID: Hi All, I got the problem about ffmpeg post fail to ffserver. I use the solution ffmpeg+ ffserver for a stream server. the stream can work for a few minutes, then ffmpeg can not post video data via http://localhost:8090/feed1.ffm the command line I use for ffmpeg: ffmpeg -loglevel debug -f video4linux2 -r 30 -s 1280x720 -input_format h264 -i /dev/video1 -vcodec copy http://localhost:8090/feed1.ffm ffserver can not receive new video data from ffmpeg if the stream is running for about 30~60 minutes. I check the errno from ffmpeg av_interleaved_write_frame() it says "No such file or directory" errno is 2 Does anyone have ideas? -------------- next part -------------- An HTML attachment was scrubbed... URL: From soho123.2012 at gmail.com Sun Aug 18 07:51:33 2013 From: soho123.2012 at gmail.com (Soho Soho123) Date: Sun, 18 Aug 2013 13:51:33 +0800 Subject: [Libav-user] Fwd: [HELP] ffmpeg post to local loopback stuck In-Reply-To: References: Message-ID: Hi all, when I setup a stream server with ffserver + ffmpeg, the command : ffmpeg -sn -loglevel debug -f video4linux2 -r 30 -s 1280x720 -input_format h264 -i /dev/video1 -vcodec copy http://localhost:8090/feed2.ffm it can work for a few minutes only . because ffserver can not get new video data from ffmpeg local post. ffmpeg get stuck when it send video to localhost. Does anyone have idea about this issue? -------------- next part -------------- An HTML attachment was scrubbed... URL: From info at denisgottardello.it Sun Aug 18 12:53:46 2013 From: info at denisgottardello.it (Denis) Date: Sun, 18 Aug 2013 12:53:46 +0200 Subject: [Libav-user] Build FFmpeg on raspberry pi Message-ID: <201308181253.46578.info@denisgottardello.it> ./configure --enable-gpl --enable-nonfree --enable-libx264 --enable-libvorbis --enable-libtheora --enable-libvpx --enable-shared --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver (I use these options on Debian i386 without any problem.) ends correctly with License: nonfree and unredistributable Creating config.mak, config.h, and doc/config.texi... config.h is unchanged libavutil/avconfig.h is unchanged but whe i try to execute make I obtain the error: pi at raspberrypi ~/Cpp/ffmpeg-2.0 $ make Makefile:1: ../config.mak: File o directory non esistente make: *** No rule to make target `../config.mak'. Stop. pi at raspberrypi ~/Cpp/ffmpeg-2.0 $ What it means? -- www.denisgottardello.it Skype: mrdebug Videosurveillance and home automation! http://www.denisgottardello.it/DomusBoss/DomusBoss.php From andrey2067 at gmail.com Sun Aug 18 13:20:39 2013 From: andrey2067 at gmail.com (Andrey Mochenov) Date: Sun, 18 Aug 2013 14:20:39 +0300 Subject: [Libav-user] Watermarks implementation In-Reply-To: References: Message-ID: Hi Paul, Thank you for your answer. So, I have tried to use overlay filter. I use two "buffer" filters for its inputs and one "buffersink" filter for its ouput, as shown in the code below. The problem is that the avfilter_graph_config() command causes the error: 'Output pad "default" with type video of the filter instance "input_main_filter" of buffer not connected to any destination.' AVFormatContext *fmt_ctx_main; AVCodecContext *dec_ctx_main; AVFormatContext *fmt_ctx_wtrmrk; AVCodecContext *dec_ctx_wtrmrk; AVFilterContext *buffersink_ctx = NULL; AVFilterContext *buffersrc_ctx = NULL; AVFilterContext *bufferovrlay_ctx = NULL; AVFilterGraph *filter_graph = NULL; ... // All fmt_ctx_main, dec_ctx_main, fmt_ctx_wtrmrk, dec_ctx_wtrmrk initializations are OK. char argsStrMain[512] = ""; char argsStrOvrlay[512] = ""; int ret = 0; AVFilter *buffersrc = avfilter_get_by_name("buffer"); AVFilter *bufferovrlay = avfilter_get_by_name("buffer"); AVFilter *buffersink = avfilter_get_by_name("buffersink"); AVFilterInOut *inputs = avfilter_inout_alloc(); AVFilterInOut *outputs = avfilter_inout_alloc(); AVFilterInOut *outputOvrlay = avfilter_inout_alloc(); enum AVPixelFormat pix_fmts[] = {AV_PIX_FMT_YUV420P, AV_PIX_FMT_NONE}; AVBufferSinkParams *buffersink_params = NULL; sprintf_s(argsStrMain, sizeof(argsStrMain), "video_size=%dx%d:pix_fmt=%d:time_base=%d/%d:pixel_aspect=%d/%d", dec_ctx_main->width, dec_ctx_main->height, dec_ctx_main->pix_fmt, dec_ctx_main->time_base.num, dec_ctx_main->time_base.den, dec_ctx_main->sample_aspect_ratio.num, dec_ctx_main->sample_aspect_ratio.den); sprintf_s(argsStrOvrlay, sizeof(argsStrOvrlay), "video_size=%dx%d:pix_fmt=%d:time_base=%d/%d:pixel_aspect=%d/%d", dec_ctx_wtrmrk->width, dec_ctx_wtrmrk->height, dec_ctx_wtrmrk->pix_fmt, dec_ctx_wtrmrk->time_base.num, dec_ctx_wtrmrk->time_base.den, dec_ctx_wtrmrk->sample_aspect_ratio.num, dec_ctx_wtrmrk->sample_aspect_ratio.den); buffersink_params = av_buffersink_params_alloc(); buffersink_params->pixel_fmts = pix_fmts; filter_graph = avfilter_graph_alloc(); ret = avfilter_graph_create_filter(&buffersrc_ctx, buffersrc, "input_main_filter", argsStrMain, NULL, filter_graph); ret = avfilter_graph_create_filter(&bufferovrlay_ctx, bufferovrlay, "input_overlay_filter", argsStrOvrlay, NULL, filter_graph); ret = avfilter_graph_create_filter(&buffersink_ctx, buffersink, "output_filter", NULL, buffersink_params, filter_graph); outputs->name = av_strdup("in"); outputs->filter_ctx = buffersrc_ctx; outputs->pad_idx = 0; outputs->next = outputOvrlay; outputOvrlay->name = av_strdup("overlay"); // unique name for this input/output in the list outputs->filter_ctx = bufferovrlay_ctx; // filter context associated to this input/output outputs->pad_idx = 0; // index of the filt_ctx pad to use for linking outputs->next = NULL; // next input/output in the list, NULL if this is the last inputs->name = av_strdup("out"); inputs->filter_ctx = buffersink_ctx; inputs->pad_idx = 0; inputs->next = NULL; ret = avfilter_graph_parse(filter_graph, "overlay", &inputs, &outputs, NULL); // Till now it looks all OK, but the following line causes the error: // 'Output pad "default" with type video of the filter instance "input_main_filter" // of buffer not connected to any destination.' ret = avfilter_graph_config(filter_graph, NULL); I suppose, the reason is a wrong assigment of inputs/outputs. But what exactly is wrong? What is the right way to link two ore more inputs to a filter like the 'overlay' one? Please, help. Andrey. On Thu, Aug 15, 2013 at 2:43 PM, Paul B Mahol wrote: > On 8/15/13, Andrey Mochenov wrote: > > Hi, > > > > We are using FFmpeg libraries git-ee94362 libavformat v55.2.100. > > Our purpose is to add watermark (semi-transparent PNG image) on the > video. > > The corresponding option in MMpeg application is "-vf". > > > > Our question: How to implement the feature using FFmpeg libraries? > > By using overlay filter, there are examples how to use filters with > libraries. > > > > > Andrey Mochenov. > > > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user > -------------- next part -------------- An HTML attachment was scrubbed... URL: From soho123.2012 at gmail.com Sun Aug 18 15:06:43 2013 From: soho123.2012 at gmail.com (Soho Soho123) Date: Sun, 18 Aug 2013 21:06:43 +0800 Subject: [Libav-user] HELP! ffserver polling get no any fd ready for read, even ffmpeg post connection Message-ID: HI all, the problem I got for a long time. when ffserver usd poll to get the fd that ready for read/write, then each connection can get service. but sometimes, ffserver get a condition: c->poll_entry->revents does not include any events about POLLIN, even the post connection from ffmpeg. ffmpeg keep posting video data to ffserver, then the feed file can get new video data. I check the error code from ffmpeg. It says , send timeout that the receive side does not read the data on time. ffserver says there is no fd ready for read. ffmpeg says that the receive side does not read data on time. Does any one have idea? . -------------- next part -------------- An HTML attachment was scrubbed... URL: From wseemann at gmail.com Mon Aug 19 06:19:30 2013 From: wseemann at gmail.com (William Seemann) Date: Sun, 18 Aug 2013 23:19:30 -0500 Subject: [Libav-user] bad src image pointer error when converting MP4 frame to PNG Message-ID: <52119CD2.3040905@gmail.com> Hello, I'm using the following code to convert a frame from a mp4 video to a PNG image. Whenever I execute the my function (posted below) I receive the following error message: [swscaler @ 0x7fe4fb818600] bad src image pointers This error occurs at the following line in my code: sws_scale(scalerCtx, (const uint8_t * const *) pFrame->data, pFrame->linesize, 0, src_height, pFrameRGB->data, pFrameRGB->linesize); I've tracked down the error message in the FFmpeg source code but I'm unsure how to solve this problem. Can anyone help? Thanks in advance! void convert_image(AVCodecContext *pCodecCtx, AVFrame *pFrame, AVPacket *avpkt, int *got_packet_ptr) { AVCodecContext *codecCtx; AVCodec *codec; *got_packet_ptr = 0; codec = avcodec_find_encoder(TARGET_IMAGE_CODEC); if (!codec) { printf("avcodec_find_decoder() failed to find decoder\n"); goto fail; } codecCtx = avcodec_alloc_context3(codec); if (!codecCtx) { printf("avcodec_alloc_context3 failed\n"); goto fail; } codecCtx->bit_rate = pCodecCtx->bit_rate; codecCtx->width = pCodecCtx->width; codecCtx->height = pCodecCtx->height; codecCtx->pix_fmt = TARGET_IMAGE_FORMAT; codecCtx->codec_type = AVMEDIA_TYPE_VIDEO; codecCtx->time_base.num = pCodecCtx->time_base.num; codecCtx->time_base.den = pCodecCtx->time_base.den; if (!codec || avcodec_open2(codecCtx, codec, NULL) < 0) { printf("avcodec_open2() failed\n"); goto fail; } int src_width = pCodecCtx->width; int src_height = pCodecCtx->height; enum PixelFormat src_pixfmt = pCodecCtx->pix_fmt; int dst_width = pCodecCtx->width; int dst_height = pCodecCtx->height; struct SwsContext *scalerCtx; scalerCtx = sws_getContext(src_width, src_height, src_pixfmt, dst_width, dst_height, TARGET_IMAGE_FORMAT, SWS_BILINEAR, NULL, NULL, NULL); if (!scalerCtx) { printf("sws_getContext() failed\n"); goto fail; } AVFrame *pFrameRGB = avcodec_alloc_frame(); if (!pFrameRGB) { goto fail; } int numBytes = avpicture_get_size(TARGET_IMAGE_FORMAT, src_width, src_height); uint8_t *buffer = (uint8_t *) av_malloc(numBytes * sizeof(uint8_t)); if (avpicture_fill((AVPicture *) pFrameRGB, buffer, TARGET_IMAGE_FORMAT, src_width, src_height) < 0) { printf("avpicture_fill() failed\n"); goto fail; } sws_scale(scalerCtx, (const uint8_t * const *) pFrame->data, pFrame->linesize, 0, src_height, pFrameRGB->data, pFrameRGB->linesize); int ret = avcodec_encode_video2(codecCtx, avpkt, pFrameRGB, got_packet_ptr); if (ret < 0) { *got_packet_ptr = 0; } // TODO is this right? fail: if (codecCtx) { avcodec_close(codecCtx); } if (scalerCtx) { sws_freeContext(scalerCtx); } if (ret < 0 || !*got_packet_ptr) { av_free_packet(avpkt); } } From andrey2067 at gmail.com Mon Aug 19 09:11:51 2013 From: andrey2067 at gmail.com (Andrey Mochenov) Date: Mon, 19 Aug 2013 10:11:51 +0300 Subject: [Libav-user] HLS: Exactly constant segment duration In-Reply-To: References: Message-ID: Hi gentlemen, Please, help us with the following question: What is the best way to force an EXACTLY constant video segment duration? We need the solution urgently. Best regards, Andrey. On Thu, Aug 15, 2013 at 2:29 PM, Andrey Mochenov wrote: > Hi, > > We are using FFmpeg libraries git-ee94362 libavformat v55.2.100. > Our purpose is to mux two streams (video and audio) into M3U8 playlist > using HLS. > In addition, we want the duration of every TS segment file be exactly 3.0 > sec (frame rate is 25 fps). > To reach it, we are trying to set several options and properties, namely: > - segment_time > - keyint_min > - scenechange_threshold > - gop_size > - force_key_frames. > > And our code looks as below: > > AVCodecContext *codec_ctx = NULL; > AVFormatContext *ofmt_ctx = NULL; > int ret = 0, gopSize = (int)(3.0 * 25); // 3 sec * 25 fps > > // ofmt_ctx and codec_ctx initialization and filling are OK, but: > > codec_ctx->time_base.num = 1; > codec_ctx->time_base.den = 25 // fps > > // It seems, that the following three lines have no effect without > explisit setting of the "hls_time" property > codec_ctx->keyint_min = gopSize; // in FFMpeg application, the > corresponding option is "-keyint_min 3" > codec_ctx->scenechange_threshold = 0; // in FFMpeg application, the > corresponding option is "-sc_threshold 0" > codec_ctx->gop_size = gopSize; // in FFMpeg application, the > corresponding option is "-g 3" > > ret = av_opt_set_double(ofmt_ctx, "hls_time", 3.0, AV_OPT_SEARCH_CHILDREN); > > // Any of the following lines causes "Option not found" error. > ret = av_opt_set(codec_ctx->priv_data, "profile", "main", > AV_OPT_SEARCH_CHILDREN); > ret = av_opt_set(codec_ctx->priv_data, "preset", "ultrafast", > AV_OPT_SEARCH_CHILDREN); > ret = av_opt_get(ofmt_ctx, "segment_time", AV_OPT_SEARCH_CHILDREN, &str); > ret = av_opt_set((ofmt_ctx, "segment_time", "3.0", AV_OPT_SEARCH_CHILDREN); > > Anyway, the TS files durations are different, (~2-3 sec), and not EXACTLY > 3.0 sec. > Our question: What is the best way to solve the problem? > > Andrey Mochenov. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From er.anshul.maheshwari at gmail.com Mon Aug 19 09:48:28 2013 From: er.anshul.maheshwari at gmail.com (Anshul maheshwari) Date: Mon, 19 Aug 2013 13:18:28 +0530 Subject: [Libav-user] HLS: Exactly constant segment duration In-Reply-To: References: Message-ID: On Aug 15, 2013 4:59 PM, "Andrey Mochenov" wrote: > > Hi, > > We are using FFmpeg libraries git-ee94362 libavformat v55.2.100. > Our purpose is to mux two streams (video and audio) into M3U8 playlist using HLS. > In addition, we want the duration of every TS segment file be exactly 3.0 sec (frame rate is 25 fps). > To reach it, we are trying to set several options and properties, namely: > - segment_time > - keyint_min > - scenechange_threshold > - gop_size > - force_key_frames. > > And our code looks as below: > > AVCodecContext *codec_ctx = NULL; > AVFormatContext *ofmt_ctx = NULL; > int ret = 0, gopSize = (int)(3.0 * 25); // 3 sec * 25 fps > > // ofmt_ctx and codec_ctx initialization and filling are OK, but: > > codec_ctx->time_base.num = 1; > codec_ctx->time_base.den = 25 // fps > > // It seems, that the following three lines have no effect without explisit setting of the "hls_time" property > codec_ctx->keyint_min = gopSize; // in FFMpeg application, the corresponding option is "-keyint_min 3" > codec_ctx->scenechange_threshold = 0; // in FFMpeg application, the corresponding option is "-sc_threshold 0" > codec_ctx->gop_size = gopSize; // in FFMpeg application, the corresponding option is "-g 3" > > ret = av_opt_set_double(ofmt_ctx, "hls_time", 3.0, AV_OPT_SEARCH_CHILDREN); > > // Any of the following lines causes "Option not found" error. > ret = av_opt_set(codec_ctx->priv_data, "profile", "main", AV_OPT_SEARCH_CHILDREN); > ret = av_opt_set(codec_ctx->priv_data, "preset", "ultrafast", AV_OPT_SEARCH_CHILDREN); > ret = av_opt_get(ofmt_ctx, "segment_time", AV_OPT_SEARCH_CHILDREN, &str); > ret = av_opt_set((ofmt_ctx, "segment_time", "3.0", AV_OPT_SEARCH_CHILDREN); > > Anyway, the TS files durations are different, (~2-3 sec), and not EXACTLY 3.0 sec. > Our question: What is the best way to solve the problem? > > Andrey Mochenov. > > > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user > Please dont top post over here Try to set encoder with all idr, that may give you const duration -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrey2067 at gmail.com Mon Aug 19 11:48:29 2013 From: andrey2067 at gmail.com (Andrey Mochenov) Date: Mon, 19 Aug 2013 12:48:29 +0300 Subject: [Libav-user] HLS: Exactly constant segment duration In-Reply-To: References: Message-ID: Hi, Thank you for your answer. I suppose, IDR stands for Instantaneous Decoding Refresh. Please, explain: what do you mean under "set encoder with all idr"? What settings I need to use? Andrey. On Mon, Aug 19, 2013 at 10:48 AM, Anshul maheshwari < er.anshul.maheshwari at gmail.com> wrote: > Please dont top post over here > > Try to set encoder with all idr, that may give you const duration > On Aug 15, 2013 4:59 PM, "Andrey Mochenov" wrote: > > > > Hi, > > > > We are using FFmpeg libraries git-ee94362 libavformat v55.2.100. > > Our purpose is to mux two streams (video and audio) into M3U8 playlist > using HLS. > > In addition, we want the duration of every TS segment file be exactly > 3.0 sec (frame rate is 25 fps). > > To reach it, we are trying to set several options and properties, > namely: > > - segment_time > > - keyint_min > > - scenechange_threshold > > - gop_size > > - force_key_frames. > > > > And our code looks as below: > > > > AVCodecContext *codec_ctx = NULL; > > AVFormatContext *ofmt_ctx = NULL; > > int ret = 0, gopSize = (int)(3.0 * 25); // 3 sec * 25 fps > > > > // ofmt_ctx and codec_ctx initialization and filling are OK, but: > > > > codec_ctx->time_base.num = 1; > > codec_ctx->time_base.den = 25 // fps > > > > // It seems, that the following three lines have no effect without > explisit setting of the "hls_time" property > > codec_ctx->keyint_min = gopSize; // in FFMpeg application, the > corresponding option is "-keyint_min 3" > > codec_ctx->scenechange_threshold = 0; // in FFMpeg application, the > corresponding option is "-sc_threshold 0" > > codec_ctx->gop_size = gopSize; // in FFMpeg application, the > corresponding option is "-g 3" > > > > ret = av_opt_set_double(ofmt_ctx, "hls_time", 3.0, > AV_OPT_SEARCH_CHILDREN); > > > > // Any of the following lines causes "Option not found" error. > > ret = av_opt_set(codec_ctx->priv_data, "profile", "main", > AV_OPT_SEARCH_CHILDREN); > > ret = av_opt_set(codec_ctx->priv_data, "preset", "ultrafast", > AV_OPT_SEARCH_CHILDREN); > > ret = av_opt_get(ofmt_ctx, "segment_time", AV_OPT_SEARCH_CHILDREN, > &str); > > ret = av_opt_set((ofmt_ctx, "segment_time", "3.0", > AV_OPT_SEARCH_CHILDREN); > > > > Anyway, the TS files durations are different, (~2-3 sec), and not > EXACTLY 3.0 sec. > > Our question: What is the best way to solve the problem? > > > > Andrey Mochenov. > > > > > > _______________________________________________ > > Libav-user mailing list > > Libav-user at ffmpeg.org > > http://ffmpeg.org/mailman/listinfo/libav-user > > > > Please dont top post over here > > Try to set encoder with all idr, that may give you const duration > > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From er.anshul.maheshwari at gmail.com Mon Aug 19 12:03:37 2013 From: er.anshul.maheshwari at gmail.com (Anshul) Date: Mon, 19 Aug 2013 15:33:37 +0530 Subject: [Libav-user] HLS: Exactly constant segment duration In-Reply-To: References: Message-ID: <5211ED79.4070503@gmail.com> On 08/19/2013 03:18 PM, Andrey Mochenov wrote: > Hi, > Thank you for your answer. > I suppose, IDR stands for Instantaneous Decoding Refresh. > Please, explain: what do you mean under "set encoder with all idr"? > > What settings I need to use? > Andrey. > On Mon, Aug 19, 2013 at 10:48 AM, Anshul maheshwari > > wrote: > > Please dont top post over here > > Try to set encoder with all idr, that may give you const duration > > On Aug 15, 2013 4:59 PM, "Andrey Mochenov" > wrote: > > > > Hi, > > > > We are using FFmpeg libraries git-ee94362 libavformat v55.2.100. > > Our purpose is to mux two streams (video and audio) into M3U8 > playlist using HLS. > > In addition, we want the duration of every TS segment file be > exactly 3.0 sec (frame rate is 25 fps). > > To reach it, we are trying to set several options and > properties, namely: > > - segment_time > > - keyint_min > > - scenechange_threshold > > - gop_size > > - force_key_frames. > > > > And our code looks as below: > > > > AVCodecContext *codec_ctx = NULL; > > AVFormatContext *ofmt_ctx = NULL; > > int ret = 0, gopSize = (int)(3.0 * 25); // 3 sec * 25 fps > > > > // ofmt_ctx and codec_ctx initialization and filling are OK, but: > > > > codec_ctx->time_base.num = 1; > > codec_ctx->time_base.den = 25 // fps > > > > // It seems, that the following three lines have no effect > without explisit setting of the "hls_time" property > > codec_ctx->keyint_min = gopSize; // in FFMpeg application, > the corresponding option is "-keyint_min 3" > > codec_ctx->scenechange_threshold = 0; // in FFMpeg application, > the corresponding option is "-sc_threshold 0" > > codec_ctx->gop_size = gopSize; // in FFMpeg application, > the corresponding option is "-g 3" > > > > ret = av_opt_set_double(ofmt_ctx, "hls_time", 3.0, > AV_OPT_SEARCH_CHILDREN); > > > > // Any of the following lines causes "Option not found" error. > > ret = av_opt_set(codec_ctx->priv_data, "profile", "main", > AV_OPT_SEARCH_CHILDREN); > > ret = av_opt_set(codec_ctx->priv_data, "preset", "ultrafast", > AV_OPT_SEARCH_CHILDREN); > > ret = av_opt_get(ofmt_ctx, "segment_time", > AV_OPT_SEARCH_CHILDREN, &str); > > ret = av_opt_set((ofmt_ctx, "segment_time", "3.0", > AV_OPT_SEARCH_CHILDREN); > > > > Anyway, the TS files durations are different, (~2-3 sec), and > not EXACTLY 3.0 sec. > > Our question: What is the best way to solve the problem? > > > > Andrey Mochenov. > > > > > > > _______________________________________________ > > Libav-user mailing list > > Libav-user at ffmpeg.org > > http://ffmpeg.org/mailman/listinfo/libav-user > > > > Please dont top post over here > > Try to set encoder with all idr, that may give you const duration > > > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user > > > > > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user *I am reminding you again, please don't top post on this mailing list. *While cutting the video , segmenter over ride the segement-time if at that time IDR is not the frame. so if you have less interval between idr, than there are probability that segmenter does not over-ride the segment-time. just to verify that you are facing the same problem set your encoder IDR interval as 0 or 1, -Anshul -------------- next part -------------- An HTML attachment was scrubbed... URL: From omkarshetkar at gmail.com Mon Aug 19 13:52:02 2013 From: omkarshetkar at gmail.com (Omkar Shetkar) Date: Mon, 19 Aug 2013 17:22:02 +0530 Subject: [Libav-user] HLS Client Message-ID: Hi All, I am a beginner to FFMPEG. Currently building a client application for HLS (Http Live Streaming) using FFMPEG. For this I find some useful functions in /libavformat/hlsproto.c and other hls related files. But not sure what are the APIs which are for clients and how to access them for a simple HLS client. Any small examples or documents will help a lot for this. Please help in this regard. -- Regards Omkar V S http://omkarvs.blogspot.com Bangalore, India -------------- next part -------------- An HTML attachment was scrubbed... URL: From bowljoman at gmail.com Mon Aug 19 19:01:45 2013 From: bowljoman at gmail.com (Andy Shaules) Date: Mon, 19 Aug 2013 10:01:45 -0700 Subject: [Libav-user] HLS: Exactly constant segment duration In-Reply-To: <5211ED79.4070503@gmail.com> References: <5211ED79.4070503@gmail.com> Message-ID: <52124F79.9020705@gmail.com> On 8/19/2013 3:03 AM, Anshul wrote: > On 08/19/2013 03:18 PM, Andrey Mochenov wrote: >> Hi, >> Thank you for your answer. >> I suppose, IDR stands for Instantaneous Decoding Refresh. >> Please, explain: what do you mean under "set encoder with all idr"? >> >> What settings I need to use? >> Andrey. >> On Mon, Aug 19, 2013 at 10:48 AM, Anshul maheshwari >> > > wrote: >> >> Please dont top post over here >> >> Try to set encoder with all idr, that may give you const duration >> >> On Aug 15, 2013 4:59 PM, "Andrey Mochenov" > > wrote: >> > >> > Hi, >> > >> > We are using FFmpeg libraries git-ee94362 libavformat v55.2.100. >> > Our purpose is to mux two streams (video and audio) into M3U8 >> playlist using HLS. >> > In addition, we want the duration of every TS segment file be >> exactly 3.0 sec (frame rate is 25 fps). >> > To reach it, we are trying to set several options and >> properties, namely: >> > - segment_time >> > - keyint_min >> > - scenechange_threshold >> > - gop_size >> > - force_key_frames. >> > >> > And our code looks as below: >> > >> > AVCodecContext *codec_ctx = NULL; >> > AVFormatContext *ofmt_ctx = NULL; >> > int ret = 0, gopSize = (int)(3.0 * 25); // 3 sec * 25 fps >> > >> > // ofmt_ctx and codec_ctx initialization and filling are OK, but: >> > >> > codec_ctx->time_base.num = 1; >> > codec_ctx->time_base.den = 25 // fps >> > >> > // It seems, that the following three lines have no effect >> without explisit setting of the "hls_time" property >> > codec_ctx->keyint_min = gopSize; // in FFMpeg >> application, the corresponding option is "-keyint_min 3" >> > codec_ctx->scenechange_threshold = 0; // in FFMpeg >> application, the corresponding option is "-sc_threshold 0" >> > codec_ctx->gop_size = gopSize; // in FFMpeg >> application, the corresponding option is "-g 3" >> > >> > ret = av_opt_set_double(ofmt_ctx, "hls_time", 3.0, >> AV_OPT_SEARCH_CHILDREN); >> > >> > // Any of the following lines causes "Option not found" error. >> > ret = av_opt_set(codec_ctx->priv_data, "profile", "main", >> AV_OPT_SEARCH_CHILDREN); >> > ret = av_opt_set(codec_ctx->priv_data, "preset", "ultrafast", >> AV_OPT_SEARCH_CHILDREN); >> > ret = av_opt_get(ofmt_ctx, "segment_time", >> AV_OPT_SEARCH_CHILDREN, &str); >> > ret = av_opt_set((ofmt_ctx, "segment_time", "3.0", >> AV_OPT_SEARCH_CHILDREN); >> > >> > Anyway, the TS files durations are different, (~2-3 sec), and >> not EXACTLY 3.0 sec. >> > Our question: What is the best way to solve the problem? >> > >> > Andrey Mochenov. >> > >> > >> >> > _______________________________________________ >> > Libav-user mailing list >> > Libav-user at ffmpeg.org >> > http://ffmpeg.org/mailman/listinfo/libav-user >> > >> >> Please dont top post over here >> >> Try to set encoder with all idr, that may give you const duration >> >> >> _______________________________________________ >> Libav-user mailing list >> Libav-user at ffmpeg.org >> http://ffmpeg.org/mailman/listinfo/libav-user >> >> >> >> >> _______________________________________________ >> Libav-user mailing list >> Libav-user at ffmpeg.org >> http://ffmpeg.org/mailman/listinfo/libav-user > > > *I am reminding you again, please don't top post on this mailing list. > > *While cutting the video , segmenter over ride the segement-time if at > that time IDR is not the frame. > so if you have less interval between idr, than there are probability > that segmenter does not over-ride the segment-time. just to verify > that you are facing the same problem set your encoder IDR interval as > 0 or 1, > > -Anshul > > > > > > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user It also can help to use a higher version in the m3u8 file list so that you can specify decimals for duration.If your segment is 200 mills short or longer, the client is able to anticipate gaps, and initiate the next stream-pull earlier or later. Seemed to me while segmenting live streams, that as long as I did the chop at interval of 4 or 8 seconds, that my segments could be shorter or longer and play-out is smooth as long as I was honest in the playlist about the actual duration of each entry. Andy -------------- next part -------------- An HTML attachment was scrubbed... URL: From kalileo at universalx.net Mon Aug 19 20:57:08 2013 From: kalileo at universalx.net (Kalileo) Date: Tue, 20 Aug 2013 01:57:08 +0700 Subject: [Libav-user] HLS: Exactly constant segment duration In-Reply-To: References: Message-ID: <598E3CB5-21F1-4DB7-88CD-4490D4354239@universalx.net> On Aug 19, 2013, at 16:48 , Andrey Mochenov wrote: > Hi, > > Thank you for your answer. > I suppose, IDR stands for Instantaneous Decoding Refresh. No, he means key frames, or i-frames, or however you want to call them, as opposed to p-frames or b-frames. > Please, explain: what do you mean under "set encoder with all idr"? He means to set the encoder to have only key frames / i-frames, and no p-frames or b-frames. This would allow the segmenter to cut everywhere. it is probably good enough to set gop / "max keyframes" and "min keyframes" to the same value, and have this value be the amount of frames after which you want to cut. From bowljoman at gmail.com Mon Aug 19 21:42:13 2013 From: bowljoman at gmail.com (Andy Shaules) Date: Mon, 19 Aug 2013 12:42:13 -0700 Subject: [Libav-user] HLS: Exactly constant segment duration In-Reply-To: <598E3CB5-21F1-4DB7-88CD-4490D4354239@universalx.net> References: <598E3CB5-21F1-4DB7-88CD-4490D4354239@universalx.net> Message-ID: <52127515.2060004@gmail.com> On 8/19/2013 11:57 AM, Kalileo wrote: > On Aug 19, 2013, at 16:48 , Andrey Mochenov wrote: > >> Hi, >> >> Thank you for your answer. >> I suppose, IDR stands for Instantaneous Decoding Refresh. > No, he means key frames, or i-frames, or however you want to call them, as opposed to p-frames or b-frames. > >> Please, explain: what do you mean under "set encoder with all idr"? > He means to set the encoder to have only key frames / i-frames, and no p-frames or b-frames. This would allow the segmenter to cut everywhere. > > it is probably good enough to set gop / "max keyframes" and "min keyframes" to the same value, and have this value be the amount of frames after which you want to cut. > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user I think i-frame is short for idr frame and is abbreviation for 'instantaneous decoder refresh' frame because the decoder dumps all vector-prediction based content and sets the frame content back in sync to real-world input, if you could call it that. Not to be mistaken with interframe term. From joe.flowers at nofreewill.com Tue Aug 20 00:20:04 2013 From: joe.flowers at nofreewill.com (Joe Flowers) Date: Mon, 19 Aug 2013 18:20:04 -0400 Subject: [Libav-user] Speex encoding difference only in the very last encoded frame Message-ID: Hello Everyone, When I encode a 222,000 byte, s16le RAW audio file with FFMPEG I get a 26,372 byte Speex encoded file - FileA. When I encode the same audio file with a program I am writing that uses libavcodec I get a 26,372 byte Speex encoded file - FileB. BUT, 9 bytes in the middle of the last 38 bytes of encoded data are different between the 2 encoded files (FileA and FileB). All of the other bytes are exactly the same between the two encoded files. What makes this weirder to me is that if I decode my Speex encoded file (FileB) with the other part of my program that uses libavcodec I get the EXACT same decoded file contents and length as I do if I decode the FFMPEG-encoded file (FileA) with FFMPEG. Is this a known anomaly on the last 38 byte frame of encoded Speex data or have I been staring at this screen for too long today??? Thanks! Joe ---------------- -------------- next part -------------- An HTML attachment was scrubbed... URL: From nicolas.george at normalesup.org Tue Aug 20 12:18:54 2013 From: nicolas.george at normalesup.org (Nicolas George) Date: Tue, 20 Aug 2013 12:18:54 +0200 Subject: [Libav-user] Speex encoding difference only in the very last encoded frame In-Reply-To: References: Message-ID: <20130820101854.GA25866@phare.normalesup.org> Le duodi 2 fructidor, an CCXXI, Joe Flowers a ?crit?: > When I encode the same audio file with a program I am writing that uses > libavcodec I get a 26,372 byte Speex encoded file - FileB. BUT, 9 bytes in > the middle of the last 38 bytes of encoded data are different between the 2 > encoded files (FileA and FileB). All of the other bytes are exactly the > same between the two encoded files. I would suggest to add a dump of each frame before encoding, in both your program and ffmpeg (or just in libavcodec). I suspect something in the padding / very end of the last frame may be different. > What makes this weirder to me is that if I decode my Speex encoded file > (FileB) with the other part of my program that uses libavcodec I get the > EXACT same decoded file contents and length as I do if I decode the > FFMPEG-encoded file (FileA) with FFMPEG. That would be consistent with what I suspect: the difference you see would manifest on the next decoded frame if there was one. Regards, -- Nicolas George -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: Digital signature URL: From joe.flowers at nofreewill.com Tue Aug 20 12:23:26 2013 From: joe.flowers at nofreewill.com (Joe Flowers) Date: Tue, 20 Aug 2013 06:23:26 -0400 Subject: [Libav-user] Speex encoding difference only in the very last encoded frame In-Reply-To: <20130820101854.GA25866@phare.normalesup.org> References: <20130820101854.GA25866@phare.normalesup.org> Message-ID: Thank you Nicolas! That is very helpful! On Tue, Aug 20, 2013 at 6:18 AM, Nicolas George < nicolas.george at normalesup.org> wrote: > Le duodi 2 fructidor, an CCXXI, Joe Flowers a ?crit : > > When I encode the same audio file with a program I am writing that uses > > libavcodec I get a 26,372 byte Speex encoded file - FileB. BUT, 9 bytes > in > > the middle of the last 38 bytes of encoded data are different between > the 2 > > encoded files (FileA and FileB). All of the other bytes are exactly the > > same between the two encoded files. > > I would suggest to add a dump of each frame before encoding, in both your > program and ffmpeg (or just in libavcodec). I suspect something in the > padding / very end of the last frame may be different. > > > What makes this weirder to me is that if I decode my Speex encoded file > > (FileB) with the other part of my program that uses libavcodec I get the > > EXACT same decoded file contents and length as I do if I decode the > > FFMPEG-encoded file (FileA) with FFMPEG. > > That would be consistent with what I suspect: the difference you see would > manifest on the next decoded frame if there was one. > > Regards, > > -- > Nicolas George > > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ggarra13 at gmail.com Tue Aug 20 16:12:54 2013 From: ggarra13 at gmail.com (Gonzalo Garramuno) Date: Tue, 20 Aug 2013 11:12:54 -0300 Subject: [Libav-user] probing a file with ffmpeg libraries Message-ID: <52137966.9010401@gmail.com> I would like to probe a file to see if my player can play it (it is a valid mov, rm, wmv, avi, etc), but I don't know how to do it with the ffmpeg libraries. I don't care if ffmpeg knows the codec at that point. From praks411 at gmail.com Tue Aug 20 16:45:24 2013 From: praks411 at gmail.com (Pradeep Karosiya) Date: Tue, 20 Aug 2013 07:45:24 -0700 (PDT) Subject: [Libav-user] "No accelerated colorspace conversion found..." message Message-ID: <1377009924740-4658414.post@n4.nabble.com> Hi, While encoding video file using ffmpeg I'm getting this warning ""No accelerated colorspace conversion found from yuv420p to bgr24". i think it is coming from sws_scale as I'm using this for conversion. Can someone tell me what could be the reason for this warning? Though things are working fine. Is it possible just to disable this warning from outputting on console? I'm using ffmpeg 2.0 on windows 64bits. Thanks and Regards, Pradeep -- View this message in context: http://libav-users.943685.n4.nabble.com/No-accelerated-colorspace-conversion-found-message-tp4658414.html Sent from the libav-users mailing list archive at Nabble.com. From wseemann at gmail.com Tue Aug 20 16:59:43 2013 From: wseemann at gmail.com (William Seemann) Date: Tue, 20 Aug 2013 09:59:43 -0500 Subject: [Libav-user] Seeking by microseconds in FFmpeg Message-ID: Hello, Is it possible to seek by microseconds using FFmpeg. All of the examples I've seen rely on milliseconds an I'm unsure how to perform the conversion. Can someone provide an example? Thanks in advance.* * -------------- next part -------------- An HTML attachment was scrubbed... URL: From praks411 at gmail.com Tue Aug 20 16:36:40 2013 From: praks411 at gmail.com (Pradeep Karosiya) Date: Tue, 20 Aug 2013 07:36:40 -0700 (PDT) Subject: [Libav-user] Warning "No accelerated colorspace conversion found from yuv420p to bgr24" Message-ID: <1377009400436-4658413.post@n4.nabble.com> Hi, While encoding video file using ffmpeg I'm getting this warning ""No accelerated colorspace conversion found from yuv420p to bgr24". i think it is coming from sws_scale as I'm using this for conversion. Can someone tell me what could be the reason for this warning? Though things are working fine. Is it possible just to disable this warning from outputting on console? I'm using ffmpeg 2.0 on windows 64bits. Thanks and Regards, Pradeep -- View this message in context: http://libav-users.943685.n4.nabble.com/Warning-No-accelerated-colorspace-conversion-found-from-yuv420p-to-bgr24-tp4658413.html Sent from the libav-users mailing list archive at Nabble.com. From andrey2067 at gmail.com Tue Aug 20 18:48:24 2013 From: andrey2067 at gmail.com (Andrey Mochenov) Date: Tue, 20 Aug 2013 19:48:24 +0300 Subject: [Libav-user] Overlay filter inputs: How to assign? Message-ID: Hi everyone, I want to use the "overlay" filter. But I do not know, how exactly to assign the "outputs" parameter for the avfilter_graph_parse() command. As a result, I get the following error from the avfilter_graph_config() command: 'Output pad "default" with type video of the filter instance "input_main_filter" of buffer not connected to any destination.' Both standard FFmpeg examples, filtering_video.c and filtering_audio.c use filters with one input and one output. The "overlay" filter has two inputs and one output, so use two "buffer" filters for the inputs and one "buffersink" filter for the ouput. // Here is a part of main() program ret = avfilter_graph_create_filter(&buffersrc_ctx, buffersrc, "input_main_filter", argsStrMain, NULL, filter_graph); ret = avfilter_graph_create_filter(&bufferovrlay_ctx, bufferovrlay, "input_overlay_filter", argsStrOvrlay, NULL, filter_graph); ret = avfilter_graph_create_filter(&buffersink_ctx, buffersink, "output_filter", NULL, buffersink_params, filter_graph); // *************** My questions: ********************************** // - What are the right names to be assigned (currently I use "in" and "overlay")? // - What is the right way to assign more than one input? outputs->name = av_strdup("in"); outputs->filter_ctx = buffersrc_ctx; outputs->pad_idx = 0; outputs->next = outputOvrlay; outputOvrlay->name = av_strdup("overlay"); outputOvrlay->filter_ctx = bufferovrlay_ctx; outputOvrlay->pad_idx = 1; outputOvrlay->next = NULL; // **************************************************************** inputs->name = av_strdup("out"); inputs->filter_ctx = buffersink_ctx; inputs->pad_idx = 0; inputs->next = NULL; ret = avfilter_graph_parse(filter_graph, "overlay", &inputs, &outputs, NULL); ret = avfilter_graph_config(filter_graph, NULL); Please, advise. -------------- next part -------------- An HTML attachment was scrubbed... URL: From praks411 at gmail.com Tue Aug 20 17:11:37 2013 From: praks411 at gmail.com (Pradeep Karosiya) Date: Tue, 20 Aug 2013 08:11:37 -0700 (PDT) Subject: [Libav-user] "No accelerated colorspace conversion found..." message In-Reply-To: <1377009924740-4658414.post@n4.nabble.com> References: <1377009924740-4658414.post@n4.nabble.com> Message-ID: <1377011497738-4658416.post@n4.nabble.com> I set av_log_set_level(AV_LOG_QUIET), though most of the message are disabled but still I'm getting just one message at the start. It normal or this can be disabled too. -- View this message in context: http://libav-users.943685.n4.nabble.com/No-accelerated-colorspace-conversion-found-message-tp4658414p4658416.html Sent from the libav-users mailing list archive at Nabble.com. From anithasusan at tataelxsi.co.in Wed Aug 21 07:15:59 2013 From: anithasusan at tataelxsi.co.in (Anitha Susan Varghese) Date: Wed, 21 Aug 2013 05:15:59 +0000 Subject: [Libav-user] Playing audio file with libavcodec Message-ID: <25563E537418E342A6DDC83C793113FC100F75AD@HKXPRD0410MB353.apcprd04.prod.outlook.com> Hi Myself trying to play an audio file using libavcodec in qt5 .While trying to play i am unable to play the the file. while decoding the file using av_read_frame() audioStream->index=0 and packet.stream_index is some higher nos .so avcodec_decode_audio4() is not getting executed.Why is it so? This is my program. My output is also given below.Please help me in solving this. ------------------------------------------------------------------------------------------------------------------------------------- #include #include #include extern "C" { #include "libavutil/samplefmt.h" #include "libavcodec/avcodec.h" #include "libavutil/mathematics.h" #include "libavutil/avutil.h" #include "libavformat/avformat.h" #include "libswscale/swscale.h" #include "libavutil/dict.h" #include #include "libavformat/version.h" } #define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 #define CODEC_TYPE_VIDEO AVMEDIA_TYPE_VIDEO void die( const char* msg) { qDebug() << msg ; } int main(int argc, char *argv[]) { QApplication app(argc, argv); const char* input_filename=argv[1]; static int driver; static ao_device *audio_device; int i; int stream_id=-1; av_register_all(); avcodec_register_all(); AVFormatContext* container=NULL; AVStream* audioStream=NULL; //container=avformat_alloc_context(); if(avformat_open_input(&container,input_filename,NULL,NULL)<0){ die("Could not open file"); } else die("File Opend"); if(avformat_find_stream_info(container,NULL)<0){ die("Could not find file info"); } av_dump_format(container,0,input_filename,false); for(i=0; i < container->nb_streams; i++){ if(container->streams[i]->codec->codec_type==AVMEDIA_TYPE_AUDIO){ stream_id=i; audioStream=container->streams[i]; qWarning() <<"audioStream"<streams[stream_id]->codec; qWarning() <<"Codec ptr:"<< ctx; AVCodec *codec=avcodec_find_decoder(ctx->codec_id); if(codec==NULL){ die("cannot find codec!"); } if(avcodec_open2(ctx,codec,NULL)<0){ die("Codec cannot be opended!"); } else qWarning()<<"Codec Opened"; ao_initialize(); driver = ao_default_driver_id(); qWarning()<<"DRIVER ID" <sample_fmt; //assign device sample rate depend on the input stream qWarning()<<"Sample format"<channels; //sformat.channels=2; qWarning()<<"Sample format channels"<sample_rate; qWarning()<<"Sample format rate"<codec; while(av_read_frame(container,&packet)>=0) { // qWarning()<index; if(packet.stream_index==audioStream->index){ len=avcodec_decode_audio4(ctx,frame,&frameFinished,&packet); qWarning()<<"Enterd if loop"; // qWarning() <extended_data[0],frame->linesize[0] ); }else{ } } avformat_close_input(&container); ao_shutdown(); return app.exec(); } ---------------------------------------------------------------------------------------------------------------------------------- My output -------------------------------------------------------------------------------------------------------------------- File Opend Input #0, ogg, from '/home/tel/Downloads/desktop-login.ogg': Duration: 00:00:07.72, start: 0.000000, bitrate: 108 kb/s Stream #0:0: Audio: vorbis, 44100 Hz, stereo, fltp, 112 kb/s audioStream 0x88b3f20 Stream id: 0 Codec ptr: 0x88b4100 Codec Opened DRIVER ID 1 Sample format 3 Sample format:AV_SAMPLE_FMT_FLT 32 Sample format channels 0 Sample format rate 0 Sample format 4 buffersize 192008 CODEC 0x88b4100 -------------------------------------------------------------------------------------------------------------- Regards, Anitha Susan Varghese -------------- next part -------------- An HTML attachment was scrubbed... URL: From kristen.schat at movares.nl Wed Aug 21 14:43:50 2013 From: kristen.schat at movares.nl (Schat K (Kristen)) Date: Wed, 21 Aug 2013 14:43:50 +0200 Subject: [Libav-user] NVENC encoded frames -> RTSP Unicast (please help) Message-ID: <142A21F16BFFD54783F64D419C94CD360109DCC4D516@NLUTRVSE01.nl.hr.group> Hi everyone, I'm new to ffmpeg so please bare with me if the questions are on the basic side. I've searched hi and low but all examples I've come across seem to be old and use av_open_input_stream (which no longer seems to exist) or do the exact opposite as to what I want like capturing rtsp stream to file. I'm currently working with NVIDIA's NVENC h264 hardware encoder, currently I have h264 encoded frames coming from the NVENC encoder. Each frame is already encoded and in memory I wish to send the frames coming from the encoder on to the network via RTSP Unicast only I have no clue where to start. I'm currently stumbling blindly around in the ffmpeg codebase, as there appear to be multiple ways to do this? I've got an output context (do I need an input context as I'm not using a file?) avformat_alloc_output_context2(&fmt_ctx, NULL, "rtsp", NULL); As I'm not using a file I realized there are a few special things like AVFMT_NOFILE and AVIOContext, do I really need these? I think I need to mux the frame in memory to rtsp and send it over the network (if that's the correct terms?) I also saw AVPacket.. can I just put each frame in an AVPacket and send that somewhere? Somehow I don't think that's the right way to go about it. I'm also guessing I could do something with AVStream and push each frame into that straight after it's encoded? Please point me in the right direction, the correct workflow would be handy, maybe even an example RTSP streamer with a file source. Regards, Kristen Deze e-mail en de inhoud daarvan is vertrouwelijk. Indien dit bericht niet voor u bestemd is, verzoeken wij u deze e-mail direct aan ons te retourneren en daarna te vernietigen. In dit geval is het ook niet toegestaan deze e-mail en de inhoud daarvan te gebruiken, kopieren of openbaar te maken aan derden. Onze onderneming sluit elke aansprakelijkheid uit in verband met het niet juist, onvolledig of niet tijdig overkomen van de informatie in deze e-mail. Movares Nederland B.V. / Utrecht / Kamer van Koophandel 30124367. This e-mail and its contents are confidential and may be legally privileged. If this e-mail is not intended for you, please contact us immediately by reply e-mail and destroy the e-mail. In this case, please do not use, copy or disclose the e-mail and its contents to anyone. Our company is liable neither for the proper and complete transmission of the information in this e-mail nor for any delay in its receipt. Movares Nederland B.V. / Utrecht / Chamber of Commerce 30124367. From soho123.2012 at gmail.com Thu Aug 22 14:13:00 2013 From: soho123.2012 at gmail.com (Huang Soho) Date: Thu, 22 Aug 2013 20:13:00 +0800 Subject: [Libav-user] how to use ffplay to play RTSP/TCP stream Message-ID: hi All, As my understanding, ffplay can play RTSP/UDP stream that output from ffserver. That I tested, it works fine. In advance, is it possible to play RTSP/TCP stream by ffplay ? How to ? Thanks! -------------- next part -------------- An HTML attachment was scrubbed... URL: From nisar.med at gmail.com Thu Aug 22 14:51:38 2013 From: nisar.med at gmail.com (Nisar Ahmed) Date: Thu, 22 Aug 2013 17:51:38 +0500 Subject: [Libav-user] muxing h264/aac stream In-Reply-To: References: Message-ID: Coming back to this issue, I have tested 2 scenarios a. I am simply setting pts to the timestamp received from encoder and dts to 0 but the resulting file is showing very large frame rate value. b. Setting pts to the timestamp received from encoder but this time setting dts with an increment of 1001 starting from -1001 (2002/-1001, 0/0, 1001/1001, 5005/2002, 3003/3003). The framerate is correct this time but the quicktime player displays a white frame at the start of the movie. I investigated this issue further by using libav demuxer sample and the pts/dts have been changed from what I set and start_time is also not 0. VLC plays fine but I also want Quicktime player to play the file normally as well. The movies created by the software which ships with he encoder shows correct frame rate and start time of 0, also the pts/dts investigated with the demuxing sample are in the same sequence as described in the second scenario. I really need to understand why my pts/dts are changed by the muxer to different values, may be it is trying to guess correct values based on the inputs I provided. Which inputs matter in this kind of scenarios and how they relate to each other? Thanks in advance Nisar On Sat, Aug 17, 2013 at 11:05 AM, Nisar Ahmed wrote: > Thanks for your answer, when I set timestamp of decoder, the frame rate > jumps up to a very large value > > pts/dts = (2002/0, 0/0, 1001/0, 5005/0, 3003/0...) > > am I setting the time_base to correct values 1001/30000 and pkt.duration = > 1001? the timescale of the timestamp is also 30000 > > > On Sat, Aug 17, 2013 at 2:10 AM, Anshul maheshwari < > er.anshul.maheshwari at gmail.com> wrote: > >> - >> >> On Aug 16, 2013 7:30 PM, "Nisar Ahmed" wrote: >> > >> > I am muxing h264/aac stream to mp4 coming from an encoder and having >> issues syncing audio and video streams. >> > >> > I suspect that the problem is with PTS and DTS but I am not sure what >> values should i set to properly sync both streams. >> > >> > I have set the time_base of video stream's AVCodecContext to 1001/30000 >> and each AVPacket gets a duration of 1001 >> > >> > I am recieving time stamps from the encoder with each NAL packet which >> is set as PTS of the AVPacket. the sequence of PTS/DTS I set is (2002/0, >> 0/1001, 1001/2002, 5005/3003, 3003/4004...) >> > >> > Audio stream AVCodecContext sample rate is 48000 and PTS/DTS are simply >> multiples of 1024 starting from 0 and AVPacket duration is 1024. >> > >> > The output movie 's frame rate is 20fps when it should be 29.97fps as >> it is ntsc. >> > >> > Please tell me how to debug this problem and what are the guidelines of >> creating pts/dts for both video and audio in my case >> > >> > _______________________________________________ >> > Libav-user mailing list >> > Libav-user at ffmpeg.org >> > http://ffmpeg.org/mailman/listinfo/libav-user >> > >> Hi naseer >> >> If you are getting timestamp with encoder, i would suggest "dont try to >> manuplate that" you may set that same timestamp as presentation timestamp >> (pts) if your video is realtime then try not to generate B type video frame >> hence no need to set dts. >> Whatever clock is set by encoder try generating the pts of audio >> according to that. >> >> @enjoy >> Anshul >> >> _______________________________________________ >> Libav-user mailing list >> Libav-user at ffmpeg.org >> http://ffmpeg.org/mailman/listinfo/libav-user >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From aworldgonewrong at gmail.com Thu Aug 22 16:07:05 2013 From: aworldgonewrong at gmail.com (John Freeman) Date: Thu, 22 Aug 2013 15:07:05 +0100 Subject: [Libav-user] RTSP Pause: Times out Message-ID: I have an RTSP server that supports the PAUSE command, so in my code I call av_read_pause and then when I want to resume playback, I call av_read_play. However, between the call to pause and the call to play, there is no call for keep-alive to the server and therefore the connection times out and I lose the stream. How can I keep the connection alive? ~ Jay -------------- next part -------------- An HTML attachment was scrubbed... URL: From mrfun.china at gmail.com Thu Aug 22 08:18:14 2013 From: mrfun.china at gmail.com (YIRAN LI) Date: Thu, 22 Aug 2013 02:18:14 -0400 Subject: [Libav-user] any special settings needed to decoder h.264 encoded mp4 in ffmpeg 2.0.1? Message-ID: Hi friends, I'm writing a video converting application which uses ffmpeg dlls on Windows. We used to use ffmpeg 1.1.3 and now are upgrading to ffmpeg 2.0.1 which was released just days ago. Buw while compile is successful, when decoding and playing a mp4 files, seems the video frames returned by avcodec_decode_video2 are not correct (only first frame is correct, other frames are wrong, just showing dark), and application 10 seconds after read/decode startes (video duration is 60 seconds) The configuration I used is quite simple --disable-static --enable-shared --disable-doc --disable-ffplay --disable-ffprobe --disable-ffserver --disable-network --enable-small --enable-memalign-hack --disable-bsfs --disable-protocol=pipe --disable-bzlib --disable-devices and I also added --enable-pthreads ffmpeg reported lots error messages while decoding/playing. Because we also develop Mac version, so I'll check if it also crashes Mac version. I'll be so grateful if anyone can give a hint on what's wrong with this Windows build. Great thanks! Line 282: 00:00:11.154 MAIN FFMPEG: Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100 Line 284: 00:00:11.154 MAIN FFMPEG: ISO: File Type Major Brand: mp42 Line 286: 00:00:11.154 MAIN FFMPEG: File position before avformat_find_stream_info() is 37114 Line 288: 00:00:11.154 MAIN FFMPEG: All info found Line 290: 00:00:11.154 MAIN FFMPEG: File position after avformat_find_stream_info() is 73594 Line 292: 00:00:11.154 MAIN LFFMPEGSourceManagerVideoBase::Open - success Line 293: 00:00:11.154 MAIN LFFMPEGSourceManagerVideoBase::GetVideoSource Line 295: 00:00:11.170 MAIN LFFMPEGSourceManagerBase::GetSoundSource Line 297: 00:00:11.170 MAIN LFFMPEGSourceManagerVideoBase::Init Line 523: 00:00:14.524 7856 FFMPEG: AVC: nal size -17891602 Line 525: 00:00:14.524 7856 FFMPEG: Cannot use next picture in error concealment Line 527: 00:00:14.524 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 542: 00:00:14.555 6516 FFMPEG: AVC: nal size -17891602 Line 544: 00:00:14.555 6516 FFMPEG: Cannot use next picture in error concealment Line 546: 00:00:14.555 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 549: 00:00:14.602 7844 FFMPEG: AVC: nal size -285282562 Line 551: 00:00:14.602 7844 FFMPEG: Cannot use next picture in error concealment Line 553: 00:00:14.602 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 556: 00:00:14.649 7856 FFMPEG: AVC: nal size -285282562 Line 558: 00:00:14.649 7856 FFMPEG: Cannot use next picture in error concealment Line 560: 00:00:14.649 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 563: 00:00:14.680 6516 FFMPEG: AVC: nal size -285282562 Line 565: 00:00:14.680 6516 FFMPEG: Cannot use next picture in error concealment Line 567: 00:00:14.680 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 570: 00:00:14.727 7844 FFMPEG: AVC: nal size -17891602 Line 572: 00:00:14.727 7844 FFMPEG: Cannot use next picture in error concealment Line 574: 00:00:14.727 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 577: 00:00:14.774 7856 FFMPEG: AVC: nal size -285282562 Line 579: 00:00:14.774 7856 FFMPEG: Cannot use next picture in error concealment Line 581: 00:00:14.774 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 584: 00:00:14.805 6516 FFMPEG: AVC: nal size -17891602 Line 586: 00:00:14.820 6516 FFMPEG: Cannot use next picture in error concealment Line 588: 00:00:14.820 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 591: 00:00:14.852 7844 FFMPEG: AVC: nal size -285282562 Line 593: 00:00:14.852 7844 FFMPEG: Cannot use next picture in error concealment Line 595: 00:00:14.852 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 598: 00:00:14.898 7856 FFMPEG: AVC: nal size -17891602 Line 600: 00:00:14.898 7856 FFMPEG: Cannot use next picture in error concealment Line 602: 00:00:14.898 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 605: 00:00:14.945 6516 FFMPEG: AVC: nal size -285282562 Line 607: 00:00:14.945 6516 FFMPEG: Cannot use next picture in error concealment Line 609: 00:00:14.945 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 612: 00:00:14.976 7844 FFMPEG: AVC: nal size -17891602 Line 614: 00:00:14.976 7844 FFMPEG: Cannot use next picture in error concealment Line 616: 00:00:14.976 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 619: 00:00:15.023 7856 FFMPEG: AVC: nal size -17891602 Line 621: 00:00:15.023 7856 FFMPEG: Cannot use next picture in error concealment Line 623: 00:00:15.023 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 638: 00:00:15.054 6516 FFMPEG: AVC: nal size -285282562 Line 640: 00:00:15.054 6516 FFMPEG: Cannot use next picture in error concealment Line 642: 00:00:15.054 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 645: 00:00:15.101 7844 FFMPEG: AVC: nal size -17891602 Line 647: 00:00:15.101 7844 FFMPEG: Cannot use next picture in error concealment Line 649: 00:00:15.101 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 652: 00:00:15.148 7856 FFMPEG: AVC: nal size -17891602 Line 654: 00:00:15.148 7856 FFMPEG: Cannot use next picture in error concealment Line 656: 00:00:15.148 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 659: 00:00:15.179 6516 FFMPEG: AVC: nal size -285282562 Line 661: 00:00:15.179 6516 FFMPEG: Cannot use next picture in error concealment Line 663: 00:00:15.179 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 666: 00:00:15.226 7844 FFMPEG: AVC: nal size -17891602 Line 668: 00:00:15.226 7844 FFMPEG: Cannot use next picture in error concealment Line 670: 00:00:15.226 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 673: 00:00:15.273 7856 FFMPEG: AVC: nal size -285282562 Line 675: 00:00:15.273 7856 FFMPEG: Cannot use next picture in error concealment Line 677: 00:00:15.273 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 680: 00:00:15.304 6516 FFMPEG: AVC: nal size -285282562 Line 682: 00:00:15.304 6516 FFMPEG: Cannot use next picture in error concealment Line 684: 00:00:15.320 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 687: 00:00:15.351 7844 FFMPEG: AVC: nal size -17891602 Line 689: 00:00:15.351 7844 FFMPEG: Cannot use next picture in error concealment Line 691: 00:00:15.351 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 694: 00:00:15.398 7856 FFMPEG: AVC: nal size -17891602 Line 696: 00:00:15.398 7856 FFMPEG: Cannot use next picture in error concealment Line 698: 00:00:15.398 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 701: 00:00:15.444 6516 FFMPEG: AVC: nal size -17891602 Line 703: 00:00:15.444 6516 FFMPEG: Cannot use next picture in error concealment Line 705: 00:00:15.444 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 708: 00:00:15.476 7844 FFMPEG: AVC: nal size -17891602 Line 710: 00:00:15.476 7844 FFMPEG: Cannot use next picture in error concealment Line 712: 00:00:15.476 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 715: 00:00:15.522 7856 FFMPEG: AVC: nal size -17891602 Line 717: 00:00:15.522 7856 FFMPEG: Cannot use next picture in error concealment Line 719: 00:00:15.522 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 722: 00:00:15.554 6516 FFMPEG: AVC: nal size -285282562 Line 724: 00:00:15.554 6516 FFMPEG: Cannot use next picture in error concealment Line 726: 00:00:15.554 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 729: 00:00:15.600 7844 FFMPEG: AVC: nal size -17891602 Line 731: 00:00:15.600 7844 FFMPEG: Cannot use next picture in error concealment Line 733: 00:00:15.600 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 748: 00:00:15.647 7856 FFMPEG: AVC: nal size -285282562 Line 750: 00:00:15.647 7856 FFMPEG: Cannot use next picture in error concealment Line 752: 00:00:15.647 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 755: 00:00:15.678 6516 FFMPEG: AVC: nal size -285282562 Line 757: 00:00:15.678 6516 FFMPEG: Cannot use next picture in error concealment Line 759: 00:00:15.678 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 762: 00:00:15.725 7844 FFMPEG: AVC: nal size -17891602 Line 764: 00:00:15.725 7844 FFMPEG: Cannot use next picture in error concealment Line 766: 00:00:15.725 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 769: 00:00:15.772 7856 FFMPEG: AVC: nal size -285282562 Line 771: 00:00:15.772 7856 FFMPEG: Cannot use next picture in error concealment Line 773: 00:00:15.772 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 776: 00:00:15.803 6516 FFMPEG: AVC: nal size -285282562 Line 778: 00:00:15.819 6516 FFMPEG: Cannot use next picture in error concealment Line 780: 00:00:15.819 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 783: 00:00:15.850 7844 FFMPEG: AVC: nal size -17891602 Line 785: 00:00:15.850 7844 FFMPEG: Cannot use next picture in error concealment Line 787: 00:00:15.850 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 790: 00:00:15.897 7856 FFMPEG: AVC: nal size -285282562 Line 792: 00:00:15.897 7856 FFMPEG: Cannot use next picture in error concealment Line 794: 00:00:15.897 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 797: 00:00:15.944 6516 FFMPEG: AVC: nal size -285282562 Line 799: 00:00:15.944 6516 FFMPEG: Cannot use next picture in error concealment Line 801: 00:00:15.944 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 804: 00:00:15.975 7844 FFMPEG: AVC: nal size -285282562 Line 806: 00:00:15.975 7844 FFMPEG: Cannot use next picture in error concealment Line 808: 00:00:15.975 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 811: 00:00:16.022 7856 FFMPEG: AVC: nal size -285282562 Line 813: 00:00:16.022 7856 FFMPEG: Cannot use next picture in error concealment Line 815: 00:00:16.022 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 818: 00:00:16.068 6516 FFMPEG: AVC: nal size -17891602 Line 820: 00:00:16.068 6516 FFMPEG: Cannot use next picture in error concealment Line 822: 00:00:16.068 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 825: 00:00:16.100 7844 FFMPEG: AVC: nal size -17891602 Line 827: 00:00:16.100 7844 FFMPEG: Cannot use next picture in error concealment Line 829: 00:00:16.100 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 833: 00:00:16.146 7856 FFMPEG: AVC: nal size -17891602 Line 836: 00:00:16.146 7856 FFMPEG: Cannot use next picture in error concealment Line 838: 00:00:16.146 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 851: 00:00:16.178 6516 FFMPEG: AVC: nal size -285282562 Line 853: 00:00:16.178 6516 FFMPEG: Cannot use next picture in error concealment Line 855: 00:00:16.193 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 858: 00:00:16.224 7844 FFMPEG: AVC: nal size -17891602 Line 860: 00:00:16.224 7844 FFMPEG: Cannot use next picture in error concealment Line 282: 00:00:11.154 MAIN FFMPEG: Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100 Line 284: 00:00:11.154 MAIN FFMPEG: ISO: File Type Major Brand: mp42 Line 286: 00:00:11.154 MAIN FFMPEG: File position before avformat_find_stream_info() is 37114 Line 288: 00:00:11.154 MAIN FFMPEG: All info found Line 290: 00:00:11.154 MAIN FFMPEG: File position after avformat_find_stream_info() is 73594 Line 292: 00:00:11.154 MAIN LFFMPEGSourceManagerVideoBase::Open - success Line 293: 00:00:11.154 MAIN LFFMPEGSourceManagerVideoBase::GetVideoSource Line 295: 00:00:11.170 MAIN LFFMPEGSourceManagerBase::GetSoundSource Line 297: 00:00:11.170 MAIN LFFMPEGSourceManagerVideoBase::Init Line 523: 00:00:14.524 7856 FFMPEG: AVC: nal size -17891602 Line 525: 00:00:14.524 7856 FFMPEG: Cannot use next picture in error concealment Line 527: 00:00:14.524 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 542: 00:00:14.555 6516 FFMPEG: AVC: nal size -17891602 Line 544: 00:00:14.555 6516 FFMPEG: Cannot use next picture in error concealment Line 546: 00:00:14.555 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 549: 00:00:14.602 7844 FFMPEG: AVC: nal size -285282562 Line 551: 00:00:14.602 7844 FFMPEG: Cannot use next picture in error concealment Line 553: 00:00:14.602 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 556: 00:00:14.649 7856 FFMPEG: AVC: nal size -285282562 Line 558: 00:00:14.649 7856 FFMPEG: Cannot use next picture in error concealment Line 560: 00:00:14.649 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 563: 00:00:14.680 6516 FFMPEG: AVC: nal size -285282562 Line 565: 00:00:14.680 6516 FFMPEG: Cannot use next picture in error concealment Line 567: 00:00:14.680 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 570: 00:00:14.727 7844 FFMPEG: AVC: nal size -17891602 Line 572: 00:00:14.727 7844 FFMPEG: Cannot use next picture in error concealment Line 574: 00:00:14.727 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 577: 00:00:14.774 7856 FFMPEG: AVC: nal size -285282562 Line 579: 00:00:14.774 7856 FFMPEG: Cannot use next picture in error concealment Line 581: 00:00:14.774 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 584: 00:00:14.805 6516 FFMPEG: AVC: nal size -17891602 Line 586: 00:00:14.820 6516 FFMPEG: Cannot use next picture in error concealment Line 588: 00:00:14.820 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 591: 00:00:14.852 7844 FFMPEG: AVC: nal size -285282562 Line 593: 00:00:14.852 7844 FFMPEG: Cannot use next picture in error concealment Line 595: 00:00:14.852 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 598: 00:00:14.898 7856 FFMPEG: AVC: nal size -17891602 Line 600: 00:00:14.898 7856 FFMPEG: Cannot use next picture in error concealment Line 602: 00:00:14.898 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 605: 00:00:14.945 6516 FFMPEG: AVC: nal size -285282562 Line 607: 00:00:14.945 6516 FFMPEG: Cannot use next picture in error concealment Line 609: 00:00:14.945 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 612: 00:00:14.976 7844 FFMPEG: AVC: nal size -17891602 Line 614: 00:00:14.976 7844 FFMPEG: Cannot use next picture in error concealment Line 616: 00:00:14.976 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 619: 00:00:15.023 7856 FFMPEG: AVC: nal size -17891602 Line 621: 00:00:15.023 7856 FFMPEG: Cannot use next picture in error concealment Line 623: 00:00:15.023 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 638: 00:00:15.054 6516 FFMPEG: AVC: nal size -285282562 Line 640: 00:00:15.054 6516 FFMPEG: Cannot use next picture in error concealment Line 642: 00:00:15.054 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 645: 00:00:15.101 7844 FFMPEG: AVC: nal size -17891602 Line 647: 00:00:15.101 7844 FFMPEG: Cannot use next picture in error concealment Line 649: 00:00:15.101 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 652: 00:00:15.148 7856 FFMPEG: AVC: nal size -17891602 Line 654: 00:00:15.148 7856 FFMPEG: Cannot use next picture in error concealment Line 656: 00:00:15.148 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 659: 00:00:15.179 6516 FFMPEG: AVC: nal size -285282562 Line 661: 00:00:15.179 6516 FFMPEG: Cannot use next picture in error concealment Line 663: 00:00:15.179 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 666: 00:00:15.226 7844 FFMPEG: AVC: nal size -17891602 Line 668: 00:00:15.226 7844 FFMPEG: Cannot use next picture in error concealment Line 670: 00:00:15.226 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 673: 00:00:15.273 7856 FFMPEG: AVC: nal size -285282562 Line 675: 00:00:15.273 7856 FFMPEG: Cannot use next picture in error concealment Line 677: 00:00:15.273 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 680: 00:00:15.304 6516 FFMPEG: AVC: nal size -285282562 Line 682: 00:00:15.304 6516 FFMPEG: Cannot use next picture in error concealment Line 684: 00:00:15.320 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 687: 00:00:15.351 7844 FFMPEG: AVC: nal size -17891602 Line 689: 00:00:15.351 7844 FFMPEG: Cannot use next picture in error concealment Line 691: 00:00:15.351 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 694: 00:00:15.398 7856 FFMPEG: AVC: nal size -17891602 Line 696: 00:00:15.398 7856 FFMPEG: Cannot use next picture in error concealment Line 698: 00:00:15.398 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 701: 00:00:15.444 6516 FFMPEG: AVC: nal size -17891602 Line 703: 00:00:15.444 6516 FFMPEG: Cannot use next picture in error concealment Line 705: 00:00:15.444 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 708: 00:00:15.476 7844 FFMPEG: AVC: nal size -17891602 Line 710: 00:00:15.476 7844 FFMPEG: Cannot use next picture in error concealment Line 712: 00:00:15.476 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 715: 00:00:15.522 7856 FFMPEG: AVC: nal size -17891602 Line 717: 00:00:15.522 7856 FFMPEG: Cannot use next picture in error concealment Line 719: 00:00:15.522 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 722: 00:00:15.554 6516 FFMPEG: AVC: nal size -285282562 Line 724: 00:00:15.554 6516 FFMPEG: Cannot use next picture in error concealment Line 726: 00:00:15.554 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 729: 00:00:15.600 7844 FFMPEG: AVC: nal size -17891602 Line 731: 00:00:15.600 7844 FFMPEG: Cannot use next picture in error concealment Line 733: 00:00:15.600 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 748: 00:00:15.647 7856 FFMPEG: AVC: nal size -285282562 Line 750: 00:00:15.647 7856 FFMPEG: Cannot use next picture in error concealment Line 752: 00:00:15.647 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 755: 00:00:15.678 6516 FFMPEG: AVC: nal size -285282562 Line 757: 00:00:15.678 6516 FFMPEG: Cannot use next picture in error concealment Line 759: 00:00:15.678 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 762: 00:00:15.725 7844 FFMPEG: AVC: nal size -17891602 Line 764: 00:00:15.725 7844 FFMPEG: Cannot use next picture in error concealment Line 766: 00:00:15.725 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 769: 00:00:15.772 7856 FFMPEG: AVC: nal size -285282562 Line 771: 00:00:15.772 7856 FFMPEG: Cannot use next picture in error concealment Line 773: 00:00:15.772 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 776: 00:00:15.803 6516 FFMPEG: AVC: nal size -285282562 Line 778: 00:00:15.819 6516 FFMPEG: Cannot use next picture in error concealment Line 780: 00:00:15.819 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 783: 00:00:15.850 7844 FFMPEG: AVC: nal size -17891602 Line 785: 00:00:15.850 7844 FFMPEG: Cannot use next picture in error concealment Line 787: 00:00:15.850 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 790: 00:00:15.897 7856 FFMPEG: AVC: nal size -285282562 Line 792: 00:00:15.897 7856 FFMPEG: Cannot use next picture in error concealment Line 794: 00:00:15.897 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 797: 00:00:15.944 6516 FFMPEG: AVC: nal size -285282562 Line 799: 00:00:15.944 6516 FFMPEG: Cannot use next picture in error concealment Line 801: 00:00:15.944 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 804: 00:00:15.975 7844 FFMPEG: AVC: nal size -285282562 Line 806: 00:00:15.975 7844 FFMPEG: Cannot use next picture in error concealment Line 808: 00:00:15.975 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 811: 00:00:16.022 7856 FFMPEG: AVC: nal size -285282562 Line 813: 00:00:16.022 7856 FFMPEG: Cannot use next picture in error concealment Line 815: 00:00:16.022 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 818: 00:00:16.068 6516 FFMPEG: AVC: nal size -17891602 Line 820: 00:00:16.068 6516 FFMPEG: Cannot use next picture in error concealment Line 822: 00:00:16.068 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 825: 00:00:16.100 7844 FFMPEG: AVC: nal size -17891602 Line 827: 00:00:16.100 7844 FFMPEG: Cannot use next picture in error concealment Line 829: 00:00:16.100 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 833: 00:00:16.146 7856 FFMPEG: AVC: nal size -17891602 Line 836: 00:00:16.146 7856 FFMPEG: Cannot use next picture in error concealment Line 838: 00:00:16.146 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 851: 00:00:16.178 6516 FFMPEG: AVC: nal size -285282562 Line 853: 00:00:16.178 6516 FFMPEG: Cannot use next picture in error concealment Line 855: 00:00:16.193 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 858: 00:00:16.224 7844 FFMPEG: AVC: nal size -17891602 Line 860: 00:00:16.224 7844 FFMPEG: Cannot use next picture in error concealment Line 862: 00:00:16.224 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 865: 00:00:16.271 7856 FFMPEG: AVC: nal size -285282562 Line 867: 00:00:16.271 7856 FFMPEG: Cannot use next picture in error concealment Line 869: 00:00:16.271 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 872: 00:00:16.318 6516 FFMPEG: AVC: nal size -285282562 Line 874: 00:00:16.318 6516 FFMPEG: Cannot use next picture in error concealment Line 876: 00:00:16.318 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 879: 00:00:16.349 7844 FFMPEG: AVC: nal size -285282562 Line 881: 00:00:16.349 7844 FFMPEG: Cannot use next picture in error concealment Line 883: 00:00:16.349 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 886: 00:00:16.396 7856 FFMPEG: AVC: nal size -285282562 Line 888: 00:00:16.396 7856 FFMPEG: Cannot use next picture in error concealment Line 890: 00:00:16.396 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 893: 00:00:16.443 6516 FFMPEG: AVC: nal size -285282562 Line 895: 00:00:16.443 6516 FFMPEG: Cannot use next picture in error concealment Line 897: 00:00:16.443 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 900: 00:00:16.474 7844 FFMPEG: AVC: nal size -17891602 Line 902: 00:00:16.474 7844 FFMPEG: Cannot use next picture in error concealment Line 904: 00:00:16.474 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 907: 00:00:16.521 7856 FFMPEG: AVC: nal size -285282562 Line 909: 00:00:16.521 7856 FFMPEG: Cannot use next picture in error concealment Line 911: 00:00:16.521 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 926: 00:00:16.568 6516 FFMPEG: AVC: nal size -285282562 Line 928: 00:00:16.568 6516 FFMPEG: Cannot use next picture in error concealment Line 930: 00:00:16.568 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 933: 00:00:16.599 7844 FFMPEG: AVC: nal size -17891602 Line 935: 00:00:16.599 7844 FFMPEG: Cannot use next picture in error concealment Line 937: 00:00:16.599 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 940: 00:00:16.646 7856 FFMPEG: AVC: nal size -17891602 Line 942: 00:00:16.646 7856 FFMPEG: Cannot use next picture in error concealment Line 944: 00:00:16.646 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 947: 00:00:16.692 6516 FFMPEG: AVC: nal size -285282562 Line 949: 00:00:16.692 6516 FFMPEG: Cannot use next picture in error concealment Line 951: 00:00:16.692 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 954: 00:00:16.724 7844 FFMPEG: AVC: nal size -17891602 Line 956: 00:00:16.724 7844 FFMPEG: Cannot use next picture in error concealment Line 958: 00:00:16.739 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 961: 00:00:16.770 7856 FFMPEG: AVC: nal size -285282562 Line 963: 00:00:16.770 7856 FFMPEG: Cannot use next picture in error concealment Line 965: 00:00:16.770 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 968: 00:00:16.802 6516 FFMPEG: AVC: nal size -17891602 Line 970: 00:00:16.817 6516 FFMPEG: Cannot use next picture in error concealment Line 972: 00:00:16.817 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 975: 00:00:16.848 7844 FFMPEG: AVC: nal size -285282562 Line 977: 00:00:16.848 7844 FFMPEG: Cannot use next picture in error concealment Line 979: 00:00:16.848 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 982: 00:00:16.895 7856 FFMPEG: AVC: nal size -17891602 Line 984: 00:00:16.895 7856 FFMPEG: Cannot use next picture in error concealment Line 986: 00:00:16.895 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 989: 00:00:16.926 6516 FFMPEG: AVC: nal size -285282562 Line 991: 00:00:16.942 6516 FFMPEG: Cannot use next picture in error concealment Line 993: 00:00:16.942 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 996: 00:00:16.973 7844 FFMPEG: AVC: nal size -17891602 Line 998: 00:00:16.973 7844 FFMPEG: Cannot use next picture in error concealment Line 1000: 00:00:16.973 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1003: 00:00:17.020 7856 FFMPEG: AVC: nal size -285282562 Line 1005: 00:00:17.020 7856 FFMPEG: Cannot use next picture in error concealment Line 1007: 00:00:17.020 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1022: 00:00:17.067 6516 FFMPEG: AVC: nal size -17891602 Line 1024: 00:00:17.067 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in I frame Line 1027: 00:00:17.098 7844 FFMPEG: AVC: nal size -17891602 Line 1029: 00:00:17.098 7844 FFMPEG: Cannot use next picture in error concealment Line 1031: 00:00:17.098 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1034: 00:00:17.145 7856 FFMPEG: AVC: nal size -285282562 Line 1036: 00:00:17.145 7856 FFMPEG: Cannot use next picture in error concealment Line 1038: 00:00:17.145 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1041: 00:00:17.192 6516 FFMPEG: AVC: nal size -17891602 Line 1043: 00:00:17.192 6516 FFMPEG: Cannot use next picture in error concealment Line 1045: 00:00:17.192 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1048: 00:00:17.223 7844 FFMPEG: AVC: nal size -17891602 Line 1050: 00:00:17.238 7844 FFMPEG: Cannot use next picture in error concealment Line 1052: 00:00:17.238 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1055: 00:00:17.270 7856 FFMPEG: AVC: nal size -17891602 Line 1057: 00:00:17.270 7856 FFMPEG: Cannot use next picture in error concealment Line 1059: 00:00:17.270 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1062: 00:00:17.316 6516 FFMPEG: AVC: nal size -17891602 Line 1064: 00:00:17.316 6516 FFMPEG: Cannot use next picture in error concealment Line 1066: 00:00:17.316 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1069: 00:00:17.348 7844 FFMPEG: AVC: nal size -285282562 Line 1071: 00:00:17.348 7844 FFMPEG: Cannot use next picture in error concealment Line 1073: 00:00:17.348 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1076: 00:00:17.394 7856 FFMPEG: AVC: nal size -17891602 Line 1078: 00:00:17.394 7856 FFMPEG: Cannot use next picture in error concealment Line 1080: 00:00:17.394 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1083: 00:00:17.441 6516 FFMPEG: AVC: nal size -285282562 Line 1085: 00:00:17.441 6516 FFMPEG: Cannot use next picture in error concealment Line 1087: 00:00:17.441 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1090: 00:00:17.472 7844 FFMPEG: AVC: nal size -17891602 Line 1092: 00:00:17.472 7844 FFMPEG: Cannot use next picture in error concealment Line 1094: 00:00:17.472 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1097: 00:00:17.519 7856 FFMPEG: AVC: nal size -17891602 Line 1099: 00:00:17.519 7856 FFMPEG: Cannot use next picture in error concealment Line 1101: 00:00:17.519 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1104: 00:00:17.566 6516 FFMPEG: AVC: nal size -17891602 Line 1106: 00:00:17.566 6516 FFMPEG: Cannot use next picture in error concealment Line 1108: 00:00:17.566 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1111: 00:00:17.597 7844 FFMPEG: AVC: nal size -17891602 Line 1113: 00:00:17.597 7844 FFMPEG: Cannot use next picture in error concealment Line 1115: 00:00:17.597 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1121: 00:00:17.644 7856 FFMPEG: AVC: nal size -572662307 Line 1124: 00:00:17.660 7856 FFMPEG: Cannot use next picture in error concealment Line 1127: 00:00:17.660 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 1137: 00:00:17.691 6516 FFMPEG: AVC: nal size -285282562 Line 1139: 00:00:17.691 6516 FFMPEG: Cannot use next picture in error concealment Line 1141: 00:00:17.691 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1144: 00:00:17.722 7844 FFMPEG: AVC: nal size -285282562 Line 1146: 00:00:17.738 7844 FFMPEG: Cannot use next picture in error concealment Line 1148: 00:00:17.738 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1151: 00:00:17.769 7856 FFMPEG: AVC: nal size -285282562 Line 1153: 00:00:17.769 7856 FFMPEG: Cannot use next picture in error concealment Line 1155: 00:00:17.769 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1158: 00:00:17.816 6516 FFMPEG: AVC: nal size -285282562 Line 1160: 00:00:17.816 6516 FFMPEG: Cannot use next picture in error concealment Line 1162: 00:00:17.816 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1165: 00:00:17.862 7844 FFMPEG: AVC: nal size -285282562 Line 1167: 00:00:17.862 7844 FFMPEG: Cannot use next picture in error concealment Line 1169: 00:00:17.862 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1172: 00:00:17.894 7856 FFMPEG: AVC: nal size -285282562 Line 1174: 00:00:17.894 7856 FFMPEG: Cannot use next picture in error concealment Line 1176: 00:00:17.894 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 1179: 00:00:17.940 6516 FFMPEG: AVC: nal size -17891602 Line 1181: 00:00:17.940 6516 FFMPEG: Cannot use next picture in error concealment Line 1183: 00:00:17.940 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1186: 00:00:17.972 7844 FFMPEG: AVC: nal size -17891602 Line 1188: 00:00:17.972 7844 FFMPEG: Cannot use next picture in error concealment Line 1190: 00:00:17.972 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1193: 00:00:18.018 7856 FFMPEG: AVC: nal size -285282562 Line 1195: 00:00:18.018 7856 FFMPEG: Cannot use next picture in error concealment Line 1197: 00:00:18.018 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1200: 00:00:18.065 6516 FFMPEG: AVC: nal size -17891602 Line 1202: 00:00:18.065 6516 FFMPEG: Cannot use next picture in error concealment Line 1204: 00:00:18.065 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1207: 00:00:18.096 7844 FFMPEG: AVC: nal size -285282562 Line 1209: 00:00:18.096 7844 FFMPEG: Cannot use next picture in error concealment Line 1211: 00:00:18.096 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1215: 00:00:18.143 7856 FFMPEG: AVC: nal size -285282562 Line 1218: 00:00:18.143 7856 FFMPEG: Cannot use next picture in error concealment Line 1221: 00:00:18.143 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1233: 00:00:18.190 6516 FFMPEG: AVC: nal size -285282562 Line 1235: 00:00:18.190 6516 FFMPEG: Cannot use next picture in error concealment Line 1237: 00:00:18.190 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1240: 00:00:18.221 7844 FFMPEG: AVC: nal size -285282562 Line 1242: 00:00:18.221 7844 FFMPEG: Cannot use next picture in error concealment Line 1244: 00:00:18.237 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1247: 00:00:18.268 7856 FFMPEG: AVC: nal size -285282562 Line 1249: 00:00:18.268 7856 FFMPEG: Cannot use next picture in error concealment Line 1251: 00:00:18.268 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1254: 00:00:18.315 6516 FFMPEG: AVC: nal size -285282562 Line 1256: 00:00:18.315 6516 FFMPEG: Cannot use next picture in error concealment Line 1258: 00:00:18.315 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1261: 00:00:18.346 7844 FFMPEG: AVC: nal size -17891602 Line 1263: 00:00:18.362 7844 FFMPEG: Cannot use next picture in error concealment Line 1265: 00:00:18.362 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1268: 00:00:18.393 7856 FFMPEG: AVC: nal size -285282562 Line 1270: 00:00:18.393 7856 FFMPEG: Cannot use next picture in error concealment Line 1272: 00:00:18.393 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1275: 00:00:18.440 6516 FFMPEG: AVC: nal size -17891602 Line 1277: 00:00:18.440 6516 FFMPEG: Cannot use next picture in error concealment Line 1279: 00:00:18.440 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1282: 00:00:18.486 7844 FFMPEG: AVC: nal size -285282562 Line 1284: 00:00:18.486 7844 FFMPEG: Cannot use next picture in error concealment Line 1286: 00:00:18.486 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1289: 00:00:18.518 7856 FFMPEG: AVC: nal size -17891602 Line 1291: 00:00:18.518 7856 FFMPEG: Cannot use next picture in error concealment Line 1293: 00:00:18.518 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1308: 00:00:18.564 6516 FFMPEG: AVC: nal size -17891602 Line 1310: 00:00:18.564 6516 FFMPEG: Cannot use next picture in error concealment Line 1312: 00:00:18.564 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1315: 00:00:18.596 7844 FFMPEG: AVC: nal size -17891602 Line 1317: 00:00:18.596 7844 FFMPEG: Cannot use next picture in error concealment Line 1319: 00:00:18.596 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1322: 00:00:18.642 7856 FFMPEG: AVC: nal size -285282562 Line 1324: 00:00:18.642 7856 FFMPEG: Cannot use next picture in error concealment Line 1326: 00:00:18.642 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1329: 00:00:18.689 6516 FFMPEG: AVC: nal size -17891602 Line 1331: 00:00:18.689 6516 FFMPEG: Cannot use next picture in error concealment Line 1333: 00:00:18.689 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1336: 00:00:18.720 7844 FFMPEG: AVC: nal size -17891602 Line 1338: 00:00:18.736 7844 FFMPEG: Cannot use next picture in error concealment Line 1340: 00:00:18.736 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1343: 00:00:18.767 7856 FFMPEG: AVC: nal size -17891602 Line 1345: 00:00:18.767 7856 FFMPEG: Cannot use next picture in error concealment Line 1347: 00:00:18.767 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1350: 00:00:18.814 6516 FFMPEG: AVC: nal size -17891602 Line 1352: 00:00:18.814 6516 FFMPEG: Cannot use next picture in error concealment Line 862: 00:00:16.224 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 865: 00:00:16.271 7856 FFMPEG: AVC: nal size -285282562 Line 867: 00:00:16.271 7856 FFMPEG: Cannot use next picture in error concealment Line 869: 00:00:16.271 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 872: 00:00:16.318 6516 FFMPEG: AVC: nal size -285282562 Line 874: 00:00:16.318 6516 FFMPEG: Cannot use next picture in error concealment Line 876: 00:00:16.318 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 879: 00:00:16.349 7844 FFMPEG: AVC: nal size -285282562 Line 881: 00:00:16.349 7844 FFMPEG: Cannot use next picture in error concealment Line 883: 00:00:16.349 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 886: 00:00:16.396 7856 FFMPEG: AVC: nal size -285282562 Line 888: 00:00:16.396 7856 FFMPEG: Cannot use next picture in error concealment Line 890: 00:00:16.396 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 893: 00:00:16.443 6516 FFMPEG: AVC: nal size -285282562 Line 895: 00:00:16.443 6516 FFMPEG: Cannot use next picture in error concealment Line 897: 00:00:16.443 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 900: 00:00:16.474 7844 FFMPEG: AVC: nal size -17891602 Line 902: 00:00:16.474 7844 FFMPEG: Cannot use next picture in error concealment Line 904: 00:00:16.474 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 907: 00:00:16.521 7856 FFMPEG: AVC: nal size -285282562 Line 909: 00:00:16.521 7856 FFMPEG: Cannot use next picture in error concealment Line 911: 00:00:16.521 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 926: 00:00:16.568 6516 FFMPEG: AVC: nal size -285282562 Line 928: 00:00:16.568 6516 FFMPEG: Cannot use next picture in error concealment Line 930: 00:00:16.568 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 933: 00:00:16.599 7844 FFMPEG: AVC: nal size -17891602 Line 935: 00:00:16.599 7844 FFMPEG: Cannot use next picture in error concealment Line 937: 00:00:16.599 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 940: 00:00:16.646 7856 FFMPEG: AVC: nal size -17891602 Line 942: 00:00:16.646 7856 FFMPEG: Cannot use next picture in error concealment Line 944: 00:00:16.646 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 947: 00:00:16.692 6516 FFMPEG: AVC: nal size -285282562 Line 949: 00:00:16.692 6516 FFMPEG: Cannot use next picture in error concealment Line 951: 00:00:16.692 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 954: 00:00:16.724 7844 FFMPEG: AVC: nal size -17891602 Line 956: 00:00:16.724 7844 FFMPEG: Cannot use next picture in error concealment Line 958: 00:00:16.739 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 961: 00:00:16.770 7856 FFMPEG: AVC: nal size -285282562 Line 963: 00:00:16.770 7856 FFMPEG: Cannot use next picture in error concealment Line 965: 00:00:16.770 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 968: 00:00:16.802 6516 FFMPEG: AVC: nal size -17891602 Line 970: 00:00:16.817 6516 FFMPEG: Cannot use next picture in error concealment Line 972: 00:00:16.817 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 975: 00:00:16.848 7844 FFMPEG: AVC: nal size -285282562 Line 977: 00:00:16.848 7844 FFMPEG: Cannot use next picture in error concealment Line 979: 00:00:16.848 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 982: 00:00:16.895 7856 FFMPEG: AVC: nal size -17891602 Line 984: 00:00:16.895 7856 FFMPEG: Cannot use next picture in error concealment Line 986: 00:00:16.895 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 989: 00:00:16.926 6516 FFMPEG: AVC: nal size -285282562 Line 991: 00:00:16.942 6516 FFMPEG: Cannot use next picture in error concealment Line 993: 00:00:16.942 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 996: 00:00:16.973 7844 FFMPEG: AVC: nal size -17891602 Line 998: 00:00:16.973 7844 FFMPEG: Cannot use next picture in error concealment Line 1000: 00:00:16.973 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1003: 00:00:17.020 7856 FFMPEG: AVC: nal size -285282562 Line 1005: 00:00:17.020 7856 FFMPEG: Cannot use next picture in error concealment Line 1007: 00:00:17.020 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1022: 00:00:17.067 6516 FFMPEG: AVC: nal size -17891602 Line 1024: 00:00:17.067 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in I frame Line 1027: 00:00:17.098 7844 FFMPEG: AVC: nal size -17891602 Line 1029: 00:00:17.098 7844 FFMPEG: Cannot use next picture in error concealment Line 1031: 00:00:17.098 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1034: 00:00:17.145 7856 FFMPEG: AVC: nal size -285282562 Line 1036: 00:00:17.145 7856 FFMPEG: Cannot use next picture in error concealment Line 1038: 00:00:17.145 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1041: 00:00:17.192 6516 FFMPEG: AVC: nal size -17891602 Line 1043: 00:00:17.192 6516 FFMPEG: Cannot use next picture in error concealment Line 1045: 00:00:17.192 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1048: 00:00:17.223 7844 FFMPEG: AVC: nal size -17891602 Line 1050: 00:00:17.238 7844 FFMPEG: Cannot use next picture in error concealment Line 1052: 00:00:17.238 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1055: 00:00:17.270 7856 FFMPEG: AVC: nal size -17891602 Line 1057: 00:00:17.270 7856 FFMPEG: Cannot use next picture in error concealment Line 1059: 00:00:17.270 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1062: 00:00:17.316 6516 FFMPEG: AVC: nal size -17891602 Line 1064: 00:00:17.316 6516 FFMPEG: Cannot use next picture in error concealment Line 1066: 00:00:17.316 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1069: 00:00:17.348 7844 FFMPEG: AVC: nal size -285282562 Line 1071: 00:00:17.348 7844 FFMPEG: Cannot use next picture in error concealment Line 1073: 00:00:17.348 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1076: 00:00:17.394 7856 FFMPEG: AVC: nal size -17891602 Line 1078: 00:00:17.394 7856 FFMPEG: Cannot use next picture in error concealment Line 1080: 00:00:17.394 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1083: 00:00:17.441 6516 FFMPEG: AVC: nal size -285282562 Line 1085: 00:00:17.441 6516 FFMPEG: Cannot use next picture in error concealment Line 1087: 00:00:17.441 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1090: 00:00:17.472 7844 FFMPEG: AVC: nal size -17891602 Line 1092: 00:00:17.472 7844 FFMPEG: Cannot use next picture in error concealment Line 1094: 00:00:17.472 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1097: 00:00:17.519 7856 FFMPEG: AVC: nal size -17891602 Line 1099: 00:00:17.519 7856 FFMPEG: Cannot use next picture in error concealment Line 1101: 00:00:17.519 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1104: 00:00:17.566 6516 FFMPEG: AVC: nal size -17891602 Line 1106: 00:00:17.566 6516 FFMPEG: Cannot use next picture in error concealment Line 1108: 00:00:17.566 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1111: 00:00:17.597 7844 FFMPEG: AVC: nal size -17891602 Line 1113: 00:00:17.597 7844 FFMPEG: Cannot use next picture in error concealment Line 1115: 00:00:17.597 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1121: 00:00:17.644 7856 FFMPEG: AVC: nal size -572662307 Line 1124: 00:00:17.660 7856 FFMPEG: Cannot use next picture in error concealment Line 1127: 00:00:17.660 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 1137: 00:00:17.691 6516 FFMPEG: AVC: nal size -285282562 Line 1139: 00:00:17.691 6516 FFMPEG: Cannot use next picture in error concealment Line 1141: 00:00:17.691 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1144: 00:00:17.722 7844 FFMPEG: AVC: nal size -285282562 Line 1146: 00:00:17.738 7844 FFMPEG: Cannot use next picture in error concealment Line 1148: 00:00:17.738 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1151: 00:00:17.769 7856 FFMPEG: AVC: nal size -285282562 Line 1153: 00:00:17.769 7856 FFMPEG: Cannot use next picture in error concealment Line 1155: 00:00:17.769 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1158: 00:00:17.816 6516 FFMPEG: AVC: nal size -285282562 Line 1160: 00:00:17.816 6516 FFMPEG: Cannot use next picture in error concealment Line 1162: 00:00:17.816 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1165: 00:00:17.862 7844 FFMPEG: AVC: nal size -285282562 Line 1167: 00:00:17.862 7844 FFMPEG: Cannot use next picture in error concealment Line 1169: 00:00:17.862 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1172: 00:00:17.894 7856 FFMPEG: AVC: nal size -285282562 Line 1174: 00:00:17.894 7856 FFMPEG: Cannot use next picture in error concealment Line 1176: 00:00:17.894 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 1179: 00:00:17.940 6516 FFMPEG: AVC: nal size -17891602 Line 1181: 00:00:17.940 6516 FFMPEG: Cannot use next picture in error concealment Line 1183: 00:00:17.940 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1186: 00:00:17.972 7844 FFMPEG: AVC: nal size -17891602 Line 1188: 00:00:17.972 7844 FFMPEG: Cannot use next picture in error concealment Line 1190: 00:00:17.972 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1193: 00:00:18.018 7856 FFMPEG: AVC: nal size -285282562 Line 1195: 00:00:18.018 7856 FFMPEG: Cannot use next picture in error concealment Line 1197: 00:00:18.018 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1200: 00:00:18.065 6516 FFMPEG: AVC: nal size -17891602 Line 1202: 00:00:18.065 6516 FFMPEG: Cannot use next picture in error concealment Line 1204: 00:00:18.065 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1207: 00:00:18.096 7844 FFMPEG: AVC: nal size -285282562 Line 1209: 00:00:18.096 7844 FFMPEG: Cannot use next picture in error concealment Line 1211: 00:00:18.096 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1215: 00:00:18.143 7856 FFMPEG: AVC: nal size -285282562 Line 1218: 00:00:18.143 7856 FFMPEG: Cannot use next picture in error concealment Line 1221: 00:00:18.143 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1233: 00:00:18.190 6516 FFMPEG: AVC: nal size -285282562 Line 1235: 00:00:18.190 6516 FFMPEG: Cannot use next picture in error concealment Line 1237: 00:00:18.190 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1240: 00:00:18.221 7844 FFMPEG: AVC: nal size -285282562 Line 1242: 00:00:18.221 7844 FFMPEG: Cannot use next picture in error concealment Line 1244: 00:00:18.237 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1247: 00:00:18.268 7856 FFMPEG: AVC: nal size -285282562 Line 1249: 00:00:18.268 7856 FFMPEG: Cannot use next picture in error concealment Line 1251: 00:00:18.268 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1254: 00:00:18.315 6516 FFMPEG: AVC: nal size -285282562 Line 1256: 00:00:18.315 6516 FFMPEG: Cannot use next picture in error concealment Line 1258: 00:00:18.315 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1261: 00:00:18.346 7844 FFMPEG: AVC: nal size -17891602 Line 1263: 00:00:18.362 7844 FFMPEG: Cannot use next picture in error concealment Line 1265: 00:00:18.362 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1268: 00:00:18.393 7856 FFMPEG: AVC: nal size -285282562 Line 1270: 00:00:18.393 7856 FFMPEG: Cannot use next picture in error concealment Line 1272: 00:00:18.393 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1275: 00:00:18.440 6516 FFMPEG: AVC: nal size -17891602 Line 1277: 00:00:18.440 6516 FFMPEG: Cannot use next picture in error concealment Line 1279: 00:00:18.440 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1282: 00:00:18.486 7844 FFMPEG: AVC: nal size -285282562 Line 1284: 00:00:18.486 7844 FFMPEG: Cannot use next picture in error concealment Line 1286: 00:00:18.486 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1289: 00:00:18.518 7856 FFMPEG: AVC: nal size -17891602 Line 1291: 00:00:18.518 7856 FFMPEG: Cannot use next picture in error concealment Line 1293: 00:00:18.518 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1308: 00:00:18.564 6516 FFMPEG: AVC: nal size -17891602 Line 1310: 00:00:18.564 6516 FFMPEG: Cannot use next picture in error concealment Line 1312: 00:00:18.564 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1315: 00:00:18.596 7844 FFMPEG: AVC: nal size -17891602 Line 1317: 00:00:18.596 7844 FFMPEG: Cannot use next picture in error concealment Line 1319: 00:00:18.596 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1322: 00:00:18.642 7856 FFMPEG: AVC: nal size -285282562 Line 1324: 00:00:18.642 7856 FFMPEG: Cannot use next picture in error concealment Line 1326: 00:00:18.642 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1329: 00:00:18.689 6516 FFMPEG: AVC: nal size -17891602 Line 1331: 00:00:18.689 6516 FFMPEG: Cannot use next picture in error concealment Line 1333: 00:00:18.689 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1336: 00:00:18.720 7844 FFMPEG: AVC: nal size -17891602 Line 1338: 00:00:18.736 7844 FFMPEG: Cannot use next picture in error concealment Line 1340: 00:00:18.736 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1343: 00:00:18.767 7856 FFMPEG: AVC: nal size -17891602 Line 1345: 00:00:18.767 7856 FFMPEG: Cannot use next picture in error concealment Line 1347: 00:00:18.767 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1350: 00:00:18.814 6516 FFMPEG: AVC: nal size -17891602 Line 1352: 00:00:18.814 6516 FFMPEG: Cannot use next picture in error concealment -------------- next part -------------- An HTML attachment was scrubbed... URL: From mrfun.china at gmail.com Thu Aug 22 09:08:22 2013 From: mrfun.china at gmail.com (YIRAN LI) Date: Thu, 22 Aug 2013 03:08:22 -0400 Subject: [Libav-user] Fwd: any special settings needed to decoder h.264 encoded mp4 in ffmpeg 2.0.1? In-Reply-To: References: Message-ID: Hi friends, I've found that it happens because I set AVCodecContext.thread_count = 3 before opening the codec, setting it with 2 also will make decoded frame wrong and finally crash. I'm compiling on Win7 using cygwin, GCC version is 4.5.3 Does anyone know if it's related to --enable-pthreads ---------- Forwarded message ---------- From: YIRAN LI Date: 2013/8/22 Subject: any special settings needed to decoder h.264 encoded mp4 in ffmpeg 2.0.1? To: "This list is about using libavcodec, libavformat, libavutil, libavdevice and libavfilter." Hi friends, I'm writing a video converting application which uses ffmpeg dlls on Windows. We used to use ffmpeg 1.1.3 and now are upgrading to ffmpeg 2.0.1 which was released just days ago. Buw while compile is successful, when decoding and playing a mp4 files, seems the video frames returned by avcodec_decode_video2 are not correct (only first frame is correct, other frames are wrong, just showing dark), and application 10 seconds after read/decode startes (video duration is 60 seconds) The configuration I used is quite simple --disable-static --enable-shared --disable-doc --disable-ffplay --disable-ffprobe --disable-ffserver --disable-network --enable-small --enable-memalign-hack --disable-bsfs --disable-protocol=pipe --disable-bzlib --disable-devices and I also added --enable-pthreads ffmpeg reported lots error messages while decoding/playing. Because we also develop Mac version, so I'll check if it also crashes Mac version. I'll be so grateful if anyone can give a hint on what's wrong with this Windows build. Great thanks! Line 282: 00:00:11.154 MAIN FFMPEG: Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100 Line 284: 00:00:11.154 MAIN FFMPEG: ISO: File Type Major Brand: mp42 Line 286: 00:00:11.154 MAIN FFMPEG: File position before avformat_find_stream_info() is 37114 Line 288: 00:00:11.154 MAIN FFMPEG: All info found Line 290: 00:00:11.154 MAIN FFMPEG: File position after avformat_find_stream_info() is 73594 Line 292: 00:00:11.154 MAIN LFFMPEGSourceManagerVideoBase::Open - success Line 293: 00:00:11.154 MAIN LFFMPEGSourceManagerVideoBase::GetVideoSource Line 295: 00:00:11.170 MAIN LFFMPEGSourceManagerBase::GetSoundSource Line 297: 00:00:11.170 MAIN LFFMPEGSourceManagerVideoBase::Init Line 523: 00:00:14.524 7856 FFMPEG: AVC: nal size -17891602 Line 525: 00:00:14.524 7856 FFMPEG: Cannot use next picture in error concealment Line 527: 00:00:14.524 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 542: 00:00:14.555 6516 FFMPEG: AVC: nal size -17891602 Line 544: 00:00:14.555 6516 FFMPEG: Cannot use next picture in error concealment Line 546: 00:00:14.555 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 549: 00:00:14.602 7844 FFMPEG: AVC: nal size -285282562 Line 551: 00:00:14.602 7844 FFMPEG: Cannot use next picture in error concealment Line 553: 00:00:14.602 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 556: 00:00:14.649 7856 FFMPEG: AVC: nal size -285282562 Line 558: 00:00:14.649 7856 FFMPEG: Cannot use next picture in error concealment Line 560: 00:00:14.649 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 563: 00:00:14.680 6516 FFMPEG: AVC: nal size -285282562 Line 565: 00:00:14.680 6516 FFMPEG: Cannot use next picture in error concealment Line 567: 00:00:14.680 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 570: 00:00:14.727 7844 FFMPEG: AVC: nal size -17891602 Line 572: 00:00:14.727 7844 FFMPEG: Cannot use next picture in error concealment Line 574: 00:00:14.727 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 577: 00:00:14.774 7856 FFMPEG: AVC: nal size -285282562 Line 579: 00:00:14.774 7856 FFMPEG: Cannot use next picture in error concealment Line 581: 00:00:14.774 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 584: 00:00:14.805 6516 FFMPEG: AVC: nal size -17891602 Line 586: 00:00:14.820 6516 FFMPEG: Cannot use next picture in error concealment Line 588: 00:00:14.820 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 591: 00:00:14.852 7844 FFMPEG: AVC: nal size -285282562 Line 593: 00:00:14.852 7844 FFMPEG: Cannot use next picture in error concealment Line 595: 00:00:14.852 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 598: 00:00:14.898 7856 FFMPEG: AVC: nal size -17891602 Line 600: 00:00:14.898 7856 FFMPEG: Cannot use next picture in error concealment Line 602: 00:00:14.898 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 605: 00:00:14.945 6516 FFMPEG: AVC: nal size -285282562 Line 607: 00:00:14.945 6516 FFMPEG: Cannot use next picture in error concealment Line 609: 00:00:14.945 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 612: 00:00:14.976 7844 FFMPEG: AVC: nal size -17891602 Line 614: 00:00:14.976 7844 FFMPEG: Cannot use next picture in error concealment Line 616: 00:00:14.976 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 619: 00:00:15.023 7856 FFMPEG: AVC: nal size -17891602 Line 621: 00:00:15.023 7856 FFMPEG: Cannot use next picture in error concealment Line 623: 00:00:15.023 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 638: 00:00:15.054 6516 FFMPEG: AVC: nal size -285282562 Line 640: 00:00:15.054 6516 FFMPEG: Cannot use next picture in error concealment Line 642: 00:00:15.054 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 645: 00:00:15.101 7844 FFMPEG: AVC: nal size -17891602 Line 647: 00:00:15.101 7844 FFMPEG: Cannot use next picture in error concealment Line 649: 00:00:15.101 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 652: 00:00:15.148 7856 FFMPEG: AVC: nal size -17891602 Line 654: 00:00:15.148 7856 FFMPEG: Cannot use next picture in error concealment Line 656: 00:00:15.148 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 659: 00:00:15.179 6516 FFMPEG: AVC: nal size -285282562 Line 661: 00:00:15.179 6516 FFMPEG: Cannot use next picture in error concealment Line 663: 00:00:15.179 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 666: 00:00:15.226 7844 FFMPEG: AVC: nal size -17891602 Line 668: 00:00:15.226 7844 FFMPEG: Cannot use next picture in error concealment Line 670: 00:00:15.226 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 673: 00:00:15.273 7856 FFMPEG: AVC: nal size -285282562 Line 675: 00:00:15.273 7856 FFMPEG: Cannot use next picture in error concealment Line 677: 00:00:15.273 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 680: 00:00:15.304 6516 FFMPEG: AVC: nal size -285282562 Line 682: 00:00:15.304 6516 FFMPEG: Cannot use next picture in error concealment Line 684: 00:00:15.320 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 687: 00:00:15.351 7844 FFMPEG: AVC: nal size -17891602 Line 689: 00:00:15.351 7844 FFMPEG: Cannot use next picture in error concealment Line 691: 00:00:15.351 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 694: 00:00:15.398 7856 FFMPEG: AVC: nal size -17891602 Line 696: 00:00:15.398 7856 FFMPEG: Cannot use next picture in error concealment Line 698: 00:00:15.398 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 701: 00:00:15.444 6516 FFMPEG: AVC: nal size -17891602 Line 703: 00:00:15.444 6516 FFMPEG: Cannot use next picture in error concealment Line 705: 00:00:15.444 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 708: 00:00:15.476 7844 FFMPEG: AVC: nal size -17891602 Line 710: 00:00:15.476 7844 FFMPEG: Cannot use next picture in error concealment Line 712: 00:00:15.476 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 715: 00:00:15.522 7856 FFMPEG: AVC: nal size -17891602 Line 717: 00:00:15.522 7856 FFMPEG: Cannot use next picture in error concealment Line 719: 00:00:15.522 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 722: 00:00:15.554 6516 FFMPEG: AVC: nal size -285282562 Line 724: 00:00:15.554 6516 FFMPEG: Cannot use next picture in error concealment Line 726: 00:00:15.554 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 729: 00:00:15.600 7844 FFMPEG: AVC: nal size -17891602 Line 731: 00:00:15.600 7844 FFMPEG: Cannot use next picture in error concealment Line 733: 00:00:15.600 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 748: 00:00:15.647 7856 FFMPEG: AVC: nal size -285282562 Line 750: 00:00:15.647 7856 FFMPEG: Cannot use next picture in error concealment Line 752: 00:00:15.647 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 755: 00:00:15.678 6516 FFMPEG: AVC: nal size -285282562 Line 757: 00:00:15.678 6516 FFMPEG: Cannot use next picture in error concealment Line 759: 00:00:15.678 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 762: 00:00:15.725 7844 FFMPEG: AVC: nal size -17891602 Line 764: 00:00:15.725 7844 FFMPEG: Cannot use next picture in error concealment Line 766: 00:00:15.725 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 769: 00:00:15.772 7856 FFMPEG: AVC: nal size -285282562 Line 771: 00:00:15.772 7856 FFMPEG: Cannot use next picture in error concealment Line 773: 00:00:15.772 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 776: 00:00:15.803 6516 FFMPEG: AVC: nal size -285282562 Line 778: 00:00:15.819 6516 FFMPEG: Cannot use next picture in error concealment Line 780: 00:00:15.819 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 783: 00:00:15.850 7844 FFMPEG: AVC: nal size -17891602 Line 785: 00:00:15.850 7844 FFMPEG: Cannot use next picture in error concealment Line 787: 00:00:15.850 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 790: 00:00:15.897 7856 FFMPEG: AVC: nal size -285282562 Line 792: 00:00:15.897 7856 FFMPEG: Cannot use next picture in error concealment Line 794: 00:00:15.897 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 797: 00:00:15.944 6516 FFMPEG: AVC: nal size -285282562 Line 799: 00:00:15.944 6516 FFMPEG: Cannot use next picture in error concealment Line 801: 00:00:15.944 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 804: 00:00:15.975 7844 FFMPEG: AVC: nal size -285282562 Line 806: 00:00:15.975 7844 FFMPEG: Cannot use next picture in error concealment Line 808: 00:00:15.975 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 811: 00:00:16.022 7856 FFMPEG: AVC: nal size -285282562 Line 813: 00:00:16.022 7856 FFMPEG: Cannot use next picture in error concealment Line 815: 00:00:16.022 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 818: 00:00:16.068 6516 FFMPEG: AVC: nal size -17891602 Line 820: 00:00:16.068 6516 FFMPEG: Cannot use next picture in error concealment Line 822: 00:00:16.068 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 825: 00:00:16.100 7844 FFMPEG: AVC: nal size -17891602 Line 827: 00:00:16.100 7844 FFMPEG: Cannot use next picture in error concealment Line 829: 00:00:16.100 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 833: 00:00:16.146 7856 FFMPEG: AVC: nal size -17891602 Line 836: 00:00:16.146 7856 FFMPEG: Cannot use next picture in error concealment Line 838: 00:00:16.146 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 851: 00:00:16.178 6516 FFMPEG: AVC: nal size -285282562 Line 853: 00:00:16.178 6516 FFMPEG: Cannot use next picture in error concealment Line 855: 00:00:16.193 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 858: 00:00:16.224 7844 FFMPEG: AVC: nal size -17891602 Line 860: 00:00:16.224 7844 FFMPEG: Cannot use next picture in error concealment Line 282: 00:00:11.154 MAIN FFMPEG: Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100 Line 284: 00:00:11.154 MAIN FFMPEG: ISO: File Type Major Brand: mp42 Line 286: 00:00:11.154 MAIN FFMPEG: File position before avformat_find_stream_info() is 37114 Line 288: 00:00:11.154 MAIN FFMPEG: All info found Line 290: 00:00:11.154 MAIN FFMPEG: File position after avformat_find_stream_info() is 73594 Line 292: 00:00:11.154 MAIN LFFMPEGSourceManagerVideoBase::Open - success Line 293: 00:00:11.154 MAIN LFFMPEGSourceManagerVideoBase::GetVideoSource Line 295: 00:00:11.170 MAIN LFFMPEGSourceManagerBase::GetSoundSource Line 297: 00:00:11.170 MAIN LFFMPEGSourceManagerVideoBase::Init Line 523: 00:00:14.524 7856 FFMPEG: AVC: nal size -17891602 Line 525: 00:00:14.524 7856 FFMPEG: Cannot use next picture in error concealment Line 527: 00:00:14.524 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 542: 00:00:14.555 6516 FFMPEG: AVC: nal size -17891602 Line 544: 00:00:14.555 6516 FFMPEG: Cannot use next picture in error concealment Line 546: 00:00:14.555 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 549: 00:00:14.602 7844 FFMPEG: AVC: nal size -285282562 Line 551: 00:00:14.602 7844 FFMPEG: Cannot use next picture in error concealment Line 553: 00:00:14.602 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 556: 00:00:14.649 7856 FFMPEG: AVC: nal size -285282562 Line 558: 00:00:14.649 7856 FFMPEG: Cannot use next picture in error concealment Line 560: 00:00:14.649 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 563: 00:00:14.680 6516 FFMPEG: AVC: nal size -285282562 Line 565: 00:00:14.680 6516 FFMPEG: Cannot use next picture in error concealment Line 567: 00:00:14.680 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 570: 00:00:14.727 7844 FFMPEG: AVC: nal size -17891602 Line 572: 00:00:14.727 7844 FFMPEG: Cannot use next picture in error concealment Line 574: 00:00:14.727 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 577: 00:00:14.774 7856 FFMPEG: AVC: nal size -285282562 Line 579: 00:00:14.774 7856 FFMPEG: Cannot use next picture in error concealment Line 581: 00:00:14.774 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 584: 00:00:14.805 6516 FFMPEG: AVC: nal size -17891602 Line 586: 00:00:14.820 6516 FFMPEG: Cannot use next picture in error concealment Line 588: 00:00:14.820 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 591: 00:00:14.852 7844 FFMPEG: AVC: nal size -285282562 Line 593: 00:00:14.852 7844 FFMPEG: Cannot use next picture in error concealment Line 595: 00:00:14.852 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 598: 00:00:14.898 7856 FFMPEG: AVC: nal size -17891602 Line 600: 00:00:14.898 7856 FFMPEG: Cannot use next picture in error concealment Line 602: 00:00:14.898 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 605: 00:00:14.945 6516 FFMPEG: AVC: nal size -285282562 Line 607: 00:00:14.945 6516 FFMPEG: Cannot use next picture in error concealment Line 609: 00:00:14.945 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 612: 00:00:14.976 7844 FFMPEG: AVC: nal size -17891602 Line 614: 00:00:14.976 7844 FFMPEG: Cannot use next picture in error concealment Line 616: 00:00:14.976 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 619: 00:00:15.023 7856 FFMPEG: AVC: nal size -17891602 Line 621: 00:00:15.023 7856 FFMPEG: Cannot use next picture in error concealment Line 623: 00:00:15.023 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 638: 00:00:15.054 6516 FFMPEG: AVC: nal size -285282562 Line 640: 00:00:15.054 6516 FFMPEG: Cannot use next picture in error concealment Line 642: 00:00:15.054 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 645: 00:00:15.101 7844 FFMPEG: AVC: nal size -17891602 Line 647: 00:00:15.101 7844 FFMPEG: Cannot use next picture in error concealment Line 649: 00:00:15.101 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 652: 00:00:15.148 7856 FFMPEG: AVC: nal size -17891602 Line 654: 00:00:15.148 7856 FFMPEG: Cannot use next picture in error concealment Line 656: 00:00:15.148 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 659: 00:00:15.179 6516 FFMPEG: AVC: nal size -285282562 Line 661: 00:00:15.179 6516 FFMPEG: Cannot use next picture in error concealment Line 663: 00:00:15.179 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 666: 00:00:15.226 7844 FFMPEG: AVC: nal size -17891602 Line 668: 00:00:15.226 7844 FFMPEG: Cannot use next picture in error concealment Line 670: 00:00:15.226 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 673: 00:00:15.273 7856 FFMPEG: AVC: nal size -285282562 Line 675: 00:00:15.273 7856 FFMPEG: Cannot use next picture in error concealment Line 677: 00:00:15.273 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 680: 00:00:15.304 6516 FFMPEG: AVC: nal size -285282562 Line 682: 00:00:15.304 6516 FFMPEG: Cannot use next picture in error concealment Line 684: 00:00:15.320 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 687: 00:00:15.351 7844 FFMPEG: AVC: nal size -17891602 Line 689: 00:00:15.351 7844 FFMPEG: Cannot use next picture in error concealment Line 691: 00:00:15.351 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 694: 00:00:15.398 7856 FFMPEG: AVC: nal size -17891602 Line 696: 00:00:15.398 7856 FFMPEG: Cannot use next picture in error concealment Line 698: 00:00:15.398 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 701: 00:00:15.444 6516 FFMPEG: AVC: nal size -17891602 Line 703: 00:00:15.444 6516 FFMPEG: Cannot use next picture in error concealment Line 705: 00:00:15.444 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 708: 00:00:15.476 7844 FFMPEG: AVC: nal size -17891602 Line 710: 00:00:15.476 7844 FFMPEG: Cannot use next picture in error concealment Line 712: 00:00:15.476 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 715: 00:00:15.522 7856 FFMPEG: AVC: nal size -17891602 Line 717: 00:00:15.522 7856 FFMPEG: Cannot use next picture in error concealment Line 719: 00:00:15.522 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 722: 00:00:15.554 6516 FFMPEG: AVC: nal size -285282562 Line 724: 00:00:15.554 6516 FFMPEG: Cannot use next picture in error concealment Line 726: 00:00:15.554 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 729: 00:00:15.600 7844 FFMPEG: AVC: nal size -17891602 Line 731: 00:00:15.600 7844 FFMPEG: Cannot use next picture in error concealment Line 733: 00:00:15.600 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 748: 00:00:15.647 7856 FFMPEG: AVC: nal size -285282562 Line 750: 00:00:15.647 7856 FFMPEG: Cannot use next picture in error concealment Line 752: 00:00:15.647 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 755: 00:00:15.678 6516 FFMPEG: AVC: nal size -285282562 Line 757: 00:00:15.678 6516 FFMPEG: Cannot use next picture in error concealment Line 759: 00:00:15.678 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 762: 00:00:15.725 7844 FFMPEG: AVC: nal size -17891602 Line 764: 00:00:15.725 7844 FFMPEG: Cannot use next picture in error concealment Line 766: 00:00:15.725 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 769: 00:00:15.772 7856 FFMPEG: AVC: nal size -285282562 Line 771: 00:00:15.772 7856 FFMPEG: Cannot use next picture in error concealment Line 773: 00:00:15.772 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 776: 00:00:15.803 6516 FFMPEG: AVC: nal size -285282562 Line 778: 00:00:15.819 6516 FFMPEG: Cannot use next picture in error concealment Line 780: 00:00:15.819 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 783: 00:00:15.850 7844 FFMPEG: AVC: nal size -17891602 Line 785: 00:00:15.850 7844 FFMPEG: Cannot use next picture in error concealment Line 787: 00:00:15.850 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 790: 00:00:15.897 7856 FFMPEG: AVC: nal size -285282562 Line 792: 00:00:15.897 7856 FFMPEG: Cannot use next picture in error concealment Line 794: 00:00:15.897 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 797: 00:00:15.944 6516 FFMPEG: AVC: nal size -285282562 Line 799: 00:00:15.944 6516 FFMPEG: Cannot use next picture in error concealment Line 801: 00:00:15.944 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 804: 00:00:15.975 7844 FFMPEG: AVC: nal size -285282562 Line 806: 00:00:15.975 7844 FFMPEG: Cannot use next picture in error concealment Line 808: 00:00:15.975 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 811: 00:00:16.022 7856 FFMPEG: AVC: nal size -285282562 Line 813: 00:00:16.022 7856 FFMPEG: Cannot use next picture in error concealment Line 815: 00:00:16.022 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 818: 00:00:16.068 6516 FFMPEG: AVC: nal size -17891602 Line 820: 00:00:16.068 6516 FFMPEG: Cannot use next picture in error concealment Line 822: 00:00:16.068 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 825: 00:00:16.100 7844 FFMPEG: AVC: nal size -17891602 Line 827: 00:00:16.100 7844 FFMPEG: Cannot use next picture in error concealment Line 829: 00:00:16.100 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 833: 00:00:16.146 7856 FFMPEG: AVC: nal size -17891602 Line 836: 00:00:16.146 7856 FFMPEG: Cannot use next picture in error concealment Line 838: 00:00:16.146 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 851: 00:00:16.178 6516 FFMPEG: AVC: nal size -285282562 Line 853: 00:00:16.178 6516 FFMPEG: Cannot use next picture in error concealment Line 855: 00:00:16.193 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 858: 00:00:16.224 7844 FFMPEG: AVC: nal size -17891602 Line 860: 00:00:16.224 7844 FFMPEG: Cannot use next picture in error concealment Line 862: 00:00:16.224 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 865: 00:00:16.271 7856 FFMPEG: AVC: nal size -285282562 Line 867: 00:00:16.271 7856 FFMPEG: Cannot use next picture in error concealment Line 869: 00:00:16.271 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 872: 00:00:16.318 6516 FFMPEG: AVC: nal size -285282562 Line 874: 00:00:16.318 6516 FFMPEG: Cannot use next picture in error concealment Line 876: 00:00:16.318 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 879: 00:00:16.349 7844 FFMPEG: AVC: nal size -285282562 Line 881: 00:00:16.349 7844 FFMPEG: Cannot use next picture in error concealment Line 883: 00:00:16.349 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 886: 00:00:16.396 7856 FFMPEG: AVC: nal size -285282562 Line 888: 00:00:16.396 7856 FFMPEG: Cannot use next picture in error concealment Line 890: 00:00:16.396 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 893: 00:00:16.443 6516 FFMPEG: AVC: nal size -285282562 Line 895: 00:00:16.443 6516 FFMPEG: Cannot use next picture in error concealment Line 897: 00:00:16.443 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 900: 00:00:16.474 7844 FFMPEG: AVC: nal size -17891602 Line 902: 00:00:16.474 7844 FFMPEG: Cannot use next picture in error concealment Line 904: 00:00:16.474 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 907: 00:00:16.521 7856 FFMPEG: AVC: nal size -285282562 Line 909: 00:00:16.521 7856 FFMPEG: Cannot use next picture in error concealment Line 911: 00:00:16.521 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 926: 00:00:16.568 6516 FFMPEG: AVC: nal size -285282562 Line 928: 00:00:16.568 6516 FFMPEG: Cannot use next picture in error concealment Line 930: 00:00:16.568 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 933: 00:00:16.599 7844 FFMPEG: AVC: nal size -17891602 Line 935: 00:00:16.599 7844 FFMPEG: Cannot use next picture in error concealment Line 937: 00:00:16.599 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 940: 00:00:16.646 7856 FFMPEG: AVC: nal size -17891602 Line 942: 00:00:16.646 7856 FFMPEG: Cannot use next picture in error concealment Line 944: 00:00:16.646 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 947: 00:00:16.692 6516 FFMPEG: AVC: nal size -285282562 Line 949: 00:00:16.692 6516 FFMPEG: Cannot use next picture in error concealment Line 951: 00:00:16.692 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 954: 00:00:16.724 7844 FFMPEG: AVC: nal size -17891602 Line 956: 00:00:16.724 7844 FFMPEG: Cannot use next picture in error concealment Line 958: 00:00:16.739 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 961: 00:00:16.770 7856 FFMPEG: AVC: nal size -285282562 Line 963: 00:00:16.770 7856 FFMPEG: Cannot use next picture in error concealment Line 965: 00:00:16.770 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 968: 00:00:16.802 6516 FFMPEG: AVC: nal size -17891602 Line 970: 00:00:16.817 6516 FFMPEG: Cannot use next picture in error concealment Line 972: 00:00:16.817 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 975: 00:00:16.848 7844 FFMPEG: AVC: nal size -285282562 Line 977: 00:00:16.848 7844 FFMPEG: Cannot use next picture in error concealment Line 979: 00:00:16.848 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 982: 00:00:16.895 7856 FFMPEG: AVC: nal size -17891602 Line 984: 00:00:16.895 7856 FFMPEG: Cannot use next picture in error concealment Line 986: 00:00:16.895 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 989: 00:00:16.926 6516 FFMPEG: AVC: nal size -285282562 Line 991: 00:00:16.942 6516 FFMPEG: Cannot use next picture in error concealment Line 993: 00:00:16.942 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 996: 00:00:16.973 7844 FFMPEG: AVC: nal size -17891602 Line 998: 00:00:16.973 7844 FFMPEG: Cannot use next picture in error concealment Line 1000: 00:00:16.973 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1003: 00:00:17.020 7856 FFMPEG: AVC: nal size -285282562 Line 1005: 00:00:17.020 7856 FFMPEG: Cannot use next picture in error concealment Line 1007: 00:00:17.020 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1022: 00:00:17.067 6516 FFMPEG: AVC: nal size -17891602 Line 1024: 00:00:17.067 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in I frame Line 1027: 00:00:17.098 7844 FFMPEG: AVC: nal size -17891602 Line 1029: 00:00:17.098 7844 FFMPEG: Cannot use next picture in error concealment Line 1031: 00:00:17.098 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1034: 00:00:17.145 7856 FFMPEG: AVC: nal size -285282562 Line 1036: 00:00:17.145 7856 FFMPEG: Cannot use next picture in error concealment Line 1038: 00:00:17.145 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1041: 00:00:17.192 6516 FFMPEG: AVC: nal size -17891602 Line 1043: 00:00:17.192 6516 FFMPEG: Cannot use next picture in error concealment Line 1045: 00:00:17.192 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1048: 00:00:17.223 7844 FFMPEG: AVC: nal size -17891602 Line 1050: 00:00:17.238 7844 FFMPEG: Cannot use next picture in error concealment Line 1052: 00:00:17.238 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1055: 00:00:17.270 7856 FFMPEG: AVC: nal size -17891602 Line 1057: 00:00:17.270 7856 FFMPEG: Cannot use next picture in error concealment Line 1059: 00:00:17.270 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1062: 00:00:17.316 6516 FFMPEG: AVC: nal size -17891602 Line 1064: 00:00:17.316 6516 FFMPEG: Cannot use next picture in error concealment Line 1066: 00:00:17.316 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1069: 00:00:17.348 7844 FFMPEG: AVC: nal size -285282562 Line 1071: 00:00:17.348 7844 FFMPEG: Cannot use next picture in error concealment Line 1073: 00:00:17.348 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1076: 00:00:17.394 7856 FFMPEG: AVC: nal size -17891602 Line 1078: 00:00:17.394 7856 FFMPEG: Cannot use next picture in error concealment Line 1080: 00:00:17.394 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1083: 00:00:17.441 6516 FFMPEG: AVC: nal size -285282562 Line 1085: 00:00:17.441 6516 FFMPEG: Cannot use next picture in error concealment Line 1087: 00:00:17.441 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1090: 00:00:17.472 7844 FFMPEG: AVC: nal size -17891602 Line 1092: 00:00:17.472 7844 FFMPEG: Cannot use next picture in error concealment Line 1094: 00:00:17.472 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1097: 00:00:17.519 7856 FFMPEG: AVC: nal size -17891602 Line 1099: 00:00:17.519 7856 FFMPEG: Cannot use next picture in error concealment Line 1101: 00:00:17.519 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1104: 00:00:17.566 6516 FFMPEG: AVC: nal size -17891602 Line 1106: 00:00:17.566 6516 FFMPEG: Cannot use next picture in error concealment Line 1108: 00:00:17.566 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1111: 00:00:17.597 7844 FFMPEG: AVC: nal size -17891602 Line 1113: 00:00:17.597 7844 FFMPEG: Cannot use next picture in error concealment Line 1115: 00:00:17.597 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1121: 00:00:17.644 7856 FFMPEG: AVC: nal size -572662307 Line 1124: 00:00:17.660 7856 FFMPEG: Cannot use next picture in error concealment Line 1127: 00:00:17.660 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 1137: 00:00:17.691 6516 FFMPEG: AVC: nal size -285282562 Line 1139: 00:00:17.691 6516 FFMPEG: Cannot use next picture in error concealment Line 1141: 00:00:17.691 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1144: 00:00:17.722 7844 FFMPEG: AVC: nal size -285282562 Line 1146: 00:00:17.738 7844 FFMPEG: Cannot use next picture in error concealment Line 1148: 00:00:17.738 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1151: 00:00:17.769 7856 FFMPEG: AVC: nal size -285282562 Line 1153: 00:00:17.769 7856 FFMPEG: Cannot use next picture in error concealment Line 1155: 00:00:17.769 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1158: 00:00:17.816 6516 FFMPEG: AVC: nal size -285282562 Line 1160: 00:00:17.816 6516 FFMPEG: Cannot use next picture in error concealment Line 1162: 00:00:17.816 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1165: 00:00:17.862 7844 FFMPEG: AVC: nal size -285282562 Line 1167: 00:00:17.862 7844 FFMPEG: Cannot use next picture in error concealment Line 1169: 00:00:17.862 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1172: 00:00:17.894 7856 FFMPEG: AVC: nal size -285282562 Line 1174: 00:00:17.894 7856 FFMPEG: Cannot use next picture in error concealment Line 1176: 00:00:17.894 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 1179: 00:00:17.940 6516 FFMPEG: AVC: nal size -17891602 Line 1181: 00:00:17.940 6516 FFMPEG: Cannot use next picture in error concealment Line 1183: 00:00:17.940 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1186: 00:00:17.972 7844 FFMPEG: AVC: nal size -17891602 Line 1188: 00:00:17.972 7844 FFMPEG: Cannot use next picture in error concealment Line 1190: 00:00:17.972 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1193: 00:00:18.018 7856 FFMPEG: AVC: nal size -285282562 Line 1195: 00:00:18.018 7856 FFMPEG: Cannot use next picture in error concealment Line 1197: 00:00:18.018 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1200: 00:00:18.065 6516 FFMPEG: AVC: nal size -17891602 Line 1202: 00:00:18.065 6516 FFMPEG: Cannot use next picture in error concealment Line 1204: 00:00:18.065 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1207: 00:00:18.096 7844 FFMPEG: AVC: nal size -285282562 Line 1209: 00:00:18.096 7844 FFMPEG: Cannot use next picture in error concealment Line 1211: 00:00:18.096 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1215: 00:00:18.143 7856 FFMPEG: AVC: nal size -285282562 Line 1218: 00:00:18.143 7856 FFMPEG: Cannot use next picture in error concealment Line 1221: 00:00:18.143 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1233: 00:00:18.190 6516 FFMPEG: AVC: nal size -285282562 Line 1235: 00:00:18.190 6516 FFMPEG: Cannot use next picture in error concealment Line 1237: 00:00:18.190 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1240: 00:00:18.221 7844 FFMPEG: AVC: nal size -285282562 Line 1242: 00:00:18.221 7844 FFMPEG: Cannot use next picture in error concealment Line 1244: 00:00:18.237 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1247: 00:00:18.268 7856 FFMPEG: AVC: nal size -285282562 Line 1249: 00:00:18.268 7856 FFMPEG: Cannot use next picture in error concealment Line 1251: 00:00:18.268 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1254: 00:00:18.315 6516 FFMPEG: AVC: nal size -285282562 Line 1256: 00:00:18.315 6516 FFMPEG: Cannot use next picture in error concealment Line 1258: 00:00:18.315 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1261: 00:00:18.346 7844 FFMPEG: AVC: nal size -17891602 Line 1263: 00:00:18.362 7844 FFMPEG: Cannot use next picture in error concealment Line 1265: 00:00:18.362 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1268: 00:00:18.393 7856 FFMPEG: AVC: nal size -285282562 Line 1270: 00:00:18.393 7856 FFMPEG: Cannot use next picture in error concealment Line 1272: 00:00:18.393 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1275: 00:00:18.440 6516 FFMPEG: AVC: nal size -17891602 Line 1277: 00:00:18.440 6516 FFMPEG: Cannot use next picture in error concealment Line 1279: 00:00:18.440 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1282: 00:00:18.486 7844 FFMPEG: AVC: nal size -285282562 Line 1284: 00:00:18.486 7844 FFMPEG: Cannot use next picture in error concealment Line 1286: 00:00:18.486 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1289: 00:00:18.518 7856 FFMPEG: AVC: nal size -17891602 Line 1291: 00:00:18.518 7856 FFMPEG: Cannot use next picture in error concealment Line 1293: 00:00:18.518 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1308: 00:00:18.564 6516 FFMPEG: AVC: nal size -17891602 Line 1310: 00:00:18.564 6516 FFMPEG: Cannot use next picture in error concealment Line 1312: 00:00:18.564 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1315: 00:00:18.596 7844 FFMPEG: AVC: nal size -17891602 Line 1317: 00:00:18.596 7844 FFMPEG: Cannot use next picture in error concealment Line 1319: 00:00:18.596 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1322: 00:00:18.642 7856 FFMPEG: AVC: nal size -285282562 Line 1324: 00:00:18.642 7856 FFMPEG: Cannot use next picture in error concealment Line 1326: 00:00:18.642 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1329: 00:00:18.689 6516 FFMPEG: AVC: nal size -17891602 Line 1331: 00:00:18.689 6516 FFMPEG: Cannot use next picture in error concealment Line 1333: 00:00:18.689 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1336: 00:00:18.720 7844 FFMPEG: AVC: nal size -17891602 Line 1338: 00:00:18.736 7844 FFMPEG: Cannot use next picture in error concealment Line 1340: 00:00:18.736 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1343: 00:00:18.767 7856 FFMPEG: AVC: nal size -17891602 Line 1345: 00:00:18.767 7856 FFMPEG: Cannot use next picture in error concealment Line 1347: 00:00:18.767 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1350: 00:00:18.814 6516 FFMPEG: AVC: nal size -17891602 Line 1352: 00:00:18.814 6516 FFMPEG: Cannot use next picture in error concealment Line 862: 00:00:16.224 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 865: 00:00:16.271 7856 FFMPEG: AVC: nal size -285282562 Line 867: 00:00:16.271 7856 FFMPEG: Cannot use next picture in error concealment Line 869: 00:00:16.271 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 872: 00:00:16.318 6516 FFMPEG: AVC: nal size -285282562 Line 874: 00:00:16.318 6516 FFMPEG: Cannot use next picture in error concealment Line 876: 00:00:16.318 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 879: 00:00:16.349 7844 FFMPEG: AVC: nal size -285282562 Line 881: 00:00:16.349 7844 FFMPEG: Cannot use next picture in error concealment Line 883: 00:00:16.349 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 886: 00:00:16.396 7856 FFMPEG: AVC: nal size -285282562 Line 888: 00:00:16.396 7856 FFMPEG: Cannot use next picture in error concealment Line 890: 00:00:16.396 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 893: 00:00:16.443 6516 FFMPEG: AVC: nal size -285282562 Line 895: 00:00:16.443 6516 FFMPEG: Cannot use next picture in error concealment Line 897: 00:00:16.443 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 900: 00:00:16.474 7844 FFMPEG: AVC: nal size -17891602 Line 902: 00:00:16.474 7844 FFMPEG: Cannot use next picture in error concealment Line 904: 00:00:16.474 7844 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 907: 00:00:16.521 7856 FFMPEG: AVC: nal size -285282562 Line 909: 00:00:16.521 7856 FFMPEG: Cannot use next picture in error concealment Line 911: 00:00:16.521 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 926: 00:00:16.568 6516 FFMPEG: AVC: nal size -285282562 Line 928: 00:00:16.568 6516 FFMPEG: Cannot use next picture in error concealment Line 930: 00:00:16.568 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 933: 00:00:16.599 7844 FFMPEG: AVC: nal size -17891602 Line 935: 00:00:16.599 7844 FFMPEG: Cannot use next picture in error concealment Line 937: 00:00:16.599 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 940: 00:00:16.646 7856 FFMPEG: AVC: nal size -17891602 Line 942: 00:00:16.646 7856 FFMPEG: Cannot use next picture in error concealment Line 944: 00:00:16.646 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 947: 00:00:16.692 6516 FFMPEG: AVC: nal size -285282562 Line 949: 00:00:16.692 6516 FFMPEG: Cannot use next picture in error concealment Line 951: 00:00:16.692 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 954: 00:00:16.724 7844 FFMPEG: AVC: nal size -17891602 Line 956: 00:00:16.724 7844 FFMPEG: Cannot use next picture in error concealment Line 958: 00:00:16.739 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 961: 00:00:16.770 7856 FFMPEG: AVC: nal size -285282562 Line 963: 00:00:16.770 7856 FFMPEG: Cannot use next picture in error concealment Line 965: 00:00:16.770 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 968: 00:00:16.802 6516 FFMPEG: AVC: nal size -17891602 Line 970: 00:00:16.817 6516 FFMPEG: Cannot use next picture in error concealment Line 972: 00:00:16.817 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 975: 00:00:16.848 7844 FFMPEG: AVC: nal size -285282562 Line 977: 00:00:16.848 7844 FFMPEG: Cannot use next picture in error concealment Line 979: 00:00:16.848 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 982: 00:00:16.895 7856 FFMPEG: AVC: nal size -17891602 Line 984: 00:00:16.895 7856 FFMPEG: Cannot use next picture in error concealment Line 986: 00:00:16.895 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 989: 00:00:16.926 6516 FFMPEG: AVC: nal size -285282562 Line 991: 00:00:16.942 6516 FFMPEG: Cannot use next picture in error concealment Line 993: 00:00:16.942 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 996: 00:00:16.973 7844 FFMPEG: AVC: nal size -17891602 Line 998: 00:00:16.973 7844 FFMPEG: Cannot use next picture in error concealment Line 1000: 00:00:16.973 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1003: 00:00:17.020 7856 FFMPEG: AVC: nal size -285282562 Line 1005: 00:00:17.020 7856 FFMPEG: Cannot use next picture in error concealment Line 1007: 00:00:17.020 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1022: 00:00:17.067 6516 FFMPEG: AVC: nal size -17891602 Line 1024: 00:00:17.067 6516 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in I frame Line 1027: 00:00:17.098 7844 FFMPEG: AVC: nal size -17891602 Line 1029: 00:00:17.098 7844 FFMPEG: Cannot use next picture in error concealment Line 1031: 00:00:17.098 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1034: 00:00:17.145 7856 FFMPEG: AVC: nal size -285282562 Line 1036: 00:00:17.145 7856 FFMPEG: Cannot use next picture in error concealment Line 1038: 00:00:17.145 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1041: 00:00:17.192 6516 FFMPEG: AVC: nal size -17891602 Line 1043: 00:00:17.192 6516 FFMPEG: Cannot use next picture in error concealment Line 1045: 00:00:17.192 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1048: 00:00:17.223 7844 FFMPEG: AVC: nal size -17891602 Line 1050: 00:00:17.238 7844 FFMPEG: Cannot use next picture in error concealment Line 1052: 00:00:17.238 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1055: 00:00:17.270 7856 FFMPEG: AVC: nal size -17891602 Line 1057: 00:00:17.270 7856 FFMPEG: Cannot use next picture in error concealment Line 1059: 00:00:17.270 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1062: 00:00:17.316 6516 FFMPEG: AVC: nal size -17891602 Line 1064: 00:00:17.316 6516 FFMPEG: Cannot use next picture in error concealment Line 1066: 00:00:17.316 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1069: 00:00:17.348 7844 FFMPEG: AVC: nal size -285282562 Line 1071: 00:00:17.348 7844 FFMPEG: Cannot use next picture in error concealment Line 1073: 00:00:17.348 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1076: 00:00:17.394 7856 FFMPEG: AVC: nal size -17891602 Line 1078: 00:00:17.394 7856 FFMPEG: Cannot use next picture in error concealment Line 1080: 00:00:17.394 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1083: 00:00:17.441 6516 FFMPEG: AVC: nal size -285282562 Line 1085: 00:00:17.441 6516 FFMPEG: Cannot use next picture in error concealment Line 1087: 00:00:17.441 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1090: 00:00:17.472 7844 FFMPEG: AVC: nal size -17891602 Line 1092: 00:00:17.472 7844 FFMPEG: Cannot use next picture in error concealment Line 1094: 00:00:17.472 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1097: 00:00:17.519 7856 FFMPEG: AVC: nal size -17891602 Line 1099: 00:00:17.519 7856 FFMPEG: Cannot use next picture in error concealment Line 1101: 00:00:17.519 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1104: 00:00:17.566 6516 FFMPEG: AVC: nal size -17891602 Line 1106: 00:00:17.566 6516 FFMPEG: Cannot use next picture in error concealment Line 1108: 00:00:17.566 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1111: 00:00:17.597 7844 FFMPEG: AVC: nal size -17891602 Line 1113: 00:00:17.597 7844 FFMPEG: Cannot use next picture in error concealment Line 1115: 00:00:17.597 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1121: 00:00:17.644 7856 FFMPEG: AVC: nal size -572662307 Line 1124: 00:00:17.660 7856 FFMPEG: Cannot use next picture in error concealment Line 1127: 00:00:17.660 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 1137: 00:00:17.691 6516 FFMPEG: AVC: nal size -285282562 Line 1139: 00:00:17.691 6516 FFMPEG: Cannot use next picture in error concealment Line 1141: 00:00:17.691 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1144: 00:00:17.722 7844 FFMPEG: AVC: nal size -285282562 Line 1146: 00:00:17.738 7844 FFMPEG: Cannot use next picture in error concealment Line 1148: 00:00:17.738 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1151: 00:00:17.769 7856 FFMPEG: AVC: nal size -285282562 Line 1153: 00:00:17.769 7856 FFMPEG: Cannot use next picture in error concealment Line 1155: 00:00:17.769 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1158: 00:00:17.816 6516 FFMPEG: AVC: nal size -285282562 Line 1160: 00:00:17.816 6516 FFMPEG: Cannot use next picture in error concealment Line 1162: 00:00:17.816 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1165: 00:00:17.862 7844 FFMPEG: AVC: nal size -285282562 Line 1167: 00:00:17.862 7844 FFMPEG: Cannot use next picture in error concealment Line 1169: 00:00:17.862 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1172: 00:00:17.894 7856 FFMPEG: AVC: nal size -285282562 Line 1174: 00:00:17.894 7856 FFMPEG: Cannot use next picture in error concealment Line 1176: 00:00:17.894 7856 FFMPEG: concealing 736 DC, 736 AC, 736 MV errors in P frame Line 1179: 00:00:17.940 6516 FFMPEG: AVC: nal size -17891602 Line 1181: 00:00:17.940 6516 FFMPEG: Cannot use next picture in error concealment Line 1183: 00:00:17.940 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1186: 00:00:17.972 7844 FFMPEG: AVC: nal size -17891602 Line 1188: 00:00:17.972 7844 FFMPEG: Cannot use next picture in error concealment Line 1190: 00:00:17.972 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1193: 00:00:18.018 7856 FFMPEG: AVC: nal size -285282562 Line 1195: 00:00:18.018 7856 FFMPEG: Cannot use next picture in error concealment Line 1197: 00:00:18.018 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1200: 00:00:18.065 6516 FFMPEG: AVC: nal size -17891602 Line 1202: 00:00:18.065 6516 FFMPEG: Cannot use next picture in error concealment Line 1204: 00:00:18.065 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1207: 00:00:18.096 7844 FFMPEG: AVC: nal size -285282562 Line 1209: 00:00:18.096 7844 FFMPEG: Cannot use next picture in error concealment Line 1211: 00:00:18.096 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1215: 00:00:18.143 7856 FFMPEG: AVC: nal size -285282562 Line 1218: 00:00:18.143 7856 FFMPEG: Cannot use next picture in error concealment Line 1221: 00:00:18.143 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1233: 00:00:18.190 6516 FFMPEG: AVC: nal size -285282562 Line 1235: 00:00:18.190 6516 FFMPEG: Cannot use next picture in error concealment Line 1237: 00:00:18.190 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1240: 00:00:18.221 7844 FFMPEG: AVC: nal size -285282562 Line 1242: 00:00:18.221 7844 FFMPEG: Cannot use next picture in error concealment Line 1244: 00:00:18.237 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1247: 00:00:18.268 7856 FFMPEG: AVC: nal size -285282562 Line 1249: 00:00:18.268 7856 FFMPEG: Cannot use next picture in error concealment Line 1251: 00:00:18.268 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1254: 00:00:18.315 6516 FFMPEG: AVC: nal size -285282562 Line 1256: 00:00:18.315 6516 FFMPEG: Cannot use next picture in error concealment Line 1258: 00:00:18.315 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1261: 00:00:18.346 7844 FFMPEG: AVC: nal size -17891602 Line 1263: 00:00:18.362 7844 FFMPEG: Cannot use next picture in error concealment Line 1265: 00:00:18.362 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1268: 00:00:18.393 7856 FFMPEG: AVC: nal size -285282562 Line 1270: 00:00:18.393 7856 FFMPEG: Cannot use next picture in error concealment Line 1272: 00:00:18.393 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1275: 00:00:18.440 6516 FFMPEG: AVC: nal size -17891602 Line 1277: 00:00:18.440 6516 FFMPEG: Cannot use next picture in error concealment Line 1279: 00:00:18.440 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1282: 00:00:18.486 7844 FFMPEG: AVC: nal size -285282562 Line 1284: 00:00:18.486 7844 FFMPEG: Cannot use next picture in error concealment Line 1286: 00:00:18.486 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1289: 00:00:18.518 7856 FFMPEG: AVC: nal size -17891602 Line 1291: 00:00:18.518 7856 FFMPEG: Cannot use next picture in error concealment Line 1293: 00:00:18.518 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1308: 00:00:18.564 6516 FFMPEG: AVC: nal size -17891602 Line 1310: 00:00:18.564 6516 FFMPEG: Cannot use next picture in error concealment Line 1312: 00:00:18.564 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1315: 00:00:18.596 7844 FFMPEG: AVC: nal size -17891602 Line 1317: 00:00:18.596 7844 FFMPEG: Cannot use next picture in error concealment Line 1319: 00:00:18.596 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1322: 00:00:18.642 7856 FFMPEG: AVC: nal size -285282562 Line 1324: 00:00:18.642 7856 FFMPEG: Cannot use next picture in error concealment Line 1326: 00:00:18.642 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1329: 00:00:18.689 6516 FFMPEG: AVC: nal size -17891602 Line 1331: 00:00:18.689 6516 FFMPEG: Cannot use next picture in error concealment Line 1333: 00:00:18.689 6516 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1336: 00:00:18.720 7844 FFMPEG: AVC: nal size -17891602 Line 1338: 00:00:18.736 7844 FFMPEG: Cannot use next picture in error concealment Line 1340: 00:00:18.736 7844 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1343: 00:00:18.767 7856 FFMPEG: AVC: nal size -17891602 Line 1345: 00:00:18.767 7856 FFMPEG: Cannot use next picture in error concealment Line 1347: 00:00:18.767 7856 FFMPEG: concealing 552 DC, 552 AC, 552 MV errors in P frame Line 1350: 00:00:18.814 6516 FFMPEG: AVC: nal size -17891602 Line 1352: 00:00:18.814 6516 FFMPEG: Cannot use next picture in error concealment -------------- next part -------------- An HTML attachment was scrubbed... URL: From j.lugagne at spikenet-technology.com Thu Aug 22 10:44:26 2013 From: j.lugagne at spikenet-technology.com (Jeremy Lugagne) Date: Thu, 22 Aug 2013 10:44:26 +0200 Subject: [Libav-user] Close a RTSP stream Message-ID: <201308221044245478368@spikenet-technology.com> Hello all, I'm using the libav to grab images from a network camera with the rtsp protocol but I have an issue. When I release the stream, my camera don't release resources for the sessions, so when I do 4 tests with my applications I must restart the camera because I have no more slot. This is how I open the stream : AVFormatContext *pFormatCtx; AVCodecContext* vCodecCtxp; AVPacket packet; AVFrame *pFrame; AVFrame *pFrameRGB = NULL; int numBytes; AVDictionary *optionsDict = NULL; struct SwsContext *sws_ctx = NULL; uint8_t *buffer = NULL; AVCodec *videoCodec; av_register_all(); avformat_network_init(); pFormatCtx = avformat_alloc_context(); if(avformat_open_input(&pFormatCtx, qPrintable(url), NULL, 0)!=0) return false; // Couldn't open file videoStream=-1; if(avformat_find_stream_info(pFormatCtx,NULL) < 0){ return false; } for(int i=0; inb_streams; i++) { if(pFormatCtx->streams[i]->codec->codec_type==AVMEDIA_TYPE_VIDEO && videoStream < 0) { videoStream=i; } } vCodecCtxp = pFormatCtx->streams[videoStream]->codec; // Allocate an AVFrame structure pFrameRGB = avcodec_alloc_frame(); pFrame = avcodec_alloc_frame(); if(pFrameRGB==NULL) return ; // Determine required buffer size and allocate buffer numBytes=avpicture_get_size(PIX_FMT_RGB24, vCodecCtxp->width, vCodecCtxp->height); buffer=(uint8_t *)av_malloc(numBytes*sizeof(uint8_t)); sws_ctx = sws_getContext(vCodecCtxp->width, vCodecCtxp->height, vCodecCtxp->pix_fmt, vCodecCtxp->width, vCodecCtxp->height, PIX_FMT_RGB24, SWS_BILINEAR, NULL, NULL, NULL ); // Assign appropriate parts of buffer to image planes in pFrameRGB. Note that pFrameRGB is an AVFrame, but AVFrame is a superset of AVPicture avpicture_fill((AVPicture *)pFrameRGB, buffer, PIX_FMT_RGB24, vCodecCtxp->width, vCodecCtxp->height); // Assign appropriate parts of buffer to image planes in pFrameRGB. Note that pFrameRGB is an AVFrame, but AVFrame is a superset of AVPicture int res = avpicture_fill((AVPicture *)pFrameRGB, buffer, PIX_FMT_RGB24, vCodecCtxp->width, vCodecCtxp->height); videoCodec=avcodec_find_decoder(vCodecCtxp->codec_id); avcodec_open2(vCodecCtxp, videoCodec, 0); av_read_play(pFormatCtx); And how I close it : av_free(pFrameRGB); av_free(buffer); av_free(pFrame); sws_freeContext(sws_ctx); avformat_close_input(&pFormatCtx); Do i forgetting something to close properly my stream ? Because when I watch what messages are sent to the camera I see the TEARDOWN message. Thanks in advance, Jeremy L. -------------- next part -------------- An HTML attachment was scrubbed... URL: From er.anshul.maheshwari at gmail.com Fri Aug 23 07:15:57 2013 From: er.anshul.maheshwari at gmail.com (Anshul) Date: Fri, 23 Aug 2013 10:45:57 +0530 Subject: [Libav-user] muxing h264/aac stream In-Reply-To: References: Message-ID: <5216F00D.8060007@gmail.com> On 08/22/2013 06:21 PM, Nisar Ahmed wrote: > Coming back to this issue, I have tested 2 scenarios > > a. I am simply setting pts to the timestamp received from encoder and > dts to 0 but the resulting file is showing very large frame rate value. > > b. Setting pts to the timestamp received from encoder but this time > setting dts with an increment of 1001 starting from -1001 (2002/-1001, > 0/0, 1001/1001, 5005/2002, 3003/3003). The framerate is correct this > time but the quicktime player displays a white frame at the start of > the movie. I investigated this issue further by using libav demuxer > sample and the pts/dts have been changed from what I set and > start_time is also not 0. VLC plays fine but I also want Quicktime > player to play the file normally as well. > > The movies created by the software which ships with he encoder shows > correct frame rate and start time of 0, also the pts/dts investigated > with the demuxing sample are in the same sequence as described in the > second scenario. > > I really need to understand why my pts/dts are changed by the muxer to > different values, may be it is trying to guess correct values based on > the inputs I provided. Which inputs matter in this kind of scenarios > and how they relate to each other? > > Thanks in advance > Nisar > > > On Sat, Aug 17, 2013 at 11:05 AM, Nisar Ahmed > wrote: > > Thanks for your answer, when I set timestamp of decoder, the frame > rate jumps up to a very large value > > pts/dts = (2002/0, 0/0, 1001/0, 5005/0, 3003/0...) > > am I setting the time_base to correct values 1001/30000 and > pkt.duration = 1001? the timescale of the timestamp is also 30000 > > > On Sat, Aug 17, 2013 at 2:10 AM, Anshul maheshwari > > wrote: > > - > > > On Aug 16, 2013 7:30 PM, "Nisar Ahmed" > wrote: > > > > I am muxing h264/aac stream to mp4 coming from an encoder > and having issues syncing audio and video streams. > > > > I suspect that the problem is with PTS and DTS but I am not > sure what values should i set to properly sync both streams. > > > > I have set the time_base of video stream's AVCodecContext to > 1001/30000 and each AVPacket gets a duration of 1001 > > > > I am recieving time stamps from the encoder with each NAL > packet which is set as PTS of the AVPacket. the sequence of > PTS/DTS I set is (2002/0, 0/1001, 1001/2002, 5005/3003, > 3003/4004...) > > > > Audio stream AVCodecContext sample rate is 48000 and PTS/DTS > are simply multiples of 1024 starting from 0 and AVPacket > duration is 1024. > > > > The output movie 's frame rate is 20fps when it should be > 29.97fps as it is ntsc. > > > > Please tell me how to debug this problem and what are the > guidelines of creating pts/dts for both video and audio in my case > > > > _______________________________________________ > > Libav-user mailing list > > Libav-user at ffmpeg.org > > http://ffmpeg.org/mailman/listinfo/libav-user > > > Hi naseer > > If you are getting timestamp with encoder, i would suggest > "dont try to manuplate that" you may set that same timestamp > as presentation timestamp (pts) if your video is realtime then > try not to generate B type video frame hence no need to set dts. > Whatever clock is set by encoder try generating the pts of > audio according to that. > > @enjoy > Anshul > > > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user > > > > > > _______________________________________________ > Libav-user mailing list > Libav-user at ffmpeg.org > http://ffmpeg.org/mailman/listinfo/libav-user please don't top post over here, >I really need to understand why my pts/dts are changed by the muxer to different values, may be it is trying to guess correct values based on the inputs I provided. Which >inputs matter in this kind of scenarios and how they relate to each other? Muxer does not change the pts or dts if you have provided by your own, may be you are unable to set pts, dts in your muxer. please refer below code, it is not kind of tutorial but extract needed part. Note: your a part wont work because your h264 elementary stream contain b frame, where dts is important part. and your b part wont work, there might be simple reason for that it does not calculate start time properly, so when it is 0 as with your software then it work. Below is very badly written code, but its work :) #include #include #include #include #include #include #include #define MAX_STREAM 2 #define BUFF_SIZE ( 1920 *1080 ) #define STREAM_DURATION ( 200.0 ) #define STREAM_FRAME_RATE ( 25 ) #define AUDIO_BITRATE ( 64000 ) #define AUDIO_CHANNEL ( 2 ) #define FRAME_SIZE ( 1024 ) #define VIDEO_BITRATE ( 400000 ) #define VIDEO_WIDTH ( 1920 ) #define VIDEO_HEIGHT ( 1080 ) #define VIDEO_GOP ( 12 ) #define OUTPUT_CONTEXT_FORMAT "mpegts" #define HLS_NUM_CALLBACKS 2 typedef int (*callbackFn)(void *); struct mux_cfg { int no_of_stream; enum AVCodecID codec_id[MAX_STREAM]; int audio_sample_rate; int video_frame_rate; AVStream *st[MAX_STREAM]; AVFormatContext *oc; unsigned char *obuffer; //user specific buffer unsigned char uobuffer[BUFF_SIZE]; int uosize; int64_t uopts; int pts_generator; }; enum MediaType { VIDEO, AUDIO }; struct mediaBuffer{ int size; unsigned char *data ; enum MediaType mtype; int64_t pts; int64_t dts; }; int init(char *xml); int start(void); int get_buffer(void *pOutputData); int put_buffer(void *pInputData); int stop(void); int deinit(void); struct mux_cfg glb_cfg; static int mux_write(void* opaque, char*buf, int size); static int parse_xml(char*xml,struct mux_cfg *cfg); static int update_input_param(xmlNodePtr ParentNode, struct mux_cfg *cfg,xmlDocPtr doc); static int Muxer_init(struct mux_cfg *loc_cfg, char *xml); static int Muxer_get_buffer(struct mux_cfg *loc_cfg,void *pOutputData); static int Muxer_put_buffer(struct mux_cfg *loc_cfg,void *pInputData); static int Muxer_dinit(struct mux_cfg *loc_cfg); int init(char *xml) { return Muxer_init(&glb_cfg,xml); } int start(void) { return 0; } int getCallbackFns(int no, callbackFn* ptr) { int retValue = -1; if (no != HLS_NUM_CALLBACKS) { printf("Error: Invalid input callback number: %d\n", no); return retValue; } if (ptr) { ptr[0] = put_buffer; ptr[1] = get_buffer; retValue = 0; } else { printf("Error: Invalid pointer passed for callback!\n"); return retValue; } return retValue; } int get_buffer(void *pOutputData) { return Muxer_get_buffer(&glb_cfg,pOutputData); } int put_buffer(void *pInputData) { return Muxer_put_buffer(&glb_cfg,pInputData); } int stop(void) { return 0; } int deinit(void) { return Muxer_dinit(&glb_cfg); } static AVStream *add_stream(AVFormatContext *oc, AVCodec **codec, struct mux_cfg *loc_cfg) { AVCodecContext *c; AVStream *st; st = avformat_new_stream(oc, *codec); if (!st) { fprintf(stderr, "Could not allocate stream\n"); exit(1); } st->id = oc->nb_streams - 1; c = st->codec; switch ((*codec)->type) { case AVMEDIA_TYPE_AUDIO: c->codec_id = loc_cfg->codec_id[AUDIO]; c->sample_fmt = AV_SAMPLE_FMT_S16; c->bit_rate = AUDIO_BITRATE; c->sample_rate = loc_cfg->audio_sample_rate; c->channels = AUDIO_CHANNEL; c->frame_size = FRAME_SIZE; break; case AVMEDIA_TYPE_VIDEO: c->codec_id = loc_cfg->codec_id[VIDEO]; c->bit_rate = VIDEO_BITRATE; c->width = VIDEO_WIDTH; c->height = VIDEO_HEIGHT; c->time_base.den = loc_cfg->video_frame_rate; c->time_base.num = 1; c->gop_size = VIDEO_GOP; /* emit one intra frame every twelve frames at most */ c->pix_fmt = AV_PIX_FMT_YUV420P; break; default: break; } return st; } static int Muxer_init(struct mux_cfg *loc_cfg, char *xml) { int i = 0; int ret = 0; AVCodec *codec[MAX_STREAM]; memset(loc_cfg, 0, sizeof(*loc_cfg)); /* Initialize libavcodec, and register all codecs and formats. */ av_register_all(); parse_xml(xml,loc_cfg); /* allocate the output media context */ avformat_alloc_output_context2(&loc_cfg->oc, NULL,OUTPUT_CONTEXT_FORMAT, NULL ); if (!loc_cfg->oc) { fprintf(stderr,"unable to allocate allocate context\n"); } loc_cfg->obuffer = malloc(BUFF_SIZE); loc_cfg->oc->pb = avio_alloc_context(loc_cfg->obuffer, BUFF_SIZE, AVIO_FLAG_WRITE, (void*) loc_cfg,NULL, (void*) mux_write, NULL ); for (i = 0; i < loc_cfg->no_of_stream; i++) { codec[i] = avcodec_find_encoder(loc_cfg->codec_id[i]); if (!(codec[i])) { fprintf(stderr, "Could not find encoder for '%s'\n", avcodec_get_name(loc_cfg->codec_id[i])); return -1; } loc_cfg->st[i] = add_stream(loc_cfg->oc, &codec[i], loc_cfg); } ret = avformat_write_header(loc_cfg->oc, NULL ); if (ret < 0) { fprintf(stderr, "Error occurred when opening output file: %s\n", av_err2str(ret)); return 1; } return 0; } static int Muxer_get_buffer(struct mux_cfg *loc_cfg,void *pOutputData) { struct mediaBuffer *buf = (void*) pOutputData; if(!loc_cfg) { errno = EINVAL; return -1; } if(loc_cfg->pts_generator) { buf->pts = loc_cfg->uopts; buf->dts = 0; } else { buf->pts = 0; buf->dts = 0; } if (loc_cfg->uosize == 0) { return 0; } buf->data = loc_cfg->uobuffer; buf->size = loc_cfg->uosize; loc_cfg->uosize = 0; return buf->size; } static int Muxer_put_buffer(struct mux_cfg *loc_cfg,void *pInputData) { struct mediaBuffer *buf = (void*) pInputData; int ret; AVPacket pkt; av_init_packet(&pkt); if(!loc_cfg) return -1; if(!loc_cfg->pts_generator) { pkt.pts = buf->pts; pkt.dts = buf->dts; } else { // pkt.pts = 0; // pkt.dts = 0; } pkt.data = buf->data; pkt.size = buf->size; pkt.stream_index = buf->mtype; ret = av_interleaved_write_frame(loc_cfg->oc, &pkt); if (ret < 0) { fprintf(stderr, "av_interleaved_write_frame : %s\n", av_err2str(ret)); } loc_cfg->uopts = pkt.pts; return ret; } static int mux_write(void* opaque, char*buf, int size) { struct mux_cfg *loc_cfg = opaque; memcpy(loc_cfg->uobuffer + loc_cfg->uosize, buf, size); loc_cfg->uosize += size; return 0; } int Muxer_dinit(struct mux_cfg *loc_cfg) { int i = 0; av_write_trailer(loc_cfg->oc); for(i = 0;i< loc_cfg->no_of_stream ;i++) { avcodec_close(loc_cfg->st[i]->codec); } av_free(loc_cfg->oc->pb); /* free the stream */ avformat_free_context(loc_cfg->oc); return 0; } static int parse_xml(char*xml,struct mux_cfg *cfg) { int ret = 0; xmlDocPtr doc; xmlNodePtr nl1; if(!xml || !cfg) { ret= -1; return ret; } doc = xmlParseFile(xml); if (doc == NULL) { ret= -1; return ret; } for (nl1 = doc->children; nl1 != NULL; nl1 = nl1->next) { ret = xmlStrcmp(nl1->name, (const xmlChar *) "INPUT"); if (ret == 0) { update_input_param(nl1,cfg,doc); } } xmlFreeDoc(doc); return ret; } static int update_input_param(xmlNodePtr ParentNode, struct mux_cfg *cfg,xmlDocPtr doc) { xmlNodePtr nl = ParentNode->children; char *pXmlGetString = NULL; int ret = 0; for (; nl != NULL; nl = nl->next) { ret = xmlStrcmp(nl->name, (const xmlChar *) "no_of_elem_stream"); if (ret == 0) { pXmlGetString = (char *) xmlNodeListGetString(doc, nl->xmlChildrenNode, 1); sscanf(pXmlGetString, "%d", &cfg->no_of_stream); xmlFree(pXmlGetString); } ret = xmlStrcmp(nl->name, (const xmlChar *) "audio_codec"); if (ret == 0) { pXmlGetString = (char *) xmlNodeListGetString(doc, nl->xmlChildrenNode, 1); if(!strcmp(pXmlGetString,"aac")) { cfg->codec_id[AUDIO] = AV_CODEC_ID_AAC; } xmlFree(pXmlGetString); } ret = xmlStrcmp(nl->name, (const xmlChar *) "video_codec"); if (ret == 0) { pXmlGetString = (char *) xmlNodeListGetString(doc, nl->xmlChildrenNode, 1); if(!strcmp(pXmlGetString,"h264")) { cfg->codec_id[VIDEO] = AV_CODEC_ID_H264; } xmlFree(pXmlGetString); } ret = xmlStrcmp(nl->name, (const xmlChar *) "audio_sample_rate"); if (ret == 0) { pXmlGetString = (char *) xmlNodeListGetString(doc, nl->xmlChildrenNode, 1); sscanf(pXmlGetString, "%d", &cfg->audio_sample_rate); xmlFree(pXmlGetString); } ret = xmlStrcmp(nl->name, (const xmlChar *) "video_frame_rate"); if (ret == 0) { pXmlGetString = (char *) xmlNodeListGetString(doc, nl->xmlChildrenNode, 1); sscanf(pXmlGetString, "%d", &cfg->video_frame_rate); xmlFree(pXmlGetString); } ret = xmlStrcmp(nl->name, (const xmlChar *) "pts_generator"); if (ret == 0) { pXmlGetString = (char *) xmlNodeListGetString(doc, nl->xmlChildrenNode, 1); if(!strcmp(pXmlGetString,"TRUE") || !strcmp(pXmlGetString,"true")) { cfg->pts_generator = 1; } xmlFree(pXmlGetString); } } return ret; } -------------- next part -------------- An HTML attachment was scrubbed... URL: From praks411 at gmail.com Fri Aug 23 14:56:27 2013 From: praks411 at gmail.com (Pradeep Karosiya) Date: Fri, 23 Aug 2013 05:56:27 -0700 (PDT) Subject: [Libav-user] Frame decoding and sw_scale timings for HD video Message-ID: <1377262587420-4658429.post@n4.nabble.com> Hi, I'm working on application which uses both ffmpeg and ffms (wrapper on ffmpeg) for decoding video file. The decoding audio and video is then played on user interface. For low resolution video till 640x360p both audio and video works fine and frame rate is maintained as per source file. However when video frame size increases 1280x720p, I'm not able to achieve desire frame rate and since audio is synchronized to video, audio quality is decreasing which lots of breaks. After analyzing the timings of critical function in my filter chain I found that, though av_read_frame and avcodec_decode_video2 takes almost same time for both 640x360 and 1280x720, there is considerable difference for sws_scale() function. Please someone suggest is there a way to reduce computation time of sws_scale. Audio decoding is taking constant time for both 640x360p and 1280x720p video. Though I'm working to further reduce its timing. Also if someone has some other ideas on how to reduce overall time, to achieve desire frame rate without compromising on audio quality please let me know. Thanks and Regards, Pradeep -- View this message in context: http://libav-users.943685.n4.nabble.com/Frame-decoding-and-sw-scale-timings-for-HD-video-tp4658429.html Sent from the libav-users mailing list archive at Nabble.com. From donmoir at comcast.net Fri Aug 23 23:49:14 2013 From: donmoir at comcast.net (Don Moir) Date: Fri, 23 Aug 2013 17:49:14 -0400 Subject: [Libav-user] Frame decoding and sw_scale timings for HD video References: <1377262587420-4658429.post@n4.nabble.com> Message-ID: <6080936DA4E042AF91DF1F3933BBBEFD@MANLAP> > Hi, > > I'm working on application which uses both ffmpeg and ffms (wrapper on > ffmpeg) for decoding video file. > The decoding audio and video is then played on user interface. > For low resolution video till 640x360p both audio and video works fine and > frame rate is maintained as per source file. > However when video frame size increases 1280x720p, I'm not able to achieve > desire frame rate and since audio is synchronized to video, audio quality is > decreasing which lots of breaks. > After analyzing the timings of critical function in my filter chain I found > that, though av_read_frame and avcodec_decode_video2 takes almost same time > for both 640x360 and 1280x720, there is considerable difference for > sws_scale() function. > Please someone suggest is there a way to reduce computation time of > sws_scale. > Audio decoding is taking constant time for both 640x360p and 1280x720p > video. Though I'm working to further reduce its timing. > > Also if someone has some other ideas on how to reduce overall time, to > achieve desire frame rate without compromising on audio quality please let > me know. What image system are you using for the final display ? What is the PixFormat of the video ? You should decode and output audio in separate thread. In case video decoding is held up, this will allow audio to sound fine. Beyond this you may need to do frame dropping. Most will implement this by not displaying a frame. This generally does not work since the bottle neck may be in decoding, etc. Other forms of frame dropping get a bit tricky and you need to be careful. From alexcohn at netvision.net.il Sat Aug 24 00:12:03 2013 From: alexcohn at netvision.net.il (Alex Cohn) Date: Sat, 24 Aug 2013 01:12:03 +0300 Subject: [Libav-user] Frame decoding and sw_scale timings for HD video In-Reply-To: <1377262587420-4658429.post@n4.nabble.com> References: <1377262587420-4658429.post@n4.nabble.com> Message-ID: On Aug 23, 2013 5:18 PM, "Pradeep Karosiya" wrote: > > Hi, > > I'm working on application which uses both ffmpeg and ffms (wrapper on > ffmpeg) for decoding video file. > The decoding audio and video is then played on user interface. > For low resolution video till 640x360p both audio and video works fine and > frame rate is maintained as per source file. > However when video frame size increases 1280x720p, I'm not able to achieve > desire frame rate and since audio is synchronized to video, audio quality is > decreasing which lots of breaks. > After analyzing the timings of critical function in my filter chain I found > that, though av_read_frame and avcodec_decode_video2 takes almost same time > for both 640x360 and 1280x720, there is considerable difference for > sws_scale() function. > Please someone suggest is there a way to reduce computation time of > sws_scale. > Audio decoding is taking constant time for both 640x360p and 1280x720p > video. Though I'm working to further reduce its timing. > > Also if someone has some other ideas on how to reduce overall time, to > achieve desire frame rate without compromising on audio quality please let > me know. > > Thanks and Regards, > Pradeep I would suggest to use audio as the yardstick and synchronize video playback accordingly, not the other way round. This may sometimes lead to decision to drop a video frame to compensate for delay caused by CPU throughput. You can skip sws_scale for frames that will not be displayed. It's possible that reducing the frame rendering rate from 30 to 25 FPS will allow to keep video stream at pace with audio, with insignificant effect on himan percrption. As for optimizations, please describe what hardware you are using, this may have a serious influence on the expected max performance. BR Alex -------------- next part -------------- An HTML attachment was scrubbed... URL: From cehoyos at ag.or.at Sat Aug 24 16:32:38 2013 From: cehoyos at ag.or.at (Carl Eugen Hoyos) Date: Sat, 24 Aug 2013 14:32:38 +0000 (UTC) Subject: [Libav-user] =?utf-8?q?Frame_decoding_and_sw=5Fscale_timings_for_?= =?utf-8?q?HD_video?= References: <1377262587420-4658429.post@n4.nabble.com> Message-ID: Alex Cohn writes: > As for optimizations, please describe what hardware > you are using,? this may have a serious influence > on the expected max performance. This is not wrong, even more interesting imo would be the format of the video (and audio) the OP is trying to decode faster. Carl Eugen From minodev38 at gmail.com Sun Aug 25 15:48:54 2013 From: minodev38 at gmail.com (MinoDev) Date: Sun, 25 Aug 2013 15:48:54 +0200 Subject: [Libav-user] Muxing/Demuxing h264 in mp4 container Message-ID: <521A0B46.1010408@gmail.com> Hi, I'm new in ffmpeg and I'm trying to demux then mux a dummy mp4 video. The video is encoded in h264 and the audio in aac. I started with the example in the doc to demux. It works fine but I can't read it because my h264 file hasn't any annex b headers. So I tried to use a h264_mp4toannex bsf filter without any success. I didn't understand how to implement this filter in the demuxing.c code example. I'am sorry for the silly question but I just need some clarification about my attempts. I also would like to know if it's possible to directly mux the h264 video and aac audio without applying a mp4toannexb filter to a mp4 container. In command line I use this working cmd to test the demux : ffmpeg -i file.mp4 -vcodec copy -vbsf h264_mp4toannexb -an -f h264 test.h264 From praks411 at gmail.com Mon Aug 26 11:01:43 2013 From: praks411 at gmail.com (Pradeep Karosiya) Date: Mon, 26 Aug 2013 02:01:43 -0700 (PDT) Subject: [Libav-user] Frame decoding and sw_scale timings for HD video In-Reply-To: References: <1377262587420-4658429.post@n4.nabble.com> Message-ID: <1377507703709-4658434.post@n4.nabble.com> Hi All, Thanks for all your suggestion. I'm considering using audio to synchronizing video instead of other way round. ?Though this may lead to frame dropping it is fine for me as long as audio sound good during play. For final display frames are converted into Iplimage image pointer and then displayed on wxWidgets UI framework. I'm running on windows 7 64bit acer notebook, intel core i5 processor 8GB ram with nvidia graphic of 2gb memory. Thanks and Regards, Pradeep -- View this message in context: http://libav-users.943685.n4.nabble.com/Frame-decoding-and-sw-scale-timings-for-HD-video-tp4658429p4658434.html Sent from the libav-users mailing list archive at Nabble.com. From soho123.2012 at gmail.com Mon Aug 26 17:15:36 2013 From: soho123.2012 at gmail.com (Huang Soho) Date: Mon, 26 Aug 2013 23:15:36 +0800 Subject: [Libav-user] ffserver occupy a lot of CPU time while streaming Message-ID: Hi All, I use ffmpeg+ ffserver for a stream server. I use "top" to check CPU usage when I use ffserver to stream output. I can see ffserver occpuy about 67% and ffmpeg occupy about 30% it is almost 100% when I stream out does anyone have idea? is there any patch for that? I use the head master vertsion -------------- next part -------------- An HTML attachment was scrubbed... URL: From praks411 at gmail.com Mon Aug 26 18:00:03 2013 From: praks411 at gmail.com (Pradeep Karosiya) Date: Mon, 26 Aug 2013 09:00:03 -0700 (PDT) Subject: [Libav-user] Frame decoding and sw_scale timings for HD video In-Reply-To: <1377507703709-4658434.post@n4.nabble.com> References: <1377262587420-4658429.post@n4.nabble.com> <1377507703709-4658434.post@n4.nabble.com> Message-ID: <1377532803712-4658436.post@n4.nabble.com> Hi, One of the things which I couldn't mention in my previous mail was that in my application. I've two video decoder one is based on ffms2 (a wrapper over ffmpeg/libav) and the other is based on ffmpeg. Initially I had just ffmpeg based video loader but since I was facing issues with seeking I shifted to ffms but ffmpeg is also. I can chose between the two whenever I want to play a video file. The problem which I have describe is specifically with ffms2 use of sws_scale function. I've modified the code of ffms2 so that code for both ffms and ffmpeg base decoder are same for playing video. After analysing the timings of two decoder, I found that sws_scale used in ffms is taking 15milisec whereas ffmpeg use of sws_scale take 2milisec, all the parameters in both cases are same for same video file without playing any audio. (audio decoding is taking constant irrespective of frame size can be enabled or disabled) The only difference which I think is that ffms2 is loading as dll whereas in case of ffmpeg it is statically. But I think this shouldn't matter. Please share your thoughts. Thanks and Regards, Pradeep -- View this message in context: http://libav-users.943685.n4.nabble.com/Frame-decoding-and-sw-scale-timings-for-HD-video-tp4658429p4658436.html Sent from the libav-users mailing list archive at Nabble.com. From lovell.joshyyy at gmail.com Mon Aug 26 18:26:20 2013 From: lovell.joshyyy at gmail.com (Josh Branning) Date: Mon, 26 Aug 2013 17:26:20 +0100 Subject: [Libav-user] RTP example? Message-ID: <521B81AC.9050909@gmail.com> Hello, I can't figure out how to use RTP in libavformat. I have taken a look at ffserver.c, whose includes are internal to ffmpeg and also this guide: http://plagatux.es/2011/07/using-libav-library/ , which appears to be old (I'm getting a lot of deprecated warnings). So I was basically wondering if there are any good examples of sending, and receiving, over RTP. Or if anyone has any code they would like to share. Any help with this much appreciated, Josh. From samitha.wijedasa at yahoo.com Tue Aug 27 16:23:58 2013 From: samitha.wijedasa at yahoo.com (Samitha Wijedasa) Date: Tue, 27 Aug 2013 07:23:58 -0700 (PDT) Subject: [Libav-user] extracting the subtitle stream to a file using the C API Message-ID: <1377613438.88940.YahooMailNeo@web163605.mail.gq1.yahoo.com> Hi, Is there a example on extracting the subtitle stream to a file using the C API function of ffmpeg libraries. Currently we have examples for video and audo (ex: filtering_video.c) -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrey2067 at gmail.com Wed Aug 28 10:25:49 2013 From: andrey2067 at gmail.com (Andrey Mochenov) Date: Wed, 28 Aug 2013 11:25:49 +0300 Subject: [Libav-user] AAC muxing into two different files in the same loop: The 2nd file is corrupted. Message-ID: Hi everyone, We are using FFmpeg libraries git-ee94362 libavformat v55.2.100. Our purpose is to mux synthetic video and audio-file audio to 2 different files (in the same loop) with the the same format and parameters. With MP3 input, both M3U8 outputs are OK: Output file #0: Total number of frames is: video = 229, audio = 347. Output file #1: Total number of frames is: video = 229, audio = 347. But with AAC input, the 1st M3U8 output is OK, whereas the 2nd one - is not: Output file #0: Total number of frames is: video = 403, audio = 690. Output file #1: Total number of frames is: video = 3, audio = 690. It is exactly the same code in the main loop. We do not use the "aac_adtstoasc" filter in case of M3U output. By the way, the problem exist both with and without the filter, since in case of MP4 output, the 1st output file is OK, whereas the 2nd one - is not, - as well. Moreover, I have implemented the main loop as Windows threads, separated for every output file. The problem remains! It seems that video PTS begins to be corrupted (wrong-calculated) for the 2nd (3rd, etc.) output file. Our question: If somebody is known about such a problem? If yes, what can be a solution/workaround? Thank you. -------------- next part -------------- An HTML attachment was scrubbed... URL: From kristen.schat at movares.nl Thu Aug 29 09:31:34 2013 From: kristen.schat at movares.nl (Schat K (Kristen)) Date: Thu, 29 Aug 2013 09:31:34 +0200 Subject: [Libav-user] rtsp_flags listen does that mean ffmpeg can run as server? Message-ID: <142A21F16BFFD54783F64D419C94CD360109DE149A5B@NLUTRVSE01.nl.hr.group> Can libav run as it's own rtsp server and at the same time stream frames? Cmd line -rtsp_flags listen is that the correct way to go about it? Regards, Kristen ________________________________ Deze e-mail en de inhoud daarvan is vertrouwelijk. Indien dit bericht niet voor u bestemd is, verzoeken wij u deze e-mail direct aan ons te retourneren en daarna te vernietigen. In dit geval is het ook niet toegestaan deze e-mail en de inhoud daarvan te gebruiken, kopieren of openbaar te maken aan derden. Onze onderneming sluit elke aansprakelijkheid uit in verband met het niet juist, onvolledig of niet tijdig overkomen van de informatie in deze e-mail. Movares Nederland B.V. / Utrecht / Kamer van Koophandel 30124367. This e-mail and its contents are confidential and may be legally privileged. If this e-mail is not intended for you, please contact us immediately by reply e-mail and destroy the e-mail. In this case, please do not use, copy or disclose the e-mail and its contents to anyone. Our company is liable neither for the proper and complete transmission of the information in this e-mail nor for any delay in its receipt. Movares Nederland B.V. / Utrecht / Chamber of Commerce 30124367. -------------- next part -------------- An HTML attachment was scrubbed... URL: