Есть ли причина, по которой размер BufferLen в ISampleGrabberCB.BufferCB с неустановленным подтипом мультимедиа должен различаться при вызове из разных языков программирования?
У меня есть приложение C# и приложение VB.NET, которые максимально быстро запускают график с выключенными часами и без установленного подтипа мультимедиа в SampleGrabber. Код идентичен. В приложении C# размер BufferLen меняется каждый раз, когда образец проходит через граббер (как и следовало ожидать). В приложении VB.NET BufferLen является постоянным фиксированным значением.
Например, при просмотре видео с разрешением 1280 x 720 через график размер BufferLen в коде VB всегда составляет 1 382 400 (что имеет смысл, поскольку выходной контакт видеодекодера показывает 12 -битный формат NV12). В коде C# размер BufferLen сильно варьируется между низкими и высокими значениями.
кто-нибудь знает, почему это произошло?