2009-03-20 11 views
6

मान लें कि मेरे पास एक यूआरएल पर एक वैव फ़ाइल है:क्या फ्लैश प्लेयर यूआरएल से .wav फाइलें चला सकता है?

http://hostname.com/mysound.wav 

मैं ध्वनि वर्ग के साथ WAV फ़ाइल लोड करने की कोशिश कर रहा हूं जैसे:

var url:String = "http://hostname.com/test.wav"; 
var urlRequest:URLRequest = new URLRequest(url); 
var sound:Sound = new Sound(); 
sound.load(urlRequest); 
sound.play(); 

हालांकि, यह काम नहीं प्रतीत होता है । फ़्लैश प्लेयर प्ले वाव फाइलें कर सकते हैं, या यह सिर्फ एमपी 3 है?

+0

क्या कोडेक अपने wav में एन्कोड किया गया है? Wav एक कंटेनर है, ध्वनि प्रारूप नहीं। इसमें कच्चे, एमपी 3, यूएलओ और अन्य शामिल हो सकते हैं। – strager

+0

हालांकि अधिकांश wavs कच्चे हैं। और मुझे नहीं लगता कि यह इस मामले में वैसे भी मायने रखता है। यह कंटेनर प्रारूप है जो मायने रखता है। – aaaidan

+0

आप फ़ाइल – Geo

उत्तर

13

The ActionScript documentation for the Sound class बताता है कि केवल एमपी 3 फ़ाइलें समर्थित हैं।

+3

फ़ाइल को गुप्त कर सकते हैं और शायद यह सबसे अच्छा है। – aaaidan

+1

@aaaidan नहीं यदि आप उच्च गुणवत्ता वाले पीसीएम से निपटना चाहते हैं। –

5

सीधे आप नहीं कर सकते हैं लेकिन बाइटएरे के लिए कामकाज धन्यवाद हैं;)

इस की जाँच करें:

http://richapps.de/?p=97

संपादित करें:

पिछले लिंक किया जा रहा है एक सा वर्ष मैं मानना ​​आप भी आंद्रे और Joa की बेपनाह पर एक नजर है चाहिए पॉपफोर्ज लाइब्रेरी। वहां वास्तव में एक wav डिकोडर कक्षा भी है।

http://code.google.com/p/popforge/source/browse/#svn/trunk/flash/PopforgeLibrary/src/de/popforge/format/wav

2

हाँ, आप कर सकते हैं। मैंने वाव/एयू फ्लैश प्लेयर बनाया है, जो किसी भी बिटलेथेंथ और नमूने में जी 711 या पीसीएम में एन्कोडेड स्ट्रीम वाव खेल सकता है। GPLv2 के अंतर्गत लाइसेंसीकृत, यहाँ: http://blog.datacompboy.ru/2009/10/15/wav-au-flash-player/

+1

मुझे इस पोस्ट के बारे में कुछ बताने दो। मैं एक घंटे की तलाश कर रहा हूं, सार्वभौमिक समाधान खोजने में काफी मुश्किल है। मुझे लगता है कि यह बिल्कुल सही है कि आपको अपने वेबपृष्ठ पर अधिकतम ब्राउज़र संगतता और न्यूनतम लोड के साथ विभिन्न छोटी ध्वनि क्लिप चलाने की आवश्यकता होगी। यह वास्तव में आप अपेक्षा करते हैं, परीक्षण करने और एम्बेड करने में आसान है।गिट कोड का स्नैपशॉट प्राप्त करें: http://git.datacompboy.ru/?p=WavPlayer.git;a=snapshot;h=b24cc6500058ec35c95953095c797865488416dd;sf=tgz फिर बस वेब डायर में डालें। ध्वनि रिकॉर्डर के साथ अपने जीएसएम एन्कोडेड डब्ल्यूएवी बनाएं, उसी dir में tinyembed.html के रूप में डालें, यह देखने के लिए कि मैं – PatlaDJ

9
यहाँ

लोड हो रहा है और खुला स्रोत popforge लाइब्रेरी का उपयोग फ्लैश में एक यूआरएल से wav फ़ाइलों को चलाने के लिए एक सरल वर्ग: http://code.google.com/p/popforge/

चियर्स!

public class WavURLPlayer 
    { 


     public static function PlayWavFromURL(wavurl:String):void 
     { 
     var urlLoader:URLLoader = new URLLoader(); 
     urlLoader.dataFormat = URLLoaderDataFormat.BINARY; 
     urlLoader.addEventListener(Event.COMPLETE, onLoaderComplete); 
     urlLoader.addEventListener(IOErrorEvent.IO_ERROR, onLoaderIOError); 

     var urlRequest:URLRequest = new URLRequest(wavurl); 

     urlLoader.load(urlRequest); 
     } 

     private static function onLoaderComplete(e:Event):void 
     { 
     var urlLoader:URLLoader = e.target as URLLoader; 
     urlLoader.removeEventListener(Event.COMPLETE, onLoaderComplete); 
     urlLoader.removeEventListener(IOErrorEvent.IO_ERROR, onLoaderIOError); 

     var wavformat:WavFormat = WavFormat.decode(urlLoader.data); 

     SoundFactory.fromArray(wavformat.samples, wavformat.channels, wavformat.bits, wavformat.rate, onSoundFactoryComplete); 
     } 

     private static function onLoaderIOError(e:IOErrorEvent):void 
     { 
     var urlLoader:URLLoader = e.target as URLLoader; 
     urlLoader.removeEventListener(Event.COMPLETE, onLoaderComplete); 
     urlLoader.removeEventListener(IOErrorEvent.IO_ERROR, onLoaderIOError); 

     trace("error loading sound"); 

     } 

     private static function onSoundFactoryComplete(sound:Sound):void 
     { 
     sound.play(); 
     } 


} 
+3

के बारे में क्या बात कर रहा हूं यह वास्तव में स्वीकार्य उत्तर होना चाहिए क्योंकि यह URL से .wav को लोड/चलाता है। स्वीकार्य उत्तर सिर्फ यह इंगित कर रहा है कि ध्वनि वर्ग यूआरएल से .wav लोड करने का समर्थन नहीं करता है। – prototypical

0

फ्लैश स्वयं .wav फ़ाइलों को चलाने का समर्थन नहीं करता है। फ्लैश/फ्लेक्स बिल्डर इसे सीधे आपकी स्क्रिप्ट में खेले जाने के लिए तैयार एक ध्वनि ऑब्जेक्ट में संकलित करता है, लेकिन बाहरी। वाव ध्वनि के लिए, फ्लैश एसडीके आपकी मदद नहीं करेगा।

आपको अपने .wav डेटा को पढ़ने और फ़्लैश खेलने की आवश्यकता होगी, या: आपके लिए यह करने के लिए कुछ तीसरे पक्ष के पुस्तकालय हैं। ऊपर पोस्ट popforge का उपयोग करता है, यहाँ ट्यूटोरियल है कि किसी URL से एक बाहरी .wav फ़ाइल को चलाते समय as3wavsound दर्शाता है:

http://active.tutsplus.com/tutorials/media/quick-tip-play-external-wav-files-in-as3/

संबंधित मुद्दे