Поделиться через


Создание списка воспроизведения на устройстве

Пакет SDK для windows Media диспетчер устройств предоставляет приложениям MTP средства для создания списка воспроизведения на устройстве. Этот тип списка воспроизведения называется абстрактным списком воспроизведения, так как файл, созданный на устройстве, содержит не данные мультимедиа, а только метаданные, которые содержат ссылки на файлы мультимедиа в списке воспроизведения.

Другие абстрактные элементы, которые можно создать на устройстве, включают альбомы (по сути, списки воспроизведения с дополнительными свойствами, такими как обложка), контакты и сообщения.

Создание списка воспроизведения

  1. Получите интерфейс IWMDMDevice3 на целевое устройство.
  2. Вызовите метод IWMDMDevice3::GetProperty , чтобы получить свойство g_wszWMDMFormatsSupported.
  3. Если форматы списков воспроизведения не поддерживаются, запретите отправку списков воспроизведения на устройство и пропустите следующие действия. В противном случае выберите поддерживаемый устройством код формата, который наиболее точно соответствует предполагаемому типу объекта. Наиболее часто поддерживаются универсальные коды WMDM_FORMATCODE_ABSTRACTAUDIOVIDEOPLAYLIST и WMDM_FORMATCODE_ABSTRACTAUDIOLAYLIST форматов.
  4. Получите интерфейс IWMDMStorage3 для хранилища (корневого каталога или папки), в котором необходимо создать объект . Некоторые устройства лучше всего работают, если объект списка воспроизведения помещается в папку верхнего уровня с именем "Списки воспроизведения".
  5. Создайте пустой объект метаданных с помощью IWMDMStorage3::CreateEmptyMetadataObject.
  6. Используя интерфейс IWMDMMetaData , полученный на предыдущем шаге, вызовите IWMDMMetaData::AddItem , чтобы добавить выбранный код формата (из шага 3) в свойства метаданных хранилища.
  7. Получите интерфейс IWMDMStorageControl3 из интерфейса IWMDMStorage3 .
  8. Вызовите IWMDMStorageControl3::Insert3 , чтобы вставить новый файл списка воспроизведения в выбранное хранилище. Этот файл содержит метаданные, представленные интерфейсом IWMDMMetaData , созданным на шаге 5 и переданным в Insert3. Метод возвращает интерфейс IWMDMStorage для файла списка воспроизведения; вы можете запросить интерфейс IWMDMStorage4 .
  9. Вызовите IWMDMStorage4::SetReferences , чтобы создать ссылки на интерфейсы IWMDMStorage файлов мультимедиа в списке воспроизведения.

Пример кода см. в функции _OnCreatePlaylist в примере классического приложения.

Примечание

Предоставляемый корпорацией Майкрософт поставщик служб MTP позволяет приложению задавать ссылки в метаданных. Для реализации списков воспроизведения приложение должно взаимодействовать с устройством MTP или использовать настраиваемый поставщик служб, который может обрабатывать абстрактные объекты. Поставщик услуг CE обрабатывает объекты списков воспроизведения и альбомов.

 

Запись файлов на устройство