Utility function to do pull-based typefinding.
Unlike type_find_helper however, this function will use the specified
function func
to obtain the data needed by the typefind functions, rather than operating on a given source pad. This is
useful mostly for elements like tag demuxers which strip off data at the beginning and/or end of a file and want to typefind the stripped
data stream before adding their own source pad (the specified callback can then call the upstream peer pad with offsets adjusted for the
tag size, for example).
When extension
is not null
, this function will first try the typefind functions for the given extension, which
might speed up the typefinding in many cases.
obj |
A Object that will be passed as first argument to |
parent |
the parent of |
func |
A generic TypeFindHelperGetRangeFunction that will be used to access data at random offsets when doing the typefinding |
size |
The length in bytes |
extension |
extension of the media, or |
caps |
returned caps |
prob |
location to store the probability of the found caps, or |
the last FlowReturn from pulling a buffer or OK if typefinding was successful. |