écriture de Flux avec des Pixels Non carrés

il existe deux façons de créer des flux vidéo avec des pixels non carrés qui s’affichent correctement dans Lecteur Windows Media. La première technique consiste à définir des attributs au niveau du flux dans l’en-tête du fichier. La deuxième technique implique l’ajout d’une extension d’unité de données à un flux du profil, puis la définition d’une valeur pour celle-ci dans chaque exemple écrit.

Pour utiliser des attributs d’en-tête au niveau du flux pour définir les proportions de pixels

  1. Configurez l’objet Writer. Pour plus d’informations, consultez écriture de fichiers ASF.
  2. Créez ou chargez un profil avec un ou plusieurs flux vidéo. Pour plus d’informations, consultez pour utiliser des profils avec le writer.
  3. Appelez IWMWriter :: SetProfile. (Appelez toujours cette méthode avant de définir des attributs d’en-tête.)
  4. Appelez QueryInterface pour obtenir l’interface IWMHeaderInfo3 et appelez AddAttribute à deux reprises pour ajouter AspectRatioX et AspectRatioY en tant qu’attributs de niveau flux du flux vidéo. Ces attributs sont des valeurs DWORD .
  5. Écrivez le fichier.

Pour utiliser les extensions d’unité de données pour définir les proportions de pixels

Avant d’écrire :

  1. Configurez l’objet Writer. Pour plus d’informations, consultez écriture de fichiers ASF.
  2. Créez ou chargez un profil avec un ou plusieurs flux vidéo. Pour plus d’informations, consultez pour utiliser des profils avec le writer.
  3. Pour chaque flux (de n’importe quel type de média) dans le profil, appelez IWMStreamConfig :: SetStreamName pour spécifier un nom unique de votre choix. Ne donnez pas le même nom à deux flux.
  4. Utilisez IWMStreamConfig2 :: AddDataUnitExtension sur le flux vidéo pour ajouter une extension d’unité de données pour les proportions de pixels.
  5. Appelez IWMWriter :: SetProfile.
  6. Écrivez le fichier.

Lors de l’écriture :

  • Pour chaque exemple, appelez INSSBuffer3 :: SetProperty et spécifiez la _ propriété WM SampleExtensionGUID _ PixelAspectRatio, ainsi que la valeur correcte. Les valeurs de proportions sont écrites sous la forme de deux valeurs concaténées à deux chiffres. Par exemple, 16:9 est écrit sous la forme 1609 ou 0x0649. Il s’agit toujours d’une valeur de 2 octets.

pour lire et écrire des Flux vidéo avec des Pixels Non carrés