Estadísticas de calidad de servicio

Quality of service (QoS) ofrece una vista detallada del rendimiento del motor de vídeo. TVSDK proporciona estadísticas detalladas sobre la reproducción, el almacenamiento en búfer y los dispositivos.

Leer las estadísticas de reproducción, almacenamiento en búfer y dispositivos de QOS

Puede leer las estadísticas de reproducción, almacenamiento en búfer y dispositivos desde la clase PTQOSProvider .

La clase PTQOSProvider proporciona varias estadísticas, incluida información sobre el almacenamiento en búfer, las tasas de bits, las tasas de fotogramas, los datos de tiempo, etc.

También proporciona información sobre el dispositivo, como el modelo, el sistema operativo y el ID del dispositivo del fabricante.

SUGERENCIA

No se puede cambiar el tamaño del búfer de reproducción, pero se puede supervisar el estado del tamaño del búfer para su depuración o análisis. PTPlaybackInformation incluye propiedades como playbackBufferFull y playbackLikelyToKeepUp.

  1. Cree una instancia de un reproductor de medios.

  2. Cree un objeto PTQOSProvider y adjúntelo al reproductor de medios.

    El constructor PTQOSProvider toma un contexto de reproductor para que pueda recuperar información específica del dispositivo.

    qosProvider = [[PTQOSProvider alloc]initWithPlayer:self.player];
    
  3. (Opcional) Lea las estadísticas de reproducción.

    Una solución para leer las estadísticas de reproducción es tener un temporizador, como NSTimer, que obtenga periódicamente los nuevos valores de QoS de PTQOSProvider. Por ejemplo:

    - (void)printPlaybackInfoLog {
        PTPlaybackInformation *playbackInfo = qosProvider.playbackInformation;
        if (playbackInfo) {
            // For example:
            NSString *infoLog = [NSString stringWithFormat:@"observedBitrate :
                                   %f\n",playbackInfo.observedBitrate];
            [consoleView logMessage:@"====%@\n\n",infoLog];
        }
    }
    
  4. (Opcional) Lea la información específica del dispositivo.

     PTDeviceInformation *devInfo = qosProvider.deviceInformation;
    if (devInfo) {
        [consoleView logMessage:@"=== qosDeviceInfo:==\n os =%@\n model =
           %@\n id =%@\n\n", devInfo.os, devInfo.model, devInfo.id];
    }
    [NSTimer scheduledTimerWithTimeInterval:2.0 target:self
       selector:@selector(printPlaybackInfoLog) userInfo:nil repeats:YES];
    

En esta página