javascript - 如何结合JavaScript Soundcloud播放器和Flash可视化

标签 javascript flash audio

我已经建立了一个不错的Flash音频可视化效果,可以加载音频文件并播放它,并在音乐中及时显示一系列闪烁的彩色条。我不想在SWF中列出和控制歌曲的播放。我希望在页面的HTML中列出歌曲,最好是非Flash格式。我将音频托管在Soundcloud上,并找到了它们的javascript player,非常适合我的目的。现在我该如何整合这两件事?

似乎,我什至需要一种将javascript播放器产生的音频通过管道传输到swf的方法(如果可能的话),或者将两个位置之一的声音静音(最好是js,以便vis最佳同步),并将所有播放/停止/搜索命令从js播放器传递到Flash vis。难道这很难吗?

更新:
让我更具体一点。假设“将音频插入SWF”方法不起作用,我将需要在SWF和JS之间传递许多不同的消息。我了解如何从我认为的js启动swf音频。有人可以演示如何执行以下操作吗?

  • 信号从闪光灯传回js,表示音频已启动
  • 从闪光灯到js的
  • 信号到音频
  • 的当前时间
  • 暂停或停止来自js的Flash音频

  • 您可以假定存在以下代码:
    var url:String = "mysong.mp3"; 
    
    var song:SoundChannel;
    var request:URLRequest = new URLRequest(url);  
    var s:Sound = new Sound();  
    s.addEventListener(Event.COMPLETE, onLoadComplete );  
    s.load(request);
    
    function onLoadComplete(event:Event):void 
    {    
      song = s.play(33000);
      song.addEventListener(Event.SOUND_COMPLETE, soundCompleteHandler);   
      s.removeEventListener( Event.COMPLETE, onLoadComplete );
    }  
    
    function soundCompleteHandler(event:Event):void 
    {    
       song.removeEventListener( Event.SOUND_COMPLETE, soundCompleteHandler );
    }
    

    我不理解Sound类和SoundChannel类之间的奇怪分离,以及为什么它们之间似乎分散了不同的方法。

    最佳答案

    哇!多亏了一些很棒的Adobe voodoo,我的Flash音频可视化工具实际上才能够自动拾取在同一网页上播放的音频!我认为这与我正在使用SoundMixer.computeSpectrum()有关。我什至不知道它是如何工作的,但是显然它可以看到外部Flash本身对浏览器窗口中正在播放的任何音频。因此,我完全不必担心“将音频插入Flash”或在swf和javascript之间传递函数!

    通常,编程工作需要使各种变量都恰到好处,以使任何东西都能正常工作。如果一切正常,甚至没有尝试,那真是太棒了!

    关于javascript - 如何结合JavaScript Soundcloud播放器和Flash可视化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7617240/

    相关文章:

    javascript - 更改图像并使用 JavaScript 单击事件将其更改回来

    javascript - 通过 <script> 在书签中加载 jQuery 和 jQueryUI 时出现范围或计时问题?

    flash - 验证 AS3 SharedObject 数据的属性是否存在

    ios - paramErr -50 来自 AudioUnitRender swift

    python - 如何保存文件夹和子文件夹中的音频文件(.wav)的频谱图?

    python - 如何使用 PyAudio 选择特定的输入设备

    javascript - 下拉菜单 Bootstrap 处于事件状态

    javascript - 单击此处的每个按钮时计数究竟是如何增加的?

    apache-flex - 错误#2099 : The loading object is not sufficiently loaded to provide this information

    java - Flash 客户端和 Java 服务器之间的持久连接