<div dir="ltr"><div>Maybe something like this ?</div><div><br></div><div> for (int i = 0; i < input_context->nb_streams; i++) {</div><div>  AVStream *s = input_context->streams[i];</div><div>  AVCodecContext *cc = s->codec;</div><div>  avcodec_flush_buffers(cc);</div><div>}</div><div><br></div><div><br></div><div><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><br><a href="http://lives-video.com" target="_blank">http://lives-video.com</a><br><a href="https://www.openhub.net/accounts/salsaman" target="_blank">https://www.openhub.net/accounts/salsaman</a><br></div></div></div></div></div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Mar 27, 2020 at 1:08 AM Roger Pack <<a href="mailto:rogerdpack2@gmail.com">rogerdpack2@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">You'd probably have to drill into dshow.c and maybe add a method to it?<br>
<br>
On Thu, Nov 29, 2018 at 6:16 AM DDD ZZZ <<a href="mailto:mymail67-at-mail.ru@ffmpeg.org" target="_blank">mymail67-at-mail.ru@ffmpeg.org</a>> wrote:<br>
><br>
> Hi everybody!<br>
> Here's the part of c++ code that I'm using to access my webcam.<br>
><br>
> **********************************************************************<br>
> **********************************************************************<br>
><br>
> int Camera::Init(char* file_name,<br>
>                 char* device_name,<br>
>                 char* format,<br>
>                 char* resolution,<br>
>                 char* frame_rate,<br>
>                 char* pixel_format)<br>
> {<br>
>     av_log(NULL, AV_LOG_INFO, "---INIT STARTED---\n");<br>
>     avdevice_register_all();<br>
>     av_register_all();<br>
><br>
>     AVDictionary* properties_collection = NULL;<br>
>     av_dict_set(&properties_collection, "f", format, NULL);<br>
>     av_dict_set(&properties_collection, "video_size", resolution, NULL);<br>
>     av_dict_set(&properties_collection, "framerate", frame_rate, NULL);<br>
>     av_dict_set(&properties_collection, "pix_fmt", pixel_format, NULL);<br>
>     AVInputFormat *input_format = av_find_input_format("dshow");<br>
>     char command_line[256];<br>
>     sprintf(command_line, "video=%s", device_name);<br>
>     AVFormatContext *input_context = avformat_alloc_context();<br>
>     //input_context->flags |= AVFMT_FLAG_NOBUFFER;      //DOESN'T HELP<br>
>     //input_context->max_picture_buffer = 0;            //ERR<br>
><br>
>     int err_code = 0;<br>
>     err_code = avformat_open_input(&input_context,<br>
>                                     command_line,<br>
>                                     input_format,<br>
>                                     &properties_collection);<br>
><br>
> //////////////////////////////////////<br>
> //////////PROBLEM SECTION/////////////<br>
> //////////////////////////////////////<br>
>     int i = 0;<br>
>     while (i++ < 30)<br>
>     {<br>
>         Sleep(1000);<br>
>         //avformat_flush(input_context); //DOESN'T HELP<br>
>         //av_free(input_context); //ERR<br>
>     }<br>
> //////////////////////////////////////<br>
>     system("pause");<br>
>     return 0;<br>
> }<br>
><br>
> **********************************************************************<br>
> **********************************************************************<br>
><br>
> Right after "avformat_open_input()" it starts reading frames to some internal buffer without me even calling "av_read_frame()". After about 10 seconds it start's giving me error messages:<br>
><br>
> [dshow @ 0014ed40] real-time buffer [VirtualBox Webcam - FULL HD 1080P Webcam] [video input]<br>
> too full or near too full (62% of size: 3041280 [rtbufsize parameter])!<br>
> frame dropped!<br>
> ...<br>
> ...<br>
> ...<br>
> [dshow @ 0014ed40] real-time buffer [VirtualBox Webcam - FULL HD 1080P Webcam] [video input]<br>
> too full or near too full (100% of size: 3041280 [rtbufsize parameter])!<br>
> frame dropped!<br>
><br>
><br>
> Q: How to clear this buffer or avoid using it?<br>
><br>
> Thanks in advance.<br>
><br>
><br>
><br>
> P.S.Please pardon my english.<br>
><br>
> P.P.S.Have a good day.<br>
><br>
><br>
> _______________________________________________<br>
> Libav-user mailing list<br>
> <a href="mailto:Libav-user@ffmpeg.org" target="_blank">Libav-user@ffmpeg.org</a><br>
> <a href="http://ffmpeg.org/mailman/listinfo/libav-user" rel="noreferrer" target="_blank">http://ffmpeg.org/mailman/listinfo/libav-user</a><br>
><br>
> To unsubscribe, visit link above, or email<br>
> <a href="mailto:libav-user-request@ffmpeg.org" target="_blank">libav-user-request@ffmpeg.org</a> with subject "unsubscribe".<br>
_______________________________________________<br>
Libav-user mailing list<br>
<a href="mailto:Libav-user@ffmpeg.org" target="_blank">Libav-user@ffmpeg.org</a><br>
<a href="https://ffmpeg.org/mailman/listinfo/libav-user" rel="noreferrer" target="_blank">https://ffmpeg.org/mailman/listinfo/libav-user</a><br>
<br>
To unsubscribe, visit link above, or email<br>
<a href="mailto:libav-user-request@ffmpeg.org" target="_blank">libav-user-request@ffmpeg.org</a> with subject "unsubscribe".</blockquote></div>