diff options
Diffstat (limited to 'loader/dshow/allocator.c')
-rw-r--r-- | loader/dshow/allocator.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/loader/dshow/allocator.c b/loader/dshow/allocator.c index 3e2fc8c017..7eef9ada0f 100644 --- a/loader/dshow/allocator.c +++ b/loader/dshow/allocator.c @@ -146,8 +146,14 @@ static HRESULT STDCALL MemAllocator_SetProperties(IMemAllocator * This, return E_FAIL; *pActual = *pRequest; - //if (pActual->cbBuffer == 2) - // pActual->cbBuffer = 576; + /* + DirectShow DOCS ("Negotiating Allocators" chapter) says that allocator might not + honor the requested properties. Thus, since WMSP audio codecs requests bufer with two + bytes length for unknown reason, we should correct requested value. Otherwise above + codec don't want to load. + */ + if (pActual->cbBuffer == 2) + pActual->cbBuffer = 10240; //Enough for WMSP codec me->props = *pActual; |