2010-02-23 6 views
1

Je teste Adobe AIR avec Flex, et je voulais jouer un mp3 via une boîte de dialogue de fichier ouvert, je l'ai fait:Adobe AIR: Comment lire un fichier mp3 local?

import flash.filesystem.*; 
import flash.events.Event; 
import flash.media.*; 
import mx.core.SoundAsset; 

public var loadedFile:File; 
public var channel:SoundChannel; 
public var song:SoundAsset; 


private function loadFile():void { 
loadedFile = new File(); 
loadedFile.browseForOpen("Open multimedia File"); 
loadedFile.addEventListener(Event.SELECT, fileSelected); 
} 

private function fileSelected(event:Event):void { 
song = new SoundAsset() 
song.load(URLRequest(loadedFile.url)); 
channel = song.play(); 
} 

Mais lorsque je tente d'ouvrir un fichier, après la clôture de dialogue Ouvrir un fichier , je reçois cette erreur:

TypeError: Error #1034: Type Coercion failed: cannot convert "file:///C:/Users/Kedare/Music/05-Scene%20V%20~%20Prelude.mp3" to flash.net.URLRequest. 

Je ne peux pas trouver quoi que ce soit lié à celui sur Google ou d'une autre documentation, tous les documents que je trouve est lié à jouer un son en utilisant l'URL et non les fichiers locaux :(

Une idée de ce qui peut être le problème? Que puis-je faire?

Merci!

Répondre

5

changement

song.load(URLRequest(loadedFile.url)); 

à

song.load(new URLRequest(loadedFile.url)); 
+0

Merci, ça fonctionne parfaitement! :) – Kedare

+0

Content de l'entendre! Veuillez cliquer sur cette grosse coche à côté de ma réponse pour la marquer comme solution et clôturer la question. :) –