MEBufferingStarted-Ereignis
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 INTERFACESByteStreamBuffering-Schnittstelle implementieren, senden auch dieses Ereignis.
Ereigniswerte
Mögliche Werte, die von DERMEDIAEVENT::GetValue abgerufen werden, sind:
| VARTYPE | Beschreibung |
|---|---|
| VT _ EMPTY |
Keine Ereignisdaten. |
Hinweise
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 entsprechendes MEBufferingStopped-Ereignis senden. Diese Ereignisse sollten von der Medienquelle nicht weitergeleitet werden, bevor die METHODE "CSVMediaSource::Start" der Quelle aufgerufen wird oder nachdem die METHODE "WFMediaSource::Stop" der Quelle aufgerufen wurde.
Wenn Sie von der Media Foundation Netzwerkquelle streamen, können Sie den Pufferfortschritt abrufen, indem Sie die STATISTIK MFNETSOURCE _ BUFFERPROGRESS _ ID 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 [Nur Vista-Desktop-Apps] |
| Unterstützte Mindestversion (Server) |
Windows Nur Server [ 2008-Desktop-Apps] |
| Header |
|