Le multimédia Le multimédia - LabUnix
Transcription
Le multimédia Le multimédia - LabUnix
25/10/2011 Le multimédia INF2005– Programmation web– A. Obaid Le multimédia • Comprend le texte, l'image, le son et la vidéo. • Sur le web, les documents multimédia peuvent être embarqués dans les pages • Un support de plus en plus grand dans les navigateurs et HTML (notamment HTML 5). INF2005– Programmation web– A. Obaid 1 25/10/2011 Formats du multimédia • Les données multimédia sont stockées ans des fichier dits fichiers média dits fichiers • En fonction du type du document et la technique de codage/c, les documents sont stockés dans des fichiers qui ont différentes extensions: – .html, .gif, .jpg. wma, .mov, .mpg, .mp3, .ogg,… h l if j 3 INF2005– Programmation web– A. Obaid Images vectorielles • Représentées par des objets géométriques: – Polygones, segments, vecteurs, arcs de cercles, etc. Polygones segments vecteurs arcs de cercles etc • Chaque objet a des attributs: couleur, coordonnées, forme, etc. • Il ne sont pas formés de pixels comme dans le cas p p des bitmaps. • Exemples : Vizio, Corell, SVG,… INF2005– Programmation web– A. Obaid 2 25/10/2011 Propriétés des images • Résolution: nombre de pixels dans une image – Plus haute résolution = meilleure image. g – Exemple: • Haute résolution : 1600 x 1200 = 1.83 Mpixel • Basse résolution : 640 x 480 = 0.29 Mpixel • Taille de l'image: – Si chaque pixel occupe un octet (8 bits), une image de 640 x 480 occupe 300 kilo‐octets. • Profondeur des couleurs P f d d l – Nombre de bits pour stocker une couleur. • 1 bit, 8 bits, 16 bits ,24 bits,… INF2005– Programmation web– A. Obaid Tailles des images et transferts • Une image plus grande prend plus de temps de téléchargement • Techniques: – Augmenter le taux de compression – Réduire la profondeur des couleurs • Une image de 16 ou 256 couleurs pourrait faire l'affaire – Utiliser des petites images (icônes) comme pointeurs vers les vraies images les vraies images … images.html <ul> <li><A href="lama.jpg"> <img src="petite_lama.jpg" border=0> </a> <li><A href="vache.jpg"><img src="petite_vache.jpg" border=0> </a> </ul> … INF2005– Programmation web– A. Obaid 3 25/10/2011 Les couleurs • Noir et blanc (monochrome) : 1bit/pixel – Chaque pixel est stocké comme un bit (0 ou 1) • Niveaux de gris : 4 bits/pixel typiquement – Chaque pixel est représenté sur 4 bits. – La valeur exprime le niveau (0 – 15) • Du plus sombre (0) au plus clair (15) • Couleurs : 8, 16 ou 24 bits/pixel. Couleurs : 8 16 ou 24 bits/pixel – 8 bits/pixel : possibilité de 256 couleurs. – 16 bits/pixel: possibilité de 65,536 couleurs. – 24 bits/pixel: possibilité de 16,777, n216 couleurs. INF2005– Programmation web– A. Obaid Le images couleur • 8 ou 24 bits pour stocker l'information de couleur du p pixel. • Les images à 24 bits occupent un espace disque plus grand – Un fichier image de 640 x 480 à 24 bits/pixel occupe 900 kilo‐octets • La plupart des formats d'images incorporent des algorithmes de compression pour réduire la taille de l'image. INF2005– Programmation web– A. Obaid 4 25/10/2011 Compression d'images • Les techniques de compression partent d'un bitmap: – Tableau 2D formé de pixels représentant l'image. p p g • Techniques sans pertes (Lossless): – La compression garde l'image intacte – On peut la restituer avec la décompression – Exemple: GIF • Techniques avec pertes (lossy): – Certaines Certaines informations sont supprimées informations sont supprimées – La compression est plus importante (dépendamment de l'image). La taille du fichier est plus petite – Exemple: JPEG INF2005– Programmation web– A. Obaid Les images couleur 24 bits • Chaque pixel est représenté par 3 octets – Exemple: RGB représenté avec trois nombres hexa‐décimaux (ex. #77AA2C) • Composantes RGB (Red‐Green‐Blue), chacune codée sur 8 bits. – R: 256 niveaux ‐ de 0 à 255 (0x00‐0xFF) – G: 256 niveaux ‐ de 0 à 255 (0x00‐0xFF) – B: 256 niveaux ‐ de 0 à 255 (0x00‐0xFF) • Le codage RGB donne: – 256x256x256 = 16,777,216 couleurs: 256x256x256 = 16 777 216 couleurs: – Qui ne sont pas toutes présentes dans une même image ! • On peut réduire la taille du fichier en travaillant sur 8 bits uniquement. INF2005– Programmation web– A. Obaid 5 25/10/2011 Codes HTML de couleurs Nom HTML Red Green Blue White Turquoise Light Grey Dark Grey Dark Blue Black Light Purple Orange Dark Purple Brown Yellow Burgundy Forest Green Pink Grass Green … Code RG #FF0000 #00FF00 #0000FF #FFFFFF #00FFFF #C0C0C0 #808080 #0000A0 #000000 #FF0080 #FF8040 #800080 #804000 #FFFF00 #800000 #808000 #FF00FF #408080 couleurs.html INF2005– Programmation web– A. Obaid Palette des couleurs • Extraire des éléments 8 bits à partir de 24 bits. • Chaque octet est un pointeur vers une table (appelée Palette de couleurs) contenant des éléments de 24 bits • Les couleurs de la palette: Les couleurs de la palette: – Offertes par le système – Obtenues à partir des couleurs les plus fréquentes de l'image. INF2005– Programmation web– A. Obaid 6 25/10/2011 Palette de couleurs 24 bits 24 bits 8 bits BBE0E3 000000 FF3300 FFFFFF FFFFFF BBE0E3 BBE0E3 1 FF3300 808080 1 2 3 4 3 5 1 5 5 6 7 8 000000 2 FF3300 3 FFFFFF 99CC00 333399 0099FF 663300 0099FF 333399 0000FF 9 8 7 10 808080 4 5 FFFFFF 6 99CC00 7 333399 8 Fichier 0099FF 9 663300 10 0000FF Palette INF2005– Programmation web– A. Obaid Standard GIF • Graphics Interchange Format • Standard populaire sur le web • Produit des couleurs de qualité acceptable • Mieux adapté aux images avec peu de couleurs distinctes (i.e. graphiques, dessins, etc.) • Supporte l'entrelacement, l'animation et la transparence des couleurs. INF2005– Programmation web– A. Obaid 7 25/10/2011 Processus GIF • On réduit les couleurs de 24 bits à 8 bits • On code les répétitions par un algorithme (LZW) de O d l é étiti l ith (LZW) d codage des séquences qui se répètent: – On code les couleurs les plus fréquentes par des chaines plus courtes 1:8b ( 8 bleus) 2;1b‐7v (1 bleu, 7 verts) 3:1b‐7v 4:1b‐7v 5:1b‐3r‐4v 6:1b‐3r‐4v 7:1b‐3r ‐4v 8:1b‐1r‐1v‐1r‐1v‐1b‐1v‐1r INF2005– Programmation web– A. Obaid Entrelacement • Interlacing: Affichage progressif par entrelacement –P Permet de télécharger et afficher les images de manière t d télé h t ffi h l i d iè graduelle en plusieurs passes • Permet de prendre une décision avant le téléchargement complet de l'image: – Plus adapté pour les connexions à débit faible. INF2005– Programmation web– A. Obaid 8 25/10/2011 Transparence • Permet de rendre transparentes des portions d'une image – Ces portions sont définies par une couleur que l'on sélectionne ! • Tout ce qui est sous ces portions (en général l'arrière‐ plan) paraitra plan) paraitra INF2005– Programmation web– A. Obaid Standard JPEG • Joint Photographic Experts Group. Standard pour le web • Compression avec perte – Prend avantage de certaines limitations du système de vision humaine pour effectuer la compression • Permet de choisir un taux de compression – Haut taux = image de moindre qualité Haut taux = image de moindre qualité • Donne des images de bonne qualité sur diverses tailles d'écran INF2005– Programmation web– A. Obaid 9 25/10/2011 Processus JPEG • On transforme l'image par petits blocs • On applique une transformation mathématique O li t f ti thé ti (DCT) qui fait que les valeurs les plus fortes sont au début d'une matrice • On applique une numérisation pour enlever les valeurs faibles (perte) • On balaie la matrice résultante et applique un O b l i l i é l li algorithme de compression semblable à LZW INF2005– Programmation web– A. Obaid Processus JPEG http://img.tomshardware.com/us/1999/09/24/video_guide_part_3/dct.gif INF2005– Programmation web– A. Obaid 10 25/10/2011 Format TIFF • Tagged Image File Format • Format développé par Adobe et utilisé sur les plateformes Apple. • Peut stocker plusieurs types de profondeurs : 1‐bit, 8‐bit, 8 bit, 24 24‐bit, bit, etc. etc. • Il est sans perte mais on peut le faire fonctionner comme JPEG grâce à un tag interne INF2005– Programmation web– A. Obaid Format PNG • Portable Network Graphics • Conçu comme amélioration de GIF Conçu comme amélioration de GIF • Offre jusqu'à 48 bits de couleur • Offre des fonctions de : – Correction des images pour un meilleur affichage – Contrôle de la transparence – Entrelacement E t l t • De plus en plus reconnu par les fureteurs INF2005– Programmation web– A. Obaid 11 25/10/2011 Images sur le web • Une image sur le Web est de qualité réduite • Raisons: – Minimiser l'usage de la bande passante. – Diminuer les stockages • La qualité de l'image est aussi exprimée en PPI (Pixel Per Inch) ou DPI (Dot Per Inch) • Comparaison: – Résolution d'une image sur le web: 70 PPI. – Résolution d'une photo : 300 PPI ! INF2005– Programmation web– A. Obaid Inclusion des images • On peut inclure une image avec <img> • On peut également utiliser l'élément <object> INF2005– Programmation web– A. Obaid 12 25/10/2011 L'élément <OBJECT> • Une alternative pour inclure des images des cartes: <object height="100%" width="100%" type="image/jpeg" data="image.jpeg"> </object> <object data="planetes.gif" alt="Planetes" type="image/gif" usemap="#Map1"> <map name="Map1"> <a href="soleil.htm" shape="rect" coords="0,0,82,126"> Soleil </a> <a href="mercure.htm" shape="circle" coords="90,58,3"> Mercure</a> <a href="venus.htm" shape="circle" coords="124,58,8"> Venus</a> </map> </object> INF2005– Programmation web– A. Obaid L'audio sur le web • La voix est stockée sous forme numérique grâce à un mécanisme d'échantillonnage mécanisme d échantillonnage (numérisation). (numérisation) • Taux d'échantillonnage: – – – – Nombre d'échantillons par seconde (exprimé en Hertz) 44.1 KHz: Qualité CD 8 KHz : Qualité téléphone Nouveaux standards: 96 KHz (DVD) non web Nouveaux standards: 96 KHz (DVD) … non web. INF2005– Programmation web– A. Obaid 13 25/10/2011 Numérisation du son • Le signal analogique est échantillonné et la valeur du niveau du signal est stockée sou forme binaire niveau du signal est stockée sou forme binaire. • Taille de l’échantillon – Qualité téléphone: 8 bits. Débit 64 Kbps. Numérisation n 10110001 Niveau (0‐255) Un son INF2005– Programmation web– A. Obaid L'audio sur le web • Résolution: – Nombre de bits par échantillon • Plus de bits donne une meilleure qualité. – Exemples: 8 bits (téléphone), 16 bits (CD), … • Canaux: – Un canal pour les sons mono. 2 canaux pour les sons stéréo – Même plus (ex. 5 canaux pour Surrond sound) • Débit (en bps) – Dépend de la résolution, de la fréquence d'échantillonnage et du nombre de canaux. – Exemple: Fréquence : 8000 Hz. Résolution: 8 bits => Débit: 64 Kbps. INF2005– Programmation web– A. Obaid 14 25/10/2011 Streaming • Évite de télécharger le document au complet avant de le jouer: – Trop lent et demande trop d'espace disque • Streaming: – Jouer en continue à partir d'un serveur • Avantages: – Jouer juste après le début du streaming – Un meilleur contrôle sur la distribution des documents ‐ Un meilleur contrôle sur la distribution des documents Droit Droit d'auteur ! • Pseudo‐Streaming – Jouer le document à mi chemin à travers HTTP INF2005– Programmation web– A. Obaid Streaming • Mémoriser des données dans une mémoire tampon du récepteur pendant une période de temps avant de les jouer récepteur pendant une période de temps avant de les jouer • Télécharger de nouvelles données dans le buffer pour le garder suffisamment plein • Adapter le flot de données qui arrive à un certain débit (Débit Réseau) au flot d’affichage (Débit d’affichage) Application Média Débit Débit Réseau Débit d'affichage Serveur Média Buffer INF2005– Programmation web– A. Obaid 15 25/10/2011 Protocoles de streaming • RTP et UDP – Protocoles rapide pour le transport des données P t l id l t td d é – Utilisés par les produit Microsoft et QuikTime • RTSP: – Protocole de contrôle de l'affichage des fonction VCR. – Inclus dans les contrôles ActiveX INF2005– Programmation web– A. Obaid Audio WAF/AIFF • • • • Extensions: .wav,.aif, .aiff .wav ‐ wav Microsoft .aiff : Audio Interchage Aile Format – Apple Très bonne qualité de son: – Plusieurs canaux. Échantillonnage à 8 KHz et 11 KHz • Pauvres taux de compression • Moins adaptés pour le streaming Moins adaptés pour le streaming • .wav est supporté par Windows et tous les navigateurs (excepté Google Chrome) INF2005– Programmation web– A. Obaid 16 25/10/2011 Audio MP‐3 • Extension: .mp3 • Motion Picture Expert Group Motion Picture Expert Group ‐ Layer III (Audio) Layer III (Audio) – Standard originalement conçu pour la vidéo • Très bonne qualité • Utilise très peu d'espace disque – Jusqu'à 10% de la taille originale • Compression (avec perte) basée sur la perception des sons par les humains des sons par les humains • Famille de standards : • MPEG‐1 : vidéo VHS • MPEG‐2: vidéo pour la télé INF2005– Programmation web– A. Obaid Audio MIDI • • • • Extension: .mid M i lI t Musical Instrument Digital Interface t Di it l I t f Développé pour les instruments électroniques La musique est stockée sous forme de commandes qui produisent des notes – Les documents MIDI occupent très peu d'espace • Bons pour les sons de background : – Parfois ennuyeux ! • Non utilisé pour le streaming INF2005– Programmation web– A. Obaid 17 25/10/2011 Audio RealMedia RealMedia ou RealAudio Extensions: rm ra ram Extensions: .rm .ra, .ram Pionnier pour le streaming et les diffusions en direct Exige un serveur : RealServer Technologie ajustable aux débits des usagers Disponibilité du plugin RealPlayer sur différentes plateformes (Windows Mac Unix) et navigateurs plateformes (Windows, Mac, Unix) et navigateurs • Offre la possibilité de pseudo‐streaming • • • • • • INF2005– Programmation web– A. Obaid Audio Windows Media • Extensions: .wma, .asf • Un système de streaming U tè d t i • Les paramètres du média (Métafichier) sont stockés dans un fichier .asf (Active Streaming File) • Serveur disponible sur Windows • Le codec utilise plusieurs débits (16 Kbps – 192 Kbps) INF2005– Programmation web– A. Obaid 18 25/10/2011 Audio QuickTime Extension: .mov I t d it Introduit par Apple A l Streaming utilisant RTP et RTSP Container pour plusieurs types de média : Images (JPEG, GIF,…), Audio (MP3, …) et vidéo (MPEG‐ 1,Flash, …) • Disponible sur différentes plateformes et navigateurs • Intégré dans iTune de Apple • • • • INF2005– Programmation web– A. Obaid L'audio sur une page Web • On a plusieurs façons d'inclure des documents audio dans une page dans une page • On peut utiliser un hyperlien vers un document <a href="musique/chanson.wav"> Ecouter ! (3.4 MB) </a> <a href="musique/chant.wav"> <img src="jouemoi.gif"> </a> • On peut embarquer un document dans la page avec <embed> ou <object> <embed SRC="chanson.wav" align="center" > INF2005– Programmation web– A. Obaid 19 25/10/2011 La vidéo sur le web • Une vidéo consiste en des images (frames) qui ss'affichent affichent à un certain débit (frames/seconde ou à un certain débit (frames/seconde ou fps) • Nombre d' images par seconde (frame rate): – Standard TV: 30 images/seconde (fps) – Sur le web: 10 ou 15 fps , très acceptable. • Taille de chaque frame Taille de chaque frame – Impact sur la taille du document – Exemples: 640 pix x 480 pix, 160 pix x 120 pix INF2005– Programmation web– A. Obaid La vidéo sur le web • Taille du document: – Un gros handicap (1 min = n x10 Mo) U h di (1 i 10 M ) – Considérer le streaming • Résolution : – Nombre de bits/couleur dans chaque pixel • Ex: 8, 24 bits/pixel – Réduire ce nombre, réduit la taille du document Réduire ce nombre réduit la taille du document • Qualité: – Dépend essentiellement de la compression INF2005– Programmation web– A. Obaid 20 25/10/2011 La vidéo sur le web • Débit en bits/seconde – Débit Débit requis : dépend du fps et de la taille de chaque i dé dd f t d l t ill d h image – Débit offert: plus c'est haut, plus on peut jouer le document de manière continue: • Haute vitesse pour une meilleure Qualité de Service INF2005– Programmation web– A. Obaid Compression de la vidéo • Avec ou sans perte • Avec pertes: Avec pertes: – On se débarrasse d'informations superflues – On réutilise les informations statiques – Exemple: MPEG • Spatiale ou temporelle; – Spatiale: compression appliquée à chaque frame – Temporelle: ne pas répéter les informations qui n'ont pas changé durant les frames précédentes • On garde des frames de référence (ex. 1 frame sur 15) – Exemple: MPEG INF2005– Programmation web– A. Obaid 21 25/10/2011 Processus MPEG http://www.backupdvd.info/Members/video/MPEG_explained.shtml INF2005– Programmation web– A. Obaid Processus MPEG • On part de petit blocs qu'on représente par un p q ( ) format plus maniable que RGB (Y Cr Cb) – Y = 0.299R + 0.587 G + 0.114 B – Cr = ‐0.147R ‐ 0.289 G + 0.436B = 0.492(B ‐ Y) – Cb = 0.615R ‐0.515G ‐0.100B = 0.877(R‐Y) • On applique le codage JPEG • On ne garde que des frames significatives: – On déduit les autres du changement d'une frame à une autre par compensation INF2005– Programmation web– A. Obaid 22 25/10/2011 Les codecs • Outils de Compressions/Décompression (Codecs) permettant de coder et de restituer le document permettant de coder et de restituer le document multimédia pour l'afficher • Il y en existe un grand nombre. Voir: – http://en.wikipedia.org/wiki/Comparison_of_audio_codecs • Plusieurs sont disponibles sous forme de plug‐in. – Plugin: Plugin: "Un Un logiciel qui complète un logiciel hôte pour lui logiciel qui complète un logiciel hôte pour lui apporter de nouvelles fonctionnalités" INF2005– Programmation web– A. Obaid Vidéo QuickTime • • • • • • • Extension: .mov Format introduit par Apple Format introduit par Apple Existe aussi pour l'Audio Très disponible Devenu un container pour d'autres types de média Disponible en tant que plugin dans divers navigateurs S Supporte le streaming t l t i INF2005– Programmation web– A. Obaid 23 25/10/2011 Vidéo RealMedia Extension: .rm Standard industriel pour le streaming Standard industriel pour le streaming Son lecteur, RealPlayer, gratuit et très populaire Mêmes serveurs performants que RealAudio Bon pour les longs clips et la diffusions à un grand nombre de clients • Streaming via RTSP Streaming via RTSP • Pseudo‐streaming via HTTP • • • • • INF2005– Programmation web– A. Obaid Vidéo Windows Media • Extensions : .wmv, .asf • Crée par Microsoft. Disponible dans l Crée par Microsoft Disponible dans l'environnement environnement Windows. • Joue les fichiers Windows Media Video (.wmv) et autres formats comme AVI, MPEG et QuickTime. • Utilise le métafile (Advanced Streaming Format ‐ .asf) • Possède un serveur (Windows Media Server) et des outils de production de vidéos • Bon pour la diffusion de longs documents. INF2005– Programmation web– A. Obaid 24 25/10/2011 Vidéo Audio Video Interleave Extension: .avi P d it d Mi Produit de Microsoft ft Remplacé par .wmv On peut toujours les visionner avec QuickTime L'audio et la vidéo sont entrelacés. Ce qui donne de documents de bonne qualité • Bon pour les vidéos de courte durée (vidéoclips) sur le web • • • • • INF2005– Programmation web– A. Obaid Vidéo MPEG • Extensions: .mpg ou .mpeg • Moving Picture Expert Group Moving Picture Expert Group • Introduit d'abord dans l'environnement Unix. Désormais disponible sur toutes plateformes • Supporte trois types d'informations : Audio, Vidéo et Streaming • Donne des vidéos de qualité avec un bon taux de compression • Consiste en plusieurs standards: MPEG‐I, MPG‐2 (DVS), … INF2005– Programmation web– A. Obaid 25 25/10/2011 Ajout de documents multimédia • On peut utiliser des documents multimédia sur le web de différentes façons: web de différentes façons: – En ligne – Embarqué – Par Streaming INF2005– Programmation web– A. Obaid Multimédia en ligne • On peut utiliser un hyperlien: <a href="chanson.mp3"> Musique (1.2 Mo) </a> h f " h " ( ) / • Le document est affiché par le navigateur à l'aide d'une application d'appoint (Helper application) à l'extérieur ou un plugin dans la fenêtre du navigateur .. <body> <a href="young.mp3"> Musique </a> </body> … mm1.html INF2005– Programmation web– A. Obaid 26 25/10/2011 L'élément <embed> • Permet d'incorporer le document multimédia directement dans une page web dans une page web • Invoque un plugin installé sur la machine de l'utilisateur qui sera lancé et "jouera" le document • Spécifie des paramètres • Solution offerte par plusieurs navigateurs embed.html … <embed erc="movie.mov" width="200" height="200" align="center"> <br> <embed src=http://flash‐clocks.com/free‐flash‐clocks‐blog‐topics/free‐flash‐clock‐183.swf width="200" height="200" wmode="transparent" type="application/x‐shockwave‐flash"></embed> … INF2005– Programmation web– A. Obaid Fichiers de description • À partir d'un lien qui correspond à un document multimédia, le navigateur émet une requête de multimédia, le navigateur émet une requête de téléchargement à un serveur Web • Le serveur répond avec un fichier de description (Metafile) que le navigateur passe à une Application Média (ex. RealPlayer) • Cette application contacte un serveur média (ex. R lN RealNetwork) k) • Les données sont émises à partir du serveur média INF2005– Programmation web– A. Obaid 27 25/10/2011 Streaming • On utilise le metafile dans l'hyperlien ou <embed> • <a href href="monfichier.ram"> monfichier.ram > Fichier Audio</a> • <a href="filmStreaming.asx"> Voir le film </a> • Metafile: – Pour RealAudio, le metafile a l'extension .ram ou .ra. Il contient uniquement l'url du fichier média (extension .rm) – Pour WM, il a l'extension .asx et contient des information sur le processus de streaming: <asx version="3"> <entry> <ref href="chemin/filmStreaming.asf" /> </entry> </asx> INF2005– Programmation web– A. Obaid Streaming .. <object ID="spacetree" classid="clsid:CFCDAA03‐8BE4‐11cf‐B84B‐0020AFBBCCFA" height="160" width="320" border="0"> <param name=SRC" value="http://tanupack.com/music/orcs2.ra"> <param name="controls" value="all"> <embed src="http://tanupack.com/music/orcs2.ra" height="150" width="250" autostart="false" controls="all"> </object> .. real.html INF2005– Programmation web– A. Obaid 28 25/10/2011 Vidéos en ligne • On peut accéder au document grâce à son l'URL avec un hyperlien avec un hyperlien <a href=“enfant.mov" title=“Un document video ”> Un enfant qui joue (2 Mo) </a> • Avec <embed>, on invoque un plugin • Solution plus générale: utiliser l'élément <object> INF2005– Programmation web– A. Obaid Les plugins de la vidéo • Les plugin les plus utilisés: – – – – Adobe Flash Player y Adobe Reader Windows Media Player Apple Quicktime INF2005– Programmation web– A. Obaid 29 25/10/2011 La solution <embed> • Utilise un plug‐in pour jouer des documents • Solution non standard S l ti t d d • Nécessite l'installation du plugin‐in. – Sinon, l'usager doit l'obtenir et l'installer • Nécessite parfois l'installation d'un ActiveX pur offre le contrôle d'affichage. <embed src="chanson.mp3" <embed src "chanson mp3" width="455" height="230" > </embed> quick.html … <embed erc="movie.mov" autoplay="false" width="160" height="136" controller="true" border="10" PLUGINSPAGE=http://www.apple.com/quicktime > </embed> … INF2005– Programmation web– A. Obaid L'élément <embed> • Il possède plusieurs (trop !!) attributs standards src="URL": URL du document à jouer j width=n : largeur (en pixels) du cadre d'affichage height=n: hauteur (en pixels) du cadre d'affichage hidden="true|false": pour cacher l'interface du plug‐in pluginspace="URL" : Lien pour obtenir le plugin s'il n'est pas installé dans le navigateur. – loop="true|false": pour faire boucler le document – href="URL": prendre le document comme hyperlien. h f " " d l d h li – align="left|right|..": aligner le document – – – – – embed.html INF2005– Programmation web– A. Obaid 30 25/10/2011 L'élément <embed> • Attributs – border=n: largeur du cadre de la fenêtre d'affichage g g – hspac=n (vspace=n): espacement horizontal (vertical) du document dans le plugin – name="texte": nom de l'objet embarqué – type="texte": type MIME du document (ex. video/quicktime). Le serveur HTTP le fournit normalement. Sinon, il faut le préciser. INF2005– Programmation web– A. Obaid L'élément <embed> • Exemples: attributs propres à QuickTime: – autoplay="true|false": démarrage automatique du p y | g q document – controller="true|false": pour afficher les fonctions de contrôle – volume="n" : pourcentage du niveau du volume (par défaut 100%) – playeveryframe="true|false": permettre de sauter des frames • Il existe d'autres attributs spécifiques à certains navigateurs. INF2005– Programmation web– A. Obaid 31 25/10/2011 <embed> pour Flash <OBJECT classid='clsid:D27CDB6E‐AE6D‐11cf‐96B8‐444553540000' codebase='http://download.macromedia.com/pub/shockwave /cabs/flash/swflash.cab#version=6,0,0,0' width="320" height="240"> <param name='movie' value="http://servername/path/to/media.file"> <param name='quality' value="high"> <param name='bgcolor' value='#FFFFFF'> <param name='loop' value="true"> <EMBED src="http://servername/path/to/media.file" quality='high' bgcolor='#FFFFFF' width="320" height="240" l loop="true" type='application/x‐shockwave‐flash' "t " t ' li ti / h k fl h' pluginspage='http://www.macromedia.com/shockwave /download/index.cgi?P1_Prod_Version=ShockwaveFlash'> </EMBED> </OBJECT> INF2005– Programmation web– A. Obaid <embed> pour RealMedia <OBJECT classid='clsid:CFCDAA03‐8BE4‐11cf‐B84B‐0020AFBBCCFA' classid= clsid:CFCDAA03‐8BE4‐11cf‐B84B‐0020AFBBCCFA width="320" height="240"> <param name='src' value="http://www.lvbeethoven‐music.com/Beethoven‐ Midi/_RealAudio/Symphonie1_Opus21_Mvt1.ra"> <param name='autostart' value="true"> <param name='controls' value='imagewindow'> <param name='console' value='video'> <param name='loop' value="true"> <EMBED src="http://www.lvbeethoven‐music.com/Beethoven‐ Midi/_RealAudio/Symphonie1_Opus21_Mvt1.ra" width="320" id h "320" height="240" loop="true" type='audio/x‐pn‐realaudio‐plugin' controls='all' autostart="false"> </EMBED> </OBJECT> real3.html INF2005– Programmation web– A. Obaid 32 25/10/2011 <embed> pour QuickTime <OBJECT classid='clsid:02BF25D5‐8C17‐4B23‐BC80‐D3488ABDDC6B' width="320" height="255" codebase='http://www.apple.com/qtactivex/qtplugin.cab'> <param name='src' value="movie.mov"> ' ' l " i " <param name='autoplay' value="true"> <param name='controller' value="true"> <param name='loop' value="true"> <EMBED src="sample.mov" height="255" autoplay="false" controller="true" loop="true" LUGINSPAGE="http://www.apple.com/quicktime" > </EMBED> quick2.html </OBJECT> INF2005– Programmation web– A. Obaid <embed> pour Win Media <object id="MediaPlayer" height=46 classid="CLSID:22D6f312‐B0F6‐11D0‐94AB‐0080C74C7E95" standby="Loading Windows Media Player components..." type="application/x‐oleobject" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,7,1112"> <param name="filename" value="http://libsyn.com/media/jakeludington/mediablab_laptopsecurity.mp3"> <param name="Showcontrols" value="True"> <param name="autoStart" value="True"> yp pp / p y <embed type="application/x‐mplayer2" src="http://libsyn.com/media/jakeludington/mediablab_laptopsecurity.mp3" name="MediaPlayer"> </embed> </object> wma.html http://www.jakeludington.com/project_studio/20051015_embedding_windows_media_player_wma.html INF2005– Programmation web– A. Obaid 33 25/10/2011 L'élément <OBJECT> • Standard w3c pour inclure des objets multimédia de différents codages et plugins différents codages et plugins. • Solution plus générale que <embed> et permet d'inclure celle‐ci. • Permet de spécifier le plugin (pour l'inclure) grâce à l'attribut classid et autres paramètres <object classid="clsid:22D6F312‐B0F6‐11D0‐94AB‐0080C74C7E95"> <param name="fichierWave" value="appel.wav" /> </object> INF2005– Programmation web– A. Obaid L'élément <OBJECT> • Fournit le mécanisme d'alternative: – Si Si l'objet n'est pas restitué, le code entre <OBJECT> et l' bj t ' t tit é l d t <OBJECT> t </OBJECT> sera exécuté • On peut ainsi inclure <embed> comme alternative <object classid="…" …> <param src="movie.mov" > " i " <param > … <embed src="movie.mov" …> </embed> </object> INF2005– Programmation web– A. Obaid 34 25/10/2011 L'élément <OBJECT> • Jouer une image: <object height="100%" width="100%" type="image/gif" data="vache.gif"> </object> </object> • Afficher une iframe: • Jouer un son: <object type="text/html" height="50%" width="50%" data="http://www.uqam.ca."> </object> <object classid="clsid:22D6F312‐B0F6‐11D0‐94AB‐0080C74C7E95"> <param name="FileName" value="film.wav" /> </object> </object> • Jouer un vidéo: <object classid="clsid:22D6F312‐B0F6‐11D0‐94AB‐0080C74C7E95"> <param name="FileName" value="film.wmv" /> </object> INF2005– Programmation web– A. Obaid L'élément <OBJECT> <object data= "son.mp3" height="100" width= "60“ type="audio/mpeg" title= "Belle musique" > <param name= “src" value= "son.mp3" /> </object> <object classid="clsid:02bf25d5‐8c17‐4b23‐bc80‐d3488abddc6b" width="160" height="144" codebase="http://www.apple.com/qtactivex/qtplugin.cab"> <param name="src" value="appel.mov"> <param name="autoplay" value="true"> <param name="controller" value="false"> <embed src="movie.mov" width="160" height="144" autoplay="true" controller="false" pluginspage="http://www.apple.com/quicktime/download/"> </embed> </object> INF2005– Programmation web– A. Obaid 35 25/10/2011 L'élément <OBJECT> • Possède plusieurs attributs: – data="URL": référence du document à jouer j – type="texte": type MIME du document (ex. audio/midi, audio/wav, audi/mpeg, video/quicktime). Il est conforme à classid – classid= "ID" : un code identifiant le plugin (ActiveX) pour afficher le document . S'il n'est pas installé, le navigateur doit le chercher et l'installer. – width=n : largeur (en pixels) du cadre d'affichage g ( p ) g – height=n: hauteur (en pixels) du cadre d'affichage – codebase="URL" : URL de l'endroit où trouver le plugin – title:="texte": un texte descriptif INF2005– Programmation web– A. Obaid Attributs plugin de <OBJECT> • QuickTime: – classid="clsid:02BF25D5‐8C17‐4B23‐BC80‐D3488ABDDC6B" – codebase="http://www.apple.com/qtactivex/qtplugin.cab" • Windows Player: – classid="clsid:6BF52A52‐394A‐11D3‐B153‐00C04F79FAA6" – codebase="http://www.microsoft.com/Windows/MediaPlayer" • Real Audio: – classid="clsid:CFCDAA03‐8BE4‐11cf‐B84B‐0020AFBBCCFA – codebase= ?? codebase= ?? INF2005– Programmation web– A. Obaid 36