Assuming Microsoft hasn't cornered the market with their wonderful Win32 API implementation, what other libraries are out there that can read video (in particular, DV-AVI) files? If the monopoly has taken the ticket, can someone post a no-nonsense bit of code for C++ that simply puts the first frame of an AVI file in a "device context"?