Defines statistics collected by the network source. The values in this enumeration define property identifiers (PIDs) for the MFNETSOURCE_STATISTICS property.
To retrieve statistics from the network source, call IMFGetService::GetService with the service identifier MFNETSOURCE_STATISTICS_SERVICE and the interface identifier IID_IPropertyStore. The retrieved pointer is an IPropertyStore pointer. To get the value of a network statistic, construct a PROPERTYKEY with fmtid equal to MFNETSOURCE_STATISTICS and pid equal to a value from this enumeration. Then call IPropertyStore::GetValue with the property key to retrieve the value of the statistic as a PROPVARIANT.
In the descriptions that follow, the data type and value-type tag for the PROPVARIANT are listed in parentheses.
typedef enum _MFNETSOURCE_STATISTICS_IDS
{
MFNETSOURCE_RECVPACKETS_ID = 0,
MFNETSOURCE_LOSTPACKETS_ID = (MFNETSOURCE_RECVPACKETS_ID+1),
MFNETSOURCE_RESENDSREQUESTED_ID = (MFNETSOURCE_LOSTPACKETS_ID+1),
MFNETSOURCE_RESENDSRECEIVED_ID = (MFNETSOURCE_RESENDSREQUESTED_ID+1),
MFNETSOURCE_RECOVEREDBYECCPACKETS_ID = (MFNETSOURCE_RESENDSRECEIVED_ID+1),
MFNETSOURCE_RECOVEREDBYRTXPACKETS_ID = (MFNETSOURCE_RECOVEREDBYECCPACKETS_ID+1),
MFNETSOURCE_OUTPACKETS_ID = (MFNETSOURCE_RECOVEREDBYRTXPACKETS_ID+1),
MFNETSOURCE_RECVRATE_ID = (MFNETSOURCE_OUTPACKETS_ID+1),
MFNETSOURCE_AVGBANDWIDTHBPS_ID = (MFNETSOURCE_RECVRATE_ID+1),
MFNETSOURCE_BYTESRECEIVED_ID = (MFNETSOURCE_AVGBANDWIDTHBPS_ID+1),
MFNETSOURCE_PROTOCOL_ID = (MFNETSOURCE_BYTESRECEIVED_ID+1),
MFNETSOURCE_TRANSPORT_ID = (MFNETSOURCE_PROTOCOL_ID+1),
MFNETSOURCE_CACHE_STATE_ID = (MFNETSOURCE_TRANSPORT_ID+1),
MFNETSOURCE_LINKBANDWIDTH_ID = (MFNETSOURCE_CACHE_STATE_ID+1),
MFNETSOURCE_CONTENTBITRATE_ID = (MFNETSOURCE_LINKBANDWIDTH_ID+1),
MFNETSOURCE_SPEEDFACTOR_ID = (MFNETSOURCE_CONTENTBITRATE_ID+1),
MFNETSOURCE_BUFFERSIZE_ID = (MFNETSOURCE_SPEEDFACTOR_ID+1),
MFNETSOURCE_BUFFERPROGRESS_ID = (MFNETSOURCE_BUFFERSIZE_ID+1),
MFNETSOURCE_LASTBWSWITCHTS_ID = (MFNETSOURCE_BUFFERPROGRESS_ID+1),
MFNETSOURCE_SEEKRANGESTART_ID = (MFNETSOURCE_LASTBWSWITCHTS_ID+1),
MFNETSOURCE_SEEKRANGEEND_ID = (MFNETSOURCE_SEEKRANGESTART_ID+1),
MFNETSOURCE_BUFFERINGCOUNT_ID = (MFNETSOURCE_SEEKRANGEEND_ID+1),
MFNETSOURCE_INCORRECTLYSIGNEDPACKETS_ID = (MFNETSOURCE_BUFFERINGCOUNT_ID+1),
MFNETSOURCE_SIGNEDSESSION_ID = (MFNETSOURCE_INCORRECTLYSIGNEDPACKETS_ID+1),
MFNETSOURCE_MAXBITRATE_ID = (MFNETSOURCE_SIGNEDSESSION_ID+1),
MFNETSOURCE_RECEPTION_QUALITY_ID = (MFNETSOURCE_MAXBITRATE_ID+1),
MFNETSOURCE_RECOVEREDPACKETS_ID = (MFNETSOURCE_RECEPTION_QUALITY_ID+1),
MFNETSOURCE_VBR_ID = (MFNETSOURCE_RECOVEREDPACKETS_ID+1),
MFNETSOURCE_DOWNLOADPROGRESS_ID = (MFNETSOURCE_VBR_ID+1),
MFNETSOURCE_UNPREDEFINEDPROTOCOLNAME_ID = (MFNETSOURCE_DOWNLOADPROGRESS_ID+1)
} MFNETSOURCE_STATISTICS_IDS;
| Constant | Description |
|---|---|
| MFNETSOURCE_RECVPACKETS_ID | The number of packets received (LONG, VT_I4). |
| MFNETSOURCE_LOSTPACKETS_ID | The number of packets lost (LONG, VT_I4). |
| MFNETSOURCE_RESENDSREQUESTED_ID | The number of requests to resend packets (LONG, VT_I4). |
| MFNETSOURCE_RESENDSRECEIVED_ID | The number of resent packets received (LONG) (VT_I4). |
| MFNETSOURCE_RECOVEREDBYECCPACKETS_ID | The total number of packets recovered by error correction (LONG, VT_I4). |
| MFNETSOURCE_RECOVEREDBYRTXPACKETS_ID | The total number of packets recovered by retransmission (LONG, VT_I4). |
| MFNETSOURCE_OUTPACKETS_ID | The total number of packets returned to user, including recovered packets (LONG, VT_I4). |
| MFNETSOURCE_RECVRATE_ID | The 10-second average receiving rate (LONG, VT_I4). |
| MFNETSOURCE_AVGBANDWIDTHBPS_ID | The average bandwidth of the clip (LONG, VT_I4). |
| MFNETSOURCE_BYTESRECEIVED_ID | The total number of bytes received (ULONGLONG, VT_UI8). |
| MFNETSOURCE_PROTOCOL_ID | The type of control protocol used to receive the data (LONG, VT_I4). The value is a member of the MFNETSOURCE_PROTOCOL_TYPE enumeration. |
| MFNETSOURCE_TRANSPORT_ID | The type of control protocol used to receive the data (LONG, VT_I4). The value is a member of the MFNETSOURCE_TRANSPORT_TYPE enumeration. |
| MFNETSOURCE_CACHE_STATE_ID | The status of cache for a media file or entry (LONG, VT_I4). The value is a member of the MFNETSOURCE_CACHE_STATE enumeration. |
| MFNETSOURCE_LINKBANDWIDTH_ID | The current link bandwidth, in bits per second (LONG, VT_I4). |
| MFNETSOURCE_CONTENTBITRATE_ID | The current bit rate of the content (LONG, VT_I4). |
| MFNETSOURCE_SPEEDFACTOR_ID | The negotiated speed factor used in data transmission (LONG, VT_I4). The sender transmits data at the rate of the speed factor multiplied by the bit rate of the content. |
| MFNETSOURCE_BUFFERSIZE_ID | The playout buffer size, in milliseconds (LONG, VT_I4). |
| MFNETSOURCE_BUFFERPROGRESS_ID | The percentage of the playout buffer filled during buffering. The value is an integer in the range 0–100. (LONG, VT_I4). |
| MFNETSOURCE_LASTBWSWITCHTS_ID | The number of ticks since the last bandwidth switch (LONG, VT_I4). |
| MFNETSOURCE_SEEKRANGESTART_ID | The start of the seekable range, in 100-nanosecond units (ULONGLONG, VT_UI8). |
| MFNETSOURCE_SEEKRANGEEND_ID | The end of the seekable range, in 100-nanosecond units (ULONGLONG, VT_UI8). |
| MFNETSOURCE_BUFFERINGCOUNT_ID | The number of times buffering has occurred, including the initial buffering (LONG, VT_I4). |
| MFNETSOURCE_INCORRECTLYSIGNEDPACKETS_ID | The number of packets that had incorrect signatures (LONG, VT_I4). |
| MFNETSOURCE_SIGNEDSESSION_ID | Boolean value indicating whether the current session is signed (VARIANT_BOOL, VT_BOOL). |
| MFNETSOURCE_MAXBITRATE_ID | The current maximum bit rate of the content (LONG, VT_I4). |
| MFNETSOURCE_RECEPTION_QUALITY_ID | The reception quality (LONG, VT_I4). |
| MFNETSOURCE_RECOVEREDPACKETS_ID | The total number of recovered packets (LONG, VT_I4). |
| MFNETSOURCE_VBR_ID | Boolean value indicating whether the content has a variable bit rate (VARIANT_BOOL, VT_BOOL). |
| MFNETSOURCE_DOWNLOADPROGRESS_ID | The percentage of the content that has been downloaded. The value is an integer in the range 0–100. (LONG, VT_I4). |
| MFNETSOURCE_UNPREDEFINEDPROTOCOLNAME_ID | Not a predefined protocol name ID. End of the enumeration. |
Header: Declared in mfidl.h.