Tutoriel vidéo et HTML5

28 September 2012 par durand_y

La vidéo sur internet s’est beaucoup développée ces dernières années, avec l’explosion des réseaux sociaux et autres sites spécialisés dans le streaming (youtube, dailymotion).
L'arrivée d'HTML5 révolutionne le monde du web et plus particulièrement celui de la vidéo et de l'audio. Vous allez découvrir les possibilités offertes par cette nouvelle technologie, et plus particulièrement la balise vidéo dans HTML5.

La vidéo à l'ancienne

Avant pour lire une vidéo il fallait obligatoirement installer le plugin Adobe Flash, ou en installant d'autre plugin tel que Quick Time Player, qui nécessite que Quick Time soit installé sur la machine de l'utilisateur ce qui n'est pas forcément pratique, ou encore en utilisant d'autre lecteur media. Un bon aperçu des manières de procéder sur trouve sur le site du zéro.
Le code nécessitait l'utilisation de la balise embed pour utilisé le lecteur en adéquation avec le fichier à lire, puisque les lecteurs ne prenaient pas en charge le même format vidéo.

La balise vidéo

Les formats

La spécification sur les formats de vidéo standards n'étant toujours pas précisée, faute d'accord sur la technologie à utiliser, il faut donc se tourner vers les formats que les navigateurs gèrent nativement. La difficulté est là, car ils ne supportent pas tous les mêmes formats donc il est fortement probable que votre vidéo soit lue sur Firefox et pas sur internet explorer. Les formats supportés par les principaux navigateurs sont : Le MP4/h.264, le Ogg/Theora, WebM/vp8. Je vous conseille fortement de vous munir d'un convertisseur tel que Miro Video Converter pour pouvoir gérer les problèmes de compatibilité. Ci-dessous un récapitulatif des formats gérés par les navigateurs du marché.

Internet Explorer 9+ : Le mp4, le WebM mais il est nécéssaire d'installer les codecs au préalable.
Mozilla Firefox 4+ : Le Ogg et le WebM.
Google Chrome 6+ : Le Ogg et le WebM.
Opéra : Le Ogg et le WebM.
Safari: Le mp4.

Insérer une vidéo dans une page web

Contrairement aux précédentes manières d'insérer une vidéo. En HTML5 c'est assez simple si on veut juste un lecteur basique. Dans l'exemple suivant on va insérer une vidéo dans une page:

	<video controls src="VIDEO/Metallica with Big 4 jam - Overkill.mp4">Description alternative de la vidéo</video>

Vous aurez compris que l'attribut src indique le chemin jusqu'à la vidéo. Pour l'attribut controls on y reviendra après quand on verra plus en détails les attributs de la balise.
Dans cet exemple on peut voir que le format envoyé au navigateur est le mp4, et qu'au vu du récapitulatif juste au-dessus peu de navigateurs le supportent. D'où l'intérêt de posséder un logiciel comme Miro Video Converter qui peut convertir dans les autres formats supportés. Il est aussi possible de lire une vidéo provenant d'un site comme youtube ou autre.

	<video controls>
	<object type="application/x-shockwave-flash" width="425" height="355" data="http://www.youtube.com/watch?v=0U4r2_s59qk">
		<param name="movie" value="http://www.youtube.com/watch?v=0U4r2_s59qk" />
		<param name="wmode" value="transparent" />
	</object>

Dans la partie suivante on verra comment gérer efficacement plusieurs vidéos.

Le multi source

Comment faire du multi source ?
Il n'est pas nécessaire de mettre une balise vidéo par format puisque le fait d'ajouter une balise vidéo va automatiquement insérer un nouveau lecteur. Donc vous obtiendrez une page avec trois lecteurs vidéo mais, comme aucun des navigateurs ne supporte les trois formats, vous vous retrouverez avec des espaces vides ou affichant une erreur de format.
La bonne méthode consiste à laisser choisir au navigateur le format qu'il peut afficher.
Il suffit de rajouter la balise source dans la balise vidéo. Comme un exemple vaut mieux qu'un long discours:

	<video controls >
		<source src="VIDEO/Metallica with Big 4 jam - Overkill.mp4"/>
		<source src="VIDEO/Metallica with Big 4 jam - Overkill.theora.ogv"/>
		<source src="VIDEO/Metallica with Big 4 jam - Overkill.webmvp8.webm"/>
		the big 4 jam
	</video>

Voilà un exemple de code qui fonctionnera sur tous les navigateurs du marché.

Les différent attributs

Comme promis on arrive à une partie très intéressante et sensible, la définition des différents attributs de la balise vidéo qui vous permettront de mieux gérer votre affichage.
L'attribut controls permet d'afficher la barre de lecture, il suffit de mettre l'attribut controls dans la balise pour que la barre s'affiche. Si vous ne la voulez pas ne mettez pas l'attribut.
Les attributs width et height permette de définir la taille de l'image/lecteur vidéo tel que vous voulez qu'elle apparaisse. Toutefois prenez garde à la résolution de la vidéo, si vous l'affichez trop grand et que la résolution est de mauvaise qualité, vous aurez une vidéo médiocre et avec un taux de pixellisation assez important.
L'attribut autoplay="true" permet de charger et de lancer automatiquement la vidéo dès que la page est chargée. Mais prenez garde à son utilisation dans le cas où l'utilisateur possède une faible bande passante car cela peut incommoder les utilisateurs.
L'attribut autobuffer (Firefox 3.5 et 3.6) ou preload="true" ont la même fonction : charger en background la vidéo le temps que la page de votre site se charge. Comme avec autoplay faîtes attention avec l'utilisation de ces options. Il est préférable d'utiliser ces attributs quand vous êtes sûr que la vidéo sera visionnée dans tous les cas sinon vous consommerez de la bande passante inutilement.
L'attribut poster="chemin vers une image" affiche une image dans l'espace de la vidéo en attendant que la vidéo soit disponible à la lecture.
L'attribut loop="true" indique que la vidéo est jouée en boucle.
On peut retrouver aussi l'attribut type="type de vidéo" qui sert à spécifier le type MIME de la vidéo.
Un exemple un peu plus complet:

		<video controls width="800" height="600" autoplay="true">
			<source src="VIDEO/Metallica with Big 4 jam - Overkill.mp4" type="video/mp4"/>	
			<source src="VIDEO/Metallica with Big 4 jam - Overkill.webmvp8.webm" type="video/webm"/>
			<source src="VIDEO/Metallica with Big 4 jam - Overkill.theora.ogv" type="video/ogg"/>
			the big 4 jam
		</video>

Il est conseillé de mettre dans un .htacces les lignes suivantes.
AddType video/ogg .ogv
AddType video/mp4 .mp4
AddType video/webm .webm

Les effets CSS et JavaScript

Au même titre que toutes les autres balises du HTML5 la balise vidéo est stylisable avec CSS3. Vous pouvez ajouter des bordures arrondies, des ombres, centrer votre vidéo, etc. Toutes les options que vous souhaitez pour rendre votre vidéo plus agréable à regarder. Un élément encore plus intéressant est l'interaction apportée par le JavaScript et l’élément canvas. Vous pouvez par exemple afficher la vidéo dans un élément canvas, pour pouvoir interagir avec par la suite. Ou changer les couleurs de la vidéo, ou comme l'exemple trouvé ici ou en cliquant vous faites exploser la vidéo. Il y a beaucoup d'exemples sur les possibilités offertes par le mélange entre le canvas, la vidéo et le JavaScript.
Un exemple qui permet d'avoir une page présentable pour un site web avec du CSS et des images.
Code HTML:

	<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="utf-8" />
		<link rel="stylesheet" href="testvideo.css">
 
		<meta name="description" content="" />
		<meta name="viewport" content="width=device-width; initial-scale=1.0" />
	</head>
 
	<body>
 
		<header>
			<img src="Image/Metallica.jpg" alt="Metallica">
		</header>
 
		<section>
			<video controls width="800" height="600" autoplay="true">
				<source src="VIDEO/Metallica with Big 4 jam - Overkill.mp4" type="video/mp4"/>	
				<source src="VIDEO/Metallica with Big 4 jam - Overkill.webmvp8.webm" type="video/webm"/>
				<source src="VIDEO/Metallica with Big 4 jam - Overkill.theora.ogv" type="video/ogg"/>
				the big 4 jam
			</video>
		</section>		
	</body>
</html>

Code Css :

body 
{
	background-image: url("Image/background.jpg");
}
img
{
	position: absolute;
	left: 20%;
}
video
{
 
	border: inset;
	border-color: white;
	border-radius: 30px 30px 30px 30px;
	margin-top: 10%;
	margin-left: 26%;
}

Exemple de modification de vidéo avec le canvas

Nous allons voir maintenant la manière de procéder pour charger une vidéo dans un élément canvas. Cette opération est très utile car une fois la vidéo chargée il très simple d'accéder aux pixels et de modifier leurs propriétés. Dans l'exemple on va donc charger la vidéo dans un canvas à côté de la vidéo originale, et dans le canvas la vidéo aura les couleurs inversées. On peut assimiler l'opération au filtre inversion de couleur disponible sur Photoshop ou d'autres logiciels du genre.
Le code HTML :

	<video id="v" controls>
		<source src="VIDEO/South Park - Tenacious D - Kickapoo.mp4video.mp4" type="video/mp4"/>	
		<source src="VIDEO/South Park - Tenacious D - Kickapoo.webmvp8.webm" type="video/webm"/>
		<source src="VIDEO/South Park - Tenacious D - Kickapoo.theora.ogv" type="video/ogg"/>
		the big 4 jam
	</video>
	<canvas id="c"></canvas>

Comme d'habitude on gère les trois type de vidéos et on rajoute la balise canvas pour pouvoir charger notre vidéo dans le canvas.
Code CSS:

#c 
{
    position: absolute;
	top: 50%;
	left: 50%;
	margin: -180px 0 0 20px; 
}
 
#v 
{
   position: absolute;
	top: 50%;
	left: 50%;
	margin: -180px 0 0 -500px; 
}

Dans le CSS on se contente de placer la vidéo et le canvas l'un à côté de l'autre. Pour avoir la comparaison directe entre les deux vidéos. Maintenant passons au gros morceau le JavaScript.
Code JavaScript :

	document.addEventListener('DOMContentLoaded', function(){
    var v = document.getElementById('v');
    var canvas = document.getElementById('c');
    var context = canvas.getContext('2d');
    var back = document.createElement('canvas');
    var backcontext = back.getContext('2d');
 
    var cw,ch;
 
    v.addEventListener('play', function(){
        cw = v.clientWidth;
        ch = v.clientHeight;
        canvas.width = cw;
        canvas.height = ch;
        back.width = cw;
        back.height = ch;
        draw(v,context,backcontext,cw,ch);
    },false);
 
},false);
 
 
function draw(v,c,bc,w,h) {
    if(v.paused || v.ended) return false;
        bc.drawImage(v,0,0,w,h);
 
    var idata = bc.getImageData(0,0,w,h);
    var data = idata.data;
 
    for(var i = 0; i < data.length; i+=4) {
        var r = data[i];
        var g = data[i+1];
        var b = data[i+2];
 
        data[i] = 255 - r;
        data[i+1] = 255 - g;
        data[i+2] = 255 - b;
    }
    idata.data = data;
 
    c.putImageData(idata,0,0);
    setTimeout(function(){ draw(v,c,bc,w,h); }, 0);
}

A première vue, le code a l'air un peu imbuvable, mais ne vous inquiétez pas on va expliquer ce qu'il se passe dans toutes ces lignes et l'importance de chaque ligne.
Tout d'abord commençons par expliquer le début avec la première fonction.

	document.addEventListener('DOMContentLoaded', function(){
    var v = document.getElementById('v');
    var canvas = document.getElementById('c');
    var context = canvas.getContext('2d');
    var back = document.createElement('canvas');
    var backcontext = back.getContext('2d');

On ajoute un listener sur le document, il est lancé quand le document est chargé. On récupère la vidéo dans v, et le canvas dans canvas. On récupère les contextes pour pouvoir dessiner simplement les deux canvas.
Ici on utilise deux canvas. Un qui servira à effectuer les opérations (back) avant de les afficher sur le canvas.

v.addEventListener('play', function(){
        cw = v.clientWidth;
        ch = v.clientHeight;
        canvas.width = cw;
        canvas.height = ch;
        back.width = cw;
        back.height = ch;
        draw(v,context,backcontext,cw,ch);
    },false);

Dans cette partie rien de bien compliqué : on récupère au moment où on lance la vidéo la largeur et la hauteur de la vidéo pour donner à nos deux canvas la même taille que la vidéo. Puis on appelle la fonction qui est chargée du traitement sur l'image. Avec en paramètre la vidéo, les deux canvas et les largeurs et hauteurs des éléments.
Passons maintenant à la fonction qui fait le traitement de filtre.

function draw(v,c,bc,w,h) {
    if(v.paused || v.ended) return false;
        bc.drawImage(v,0,0,w,h);

On vérifie l'état de la lecture (pause ou arrivé en fin de lecture). Pour dessiner sur le canvas de fond l'image à l'arrêt.

var idata = bc.getImageData(0,0,w,h);
    var data = idata.data;
 
    for(var i = 0; i < data.length; i+=4) {
        var r = data[i];
        var g = data[i+1];
        var b = data[i+2];
 
        data[i] = 255 - r;
        data[i+1] = 255 - g;
        data[i+2] = 255 - b;
    }
    idata.data = data;
 
    c.putImageData(idata,0,0);
    setTimeout(function(){ draw(v,c,bc,w,h); }, 0);

Ici dans idata on récupère sous forme de tableau de pixel l'image affichée. Comme vous le savez un pixel est composé de 4 composantes, 3 de couleur (rouge, vert, bleu) et d'une composante de transparence alpha.
Dans l'objet idata que nous récupérons il y a un champ data qui est un canvaspixelarray, autrement dit c'est un tableau qui contient chaque composante de chaque pixel. On va donc parcourir ce tableau en avançant de quatre à chaque tour de boucle pour se retrouver sur la première composante du pixel suivant. On récupère dans les variables les valeurs des composantes. En suivant le principe de l'inversion de couleur on enlève la valeur de chaque composante à 255. Une fois que toutes les composantes ont été recalculées on remet le tableau changé dans l'objet idata. Puis on dessine sur le canvas principal la nouvelle image.

Conclusion

À travers ce tutoriel on a pu voir les nouveautés qu'apporte la balise vidéo dans HTML5. La facilité d'insérer des vidéos personnelles ainsi que celles venues d'autres sites. Combiné à la balise canvas et en réfléchissant un peu, on peut faire des choses tout à fait extraordinaires. En bref la vidéo et le canvas vont sûrement être source de beaucoup de très bonnes applications.

Tags: , ,

Laisser un commentaire


  • molle pack assembly instructions
  • polycom user manual
  • paper claw instructions
  • infant massage instructions
  • 1040 c instructions
  • above ground pool closing instructions
  • rice maker instructions
  • motorola ht1250 user manual
  • advance watch instructions
  • yugioh instructions
  • 990 tax form instructions
  • delta shower faucet repair instructions
  • sissy masturbation instruction
  • radio shack 3 in 1 remote instructions
  • marshmallow shooter instructions
  • sharp carousel microwave instructions
  • kenmore manual
  • div instruction
  • welding instructions
  • russian spiral beading instructions
  • instructional strategies for physical education
  • mindstorm robot instructions
  • instructional tubes
  • i-765 form instruction
  • instruction manuals for cameras
  • toshiba laptop user manuals
  • instruction for 1040x
  • call forwarding instructions
  • docubind p100 instructions
  • lpc2148 user manual
  • candyland game instructions
  • native american flute instruction
  • 2008 form 990 instructions
  • origami cardinal instructions
  • viagra instructions for use
  • ralph tyler basic principles of curriculum and instruction
  • ntvdm cpu has encountered an illegal instruction
  • pa-40 instructions
  • garage door opener programming instructions
  • methods of group exercise instruction
  • irs form 8621 instructions
  • origami instructions for kids
  • us bank wire transfer instructions
  • ept test instructions
  • 1911 disassembly instructions
  • hotpoint dishwasher instructions
  • risk lord of the rings instructions
  • moss out instructions
  • water softener installation instructions
  • metacognitive instruction
  • hp officejet j4580 manual
  • stouffer s french bread pizza cooking instructions
  • pa tax return instructions
  • energizer battery charger instructions
  • web design instruction
  • what is instructional design
  • swimp3 instructions
  • azo instructions
  • origami hexagon box instructions
  • instructional oral sex videos
  • safety instructions
  • zune manual
  • super colon cleanse instructions
  • motorola mts 2000 user manual
  • hulled barley cooking instructions
  • texas margin tax instructions
  • user manual example
  • gambling instruction
  • intarsia knitting instructions
  • opnav instruction 6000.1c
  • sharp atomic clock instructions spc364
  • new york state tax return instructions
  • dod instruction 1000.13
  • adobe photoshop instructions
  • instructional dvd
  • direct instruction special education
  • shut the box game instructions
  • origami deer instructions
  • origami rhino instructions
  • casio pathfinder 2632 manual
  • instructions for form w 2
  • free singer sewing machine manuals
  • sba form 413 instructions
  • motorola bluetooth user manual
  • logic pro user manual
  • instructions for 24 hour urine collection
  • schedule ssa instructions
  • down comforter washing instructions
  • stroking instructions
  • directv slimline dish installation instructions
  • bowling instructions for beginners
  • honda user manual
  • tassimo instructions
  • hossfeld bender instructions
  • facial instruction
  • epson workforce 610 user manual
  • fdic call report instructions
  • article on differentiated instruction
  • woodworking instruction
  • radio shack user manuals
  • instructions for form 8582
  • paper lantern instructions
  • evenflo car seat instruction manual
  • white basmati rice cooking instructions
  • disney uno instructions
  • user instructions
  • javma instructions for authors
  • instructional strategies for phonics
  • md form 500 instructions
  • tig welding instructions
  • pottery barn crib assembly instructions
  • tai chi instructional videos
  • radio installation instructions
  • lego 7676 instructions
  • instructional design software programs
  • form i-129f instructions
  • linksys wireless-g router instructions
  • washing machine instructions
  • thumler s tumbler instructions
  • reese friction sway control instructions
  • tooth extraction care instructions
  • instructions how to make paper airplanes
  • combitube instructions
  • i touch manual
  • wire wrapping instructions
  • hp photosmart instructions
  • lego gun building instructions
  • thomas train set instructions
  • monistat 3 instructions
  • rug braiding instructions
  • monopoly junior dig n dinos instructions
  • instructions for n-400
  • little tikes car bed assembly instructions
  • sony exmor r manual
  • sex instructionals
  • federal circuit jury instructions
  • form 8398 instructions
  • pops-a-dent instructions
  • instructional design - chicago
  • cubing differentiated instruction
  • ge universal remote control instructions
  • iolite vaporizer instructions
  • hogwarts castle lego instructions
  • west bend stir crazy popcorn popper instructions
  • shl instruction
  • ipod touch manual 4th generation
  • instructional practices in teaching
  • aztek airbrush instructions
  • trampoline instructions
  • improving instruction
  • journal of bacteriology instructions to authors
  • s corp instructions
  • steelcase 9000 assembly instructions
  • navy harp duty instruction
  • clock instructions
  • from 1040 instructions
  • ab swing instructions
  • elfa instructions
  • no sew tutu instructions
  • instructions for farkle
  • direct tv remote programming instructions
  • star wars transformers instructions
  • sony cybershot n50 manual
  • kettlebell instruction
  • mustang convertible top installation instructions
  • schedule b instruction
  • rice instructions
  • instructional design basics
  • instructions to build a chicken coop
  • instructions for irs form 6251
  • water bath canning instructions
  • camera instructions
  • selena jerk off instructions
  • youth baseball instruction
  • wilton instructions
  • garmin instruction manual
  • lycoming service instructions
  • altistart 48 user manual
  • samsung camera instructions
  • tying a bow tie instructions
  • heatilator gas fireplace instructions
  • massachusetts income tax instructions
  • annoy a tron instructions
  • breast pump instructions
  • brookstone grill alert instructions
  • r4 instructions
  • spyderco knife sharpener instructions
  • uscis i-765 instructions
  • logitech user manual
  • balloon hat instructions
  • avery dark t-shirt transfer instructions
  • irs 1023 instructions
  • 2010 toyota prius owners manual
  • aqua glass shower installation instructions
  • personal property consignment instruction guide
  • manual transmission gears
  • diving instruction
  • pennsylvania inheritance tax return instructions
  • pga golf instruction
  • nih final progress report instructions
  • allure flooring instructions
  • safety pin christmas tree instructions
  • instructions for form 1023
  • ste user manual
  • ny state it-201 instructions
  • weapons of math instruction
  • plos pathogens instructions to authors
  • roomba instructions
  • free hairbow instructions
  • oral sex instruction
  • anderson patio door installation instructions
  • tassimo coffee maker instructions
  • rose petal cottage assembly instructions
  • visual boy advance instructions
  • chicken dance instructions
  • well chlorination instructions
  • origami fortune cookie instructions
  • innotek instructions
  • shake n bake chicken instructions
  • wd my passport instructions
  • jack lalanne power juicer instructions
  • manual tube benders
  • how to differentiate instruction in mixed ability classrooms
  • fry 9c instructions
  • instruction sets
  • instructional design competencies
  • cast on knitting instructions
  • degrees in instructional design
  • blackberry storm user manual
  • capri sun wallet instructions
  • pa rct-101 instructions
  • rohn tower installation instructions
  • baked potato instructions
  • how do i differentiate instruction
  • software user manual template
  • ipod mini battery replacement instructions
  • motorcycle instruction permit colorado
  • msd 6al instructions
  • make your own lego instructions
  • python user manual
  • dance step instructions
  • driving instruction rochester ny
  • georgia state tax instructions
  • sony user manual
  • form 8880 instructions
  • ftp instructions
  • access instructions
  • microsoft excel instructions
  • newborn discharge instructions
  • golf instruction putting
  • lokar shifter instructions
  • ga form 600s instructions
  • casio manuals
  • form wh-347 instructions
  • irs form 8814 instructions
  • folding instructions for paper airplanes
  • 9th circuit model jury instructions
  • moen kitchen faucet repair instructions
  • 2009 form 5500 instructions
  • ge microwave instruction manual
  • instructions how to make a diaper cake
  • rit dying instructions
  • nikon d100 user manual
  • brothers sewing machine manual
  • shower installation instructions
  • logitech mouse instructions
  • suntrust wire instructions
  • form u4 instructions
  • sportline heart rate watch manual
  • hypercom t7 plus user manual
  • oral sex instruction videos
  • form 1099 general instructions
  • 1099 miscellaneous instructions
  • ruffler foot instructions
  • orgami instructions
  • tax instruction booklet
  • packing instruction 650
  • form 712 instructions
  • evenflo pack n play instructions
  • cake decorating instructions
  • basket weaving instructions
  • dermabond wound care instructions
  • sock animals instructions
  • math differentiated instruction
  • decoupage instructions
  • aha cpr instructions
  • singer industrial sewing machine manuals
  • instructions for dd form 1172
  • wisconsin department public instruction
  • paracord braiding instructions
  • ct 1040 instructions
  • faxing instructions
  • ohio state income tax instructions
  • touchpad instructions
  • sporting clays instruction
  • mitsubishi mr slim user manual
  • epson printer instructions
  • guided masturbation instruction
  • oster blender instructions
  • instruction booklets
  • crochet loop stitch instructions
  • zutter bind it all instructions
  • golf instruction for women
  • wanking instructions
  • e6b instructions
  • cell phone user manuals
  • what is phonics instruction
  • washington state office of superintendent of public instruction
  • irs form 8801 instructions
  • taboo instructions
  • waterfall card instructions
  • i 134 instructions
  • form 8038 instructions
  • spud gun instructions
  • ipod touch user manual
  • direct vs indirect instruction
  • indoor palm tree care instructions
  • instructional resource teacher
  • 100s instructions
  • rag quilting instructions
  • irs form 6198 instructions
  • wonder wash instructions
  • camcorder manuals
  • tai chi instructions
  • german language instruction
  • lego car instructions
  • msd 7531 instructions
  • abortion aftercare instructions
  • irs w-8ben instructions
  • chain mail instructions
  • bowflex assembly instructions
  • instruction 1120
  • teeth whitening instructions
  • zip-line instructions
  • lawn mower manual
  • diaper genie instruction manual
  • apple iphone instruction manual
  • u s passport instructions
  • dod instruction 1332.38
  • 3d snowflake instructions
  • amoxicillin 500 mg dosage instructions
  • instructions on how to insert a tampon
  • dog grooming instructions
  • differentiated instruction lesson plan template
  • ipod nano instruction booklet
  • paper pinwheel instructions
  • form w 8ben instructions
  • brother fax 575 instructions
  • nucc instruction manual
  • fetch instruction
  • origami polyhedra instructions
  • 1045 instructions
  • hasbro game instructions
  • telephone instructions
  • writing user manual
  • droid eris user manual
  • federal income tax 1040ez instructions
  • butterfly loom instructions
  • uno spin instruction manual
  • maryland form 503 instructions
  • zojirushi instructions
  • instructional design for online learning
  • hair clip instructions
  • samsung cell phone instructions
  • robocopy instructions
  • motorola bluetooth instructions
  • instructional fair
  • macrame bracelets instructions
  • crest white strips instructions
  • pa 40 instructions
  • verizon call block instructions
  • mason bee house instructions
  • explicit instruction definition
  • form 941x instructions
  • origami crane folding instructions
  • general instruction of the roman missal
  • topsy turvy instructions
  • canon powershot sx30 manual
  • form 5498 instructions
  • linksys wireless router instructions
  • instruction targeted for tabe success
  • kill a watt instructions
  • blue bowl instructions
  • instruction sex
  • driving instructions and map
  • navy instructions
  • chicago flight instruction
  • creation instruction association
  • nec user manual
  • bingo game instructions
  • wisconsin superintendent of public instruction
  • optimal optimus instructions
  • drumbone instructions
  • stauer atomic watch instructions
  • arizona 140ez instructions
  • form u-4 instructions
  • talking watch instructions
  • douche instructions
  • hypercom t7plus manual
  • blender user manual pdf
  • wisconsin schedule h instructions
  • instructions for knitting a hat
  • instructional design elearning
  • anal instruction
  • texas pattern jury instructions
  • liquid nails instructions
  • coralife protein skimmer instructions
  • private music instruction
  • the instruction at referenced memory at the memory could not be written
  • tomtom xl manual
  • paternity leave navy instruction
  • irs forms instructions
  • mirro pressure canner instruction manual
  • transcendental meditation instructions
  • room essentials assembly instructions
  • dynamic instructional design model
  • workout instructions
  • best sex instruction
  • edge finder instructions
  • volleyball scorebook instructions
  • mature jerk off instructions
  • it 201 tax form instructions
  • origami scorpion instructions
  • tv ears instructions
  • instructions for tax form 1040
  • instructions for clue
  • jewelry making instructions
  • occ call report instructions
  • sch a instructions
  • breast bondage instructions
  • canon powershot sd890 is manual
  • federal jury practice and instructions
  • irs form 1116 instructions
  • instructional technology resources
  • ikea bed instructions
  • medrol dosepak instructions
  • crossbow instructions
  • theme-based instruction
  • armitron wr330 instructions
  • glock 22 instruction manual
  • federal income tax form 1040 instructions
  • 1065 k 1 instructions
  • curriculum and instruction degree
  • xslt processing instruction
  • cigar box purses instructions
  • ihome alarm clock instructions
  • rowenta iron self cleaning instructions
  • classroom instruction videos
  • vibrator instructions
  • differentiating instruction for students with learning disabilities
  • craftlace instructions
  • tissot t-touch instructions
  • origami squid instructions
  • mac user manual
  • instructional guide template
  • wisconsin form 4 instructions
  • mr coffee coffee maker cleaning instructions
  • sse instruction
  • fly tying patterns instructions
  • timex triathlon watch instructions
  • memorandum of instruction format
  • belkin n wireless router user manual
  • softball hitting instructions
  • dd form 1348-1a instructions
  • instructions 1040a
  • leupold scope mounting instructions
  • bra measurement instructions
  • brother p touch 1180 instructions
  • tie dye instructions for kids
  • jiu-jitsu instructional videos
  • paper tole instructions
  • disadvantages of direct instruction
  • concept oriented reading instruction
  • viking knit instructions
  • nec aspire user manual
  • curriculum instruction degree
  • research-based math instruction
  • energizer rechargeable batteries instructions
  • tomtom go 720 manual
  • ge universal remote instructions
  • worm factory instruction manual
  • brighthouse remote instructions
  • slingbox pro hd user manual
  • scotch tl901 thermal laminator instructions
  • bean bag toss instructions
  • singer sewing machine repair manual
  • lg air conditioner user manual
  • instructional strategies for autism
  • computer managed instruction
  • form w-2c instructions
  • process instructions
  • stanley 45 instructions
  • managing small group instruction
  • hitting instruction
  • types of classroom instruction
  • theories of instruction
  • moneygram instructions
  • washington state office of the superintendent of public instruction
  • munchkin sterilizer instructions
  • instructions schedule k 1