[Libav-user] AVDictionary options for playback

bsenftner at earthlink.net bsenftner at earthlink.net
Thu Jun 11 23:32:48 EEST 2020

I am seeking any information beyond the ffmpeg sources and the dranger
tutorial describing how to configure an AVDictionary for video playback.


I am just wrapping up a new version of an ffmpeg 4.2.3 LibAV based player
library optimized for computer vision applications. (Optimized for CV means
no audio or subtitle processing, ignoring each video frame's timing too,
just frames ASAP.) I've been the maintainer of this internal to my employer
library for 5 years now, yet my understanding of how to maintain optimum
performance each ffmpeg library version is a process of trial and error with
AVDictionary settings and lots of googling. 


FWIW, I've practically memorized all the libav posts on stackoverflow and
spend time reading this list's archives for gems. Yet, after years, my
understand is still fuzzy as hell. 


So I am seeking anyone's blog, github repo/wiki, or threaded social media
discussion where topics such as these are discussed:

*	Using AVDictionaries: discovering available options and their
*	Once a stream's codec is known, what are good options specific to
different codecs? 
*	How to achieve a minimal time to first frame when starting playback?
*	How to maintain minimal latency during playback? 


About a week ago a Jasper Taxbol asked this list about anyone having
knowledge about retaining information from a previous stream play so a new
play of that same stream can be achieved without probing the stream for (now
known) information. Jasper: did you learn anything on this front? 


In the hopes of sparking some type of discussion, I have made a Github repo
with a wiki. The wiki has the last 3 versions of this LibAV based player
lib's AVDictionary setup. The goal of these code fragments are minimal time
to first frame and minimal latency during playback. If you have any
information to add, or your own different AVDictionary code fragments, it
would be very appreciated if you could contribute to the wiki, or reply
here. I'll collect and compile them at that github wiki for others to learn
as well.




-Blake Senftner

Compiling code since '76.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://ffmpeg.org/pipermail/libav-user/attachments/20200611/68f1f384/attachment.html>

More information about the Libav-user mailing list