У меня есть приложение DirectShow, написанное на Delphi 6. Я хочу уменьшить размер буфера рендерера с его текущего значения 500 мс до чего-то меньшего. Проблема в том, что его входной контакт не поддерживает IAMBufferNegotiation, что странно, поскольку средство рендеринга является наушником на моем телефоне VOIP, и ему, очевидно, потребуется меньший размер буфера, чтобы избежать неприятной задержки во время телефонных звонков.
Я попытался проверить петлю в Graph Edit, подключив фильтр захвата VOIP-телефонов (микрофон) к устройству визуализации (наушник). Я знаю, что размер буфера составляет 500 мс, потому что это то, что Graph Edit показывает для свойств рендерера. Тем не менее, когда я использую VOIP-телефон в Skype-звонке, задержка намного короче, примерно на 50-100 миллисекунд, как я и ожидал.
Таким образом, Skype знает, как изменить размер буфера рендерера по умолчанию. Как я могу сделать тот же трюк?