IMFPMediaPlayer::CreateMediaItemFromObject-Methode (mfplay.h)

Wichtig Veraltet. Diese API kann aus zukünftigen Versionen von Windows entfernt werden. Anwendungen sollten die Mediensitzung für die Wiedergabe verwenden.
 

Erstellt ein Medienelement aus einem -Objekt.

Syntax

HRESULT CreateMediaItemFromObject(
  [in]  IUnknown      *pIUnknownObj,
  [in]  BOOL          fSync,
  [in]  DWORD_PTR     dwUserData,
  [out] IMFPMediaItem **ppMediaItem
);

Parameter

[in] pIUnknownObj

Ein Zeiger auf die IUnknown-Schnittstelle des Objekts. Siehe Hinweise.

[in] fSync

Wenn TRUE, blockiert die Methode, bis sie abgeschlossen ist. Bei FALSE wird die -Methode nicht blockiert und asynchron abgeschlossen.

[in] dwUserData

Anwendungsdefinierter Wert, der im Medienelement gespeichert werden soll. Um diesen Wert aus dem Medienelement abzurufen, rufen Sie IMFPMediaItem::GetUserData auf.

[out] ppMediaItem

Empfängt einen Zeiger auf die IMFPMediaItem-Schnittstelle . Der Aufrufer muss die Schnittstelle freigeben. Wenn fSyncAUF TRUE festgelegt ist, muss dieser Parameter ein gültiger Zeiger sein. Wenn bSyncAUF FALSE festgelegt ist, muss dieser Parameter NULL sein.

Rückgabewert

Die Methode gibt ein HRESULT zurück. Mögliches Werte (aber nicht die Einzigen) sind die in der folgenden Tabelle.

Rückgabecode Beschreibung
S_OK
Die Methode wurde erfolgreich ausgeführt.
E_INVALIDARG
Ungültiges Argument.
MF_E_INVALIDREQUEST
Ungültige Anforderung. Dieser Fehler kann auftreten, wenn fSyncauf FALSE festgelegt ist und die Anwendung keine Rückrufschnittstelle bereitgestellt hat. Siehe Hinweise.
MF_E_SHUTDOWN
Die Shutdown-Methode des Objekts wurde aufgerufen.

Hinweise

Der pIUnknownObj-Parameter muss eine der folgenden Angaben angeben:

Mit dieser Methode wird das Medienelement nicht für die Wiedergabe in die Warteschlange gestellt. Um das Element für die Wiedergabe in die Warteschlange zu stellen, rufen Sie IMFPMediaPlayer::SetMediaItem auf.

Die CreateMediaItemFromObject-Methode kann entweder synchron oder asynchron aufgerufen werden:

Die Rückrufschnittstelle wird festgelegt, wenn Sie zum ersten Mal MFPCreateMediaPlayer aufrufen, um das MFPlay-Playerobjekt zu erstellen. Wenn Sie keine Rückrufschnittstelle bereitstellen, muss der fSync-ParameterTRUE sein. Andernfalls gibt CreateMediaItemFromObjectMF_E_INVALIDREQUEST zurück.

Wenn Sie mehrere asynchrone Aufrufe von CreateMediaItemFromObject durchführen, wird nicht garantiert, dass diese in derselben Reihenfolge ausgeführt werden. Verwenden Sie den dwUserData-Parameter , um erstellte Medienelemente mit ausstehenden Anforderungen abzugleichen.

Konfigurieren der Quelle

Wenn pIUnknownObj auf einen Bytedatenstrom zeigt, können Sie die Medienquelle konfigurieren, indem Sie die folgenden Schritte ausführen:
  1. Rufen Sie QueryInterface auf dem IMFPMediaPlayer-Zeiger auf, um die IPropertyStore-Schnittstelle abzurufen.
  2. Rufen Sie IPropertyStore::SetValue auf, um Eigenschaften für die Medienquelle festzulegen. Eine Liste der Konfigurationseigenschaften finden Sie unter Konfigurieren einer Medienquelle. Medienquellen von Drittanbietern können benutzerdefinierte Eigenschaften definieren.
  3. Rufen Sie die CreateMediaItemFromObject-Methode auf, um das Medienelement zu erstellen.
Wenn pIUnknownObj auf eine Medienquelle verweist, können Sie die Quelle zum Zeitpunkt der Erstellung konfigurieren.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 7 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile mfplay.h

Weitere Informationen

IMFPMediaPlayer

Verwenden von MFPlay für die Audio-/Videowiedergabe