Utilisez les constantes définies dans cette classe en tant qu’entrée pour la méthode
Une occurrence de Camera permet ce capturer de la vidéo au format paysage. Sur les périphériques prenant en charge le changement d’orientation de l’écran, tels que les téléphones portables, un objet Video joint à la caméra affiche uniquement la vidéo filmée verticalement en orientation paysage. Par conséquent, les applications mobiles doivent utiliser l’orientation paysage lors de l’affichage vidéo et ne doivent pivoter automatiquement.
A partir d’AIR 2.6, l’autofocus est automatiquement activé sur les périphériques mobiles munis d’un appareil photo à autofocus. Si l’appareil photo ne prend pas en charge l’autofocus continu (ce qui est le cas pour de nombreux périphériques mobiles), l’appareil photo est mis au point lorsque l’objet Camera est associé à un flux vidéo et chaque fois que la méthode
Dans le cas d’une application AIR sur Android et iOS, la caméra ne capture pas les vidéos si l’application AIR n’est pas l’application active au premier plan. Il est en outre possible que les connexions de flux soient perdues lorsque l’application se trouve dans l’arrière-plan. Sur iOS, il est impossible d’afficher la caméra vidéo lorsqu’une application utilise le mode de rendu sur GPU. Il est toutefois possible de diffuser en continu la caméra vidéo sur un serveur.
Prise en charge du navigateur mobile : cette classe n’est pas prise en charge sur les navigateurs mobiles.
Prise en charge du profil AIR : cette fonctionnalité est prise en charge sur les systèmes d’exploitation de bureau, mais ne l’est pas sur tous les périphériques mobiles. Elle n’est pas prise en charge sur les périphériques AIR pour TV. Voir
Vous pouvez tester la prise en charge lors de l’exécution à l’aide de la propriété
Pour plus d’informations sur la capture audio, voir la classe Microphone.
Important : Flash Player affiche une boîte de dialogue Confidentialité qui permet à l’utilisateur d’autoriser ou de refuser l’accès à la caméra. Assurez-vous que la taille de la fenêtre de votre application soit d’au moins 215 x 138 pixels, taille minimale requise par Flash pour afficher cette boîte de dialogue.
Pour créer ou référencer un objet Camera, utilisez la méthode
Remarque : une caméra doit être reliée à votre ordinateur pour le bon déroulement de cet exemple.
Plusieurs appels de la méthode
Sur les périphériques iOS munis d’une caméra arrière et frontale, il est uniquement possible de capturer des vidéos à partir d’une seule caméra à la fois. Sur les périphériques Android, vous pouvez accéder uniquement à la caméra arrière.
En général, évitez de transmettre la valeur du paramètre
Vous ne pouvez pas utiliser ActionScript pour définir un paramètre d’autorisation ou de refus pour l’accès à la caméra, mais vous pouvez afficher la boîte de dialogue de configuration de la caméra des paramètres d’Adobe Flash Player dans laquelle l’utilisateur peut définir l’autorisation de la caméra. Lorsqu’un fichier SWF utilisant la méthode
Dans Flash Player, l’utilisateur peut spécifier des paramètres de confidentialité permanents pour un domaine spécifique. Pour ce faire, il lui suffit de cliquer sur le bouton droit de la souris (Windows et Linux) ou de cliquer sur le bouton droit de la souris tout en maintenant la touche Contrôle enfoncée (Macintosh) sur un fichier SWF en cours de lecture, de sélectionner Paramètres, d’ouvrir la boîte de dialogue Confidentialité, puis de sélectionner Mémoriser. Si l’utilisateur sélectionne Mémoriser, Flash Player ne l’invite plus à autoriser ou refuser l’accès à votre caméra des fichiers SWF de ce domaine.
Remarque : la méthode
Si
L’analyse du matériel à la recherche de caméras exige un certain temps. Lorsque le moteur d’exécution détecte au moins une caméra, le matériel n’est plus analysé pendant la durée de vie de l’occurrence du lecteur. Cependant, si le moteur d’exécution ne détecte pas de caméra, il effectue une analyse à chaque appel de
La méthode
Généralement, lorsque la méthode
La méthode
La méthode
Un objet Timer est démarré également. Chaque seconde, un événement timer de l’objet Timer est distribué et la méthode
Remarque : pour cet exemple, la seule propriété qui change est la propriété
L’algorithme de compression vidéo de Flash compresse la vidéo en transmettant uniquement les éléments modifiés à partir de la dernière image de la vidéo. Ces portions sont appelées images interpolées. Les images d’une vidéo peuvent être interpolées en fonction du contenu de l’image précédente. Une image-clé, en revanche, est une image vidéo complète. Elle n’est pas interpolée sur la base des images précédentes.
Pour déterminer la valeur du paramètre
Inversement, une valeur
Bien qu’un flux compressé soit utile à des fins de test, par exemple pour se faire une idée des paramètres de qualité vidéo, les coûts de traitement qu’il entraîne sont élevés car il implique plus qu’une simple compression. Le contenu vidéo est compressé, édité à des fins de transmission comme sur une connexion en direct, puis décompressé pour un visionnage local.
Pour définir le taux de compression utilisé lorsque vous réglez
Par défaut, Flash Player omet des images si nécessaire pour conserver la taille de l’image. Pour réduire le nombre d’images omises, même si cela passe par une réduction de la taille de l’image, définissez le paramètre
Lorsqu’il choisit un mode natif, Flash Player tente de conserver le format demandé dans la mesure du possible. Par exemple, si vous publiez la commande
Pour déterminer les valeurs affectées à ces propriétés une fois la sélection, par Flash Player, du mode qui correspond le mieux aux valeurs que vous avez demandées, utilisez les propriétés
Si vous utilisez Flash Media Server, vous pouvez également capturer des images uniques ou créer une séquence en accéléré. Pour plus d’informations, voir la méthode
La Scène est définie de façon à ne pas être redimensionnée. La méthode
Remarque : la vidéo peut être affichée quelle que soit la valeur du paramètre
Pour empêcher la caméra de détecter le mouvement, attribuez la valeur 100 au paramètre
Pour déterminer la quantité de mouvement actuellement détectée par la caméra, utilisez la propriété
L’objectif de cette méthode est similaire à celui de
La méthode
La méthode
Utilisez-la pour spécifier l’élément de la vidéo sortante le plus important pour votre application, la bande passante ou la qualité de l’image.
Si la caméra est disponible mais qu’elle n’est pas encore utilisée parce que la méthode
Si vous diffusez en continu de la vidéo non compressée en local seulement, cette propriété n’est définie que si vous avez affecté une fonction au gestionnaire d’événement. Dans le cas contraire, elle n’est pas définie.
Pour définir cette propriété, utilisez la méthode
Le flux compressé est utile pour les tests, par exemple pour obtenir un aperçu des paramètres de qualité vidéo, mais son coût de traitement est important. L’affichage local est compressé, modifié pour être transmis comme il le serait sur une connexion directe, puis décompressé pour l’affichage local.
Pour définir cette valeur, utilisez
La vidéo peut être affichée quelle que soit la valeur de la propriété
Pour définir cette valeur, utilisez
L’appel de la propriété
Sur Android, seule un caméra est prise en charge, même si le périphérique en possède plusieurs. Le nom de la caméra est toujours "Default".
Pour définir cette propriété, utilisez la méthode
Dans le constructeur, le son est chargé et affecté à un canal audio (
Remarque : la gestion d’erreur écrite pour cet exemple est limitée.
La classe StageWebView fournit un moyen simple pour afficher du contenu HTML sur les périphériques qui ne prennent pas en charge la classe HTMLLoader. Cette classe ne fournit aucune interaction entre ActionScript et le contenu HTML, sauf à travers les méthodes et les propriétés de la classe StageWebView elle-même. Par exemple, il n’existe aucun moyen de transmettre des valeurs ou d’appeler des fonctions entre ActionScript et JavaScript.
Prise en charge du profil AIR : cette fonctionnalité est prise en charge sur tous les systèmes d’exploitation de bureau et sur tous les périphériques mobiles, mais ne l’est pas sur les périphériques AIR pour TV. Vous pouvez tester la prise en charge lors de l’exécution à l’aide de la propriété
Sur les périphériques des profils mobiles et des profils mobiles étendus, la classe StageWebView utilise le contrôle du système Web proposé par le système d’exploitation du périphérique. Par conséquent, les fonctions disponibles et l’aspect du rendu peuvent varier d’un périphérique à l’autre. Sur les ordinateurs de bureau (dans les profils de bureau et les profils de bureau étendu), la classe StageWebView utilise le moteur WebKit AIR interne. Les fonctionnalités disponibles et l’aspect du rendu sont les mêmes que ceux de la classe HTMLLoader (sans l’intégration étroite et la correspondance de scripts entre ActionScript et JavaScript fournis par une occurrence de HTMLLoader). Testez la propriété
La classe StageWebView n’est PAS un objet d’affichage et ne peut pas être ajoutée à la liste d’affichage de Flash. Par contre, vous pouvez afficher un objet StageWebView en l’associant directement à une scène à l’aide de la propriété
Dès que le contenu à l’intérieur de l’objet StageWebView a le focus, l’objet StageWebView a la première occasion de gérer la saisie au clavier. La scène à laquelle l’objet StageWebView est associé distribue toute saisie au clavier qui n’est pas gérée. La capture et la propagation standard d’événements ne s’appliquent pas ici, car l’occurrence de StageWebView ne fait pas partie de la liste d’affichage.
Dans Android 3.0+, l’application doit activer l’accélération matérielle dans l’élément manifestAdditions Android du descripteur d’application AIR pour afficher le contenu des modules d’extension dans un objet StageWebView.
Un événement locationChanging est distribué uniquement lorsque le changement d’emplacement est initié via le contenu HTML ou le code qui s’exécute à l’intérieur de l’objet StageWebView, notamment lorsqu’un utilisateur clique sur un lien. Par défaut, le nouvel emplacement est affiché dans cet objet StageWebView. Vous pouvez appeler la méthode
Aucun événement locationChanging n’est distribué lorsque vous modifiez l’emplacement à l’aide des méthodes suivantes :
Il est impossible d’annuler cet événement.
L’objet est invisible tant qu’il n’est pas associé à une scène et tant que la propriété
Les valeurs de direction sont définies dans la classe FocusDirection et comprennent : "bottom", "none" et "top".
L’appel de la méthode
Capturez l’image bitmap et définissez la scène sur
Lors de l’utilisation de la méthode
Le contenu HTML ne peut pas charger des ressources locales, telles que des fichiers image. Les requêtes HTTP XML ne sont pas autorisées.
Seuls les types MIME "text/html" et "application/xhtml+xml" sont pris en charge.
L’URL peut utiliser les modèles d’URI suivants : http:, https:, file:, data: et javascript:. Contenu chargé avec le fichier : le modèle peut charger d’autres ressources locales.
Remarque : sur Android, vous devez spécifier une autorisation INTERNET dans votre fichier descripteur d’application AIR pour charger URL distantes.
Définissez
La propriété
Vous ne pouvez pas créer un objet MediaPromise. L’appel de
Aucun événement
La propriété
Si la source de données sous-jacente est asynchrone, l’objet MediaPromise distribue des événements
Remarque : vous pouvez charger un objet MediaPromise à l’aide de la méthode
Le code de l’application ne doit pas appeler cette méthode.
Cette propriété fait référence à un objet File si la source de données sous-jacente est basée sur un fichier et si le fichier est accessible à l’application. Dans le cas contraire, cette propriété est
Les constantes de la classe MediaType définissent les valeurs possibles de cette propriété :
Un nom de fichier est disponible si la source de données sous-jacente est basée sur un fichier et si le fichier est accessible à l’application. Dans le cas contraire, cette propriété est
Lorsque vous employez cette classe, tenez compte du modèle de sécurité suivant :
Néanmoins, dans Adobe AIR, le contenu du sandbox de sécurité
Pour plus d’informations concernant la sécurité, voir la rubrique du Pôle de développement Flash Player :
Le premier paramètre d’un objet SoundLoaderContext (
Vous pouvez remplacer la valeur de
Définissez cette propriété sur
Si un accès de bas niveau aux données audio que vous chargez est inutile, il est préférable de ne pas régler
Lorsque vous appelez
Dans tous les cas, Flash Player ou AIR requiert que le serveur du son héberge un fichier de régulation approprié et que ce fichier autorise l’accès au fichier son à
Si vous réglez
Si vous définissez
Servez-vous de
La solution ci-après peut vous permettre de résoudre ce problème. Après la réception d’un événement
Ceci ne s’applique pas au contenu dans le sandbox de l’application AIR. Le contenu dans le sandbox de l’application a toujours un accès par programmation au contenu sonore, quelle que soit son origine.
Pour plus d’informations concernant la sécurité, voir la rubrique du Pôle de développement Flash Player :
Dans le constructeur, un champ de texte est défini et contient la liste des chansons et une ligne de sélection des lectures (généralement, des boutons servent à lire et à lister les champs d’une liste de chansons). Un objet text format est défini pour changer le format des lignes de chansons en italique une fois qu’elles sont sélectionnées. Lorsqu’un utilisateur sélectionne le champ de texte, la méthode
Dans la méthode
La méthode
Le fichier audio est chargé dans le constructeur (cet exemple suppose que le fichier est dans le même répertoire que le fichier SWF). Un champ de texte est utilisé comme bouton pour que l’utilisateur puisse lire ou interrompre la lecture. Lorsque l’utilisateur sélectionne le champ de texte
Dans la méthode
Généralement, la valeur de la propriété
Si le son fait l’objet d’une boucle, la propriété
Pour le contenu d’une application AIR dans le sandbox de sécurité de l’application, l’appel à cette méthode renvoie toujours
Remarque : cette méthode est soumise aux restrictions relatives à la sécurité des fichiers locaux et aux restrictions concernant le chargement interdomaines. Si vous utilisez des fichiers locaux ou des sons chargés à partir d’un serveur appartenant à un autre domaine que le contenu appelant, vous devez peut-être contourner les restrictions liées au sandbox par le biais d’un fichier de régulation interdomaines. Pour plus d’informations, voir la description de la classe Sound. En outre, cette méthode ne permet pas d’extraire des données de flux RTMP, même si elle est appelée par un contenu résidant dans le même domaine que le serveur RTMP.
Cette méthode est prise en charge sur RTMP dans Flash Player 9.0.115.0 et versions ultérieures, ainsi que dans Adobe AIR. Vous pouvez contrôler l’accès aux flux sur un serveur FMS (Flash Media Server) dans un script coté serveur. Pour plus de détails, voir les propriétés
Dans le constructeur, un fichier audio est chargé et défini sur lecture (il n’y a pas de gestion d’erreur dans cet exemple, et le fichier audio est supposé être dans le même répertoire que le fichier SWF). Cet exemple est à l’écoute de l’événement
Dans la méthode
>Dans Flash Professional, cette méthode n’arrête pas la tête de lecture. Les sons diffusés en continu sont émis de nouveau lorsque la tête de lecture passe au-dessus des images les contenant.
Pour utiliser cette propriété, tenez compte du modèle de sécurité suivant :
Néanmoins, dans Adobe AIR, le contenu du sandbox de sécurité
Pour plus d’informations concernant la sécurité, voir la rubrique du Pôle de développement Flash Player :
Dans le constructeur, deux fichiers audio différents sont chargés et définis sur la lecture. Le premier est chargé localement et attribué à un canal audio (ce fichier est supposé être dans le même répertoire que le fichier SWF). Le second fichier est chargé et diffusé en continu depuis le site d’Adobe. Pour utiliser la méthode
Dans la méthode
La propriété
La méthode
Sur certaines plates-formes, l’objet multimédia renvoyé par la caméra est accessible en tant que média promis basé sur un fichier. Sur d’autres, le média promis n’est pas basé sur un fichier, et les propriétés
Sur certaines plates-formes, l’objet multimédia est automatiquement stocké dans la bibliothèque multimédia du périphérique. Sur ces plates-formes (sur lesquelles les images et les vidéos ne sont pas automatiquement stockées par l’application de caméra par défaut), vous pouvez utiliser la fonction
Sur Android, l’application de caméra par défaut ne s’ouvre pas si la carte de stockage externe n’est pas disponible (notamment lorsque l’utilisateur a installé la carte comme périphérique de stockage de masse USB). En outre, l’application AIR qui lance la caméra perd le focus. Si le périphérique dispose de peu de ressources, le système d’exploitation peut fermer l’application AIR avant que la capture de l’objet multimédia ne soit terminée.
Prise en charge du profil AIR : cette fonctionnalité est prise en charge sur les périphériques mobiles, mais ne l’est pas sur les systèmes d’exploitation de bureau ou sur les périphériques AIR pour TV. Vous pouvez tester la prise en charge lors de l’exécution à l’aide de la propriété
Cette classe permet de capturer soit des images fixes soit de la vidéo. La capture de vidéo utilise le profil de caméra "Low Quality" sur le périphérique.
Lors de l’appel de la méthode
Remarque : il est possible que le système d’exploitation d’Android ferme l’application AIR lorsque cette dernière se trouve en arrière-plan et attend que l’utilisateur capture une image ou une vidéo. Le cas échéant, l’utilisateur doit redémarrer l’application. L’application AIR ne distribue pas d’événement multimédia pour la capture d’image précédente.
Vous pouvez accéder aux fichiers multimédias capturés à l’aide de la propriété
Prise en charge du profil AIR : cette fonctionnalité est prise en charge sur les périphériques mobiles, mais ne l’est pas sur les systèmes d’exploitation de bureau ou sur les périphériques AIR pour TV. Voir
La méthode
La méthode
L’objet MediaEvent distribué pour cet événement permet d’accéder au fichier multimédia choisi.
Les sources d’erreurs sont les suivantes :
Une seule bibliothèque multimédia est prise en charge par ActionScript. Tous les objets CameraRoll sont enregistrés dans le même référentiel d’images.
Pour savoir si votre application prend en charge la méthode
Lorsque l’utilisateur sélectionne une image, cette occurrence de CameraRoll distribue un événement
Pour savoir si votre application prend en charge la méthode
Pour obtenir une référence à une occurrence de Microphone, utilisez la méthode
Création d’une application de dialogue en ligne en temps réel
Pour créer une application de dialogue en ligne en temps réel, capturez des données audio et envoyez-les à Flash Media Server. Utilisez les classes NetConnection et NetStream pour transmettre le flux audio à Flash Media Server. Flash Media Server peut diffuser le son à d’autres clients. Pour créer une application de dialogue en ligne qui n’exige pas l’utilisation d’un casque, utilisez l’annulation de l’écho acoustique. L’annulation de l’écho acoustique empêche la boucle de réaction acoustique (qui se produit lorsque le son pénètre dans un microphone) de sortir des haut-parleurs et d’entrer à nouveau dans le microphone. Pour utiliser l’annulation de l’écho acoustique, appelez la méthode
Lecture locale du son du microphone
Appelez la méthode
Capture du son du microphone pour l’enregistrement ou le traitement local
Pour capturer le son du microphone, écoutez les événements
Pour plus d’informations sur la capture vidéo, voir la classe Camera.
Prise en charge du microphone par le moteur d’exécution
La classe Microphone n’est pas prise en charge dans Flash Player s’exécutant dans un navigateur mobile.
Prise en charge du profil AIR : la classe Microphone est prise en charge sur les systèmes d’exploitation de bureau, mais ne l’est pas sur tous les périphériques mobiles. Elle n’est pas prise en charge sur les périphériques AIR pour TV. Voir
Vous pouvez tester la prise en charge lors de l’exécution à l’aide de la propriété
Commandes de confidentialité
Flash Player affiche une boîte de dialogue Confidentialité qui permet à l’utilisateur d’autoriser ou de refuser l’accès au microphone. La taille de la fenêtre de votre application doit être d’au moins 215 x 138 pixels, taille minimale requise pour afficher la boîte de dialogue ; dans le cas contraire, l’accès est automatiquement refusé.
Le contenu qui s’exécute dans le sandbox de sécurité de l’application AIR n’a pas besoin d’autorisation pour accéder au microphone et aucune boîte de dialogue ne s’affiche. Le contenu AIR qui s’exécute en dehors du sandbox de l’application nécessite une autorisation et la boîte de dialogue Confidentialité s’affiche.
Deux écouteurs surveillent les événements
Remarque : un microphone doit être branché sur votre ordinateur pour le bon déroulement de cet exemple.
Les événements d’état ne sont pas distribués dans les applications d’Adobe AIR ; il est impossible de modifier dynamiquement l’accès au microphone. Les applications AIR peuvent toujours accéder au microphone sur la plupart des plates-formes. Sur Android, l’application doit spécifier l’autorisation RECORD_AUDIO d’Android dans le descripteur d’application. Dans le cas contraire, Android refuse l’accès au microphone.
La propriété
Deux écouteurs surveillent les événements
Remarque : un microphone doit être branché sur votre ordinateur pour le bon déroulement de cet exemple.
Pour spécifier la quantité de son requise pour déclencher cet événement avec une propriété
Pour qu’un objet Microphone distribue des événements d’activité, l’application doit surveiller l’entrée, soit en appelant
Le paramètre
Important : vous pouvez, à un moment donné, disposer d’une seule occurrence de microphone amélioré. Toutes les autres occurrences de Microphone cessent de fournir des données audio et reçoivent un événement
Pour configurer un objet Microphone amélioré, définissez la propriété
var mic:Microphone = Microphone.getEnhancedMicrophone(); var options:MicrophoneEnhancedOptions = new MicrophoneEnhancedOptions(); options.mode = MicrophoneEnhancedMode.FULL_DUPLEX; mic.enhancedOptions = options; mic.setLoopBack(true);
La méthode
Lorsqu’un fichier SWF tente d’accéder à l’objet renvoyé par la méthode
Plusieurs appels à
En général, il est préférable de ne pas transmettre de valeur pour
Utilisez la propriété
Lorsqu’un fichier SWF tente d’accéder à l’objet renvoyé par la méthode
Lorsque l’utilisateur répond à cette boîte de dialogue, un événement
Si
Speex inclut la détection d’activité vocale (VAD) et réduit automatiquement la bande passante si aucune voix n’est détectée. Lorsque vous utilisez le codec Speex, Adobe vous conseille de définir le niveau de silence sur 0.
La détection de l’activité est la capacité à détecter les niveaux audio indiquant qu’une personne est en train de parler. Lorsqu’une personne ne parle pas, il est possible d’économiser de la bande passante car il n’est pas nécessaire d’envoyer le flux audio correspondant. Ces informations peuvent également être utilisées à des fins de réponse visuelle afin que les utilisateurs (ou d’autres personnes) sachent qu’ils sont silencieux.
Les valeurs de silence correspondent directement aux valeurs d’activité. La valeur d’activité 0 est associée au silence total. La valeur d’activité 100 est associée à un bruit fort constant (maximum enregistrable selon le paramètre de gain actuel). Une fois le gain ajusté convenablement, votre valeur d’activité est inférieure à votre valeur de silence lorsque vous ne parlez pas. Inversement, lorsque vous parlez, la valeur d’activité dépasse celle du silence.
Cette méthode est similaire à la méthode
La suppression de l’écho vise à réduire les effets de la réaction acoustique créée lorsque le son qui sort du haut-parleur est capté par le microphone sur un même système. (Elle diffère de l’annulation de l’écho acoustique qui supprime entièrement la réaction acoustique. La méthode
En général, il est recommandé de supprimer l’écho lorsque le son capturé est lu via les haut-parleurs, et non via le casque. Si votre fichier SWF autorise les utilisateurs à spécifier le périphérique de sortie audio, il peut être souhaitable d’appeler
Les utilisateurs peuvent également ajuster ces paramètres dans le panneau Paramètres du microphone de Flash Player.
Si la propriété
Si vous utilisez le codec Nellymoser, vous pouvez définir le taux d’échantillonnage à l’aide de la méthode
Speex inclut la détection d’activité vocale (VAD) et réduit automatiquement la bande passante si aucune voix n’est détectée. Lorsque vous utilisez le codec Speex, Adobe vous conseille de définir le niveau de silence sur 0. Pour définir le niveau de silence, utilisez la méthode
Plus un message comporte d’images Speex, moins la bande passante requise est élevée, mais plus l’envoi du message est retardé. Moins d’images Speex augmente la bande passante, mais réduit le retard.
L’appel de la propriété
Remarque : pour connaître le nom du microphone actif, utilisez la propriété
Remarque : la vitesse réelle diffère légèrement de la valeur
Pour définir cette valeur, utilisez la méthode
Prise en charge du profil AIR : dans AIR 2.5, cette fonctionnalité est prise en charge uniquement sur les périphériques qui exécutent AIR pour TV. Voir
La vidéo affichée par l’objet StageVideo apparaît toujours dans une zone rectangulaire sur la scène, derrière tous les objets d’affichage Flash. L’objet StageVideo profite par conséquent de l’accélération matérielle tout en prenant en charge le cas d’affichage vidéo le plus courant : une zone d’affichage rectangulaire incrustée avec des commandes vidéo.
Il est plus avantageux d’utiliser un objet StageVideo qu’un objet Video, et cela à plusieurs égards :
Etant donné que l’objet StageVideo utilise les fonctionnalités matérielles du périphérique, il est soumis aux contraintes suivantes par rapport à un objet Video :
Voici un récapitulatif de la méthode d’utilisation d’un objet StageVideo pour lire une vidéo :
Si un événement
Si une vidéo en cours d’exécution passe en mode plein écran à partir d’un WMODE qui ne prend pas en charge la vidéo sur la scène, la vidéo sur la scène peut devenir disponible. De même, si l’utilisateur quitte le mode plein écran, la vidéo sur la scène peut devenir indisponible. Dans ces cas, l’objet vectoriel Stage.stageVideos change. Pour recevoir une notification de ce changement, écoutez l’événement StageVideoAvailabilityEvent.STAGE_VIDEO_AVAILABITY. REMARQUE : cette notification n’est pas disponible dans AIR 2.5 pour TV.
Avant d’appeler
Il n’est pas nécessaire d’utiliser cette méthode si un fichier vidéo contient uniquement des données audio ; la partie audio d’un fichier vidéo est automatiquement lue lors de l’appel de la méthode
Remarque : sur les périphériques AIR pour TV, une valeur de "BT.601" indique une lecture logicielle et une valeur de "BT.709" une lecture matérielle.
Les objets StageVideo s’affichent toujours derrière d’autres objets sur la scène. Si une plate-forme prend en charge plusieurs objets StageVideo, la propriété
Remarque : les périphériques AIR pour TV ne prennent en charge qu’un seul objet StageVideo. Par conséquent, cette propriété n’est pas applicable à ces périphériques. Il s’agit d’un espace réservé pour la prise en charge future sur d’autres périphériques.
Par défaut, la valeur
La valeur
Les valeurs valides de la propriété
Valeurs de panoramique comprises entre -1.0 et 1.0 selon l’échelle.
Si vous définissez la propriété
En outre, n’oubliez pas que pour utiliser un objet StageVideo, vous devez affecter un élément de l’objet vectoriel
Vous pouvez utiliser cette propriété, notamment pour garantir que l’utilisateur regarde la vidéo à la même hauteur que celle à laquelle elle a été capturée, quel que soit le format du rectangle
Vous pouvez utiliser cette propriété, notamment pour garantir que l’utilisateur regarde la vidéo à la même largeur que celle à laquelle elle a été capturée, quel que soit le format du rectangle
La position de la vidéo est calculée par rapport au coin supérieur gauche de la scène.
Les valeurs valides des propriétés
Le point de zoom est un facteur d’échelle. Par défaut, la valeur
Les valeurs valides de la propriété
Par exemple, une valeur
Lorsque vous définissez la propriété
Envisagez la situation suivante, où il est utile de définir une valeur différente pour les propriétés
Si vous définissez la propriété
En outre, n’oubliez pas que pour utiliser un objet StageVideo, vous devez affecter un élément de l’objet vectoriel
Pour utiliser l’annulation de l’écho acoustique, appelez
Les valeurs possibles sont les suivantes :
Dans Flash Player 10 et les versions ultérieures, ainsi que dans AIR 1.5 et les versions ultérieures, vous pouvez également utiliser cette classe pour gérer le son généré dynamiquement. Dans ce cas, l’objet Sound utilise la fonction que vous affectez à un gestionnaire d’événement
Pour contrôler des sons imbriqués dans un fichier SWF, utilisez les propriétés de la classe SoundMixer.
Remarque : l’API son d’ActionScript 3.0 est différente de celle d’ActionScript 2.0. Dans ActionScript 3.0, il est impossible de prendre des objets son et de les classer selon un ordre hiérarchique pour contrôler leurs propriétés.
Lorsque vous employez cette classe, tenez compte du modèle de sécurité suivant :
Néanmoins, dans Adobe AIR, le contenu du sandbox de sécurité
Pour plus d’informations concernant la sécurité, voir la rubrique du Pôle de développement Flash Player :
Une fois la fonction
Dans le constructeur, un champ de texte est créé pour les boutons Start et Stop. Lorsque l’utilisateur clique sur le champ de texte, la méthode
Cette méthode doit être employée lorsque vous gérez un son généré dynamiquement, à l’aide d’une fonction que vous affectez à l’événement
Les données audio sont placées dans le tableau d’octets cible, à partir de la position actuelle du tableau d’octets. Les données audio sont toujours exposées au format 44100 Hz stéréo. Le type d’échantillon est une valeur 32 bits en virgule flottante qui peut être convertie en nombre par la méthode
Les données mp3 sont chargées dans l’objet Sound
Pour tester cet exemple, ajoutez un fichier test.mp3 au même répertoire que le fichier SWF.
Une fois la fonction
Lorsque vous employez cette méthode, tenez compte du modèle de sécurité suivant :
Dans Flash Player versions 10 et ultérieures, si vous utilisez un Content-Type en plusieurs parties (par exemple « multipart/form-data ») qui contient un chargement (indiqué par un paramètre « filename » dans un en-tête « content-disposition » au sein du corps POST), l’opération POST est soumise aux règles de sécurité appliquées aux chargements :
Par ailleurs, la syntaxe de tous les Content-Type en plusieurs parties doit être correcte (selon la norme RFC2046). Si la syntaxe s’avère incorrecte, l’opération POST est soumise aux règles de sécurité appliquées aux chargements.
Dans Adobe AIR, le contenu du sandbox de sécurité de l’
Pour plus d’informations concernant la sécurité, voir la rubrique du Pôle de développement Flash Player :
Dans le constructeur, un objet
La méthode
Le constructeur appelle la méthode
Dans la méthode
Dans le constructeur, le son est chargé et un simple objet sprite rectangle
Deux écouteurs d’événement sont configurés pour répondre aux simples clics et aux doubles clics de souris. Si l’utilisateur utilise un simple clic, la méthode
Dans le constructeur, le fichier est chargé dans un bloc
La méthode
Notez que si le fichier est petit, mis en cache ou dans le répertoire local, la progression du chargement peut ne pas être perceptible. De même, le délai qui sépare le démarrage du chargement des données audio et celui du démarrage de la lecture des données chargées est déterminé par la valeur de la propriété
Les fichiers son MP3 peuvent contenir des balises ID3 qui fournissent des métadonnées sur le fichier. Si le son MP3 que vous chargez à l’aide de la méthode
Le tableau suivant décrit les balises ID3 qui sont prises en charge, mais ne possèdent pas de propriétés prédéfinies dans la classe Sound. Pour y accéder, appelez
Pour utiliser cette propriété, tenez compte du modèle de sécurité de Flash Player :
Néanmoins, dans Adobe AIR, le contenu du sandbox de sécurité
Pour plus d’informations concernant la sécurité, voir la rubrique du Pôle de développement Flash Player :
Dans le constructeur, le fichier audio est chargé mais n’est pas défini sur lecture. Ici, le fichier est supposé être dans le répertoire SWF. Le système doit être autorisé à lire les balises ID3 d’un fichier audio chargé. Si le fichier contient des informations ID3 alors que le programme n’est pas autorisé à les lire, un événement
Dans la méthode
Notez que aucune gestion d’erreur n’est écrite pour cet exemple et que si le contenu ID3 est long, le résultat peut dépasser la zone visible.
Remarque : la propriété
Pour le contenu de l’application dans AIR, la valeur de cette propriété est toujours
La première fois que vous appelez
La propriété
Dans certains cas, la valeur de la propriété
Si l’application utilise le paramètre par défaut
Utilisé avec Flash Media Server, l’objet Video permet d’envoyer une vidéo en direct capturée par l’utilisateur vers le serveur, puis de la diffuser du serveur vers d’autres utilisateurs. Grâce à ses fonctionnalités, vous pouvez développer des applications multimédias telles qu’un lecteur vidéo simple, un lecteur vidéo avec publication multipoint d’un serveur à un autre ou une application de partage vidéo pour une communauté d’utilisateurs.
Flash Player 9 et les versions ultérieures gèrent la publication et la lecture des fichiers FLV codés avec le codec Sorenson ou On2 VP6, et prennent également en charge un canal alpha. Le codec vidéo On2 VP6 utilise moins de largeur de bande que les technologies plus anciennes et offre des filtres supplémentaires de dégroupage et de deringing. Voir la classe flash.net.NetStream pour plus d’informations sur la lecture vidéo et les formats pris en charge.
Flash Player 9.0.115.0 et les versions ultérieures prennent en charge le mip-mapping pour optimiser les performances et la qualité du rendu au moment de l’exécution. Pour la lecture vidéo, Flash Player utilise l’optimisation mip-mapping si vous définissez la propriété
Comme pour les autres objets d’affichage de la liste d’affichage, vous pouvez contrôler différentes propriétés des objets Video. Par exemple, vous pouvez déplacer l’objet Video sur la scène à l’aide de ses propriétés
Pour lire un flux vidéo, utilisez
Si vous utilisez Flash Professional, vous pouvez également placer l’objet Video sur la scène au lieu de l’ajouter à l’aide de la méthode
Dans les applications AIR sur le poste de travail, la lecture d’une vidéo en mode plein écran désactive les fonctions d’économie d’énergie et d’écran de veille (lorsque celles-ci sont autorisées par le système d’exploitation).
Remarque : la classe Video n’étant pas une sous-classe de la classe InteractiveObject, elle ne peut pas distribuer d’événements de souris. Vous pouvez cependant appeler la méthode
Dans cet exemple, le code qui crée les objets Video et NetStream, et appelle
Une fois l’objet Video créé, appelez la méthode
Utilisez cette méthode pour associer une vidéo en direct capturée par l’utilisateur à l’objet Video. Vous pouvez diffuser la vidéo en direct localement sur l’ordinateur ou le périphérique sur lequel elle a été capturée, ou l’envoyer à Flash Media Server et utiliser ce serveur pour envoyer le flux aux autres utilisateurs.
Remarque : dans une application AIR for iOS, il est impossible d’afficher la caméra vidéo lorsque l’application a recours au mode de rendu sur GPU.
Il n’est pas nécessaire d’utiliser cette méthode si un fichier vidéo contient uniquement des données audio ; la partie audio des fichiers vidéo est automatiquement lue lors de l’appel de la méthode
La compression de la vidéo peut engendrer des artefacts indésirables. Vous pouvez utiliser la propriété
Blocking désigne les défauts visibles entre les limites des blocs qui composent chaque image vidéo. Ringing fait référence aux déformations observées au niveau des bords des éléments dans une image vidéo.
Deux filtres de dégroupage sont disponibles : l’un dans le codec Sorenson, l’autre dans le codec On2 VP6. Un filtre de deringing est également disponible lorsque vous utilisez le codec On2 VP6. Pour définir un filtre, utilisez une des valeurs suivantes :
Si une valeur supérieure à 2 est sélectionnée pour la vidéo alors que vous utilisez le codec Sorenson, le décodeur Sorenson applique par défaut la valeur 2.
Le filtre de dégroupage a un effet sur les performances globales de lecture et il n’est généralement pas nécessaire pour la vidéo à large bande passante. Si le système d’un utilisateur n’est pas assez puissant, il lui sera peut-être difficile de lire la vidéo avec un tel filtre activé.
Pour une lecture vidéo avec Flash Player 9.0.115.0 et versions ultérieures, définissez cette propriété sur
Vous pouvez utiliser cette propriété, par exemple, pour garantir que l’utilisateur regarde la vidéo au même format que celui auquel elle a été capturée, quel que soit le format réel de l’objet Video sur la scène.
Vous pouvez utiliser cette propriété, par exemple, pour garantir que l’utilisateur regarde la vidéo au même format que celui auquel elle a été capturée, quel que soit le format réel de l’objet Video sur la scène.