Partager via


Méthode IDiscFormat2TrackAtOnce::AddAudioTrack (imapi2.h)

Écrit le flux de données dans le média actuel en tant que nouvelle piste.

Syntaxe

HRESULT AddAudioTrack(
  [in] IStream *data
);

Paramètres

[in] data

Interface IStream des données audio à écrire comme piste suivante sur le média.

Le format de données contient des échantillons audio bruts 44,1 KHz, 16 bits stéréo. Il s’agit du même format que celui utilisé par les exemples audio dans un fichier audio Microsoft WAV (sans l’en-tête).

Valeur retournée

S_OK est retourné en cas de réussite, mais d’autres codes de réussite peuvent être retournés à la suite de l’implémentation. Les codes d’erreur suivants sont généralement retournés en cas d’échec de l’opération, mais ne représentent pas les seules valeurs d’erreur possibles :

Code de retour Description
E_POINTER
Le pointeur n’est pas valide.

Valeur : 0x80004003

E_IMAPI_DF2TAO_MEDIA_IS_NOT_PREPARED
L’opération demandée est valide uniquement lorsque le média a été « préparé ».

Valeur : 0xC0AA0502

E_IMAPI_DF2TAO_WRITE_IN_PROGRESS
Une opération d’écriture est actuellement en cours.

Valeur : 0xC0AA0500

E_IMAPI_DF2TAO_TRACK_LIMIT_REACHED
Les supports CD-R et CD-RW prennent en charge un maximum de 99 pistes audio.

Valeur : 0xC0AA0508

E_IMAPI_DF2TAO_STREAM_NOT_SUPPORTED
Le flux audio fourni n’est pas valide.

Valeur : 0xC0AA050D

E_IMAPI_DF2TAO_NOT_ENOUGH_SPACE
Il n’y a pas assez d’espace sur le média pour ajouter la piste audio fournie.

Valeur : 0xC0AA0509

E_FAIL
Défaillance non spécifiée.

Valeur : 0x80004005

E_INVALIDARG
Un ou plusieurs arguments ne sont pas valides.

Valeur : 0x80070057

E_OUTOFMEMORY
Impossible d’allouer la mémoire requise.

Valeur : 0x8007000E

E_IMAPI_RECORDER_COMMAND_TIMEOUT
L’appareil n’a pas pu accepter la commande dans le délai d’expiration. Cela peut être dû au fait que l’appareil a entré un état incohérent ou que la valeur du délai d’expiration de la commande doit être augmentée.

Valeur : 0xC0AA020D

E_IMAPI_RECORDER_INVALID_RESPONSE_FROM_DEVICE
L’appareil a signalé des données inattendues ou non valides pour une commande.

Valeur : 0xC0AA02FF

E_IMAPI_RECORDER_MEDIA_UPSIDE_DOWN
Le média est inséré à l’envers.

Valeur : 0xC0AA0204

E_IMAPI_RECORDER_MEDIA_BECOMING_READY
Le lecteur a signalé qu’il est en train de se préparer. Veuillez réessayer la demande ultérieurement.

Valeur : 0xC0AA0205

E_IMAPI_RECORDER_MEDIA_NO_MEDIA
Il n’y a aucun média dans l’appareil.

Valeur : 0xC0AA0202

E_IMAPI_RECORDER_MEDIA_FORMAT_IN_PROGRESS
Le média est en cours de mise en forme. Attendez que le format se termine avant d’essayer d’utiliser le média.

Valeur : 0xC0AA0206

E_IMAPI_RECORDER_MEDIA_BUSY
Le lecteur a signalé qu’il effectuait une opération de longue durée, comme la fin d’une écriture. Le lecteur peut être inutilisable pendant une longue période.

Valeur : 0xC0AA0207

E_IMAPI_LOSS_OF_STREAMING
L’écriture a échoué, car le lecteur n’a pas reçu les données assez rapidement pour continuer l’écriture. Le déplacement des données sources vers l’ordinateur local, la réduction de la vitesse d’écriture ou l’activation d’un paramètre « sans exécution de mémoire tampon » peut résoudre ce problème.

Valeur : 0xC0AA0300

E_IMAPI_RECORDER_MEDIA_INCOMPATIBLE
Le média n’est pas compatible ou de format physique inconnu.

Valeur : 0xC0AA0203

E_IMAPI_RECORDER_DVD_STRUCTURE_NOT_PRESENT
La structure DVD n’est pas présente. Cela peut être dû à l’utilisation d’un lecteur/d’un support incompatible.

Valeur : 0xC0AA020E

E_IMAPI_RECORDER_NO_SUCH_MODE_PAGE
L’appareil a signalé que la page du mode demandé (et le type) n’est pas présent.

Valeur : 0xC0AA0201

E_IMAPI_RECORDER_INVALID_MODE_PARAMETERS
Le lecteur a signalé que la combinaison de paramètres fournie dans la page de mode d’une commande MODE SELECT n’était pas prise en charge.

Valeur : 0xC0AA0208

E_IMAPI_RECORDER_MEDIA_WRITE_PROTECTED
Le lecteur a signalé que le média est protégé en écriture.

Valeur : 0xC0AA0209

E_IMAPI_RECORDER_MEDIA_SPEED_MISMATCH
La vitesse du média n’est pas compatible avec l’appareil. Cela peut être dû à l’utilisation d’un média de vitesse supérieure ou inférieure à la plage de vitesses prise en charge par l’appareil.

Valeur : 0xC0AA020F

HRESULT_FROM_WIN32(ERROR_INVALID_HANDLE)
Le handle spécifié n’est pas valide.

Valeur : 6

HRESULT_FROM_WIN32(ERROR_DEV_NOT_EXIST)
La ressource réseau ou le périphérique spécifié n’est plus disponible.

Valeur : 55

E_IMAPI_RECORDER_LOCKED
L’appareil associé à cet enregistreur lors de la dernière opération a été exclusivement verrouillé, ce qui a entraîné l’échec de cette opération.

Valeur : 0xC0AA0210

E_IMAPI_REQUEST_CANCELLED
La demande a été annulée.

Valeur : 0xC0AA0002

Notes

Avant d’appeler cette méthode, vous devez appeler les méthodes IDiscFormat2TrackAtOnce::p ut_Recorder et IDiscFormat2TrackAtOnce::P repareMedia .

Vous devez également envisager d’appeler les méthodes suivantes si leurs valeurs par défaut ne sont pas appropriées pour votre application :

Pour déterminer la progression de l’opération d’écriture, vous devez implémenter l’interface DDiscFormat2TrackAtOnceEvents . Pour obtenir des exemples qui montrent comment implémenter un gestionnaire d’événements dans un script, consultez Surveillance de la progression avec les événements.

Le média peut prendre en charge 99 pistes de données audio. La numérotation du suivi commence à 1. La dernière piste est 99.

Le silence, ou des exemples de données contenant des zéros, seront ajoutés à l’opération d’écriture de suivi des manières suivantes :

  • La taille minimale de la piste est de 4 secondes et, si nécessaire, les données de piste sont agrandies pour répondre à cette exigence.
  • En raison de la nature de l’enregistrement track-at-once, un écart de deux secondes est ajouté entre les pistes audio successives. Cet écart est normalement masqué par les joueurs basés sur PC, mais peut être perceptible sur certains équipements électroniques grand public.

Spécifications

   
Client minimal pris en charge Windows Vista, Windows XP avec SP2 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête imapi2.h

Voir aussi

IDiscFormat2TrackAtOnce

IDiscFormat2TrackAtOnce::CancelAddTrack