Hi. I use libavcodec/libavformat in a 3D application to decode videos and apply them as textures on surfaces. I encapsulated the tutorial code by Martin Boehme (http://www.inb.uni-luebeck.de/~boehme/using_libavcodec.html) into a C++ class to get rid of all the global variables (AVCodec*, AVCodecContext* etc. are now member variables of this class) and update the texture in an additional thread. Basically this works fine. The problems begin, if I try to decode more than one stream at the same time: Instead of the video, there's only flickering - the same flickering on both surfaces. What goes wrong here? I don't share any data between the objects (no static members). Any ideas what's going wrong here and how to solve this? This happens on a Debian (sid/unstable) with libav[codec|format]cvs-dev packages in version 3:20051016-0.1. Thanks and regards, Dominik