2016-01-10 1 views
0

Je regarde le serveur multimédia Live555. Il a un fichier exécutable qui est utilisé pour « index » des vidéos de flux de transport et est nommé/utilisé comme ceci:Live555 indexation de fichier TSX

MPEG2TransportStreamIndexer video.ts 

Donc, si une vidéo est nommé TransportStreamVideo.ts l'indexeur crée un fichier nommé TransportStreamVideo.tsx. Remarquez le même nom que le fichier vidéo ajoute juste un « x » ou l'extension est » .tsx

Je sais que cela pour « trick play », mais je me demande comment cela fonctionne en interne.

Donc, mon question est: comment LIVE555 utilise le fichier « .ts » et le fichier « .tsx » ensemble

est un flux complètement nouveau produit pour envoyer à afficher sur l'écran vidéo client

Répondre

0

Si? vous regardez le code de live555MediaServer dans le fichier DynamicRTSPServer.cpp, vous verrez que le se ssion est créé comme ceci:

} else if (strcmp(extension, ".ts") == 0) { 
    // Assumed to be a MPEG Transport Stream file: 
    // Use an index file name that's the same as the TS file name, except with ".tsx": 
    unsigned indexFileNameLen = strlen(fileName) + 2; // allow for trailing "x\0" 
    char* indexFileName = new char[indexFileNameLen]; 
    sprintf(indexFileName, "%sx", fileName); 
    NEW_SMS("MPEG Transport Stream"); 
    sms->addSubsession(MPEG2TransportFileServerMediaSubsession::createNew(env, fileName, indexFileName, reuseSource)); 
    delete[] indexFileName; 
    } 

L'objet MPEG2TransportFileServerMediaSubsession utiliser le fichier .ts et son index .tsx associé.

Le fichier tsx n'est pas un nouveau flux. Il s'agit d'un index sur le fichier de flux de transport.

+0

Nous vous remercions de votre aide. Je le vois maintenant. – Carlos