View Single Post
Old 6th May 2013, 19:53   #3  |  Link
JanWillem32
Registered User
 
JanWillem32's Avatar
 
Join Date: Oct 2010
Location: The Netherlands
Posts: 1,083
What you call 'level detection' is possible, but in general, the information is not available.
See the DirectShow section of "Extended Color Information": http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx .
The dwControlFlags item is generally empty. Without it, the renderer can do 2 things;
1. -Try to navigate the graph, query the stream that is being played, and see if the information can be read from that. This is really difficult. For starters, the search through the graph is a bothersome recursion over the base filter point, back to the original stream. Then to read the stream you need support all the semantics required to interpret all available types of streams. Implementing the functionality of a full source filter inside the video renderer is impractical.
2. -Based on assumptions of the typical video input data you will get, make a guess. This generally means that RGB inputs are assumed to be full-range, and Y'CbCr types to be the typical type of limited range. There are more variables that are generally guessed by the renderer, by the way.
__________________
development folder, containing MPC-HC experimental tester builds, pixel shaders and more: http://www.mediafire.com/?xwsoo403c53hv
JanWillem32 is offline   Reply With Quote