| Предыдущий | Следующий |
| MF_E_TIMELINECONTROLLER_NOT_ALLOWED | MF_E_MEDIA_EXTENSION_APPSERVICE_CONNECTION_FAILED |
MF_E_TIMELINECONTROLLER_CANNOT_ATTACH
Что означает MF_E_TIMELINECONTROLLER_CANNOT_ATTACH
MF_E_TIMELINECONTROLLER_CANNOT_ATTACH (0xC00DAFCA) — MediaTimelineController нельзя присоединить к MediaPlayer в его текущем состоянии.
Это ошибка именно этапа подключения контроллера. Сам контроллер может быть исправен, а источник — поддерживаться; отказ возникает потому, что другой механизм или уже сложившееся состояние проигрывателя несовместимы с переходом под управление общей временной шкалы.
Что проверить и как подтвердить исправление
В первую очередь проверьте MediaPlayer.CommandManager.IsEnabled. В документации Microsoft для синхронизации прямо указано: автоматический MediaPlaybackCommandManager нужно отключить до назначения TimelineController; иначе присоединение блокируется текущим состоянием объекта.
Также зафиксируйте момент назначения TimelineController относительно создания проигрывателя, установки Source, начала воспроизведения и освобождения объекта. Надёжнее формировать эту связь в одном определённом этапе инициализации, а не присоединять контроллер к уже независимо работающему проигрывателю. Не путайте этот HRESULT с событием MediaTimelineController.Failed: последнее возникает уже после успешного создания общей временной шкалы. Исправление подтверждается успешным назначением того же контроллера тому же проигрывателю до запуска синхронизированного воспроизведения.
Документация для результата 0xC00DAFCA: Use MediaTimelineController to synchronize content · MediaPlayer.TimelineController · Microsoft synchronization sample.
Нужно найти другой код? Найти другой код состояния или ошибки.
