Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Signalisiert, dass eine Medienquelle begonnen hat, Daten zu puffern.
Eine Medienquelle kann dieses Ereignis senden, wenn die Quelle Daten puffert, während die Mediensitzung ausgeführt wird. Wenn die Mediensitzung dieses Ereignis empfängt, wird die Präsentationsuhr angehalten, bis die Medienquelle das MEBufferingStopped-Ereignis sendet. Die Mediensitzung leitet auch das MEBufferingStarted-Ereignis an die Anwendung weiter.
Bytestreams, die die IMFByteStreamBuffering-Schnittstelle implementieren, senden dieses Ereignis ebenfalls.
Ereigniswerte
Mögliche Werte, die von IMFMediaEvent::GetValue abgerufen werden, umfassen Folgendes.
| VARTYPE | Beschreibung |
|---|---|
| VT_EMPTY |
Keine Ereignisdaten. |
Bemerkungen
Wenn eine Medienquelle das MEBufferingStarted-Ereignis sendet, muss sie das MEBufferingStopped-Ereignis senden, wenn das Puffern von Daten beendet wird. Die Medienquelle muss für jedes MEBufferingStarted-Ereignis ein übereinstimmendes MEBufferingStopped-Ereignis senden. Die Medienquelle sollte diese Ereignisse nicht weiterleiten, bevor die IMFMediaSource::Start-Methode der Quelle aufgerufen wird oder nachdem die IMFMediaSource::Stop-Methode der Quelle aufgerufen wurde.
Wenn Sie das Streaming von der Media Foundation-Netzwerkquelle ausführen, können Sie den Pufferfortschritt abrufen, indem Sie die MFNETSOURCE_BUFFERPROGRESS_ID Statistik abfragen. Weitere Informationen finden Sie unter MFNETSOURCE_STATISTICS_IDS.
Beispiele
HRESULT GetBufferProgress(IMFMediaSession *pSession, DWORD *pProgress)
{
IPropertyStore *pProp = NULL;
PROPVARIANT var;
// Get the property store from the media session.
HRESULT hr = MFGetService(
pSession,
MFNETSOURCE_STATISTICS_SERVICE,
IID_PPV_ARGS(&pProp)
);
if (SUCCEEDED(hr))
{
PROPERTYKEY key;
key.fmtid = MFNETSOURCE_STATISTICS;
key.pid = MFNETSOURCE_BUFFERPROGRESS_ID;
hr = pProp->GetValue(key, &var);
}
if (SUCCEEDED(hr))
{
*pProgress = var.lVal;
}
PropVariantClear(&var);
SafeRelease(&pProp);
return hr;
}
Anforderungen
| Anforderung | Wert |
|---|---|
| Unterstützte Mindestversion (Client) |
Windows Vista [nur Desktop-Apps] |
| Unterstützte Mindestversion (Server) |
Windows Server 2008 [nur Desktop-Apps] |
| Header |
|
Weitere Informationen