Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.133.151.199] |
|
Сообщ.
#1
,
|
|
|
Есть видео в файле. Надо это видео загрузить в буфер в памяти компа и из этого буфера воспроизводить.
Нашел решение для библиотеки Qt: \https://progi.pro/kak-chitat-videodannie-iz...e-pyqt5-9077614 Но надо для MFC, или чего то другого средствами Windows 10. Смотрел библиотеку VLC, но что пока не разобрался. Примеров для VC++ у нее не нашел. Может у кого есть примерчик, исходники или ссылка. Сейчас воспроизвожу из файла при помощи IMFPMediaPlayer. Может он может воспроизводить из памяти? |
Сообщ.
#2
,
|
|
|
Цитата a_n_y_a @ Сейчас воспроизвожу из файла при помощи IMFPMediaPlayer. Может он может воспроизводить из памяти? Увы, я не сильно ориентируюсь в использовании компонентов Виндовс. Но так, навскидку поискал, тебе возможно поможет IMFSourceResolver::CreateObjectFromByteStream method |
Сообщ.
#3
,
|
|
|
Цитата a_n_y_a @ Надо это видео загрузить в буфер в памяти компа и из этого буфера воспроизводить. Задача непростая. Нужен source-фильтр DShow, принимающий на вход такой источник. Например, https://docs.microsoft.com/en-us/windows/wi...c-filter-sample |
Сообщ.
#4
,
|
|
|
Цитата JoeUser @ Цитата a_n_y_a @ Сейчас воспроизвожу из файла при помощи IMFPMediaPlayer. Может он может воспроизводить из памяти? Увы, я не сильно ориентируюсь в использовании компонентов Виндовс. Но так, навскидку поискал, тебе возможно поможет IMFSourceResolver::CreateObjectFromByteStream method Вот функция: hr = pSourceResolver->CreateObjectFromByteStream( bs,///[in] IMFByteStream *pByteStream, NULL, ///[in] LPCWSTR pwszURL, MF_RESOLUTION_BYTESTREAM, ///[in] DWORD dwFlags, NULL, ///[in] IPropertyStore *pProps, &ObjectType, ///[out] MF_OBJECT_TYPE *pObjectType, &ppObject///[out] IUnknown **ppObject ); Второй параметр NULL, ///[in] LPCWSTR pwszURL, может содержать имя файла на диске. Если он NULL, используется первый параметр bs,///[in] IMFByteStream *pByteStream, но этот параметр должен быть создан перед вызовом функции. И при создании в параметрах надо указать имя входного файла: The following functions return IMFByteStream pointers for local files: MFBeginCreateFile MFCreateFile MFCreateTempFile Других вариантов нет. Спасибо за желание помочь. |