jjzjj

javascript - 如何使用 JS WebAudioAPI 进行节拍检测?

我有兴趣使用JavaScriptWebAudioAPI来检测歌曲节拍,然后将它们呈现在Canvas中。我可以处理Canvas部分,但我不是一个大音频专家,而且真的不明白如何用JavaScript制作节拍检测器。我试过关注thisarticle但就我的生活而言,无法将每个功能之间的点连接起来以制作功能程序。我知道我应该给你看一些代码,但老实说我没有,我所有的尝试都惨败,相关代码在前面提到的文章中。无论如何,我非常感谢一些指导,或者更好的演示如何使用WebAudioAPI实际检测歌曲节拍。谢谢! 最佳答案 了解thereferenced

javascript - 带音频标签的 Safari 浏览器不起作用

我正在使用这个简单的代码处理HTML5音频标签:HTMLJS$('#audioFrenata').on('ended',function(){manageImageObjectsLevel();}).get(0).play();对于Chrome,这按预期工作,对于Windows上的Safari5.1.7和iPad3上的Safari,我收到了这个:'undefined'isnotafunction(evaluating'$('#audioFrenata').on('ended',function(){manageImageObjectsLevel();}).get(0).play()')

javascript - 如何检测音频在网页中播放完毕?

在我的项目中,我需要将音频(例如:mp3等)嵌入到网页中。当用户访问该页面时,音频将开始播放。当音频结束时,将出现问卷(表单字段)供用户回答。有没有办法使用jquery检查音频是否播放完毕,以便在用户听完整个音频后出现问卷?我知道一种检查方法是确定音频长度,然后我可以设置一个计时器来显示问卷,但我希望jquery有某种事件处理程序可以让我完成此任务。我看到jquery有很多音频插件,但我不确定哪个能满足我的需求:http://plugins.jquery.com/plugin-tags/audio非常感谢任何想法。谢谢。 最佳答案

javascript - Web Audio API 附加/连接不同的 AudioBuffers 并将它们作为一首歌曲播放

我一直在使用WebAudioAPI,尝试加载歌曲的多个部分并将它们附加到新的ArrayBuffer,然后使用该ArrayBuffer将所有部分作为一首歌曲播放。在下面的示例中,我使用相同的歌曲数据(这是一个小循环)而不是歌曲的不同部分。问题是它仍然只播放一次而不是两次,我不知道为什么。Downloadsongfunctioninit(){/***AppendstwoArrayBuffersintoanewone.**@param{ArrayBuffer}buffer1Thefirstbuffer.*@param{ArrayBuffer}buffer2Thesecondbuffer.*/

javascript - <audio> 和 <progress> HTML5 元素的自定义进度条

我对如何使用标签和简单的Javascript为音频播放器创建自定义搜索栏感到困惑。当前代码:functionplay(){document.getElementById('player').play();}functionpause(){document.getElementById('player').pause();}PlayPause是否可以链接进度条以便在我播放歌曲时显示进度? 最佳答案 是的,可以使用timeupdate音频标签的事件。每次更新播放位置时,您都会收到此事件。然后,您可以使用音频元素的currentTime和

javascript - 如何设置音频对象的音量?

我知道我可以像这样创建一个音频对象:varaudio=newAudio("test.wav");我知道如何播放音频:audio.play();我使用以下for循环从audio输出所有函数:varmyAudioObject=newAudio();for(varkeyinmyAudioObject){if(typeofmyAudioObject[key]==="function"){console.log(key);}}但是没有设置音量。是否可以更改音频对象中的音量?提示是我的错。如果我将for循环中的function替换为number,那么我会找到volume。varmyAudioObj

javascript - WebRTC MediaStream 的麦克风事件级别

我想要一些关于如何在Chrome/Canary中最好地获取音频MediaStreamTrackjavascript对象的麦克风事件级别的建议。MediaStreamTrack对象是getUserMedia返回的MediaStream的音轨,作为WebRTCjavascriptAPI的一部分。 最佳答案 当麦克风有音频时,上下绿色条非常漂亮:navigator.webkitGetUserMedia({audio:true,video:true},function(stream){//audioContext=newwebkitAudi

javascript - (Web Audio API) 振荡器节点错误 : cannot call start more than once

当我启动振荡器时,将其停止,然后再次启动;我收到以下错误:UncaughtInvalidStateError:Failedtoexecute'start'on'OscillatorNode':cannotcallstartmorethanonce.显然我可以使用gain来“停止”音频,但我觉得这是一种糟糕的做法。什么是停止振荡器同时能够再次启动它的更有效方法?代码(jsfiddle)varctx=newAudioContext();varosc=ctx.createOscillator();osc.frequency.value=8000;osc.connect(ctx.destina

PHP - 检查音频文件是否未损坏

这是创建歌曲对象的方法publicfunctiongetSong(){returnnewSong($this->rackDir,$this->getLoadedDisc()->getName(),$this->song);}有歌曲类classSongextendsCD{private$id;publicfunction__construct($rack,$name,$id){$this->id=$id;parent::__construct($rack,$name);}publicfunctiongetSelectedSongId(){return$this->id;}publicfu

php - 用于覆盖 MP3 文件以在 PHP 中使用的 Linux 工具

我一直在互联网上搜索可以让两个mp3文件相互叠加的工具,但没有成功。我有一个客户想要构建一项服务,允许某人从文件列表中选择音乐轨道和人声轨道,然后让它们一起播放。她的公司生产可视化CD,我相信这是最好的途径,因为她有数百个可视化mp3脚本和大约30首背景音乐。这将允许动态合并这2个文件并缓存它们,而不是按需进行手动工作。我研究了ffmpeg和其他工具,但这些工具倾向于处理剪切/拆分/合并等,但我没有发现任何东西可以让我将两个音轨相互叠加以产生合并的音轨。我想最完美的是audacity的命令行版本。 最佳答案 安装sox,使用--co