What DirectShow uses for data transfer between filters?
-
27-09-2019 - |
Question
What does DirectShow use for data transfer between filters? (pipes or what)
Solution
DirectShow handles data chunks in "media samples", which are simply buffers, implemented through the IMediaSample
COM interface. To allocate samples is used a COM-based memory manager, the IMemAllocator
interface, that should be implement by filters. To transfer samples is used the method IMemAllocator::GetBuffer
.
Fully documented there: Data Flow in the Filter Graph
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow