<?xml version="1.0" encoding="ISO-8859-1" ?>
<feed xmlns="http://purl.org/atom/ns#" version="0.3"
	  xmlns:dc="http://purl.org/dc/elements/1.1/"
	  xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	  xml:lang="fr">

  <title>jeanphiBlog</title>
  <link rel="alternate" type="text/html" href="http://jeanphiblog.media-box.net/dotclear/index.php"/>
  <tagline type="text/plain" mode="escaped">Flash Media Server - Flash 8 - Flash MX 2004 - Video - Tutoriaux - ActionScript</tagline>
  
  <modified>2010-01-23T19:00:38+01:00</modified>
  <generator version="1.2.3" url="http://www.dotclear.net/">DotClear</generator>
  
  <sy:updatePeriod>daily</sy:updatePeriod>
  <sy:updateFrequency>1</sy:updateFrequency>
  <sy:updateBase>2010-01-23T19:00:38+01:00</sy:updateBase>
  
<entry xml:lang="fr">
  <title>FLASH CS4 : Fullscreen AS3...</title>
  <link rel="alternate" type="text/html" href="http://jeanphiblog.media-box.net/dotclear/index.php?2010/01/23/337-flash-cs4-fullscreen-as3" />
  <issued>2010-01-23T19:00:38+01:00</issued>
  <modified>2010-01-23T19:00:38+01:00</modified>
  <id>http://jeanphiblog.media-box.net/dotclear/index.php?2010/01/23/337-flash-cs4-fullscreen-as3</id>
  <author><name>jeanphilippe</name></author>
  <dc:subject>Flash CS4</dc:subject>
  <summary>Exemple basique de Video en fullscreen en AS3...</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;Exemple basique de Video en fullscreen en AS3...&lt;/p&gt; &lt;p&gt;Le code :&lt;br /&gt;&lt;/p&gt;

&lt;pre&gt;import flash.events.MouseEvent;
var fullscreen:Boolean=false;
stage.addEventListener(MouseEvent.CLICK, clickHandler);
function clickHandler(event:MouseEvent):void {
if (! fullscreen) {
fullscreen=true;
stage&lt;a href=&quot;&amp;quot;displayState&amp;quot;&quot;&gt;&quot;displayState&quot;&lt;/a&gt;=&quot;fullScreen&quot;;
} else {
fullscreen=false;
stage&lt;a href=&quot;&amp;quot;displayState&amp;quot;&quot;&gt;&quot;displayState&quot;&lt;/a&gt;=&quot;normal&quot;;
}
}&lt;br /&gt;&lt;/pre&gt;

&lt;p&gt;&lt;br /&gt;
&lt;a href=&quot;http://jeanphiblog.media-box.net/download/fullscreen/&quot;&gt;le lien pour voir&lt;/a&gt;&lt;/p&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>FLASH CS4 : Publication d'un swf à 100% + footer en flash...</title>
  <link rel="alternate" type="text/html" href="http://jeanphiblog.media-box.net/dotclear/index.php?2009/12/20/336-flash-cs4-publication-a-100-footer" />
  <issued>2009-12-20T16:55:42+01:00</issued>
  <modified>2009-12-20T16:55:42+01:00</modified>
  <id>http://jeanphiblog.media-box.net/dotclear/index.php?2009/12/20/336-flash-cs4-publication-a-100-footer</id>
  <author><name>jeanphilippe</name></author>
  <dc:subject>Flash CS4</dc:subject>
  <summary>Souvent cette question revient sur Mediabox ...
Comment intégrer un "footer" sur une animation flash publiée à 100%. (très chiant à faire en html à base de div)</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;Souvent cette question revient sur &lt;a href=&quot;http://connexion.mediabox.fr/&quot;&gt;Mediabox &lt;/a&gt;...&lt;br /&gt;
Comment intégrer un &quot;footer&quot; sur une animation flash publiée à 100%. (très chiant à faire en html à base de div)&lt;/p&gt; &lt;p&gt;Le truc le plus simple est d'intégrer directement ce footer dans le flash et de publier l'animation à 100%.&lt;br /&gt;&lt;br /&gt;
Voici un exemple en code et en visuel :&lt;br /&gt;&lt;/p&gt;

&lt;pre&gt;stage.scaleMode=StageScaleMode.NO_SCALE;
stage.align=StageAlign.TOP_LEFT;
fond.width=stage.stageWidth;
fond.height=stage.stageHeight;
avat.x=stage.stageWidth-70;
avat.y=stage.stageHeight-20;
footer.x=0;
footer.y=stage.stageHeight;
footer.barre.width=stage.stageWidth;
stage.addEventListener(Event.RESIZE, stageResized);
function stageResized(event:Event):void {
fond.width=stage.stageWidth;
fond.height=stage.stageHeight;
footer.x=0;
footer.y=stage.stageHeight;
footer.barre.width=stage.stageWidth;
avat.x=stage.stageWidth-70;
avat.y=stage.stageHeight-20;
}&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;

&lt;p&gt;&lt;a href=&quot;http://jeanphiblog.media-box.net/download/footer.swf&quot;&gt;le visuel ici...&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://jeanphiblog.media-box.net/download/footer.zip&quot;&gt;les sources ici...&lt;/a&gt;&lt;br /&gt;
On recréé pas la roue, mais ça peut aider :)&lt;br /&gt;
&lt;a href=&quot;http://jeanphiblog.media-box.net/download/footer2.swf&quot;&gt;avec un tween ça donne ça...&lt;/a&gt;&lt;/p&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>FLASH CS5 : Pas de beta publique pour Flash Professional CS5...</title>
  <link rel="alternate" type="text/html" href="http://jeanphiblog.media-box.net/dotclear/index.php?2009/12/18/335-flash-cs5-pas-de-beta-publique-pour-flash-professional-cs5" />
  <issued>2009-12-18T14:42:55+01:00</issued>
  <modified>2009-12-18T14:42:55+01:00</modified>
  <id>http://jeanphiblog.media-box.net/dotclear/index.php?2009/12/18/335-flash-cs5-pas-de-beta-publique-pour-flash-professional-cs5</id>
  <author><name>jeanphilippe</name></author>
  <dc:subject>Flash CS5</dc:subject>
  <summary>La nouvelle est tombée hier sur le blog Adobe et Adobe a changé ses plans; il n'y aura donc pas de beta publique pour Flash Professional CS5.</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;La nouvelle est tombée hier sur le &lt;a href=&quot;http://blogs.adobe.com/flashplatform/&quot;&gt;blog Adobe&lt;/a&gt; et Adobe a changé ses plans; il n'y aura donc pas de beta publique pour Flash Professional CS5.&lt;/p&gt; &lt;p&gt;&lt;a href=&quot;http://blogs.adobe.com/flashplatform/2009/12/there_will_not_be_a_beta_for_f.html&quot;&gt;Plus de détails dans ce post de Adrian Ludwig...&lt;/a&gt;&lt;/p&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>FLASH CS4 : TileList component, popup centré...</title>
  <link rel="alternate" type="text/html" href="http://jeanphiblog.media-box.net/dotclear/index.php?2009/12/09/334-flash-cs4-flash-cs4-tilelist-component-popup-centre" />
  <issued>2009-12-09T20:36:58+01:00</issued>
  <modified>2009-12-09T20:36:58+01:00</modified>
  <id>http://jeanphiblog.media-box.net/dotclear/index.php?2009/12/09/334-flash-cs4-flash-cs4-tilelist-component-popup-centre</id>
  <author><name>jeanphilippe</name></author>
  <dc:subject>Flash CS4</dc:subject>
  <summary>Suite à mon poste précédent, traitant du composant TileList sur Flash Developper Center, j'ai un peu optimisé le truc...</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;Suite à mon poste précédent, traitant du composant TileList sur &lt;a href=&quot;http://www.adobe.com/devnet/flash/quickstart/tilelist_component_as3/&quot;&gt;Flash Developper Center&lt;/a&gt;, j'ai un peu optimisé le truc...&lt;/p&gt; &lt;p&gt;Maintenant :&lt;br /&gt;
l'image s'ouvre dans un popup qui s'adapte à la taille de l'image&lt;br /&gt;
le popup est centré&lt;br /&gt;
le nom de l'image s'affiche dans la window&lt;br /&gt;
le javascript est intégré dans flash&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;http://jeanphiblog.media-box.net/download/TileListPopup3.swf&quot;&gt;l'exemple en ligne ici&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://jeanphiblog.media-box.net/download/TileListPopup3.zip&quot;&gt;le fichier source ici&lt;/a&gt;&lt;/p&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>FLASH CS4 : Popup AS3 ExternalInterface...</title>
  <link rel="alternate" type="text/html" href="http://jeanphiblog.media-box.net/dotclear/index.php?2009/12/08/333-flash-cs4-popup-as3-avec-le-javascript-inside" />
  <issued>2009-12-08T21:04:37+01:00</issued>
  <modified>2009-12-08T21:04:37+01:00</modified>
  <id>http://jeanphiblog.media-box.net/dotclear/index.php?2009/12/08/333-flash-cs4-popup-as3-avec-le-javascript-inside</id>
  <author><name>jeanphilippe</name></author>
  <dc:subject>Flash CS4</dc:subject>
  <summary>Comment créer des Popups javascript en as3...</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;Comment créer des Popups javascript en as3...&lt;/p&gt; &lt;p&gt;Le cas le plus simple :&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;

&lt;pre&gt;import flash.external.ExternalInterface;
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
var monJavaScript:XML = 
&amp;lt;script&amp;gt;
&amp;lt;![CDATA[
function global(){
function createpopup (){ 
window.open(&quot;http://jeanphiblog.media-box.net&quot;,&quot;win&quot;,&quot;height=400,width=600,toolbar=no,scrollbars=yes&quot;); 
}; 
createpopup(); 
}
]]&amp;gt;
&amp;lt;/script&amp;gt;;;
btn.addEventListener(MouseEvent.CLICK,onClick);
function onClick(e:Event):void {
ExternalInterface.call(monJavaScript);
}&lt;/pre&gt;

&lt;p&gt;&lt;a href=&quot;http://jeanphiblog.media-box.net/download/createpopup1.swf&quot;&gt;exemple1&lt;/a&gt;
&lt;br /&gt;&lt;br /&gt;
Le deuxieme exemple nous permet de créer un popup centré dans l'écran :&lt;br /&gt;&lt;/p&gt;

&lt;pre&gt;import flash.external.ExternalInterface;
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
var monJavaScript:XML = 
&amp;lt;script&amp;gt;
&amp;lt;![CDATA[
function global(){
function popupcentree(page,largeur,hauteur,options) 
{ 
var top=(screen.height-hauteur)/2; 
var left=(screen.width-largeur)/2;
window.open(page,&quot;&quot;,&quot;top=&quot;+top+&quot;,left=&quot;+left+&quot;,width=&quot;+largeur+&quot;,height=&quot;+hauteur+&quot;,&quot;+options); 
} 
popupcentree(&quot;http://jeanphiblog.media-box.net&quot;,800,600,&quot;menubar=no,scrollbars=no,statusbar=no&quot;);
}
]]&amp;gt;
&amp;lt;/script&amp;gt;;
btn.addEventListener(MouseEvent.CLICK,onClick);
function onClick(e:Event):void {
ExternalInterface.call(monJavaScript);
}&lt;/pre&gt;

&lt;p&gt;&lt;br /&gt;
&lt;a href=&quot;http://jeanphiblog.media-box.net/download/createpopup2.swf&quot;&gt;exemple2&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;
La seule chose à modifier dans votre page html sera le paramètre de&amp;nbsp;: allowScriptAccess&lt;br /&gt;
Il faudra remplacer tous les samedomain par always...&lt;/p&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>FLASH CS4 : TileList component, enlarge thumbnails...</title>
  <link rel="alternate" type="text/html" href="http://jeanphiblog.media-box.net/dotclear/index.php?2009/12/06/332-flash-cs4-tilelist-component-enlarge-thumbnails" />
  <issued>2009-12-06T10:12:01+01:00</issued>
  <modified>2009-12-06T10:12:01+01:00</modified>
  <id>http://jeanphiblog.media-box.net/dotclear/index.php?2009/12/06/332-flash-cs4-tilelist-component-enlarge-thumbnails</id>
  <author><name>jeanphilippe</name></author>
  <dc:subject>Flash CS4</dc:subject>
  <summary>Suite à une demande faite par un des lecteurs, dans ce tutorial sur Flash Developper Center, j'ai rajouté dans le code initial, le fait de pouvoir afficher l'image en grand en cliquant sur les vignettes du composant TileList.</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;Suite à une demande faite par un des lecteurs, dans ce tutorial sur &lt;a href=&quot;http://www.adobe.com/devnet/flash/quickstart/tilelist_component_as3/&quot;&gt;Flash Developper Center&lt;/a&gt;, j'ai rajouté dans le code initial, le fait de pouvoir afficher l'image en grand en cliquant sur les vignettes du composant TileList.&lt;/p&gt; &lt;p&gt;J'ai seulement rajouté un composant Loader dans la bibliothèque et j'ai modifié le code ainsi :&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;

&lt;pre&gt;import fl.controls.TileList;
import fl.controls.ScrollBarDirection;
import fl.containers.UILoader;
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
// create TileList instance
var myTileList:TileList = new TileList();&lt;/pre&gt;


&lt;pre&gt;// add content to the TileList
myTileList.addItem({label:&quot;Montreal&quot;, source:&quot;http://www.helpexamples.com/images/montreal/images/IMG_5057.jpg&quot;});
myTileList.addItem({label:&quot;Swan&quot;, source:&quot;http://www.helpexamples.com/flash/images/gallery1/images/pic11.jpg&quot;});
myTileList.addItem({label:&quot;Sunset&quot;, source:&quot;http://www.helpexamples.com/flash/images/gallery1/images/pic14.jpg&quot;});
myTileList.addItem({label:&quot;Gate&quot;, source:&quot;http://www.helpexamples.com/flash/images/gallery2/images/IMG_1592.jpg&quot;});
myTileList.direction=ScrollBarDirection.HORIZONTAL;// set scroll direction&lt;/pre&gt;


&lt;pre&gt;// set column and row values
myTileList.columnWidth=200;
myTileList.rowHeight=140;
myTileList.columnCount=1;
myTileList.rowCount=2;
myTileList.width=200;
myTileList.height=295;
myTileList.x=10;
myTileList.y=10;&lt;/pre&gt;


&lt;pre&gt;// add to the display (Stage)
addChild(myTileList);
myTileList.addEventListener(Event.CHANGE, thumbnailClicked);
function thumbnailClicked(event:Event):void {
myUILoader.source=event.target.selectedItem.source;
}
var myUILoader:UILoader = new UILoader();
myUILoader.autoLoad=true;
myUILoader.scaleContent=false;
myUILoader.move(220, 10);
addChild(myUILoader);&lt;/pre&gt;


&lt;p&gt;&lt;br /&gt;&lt;br /&gt;
&lt;a href=&quot;http://jeanphiblog.media-box.net/download/TileList.swf&quot;&gt;Voir l'exemple en ligne...&lt;/a&gt;...&lt;br /&gt;
&lt;a href=&quot;http://jeanphiblog.media-box.net/download/TileList.zip&quot;&gt;Télécharger le fichier Flash CS4...&lt;/a&gt;&lt;/p&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>fLASH CS4 : BitmapData &gt; ByteArray &gt; load raw format...</title>
  <link rel="alternate" type="text/html" href="http://jeanphiblog.media-box.net/dotclear/index.php?2009/12/05/331-flash-cs4-bitmapdata-bytearray-load-raw-format" />
  <issued>2009-12-05T15:35:54+01:00</issued>
  <modified>2009-12-05T15:35:54+01:00</modified>
  <id>http://jeanphiblog.media-box.net/dotclear/index.php?2009/12/05/331-flash-cs4-bitmapdata-bytearray-load-raw-format</id>
  <author><name>jeanphilippe</name></author>
  <dc:subject>Flash CS4</dc:subject>
  <summary>Suite au billet précédent, voici comment loader ce fichier raw dans Flash...</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;Suite au billet précédent, voici comment loader ce fichier raw dans Flash...&lt;/p&gt; &lt;p&gt;le code :&lt;br /&gt;&lt;/p&gt;

&lt;pre&gt;var ldr:URLLoader= new URLLoader();
ldr.dataFormat=URLLoaderDataFormat.BINARY;// ** make sure you do this **
ldr.addEventListener(Event.COMPLETE, on_fileLoad);
ldr.load(new URLRequest(&quot;image.bmp&quot;));
function on_fileLoad(evt:Event):void {
if (evt.type==Event.COMPLETE) {
var data:ByteArray=URLLoader(evt.target).data as ByteArray;
if (data) {
try {
data.uncompress();
} catch (e:Error) {
}
// data is now the uncompressed byte array
// ... process data ...
var width:int=data.readUnsignedInt();// first 4 bytes
// after data.uncompress()
var height:int = ((data.length - 4) / 4) / width;
// (data.length - 4) ** byte array less the first four bytes gives the representation of the bitmap **
// ((data.length - 4) / 4) ** length of the representation is divided by four because each pixel takes four bytes **
// ((data.length - 4) / 4) / width ** remember, it is a rectangle, so we can get the height this way **
var bmd:BitmapData=new BitmapData(width,height,false,0);// 32 bit transparent bitmap
bmd.setPixels(bmd.rect, data);// position of data is now at 5th byte
var bm:Bitmap=new Bitmap(bmd);
addChild(bm);
}
}
}&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;

&lt;p&gt;Merci à &lt;a href=&quot;http://www.ghostwire.com&quot;&gt;ghostwire&lt;/a&gt; pour la piste...&lt;br /&gt;&lt;/p&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>FLASH CS4 : BitmapData &gt; ByteArray &gt; save raw format...</title>
  <link rel="alternate" type="text/html" href="http://jeanphiblog.media-box.net/dotclear/index.php?2009/12/05/330-flash-cs4-bitmapdata-bytearray-raw-format" />
  <issued>2009-12-05T15:28:38+01:00</issued>
  <modified>2009-12-05T15:28:38+01:00</modified>
  <id>http://jeanphiblog.media-box.net/dotclear/index.php?2009/12/05/330-flash-cs4-bitmapdata-bytearray-raw-format</id>
  <author><name>jeanphilippe</name></author>
  <dc:subject>Flash CS4</dc:subject>
  <summary>Comment sauver en "brut" (raw), une image BitmapData...</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;Comment sauver en &quot;brut&quot; (raw), une image BitmapData...&lt;/p&gt; &lt;p&gt;Voici un exemple :&lt;br /&gt;&lt;/p&gt;


&lt;pre&gt;import flash.net.FileReference;
var myFileRefSave:FileReference;
myFileRefSave = new FileReference();&lt;/pre&gt;


&lt;pre&gt;var cam:Camera=Camera.getCamera();
vid.attachCamera(cam);
cam.setMode(320, 240, 10);&lt;/pre&gt;


&lt;pre&gt;sauve.addEventListener(MouseEvent.CLICK,onClick);
function onClick(evt:MouseEvent):void {
var bitmap:BitmapData=new BitmapData(vid.width,vid.height,false);
var ma:Matrix = new Matrix();
ma.scale(2,2);
bitmap.draw(vid,ma);
var bitmapImage:Bitmap=new Bitmap(bitmap);
var bytes:ByteArray = new ByteArray();
bytes.writeUnsignedInt(bitmapImage.bitmapData.width);
bytes.writeBytes(bitmapImage.bitmapData.getPixels(bitmapImage.bitmapData.rect));
bytes.compress();
myFileRefSave.save(bytes,&quot;image.bmp&quot;);&lt;/pre&gt;

&lt;p&gt;}&lt;br /&gt;&lt;br /&gt;
Bien évidemment cela ne sert pas à grand chose si ce n'est que de sauver un fichier brut inutilisable sur votre DD.&lt;br /&gt;
&lt;a href=&quot;http://jeanphiblog.media-box.net/download/rawImageSave.swf&quot;&gt;le lien pour tester&lt;/a&gt;&lt;br /&gt;
Par contre, il est possible, par la suite de loader cette image dans Flash sans même qu'elle soit réencodée.&lt;br /&gt;
A voir dans le deuxieme billet :)&lt;/p&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>FLASH CS5 : Créer et compiler une application iphone avec Flash CS5...</title>
  <link rel="alternate" type="text/html" href="http://jeanphiblog.media-box.net/dotclear/index.php?2009/12/01/329-flash-cs5-creer-et-compiler-une-application-iphone-avec-flash-cs5" />
  <issued>2009-12-01T08:07:14+01:00</issued>
  <modified>2009-12-01T08:07:14+01:00</modified>
  <id>http://jeanphiblog.media-box.net/dotclear/index.php?2009/12/01/329-flash-cs5-creer-et-compiler-une-application-iphone-avec-flash-cs5</id>
  <author><name>jeanphilippe</name></author>
  <dc:subject>Flash CS5</dc:subject>
  <summary>Merci à Lee Brimelow pour ce tutorial video, dans lequel il nous explique comment utiliser Flash CS5 pour développer et compiler une application Flash en application Iphone.</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;Merci à &lt;a href=&quot;http://theflashblog.com/&quot;&gt;Lee Brimelow&lt;/a&gt; pour ce tutorial video, dans lequel il nous explique comment utiliser Flash CS5 pour développer et compiler une application Flash en application Iphone.&lt;/p&gt; &lt;p&gt;&lt;a href=&quot;http://gotoandlearn.com/play?id=116&quot; hreflang=&quot;fr&quot;&gt;Le lien vers le tutorial.&lt;/a&gt;&lt;/p&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>FLASH CS4 : Sound extract, Filereference save, bytesarray to WAV...</title>
  <link rel="alternate" type="text/html" href="http://jeanphiblog.media-box.net/dotclear/index.php?2009/11/28/328-flash-cs4-sound-extract-filereference-save-bytesarray-to-wav" />
  <issued>2009-11-28T14:51:10+01:00</issued>
  <modified>2009-11-28T14:51:10+01:00</modified>
  <id>http://jeanphiblog.media-box.net/dotclear/index.php?2009/11/28/328-flash-cs4-sound-extract-filereference-save-bytesarray-to-wav</id>
  <author><name>jeanphilippe</name></author>
  <dc:subject>Flash CS4</dc:subject>
  <summary>ou comment loader un mp3, en extraire un morceau et l'enregistrer en wav sur son bureau grâce à la classe WAVEncoder (merci Mediabox)...</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;ou comment loader un mp3, en extraire un morceau et l'enregistrer en wav sur son bureau grâce à la classe WAVEncoder (merci Mediabox)...&lt;/p&gt; &lt;p&gt;voici le code&lt;/p&gt;
&lt;pre&gt;[actionscript]

import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.events.SampleDataEvent;
import flash.media.Sound;
import flash.media.SoundChannel;
import flash.net.FileReference;
import flash.net.URLRequest;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.utils.ByteArray;
import flash.utils.Endian;
import pack.WAVEncoder;


var _sound:Sound;
var _channel:SoundChannel;
var _dynSound:Sound;
var _samplesOut:ByteArray;

if (stage) {
	init();
} else {
	addEventListener(Event.ADDED_TO_STAGE, init);


}
function init(e:Event = null):void {
	removeEventListener(Event.ADDED_TO_STAGE, init);
	//

	var tf:TextField = new TextField ( );
	tf.autoSize=TextFieldAutoSize.LEFT;
	tf.text=&amp;quot;Clic sur la scene pour enregistrer le son&amp;quot;;
	addChild( tf );

	_samplesOut = new ByteArray ( ) ;
	_samplesOut.endian=Endian.LITTLE_ENDIAN;

	_sound=new Sound(new URLRequest(&amp;quot;snd/zic.mp3&amp;quot;));
	_sound.addEventListener( Event.COMPLETE, _soundLoadedHandler );

	stage.addEventListener( MouseEvent.CLICK, _saveFileHandler );

}

function _soundLoadedHandler(e:Event):void {
	_sound.play();
	_dynSound = new Sound ( ) ;
	_dynSound.addEventListener( SampleDataEvent.SAMPLE_DATA, _sampleDataHandler );
	_channel=_dynSound.play();
}

function _sampleDataHandler(e:SampleDataEvent):void {
	// J'extraie 5 secondes à partir de 4 secondes du début
	_sound.extract( _samplesOut, 44100 * 5,44100 * 4 );
}

function _saveFileHandler(e:Event):void {
	var encoder:WAVEncoder = new WAVEncoder ( );

	var fileRef:FileReference = new FileReference ( );

	fileRef.save( encoder.addHeaders ( testConvert(_samplesOut) ), &amp;quot;monSon.wav&amp;quot; );
}

function testConvert( p:ByteArray ):ByteArray {
	var ba:ByteArray = new ByteArray ( );
	ba.endian=Endian.LITTLE_ENDIAN;
	p.position=0;

	while ( p.position &amp;lt; p.length ) {
		ba.writeShort( p.readFloat ( ) * 32767);
	}

	return ba;
}
&lt;/pre&gt;

&lt;p&gt;&lt;br /&gt;
le lien pour tester &lt;a href=&quot;http://jeanphiblog.media-box.net/download/createWav/&quot;&gt;ici&lt;/a&gt;
les sources &amp;gt; &lt;a href=&quot;http://jeanphiblog.media-box.net/download/createWav.zip&quot;&gt;ici&lt;/a&gt;&lt;/p&gt;</content>
</entry>
</feed>