Bonjour,




Je débute dans la création de site web, et je galère comme un con pour intégrer une vidéo Flash (swf) dans mon code HTML avec SWFOBJECT.

J'arrive à avoir la vidéo, mais impossible d'avoir un quelconque bouton de contrôle.

J'ai suivi la doc (http://code.google.com/p/swfobject/wiki/documentation), lu ou écouté plusieurs tuto...(http://www.siteduzero.com/tutoriel-3-37523-des-videos-flv-sur-son-site-web.html#ss_part_2) etc...

J'ai donc 2 fichiers exporté par adobeFlash :
- video.swf
- SkinOverPlayMute.swf

Mon code qui permet de lancer ça dans ma page HTML :

 
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="448" height="251" id="myFlashContent" align="middle">
				<param name="movie" value="movies/video-even.swf" />
				<param name="loop" value="false" />
				<param name="quality" value="best" />
				<!--[if !IE]>-->
				<object type="application/x-shockwave-flash" data="movies/video-even.swf" width="448" height="252" align="middle">
					<param name="loop" value="false" />
					<param name="quality" value="best" />
				<!--<![endif]-->
					<a href="http://www.adobe.com/go/getflashplayer">
						<img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" />
					</a>
				<!--[if !IE]>-->
				</object>
				<!--<![endif]-->
			</object>


La vidéo se lance bien, mais je n'ai pas les boutons !! Comment faire le lien avec la skin "SkinOverPlayMute.swf" ?

J'avoue qu'à part changer les dimensions et mettre le lien des vidéos, je n'ai pas fait grand chose (copié collé lien cité plus haut).
J'ai essayé de mettre le lien du skin après "data" mais ca ne fonctionne pas non plus (les boutons s'affichent au milieu et la vidéo n'apparait pas...)

Merci d'avance pour votre aide...
Modifié par dionaea (17 Aug 2011 - 15:28)
Et pourquoi tu utilises swfobject? Ce n'est plus nécessaire: une vidéo encodée en mp4, Lecteur FLV et ça roule. Exemple. Comme dans l'exemple, on mettra un lien direct sur la vidéo pour les navigateurs ne disposant pas de flash.
Modifié par Patidou (17 Aug 2011 - 15:43)
Je suis parti sur cette solution car ca semblait être la plus populaire.

Je suis en train d'essayer ta méthode.

Cette fois j'ai le lecteur mais pas la vidéo !! Les liens sont pourtant bons... Smiley biggol
J'ai essayé de réencoder ma vidéo des fois que ca vienne de son codec.
J'ai téléchargé la vidéo de l'exemple en FLV pour essayer de la diffuser à la place de la mienne, ca ne fonctionne pas non plus.
J'ai essayé de mettre la vidéo à la racine avec mon index.html pour etre sur qu'il n'y ait pas de pb avec le chemin d'accès, idem...


Cette vidéo flash va me faire péter un cable...
Ça peut être pour diverses raisons : Est-ce qu'il y a des paramètres « flashvars » avec ton Player ? - Il se peut que ton contrôleur (un swf) soit charger à partir de paramètres sous « flashvars » Un simple boolean peut activé ou désactivé l'importation du swf (les contrôles Audio|vidéos) par exemple. C'est quand même possible.

Il faudrait plus de détails sur le Player et le swfobject. Le Lecteur est souvent suivi de documentation sur des aspects spécifiques et/ou unique au Lecteur.

..
Modifié par zardoz (17 Aug 2011 - 16:59)
Là tu m'as perdu...

J'ai réessayé SWFObject, avec le générateur de code, y'a rien à faire... J'ai la vidéo mais pas les boutons...
Bon, à priori ca vient de Flash CS5 !

J'importe ma vidéo en .fla et quand je la publie ou que je fais aperçu avant publication, il ne m'affiche déjà pas les controles !!
OK, j'ai trouvé.
Ca fonctionne.

Je pense que le player et la vidéo doivent être à la racine avec le fichier html qui appelle le swf.

Le code que m'a donné Flash CS5 et qui fonctionne est :

<div id="flashContent">
			<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="640" height="360" id="video-even" align="middle">
				<param name="movie" value="video-even.swf" />
				<param name="quality" value="high" />
				<param name="bgcolor" value="#ffffff" />
				<param name="play" value="true" />
				<param name="loop" value="true" />
				<param name="wmode" value="window" />
				<param name="scale" value="showall" />
				<param name="menu" value="true" />
				<param name="devicefont" value="false" />
				<param name="salign" value="" />
				<param name="allowScriptAccess" value="sameDomain" />
				<!--[if !IE]>-->
				<object type="application/x-shockwave-flash" data="video-even.swf" width="640" height="360">
					<param name="movie" value="video-even.swf" />
					<param name="quality" value="high" />
					<param name="bgcolor" value="#ffffff" />
					<param name="play" value="true" />
					<param name="loop" value="true" />
					<param name="wmode" value="window" />
					<param name="scale" value="showall" />
					<param name="menu" value="true" />
					<param name="devicefont" value="false" />
					<param name="salign" value="" />
					<param name="allowScriptAccess" value="sameDomain" />
				<!--<![endif]-->
					<a href="http://www.adobe.com/go/getflash">
						<img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Obtenir Adobe Flash Player" />
					</a>
				<!--[if !IE]>-->
				</object>
				<!--<![endif]-->
			</object>
		</div>

Salut »

Les deux swf à la racine du site c'est bien. Ce n'est pas une obligation mais c'est ok.
Toutefois si tu pouvais cibler la vidéo en externe ce serait mieux aussi.

Le chargement d'une vidéo directement dans le .fla rendra la taille de ton fichier très lourd. Par le fait même cibler la vidéo en externe avec un script AS c'est déjà mieux. Quand tu te sentiras prêt à charger des fichiers en externe, je te le suggère vraiment.

Bonne chance Smiley smile
..
Cibler en externe ? Je ne sais pas ce que ça veut dire Smiley decu

En revanche, je ne pense pas charger ma video à partir du fla puisque je l'ai supprimé et ca fonctionne toujours.

Mon fichier video.swf fait 60Ko et mon fichier video.flv fait 15Mo.



C'est bon ?
Elle fait 1m34s en 640x360.

Je la réduirais peut être à l'occasion...
Modifié par dionaea (18 Aug 2011 - 14:46)
C'est la raison justement de la programmation : si un jour la programmation en générale t'intéresse. Ça vaut vraiment le coup.

Tu parle ici de changement de dimension de la vidéo. En programmation c'est juste un changement de valeur (largeur et hauteur dans un fichier .as). Pour ce qui est de la dimension, oui ça vaut la peine. Un format raisonnable participe à la performance de l'application. Et l'application c'est aussi la zone HTML dans laquelle le Lecteur Flash est positionné.

Le seul fait d'offrir un mode fullscreen par exemple, permet de mieux fixer la dimension normale. Moi perso 640x360, je trouve ça un peu trop grand sur une page HTML. Mais c'est surtout une question personnelle. Mais aussi une question de performance en chargement des données et en lecture vidéographique.

C'est aussi la raison pour laquelle je t'encourage à la programmation, même si tu crois que c'est difficile. On gère mieux, et beaucoup mieux, par programme .as plutôt qu'en .fla.

C'est normal que ton .fla ne soit plus nécessaire. C'est que ton swf est compiler lors de la première exécution. Le .fla deviens donc inutile. Tout se passe dans le swf.

Je te souhaite bonne chance pour tes projets »

..
Modifié par zardoz (19 Aug 2011 - 22:31)
Vous vous prenez la tête pour rien, voici le code de mon site de test simplifié :

<object type="application/x-shockwave-flash" data="/lecteur_video/player_flv.swf" height="300" width="400">
	<param name="movie" value="/lecteur_video/player_flv.swf"/>
	<param name="wmode" value="transparent"/>
	<param name="allowFullScreen" value="true"/>
	<param name="FlashVars" value="title=vid%C3%A9o&amp;amp;margin=1&amp;showvolume=1&amp;showtime=1&amp;showfullscreen=1&amp;buttonovercolor=ff9900&amp;slidercolor1=cccccc&amp;slidercolor2=999999&amp;sliderovercolor=0066cc&amp;flv=/videos/ma_video.mp4&amp;width=400&amp;height=300"/>
</object>
<p><a href="/videos/ma_video.mp4">Vidéo en MP4</a></p>


On utilisera éventuellement des chemins absolus pour le lecteur et le fichier mp4.
Je suis entièrement d'accord avec toi Patidou » c'est ce que perso je fais toujours.
Sauf exceptions : et souvent dans un cadre de test.

Comme l'utilisation de AC_ActiveX.js ou encore AC_RunActiveContent.js, et évidemment le très connu SWFObject.js. Mais facultatif, je le reconnais.

C'est ce que je suggère aussi à dionaea. Smiley smile De simplifier le OBJECT, comme l'a fait Patidou.

Les fichiers (*.js) seront surtout utilisés si l'application Flash entretient une relation de communication avec l'extérieur. Comme Javascript par exemple (côté client) ou PHP (côté serveur). Mais souvent facultatif, puisque Flash est capable d'une grande autonomie.

Plus que nous n'oserions le croire.

..
Modifié par zardoz (19 Aug 2011 - 22:08)