Привет,
Взял с MSDN код, который производит конвертацию видео из AVI в MP4 используя Media Foundation API. Все отлично работает на Windows 10, но при запуске на Windows 7 приложение уходит в бесконечный цикл. После дебага выяснил что проблема начинается после вызова IMFMediaSession::SetTopology(), который в свою очередь вызывает callback Invoke(IMFAsyncResult *pResult) метод и передает ему IMFMediaEvent который возвращает "-1072868846" из метода GetStatus(). Т.е. происходит ошибка при установке топологии. Но что с этим делать дальше пока не могу понять. Где посмотреть, что за ошибки этот метод возвращать в евентах может не нашел и соотвественно причину такого поведения в Windows 7.
Буду признателен, если кто чем поможет и направит на решение.
Идея кода взята отсюда:
https://msdn.microsoft.com/en-us/library/windows/desktop/ff819476(v=vs.85).aspx
А это мой cpp:
https://gist.github.com/anonymous/8d78059532a9a07913e2f8b836276d21
Компилировал в Visual Studio 2017.
Параметры у программы input.avi output.mp4 0 0.
Спасибо!