2017-05-12 2 views
2

suit Ici, le vidage hexadécimal du MPEG2VideoDescriptor:Comment lire le MPEG2VideoDescriptor dans un fichier MXF?

 
06 0e 2b 34 02 53 01 01 0d 01 01 01 01 01 51 00 
83 00 00 f3 3c 0a 00 10 a3 be 51 b2 00 05 e7 11 
bf 82 21 97 f7 a0 14 ed 30 06 00 04 00 00 00 02 
30 01 00 08 00 00 ea 60 00 00 03 e9 80 00 00 04 
01 c9 c3 80 30 04 00 10 06 0e 2b 34 04 01 01 02 
0d 01 03 01 02 04 61 01 32 15 00 01 05 32 0e 00 
08 00 00 00 10 00 00 00 09 32 0d 00 10 00 00 00 
02 00 00 00 04 00 00 00 1a 00 00 00 00 32 0c 00 
01 00 32 08 00 04 00 00 02 d0 32 09 00 04 00 00 
05 00 32 02 00 04 00 00 02 d0 32 03 00 04 00 00 
05 00 32 01 00 10 06 0e 2b 34 04 01 01 03 04 01 
02 02 01 04 03 00 33 02 00 04 00 00 00 02 33 08 
00 04 00 00 00 01 33 03 00 01 04 33 01 00 04 00 
00 00 08 33 0b 00 01 00 33 07 00 02 00 00 33 04

Les 16 premiers octets:
06 0e 2b 34 02 53 01 01 0d 01 01 01 01 01 51 00 (UID)
suivante 4 octets est la taille du BER:
83 00 00 f3 (0xF3 octets)
Suivant 4 octets:
3c 0a 00 10 (0x3c0a moyens instance UUID et 0x0010 est la taille)
suit alors le UUID:
a3 be 51 b2 00 05 e7 11 bf 82 21 97 f7 a0 14 ed
suivante 4 octets:
30 06 00 04 (0x3006 moyens liés Track ID et 0x0004 est la taille)
suivante 4 octets est lié Track ID: 00 00 00 02
suivante 4 octets: 30 01 00 08 (0x3001 signifie Sample Rate et 0x0008 est la taille)
les 8 octets suivants sont en fait numérateur encadrent le taux et le dénominateur:
0000ea60 == == 000003e9 et 60000 1001. maintenant, nous avons le gras partie: .

Quelqu'un peut-il expliquer ce que cela signifie? Les quatre octets suivants sont 01 c9 c3 80 et c'est certainement le bitrate (30000000), mais comment puis-je le savoir?

Edit:
Est-ce que signifie les suivantes:
0x8000 est une balise dynamique. Selon SMPTE 337, les balises 0x8000-0xFFFF sont allouées dynamiquement. Le 0x0004 est la taille (4 octets). Si c'est vrai, comment puis-je savoir que les 4 octets suivants 01 c9 c3 80 sont en fait le débit? Ça pourrait être n'importe quoi, ou?

+0

Personne, rien ...? –

Répondre

0

Vous devez d'abord comprendre le fonctionnement des tags locaux. Les variables locales 0x8000 et supérieures sont définies par l'utilisateur. Vous devez regarder le pack d'amorces de la partition d'en-tête. Le pack d'amorces traduit l'étiquette locale en UL globale qui peut être spécifique au fournisseur ou non.

Considérons le module d'amorçage comme étant une table de traduction entre l'étiquette locale de 2 octets et l'octet UL de 16 octets.

+1

Merci! J'ai trouvé ceci dans le paquet d'amorces: '0x8000 - 06.0e.2b.34.01.01.01.05.04.01.06.02.01.0b.00.00'. Et Dictionnaire des éléments de métadonnées SMPTE pour les '06.0e.2b.34.01.01.01.05.04.01.06.02.01.0b.00.00' dit ** Débit binaire **. –