草庐IT

audio_context

全部标签

javascript - 新的 React Context API 会触发重新渲染吗?

我一直在尝试理解新的ReactContextAPI并使用它。我只是想检查一个简单的案例——当提供者的数据更新时,所有重新呈现的内容。检查thissmallexampleonCodesandbox因此,在我的示例中,我有一个App组件-具有类似这样的状态-this.state={number-Arandomnumbertext-Astatictext}我从这里创建一个新的React上下文,其中包含来自状态的number和text,并将这些值传递给两个ConsumersNumber和文字.所以我的假设是如果随机数更新,它会改变上下文并且两个组件都应该触发重新渲染。但实际上,值正在更新,但没

javascript - 使用 Web Audio API 创建 10 波段均衡器

我正在尝试使用WebAudioAPI重新创建类似的东西Winamp的10段均衡器。(来源:head-fi.org)据我所知,我必须创建10BiquadFilters,将它们的type设置为2(foraBandpassfilter)并将它们的频率分别设置为[60,170,310,600,1000,3000,6000,12000,14000,16000]。完成后(这是我有点困惑的地方),然后我将创建一个单独的GainNode对于每个频率“波段”并将其值绑定(bind)到slider。假设所有这些都是正确的,那么剩下的唯一步骤就是将所有10个增益节点连接到音频上下文destination(我

javascript - 定义 JSON-LD @context 以连接/拆分值?

我想使用expand和compactjsonld.js的方法库将来自各种来源的数据转换为通用格式进行处理。如果我获取源JSON文档,请添加@context给它,然后通过expand传递它方法我能够获得我需要的通用格式。我无法找到解决方案的用例是需要合并多个值的情况。例如,schema.org定义了一个PostalAddress为streetAddress设置一个字段,但许多系统将街道地址存储为单独的值(街道编号、街道名称、街道方向...)。要将传入数据转换为schema.org格式,我需要一种方法在我的@context中指明多个字段组成了streetAddress,顺序正确。压缩文件{

javascript - 右键单击 d3.js 元素 : how to prevent browser context menu to appear

我绘制了一些d3.js元素,例如://drawrectanglesvg.selectAll(".rect").append("rect").attr("y",10).attr("x",10).attr("height",5).attr("width",5).on("contextmenu",function(d,i){//reactonright-clicking});它工作正常,但也会打开浏览器的上下文菜单。我该如何防止这种情况发生? 最佳答案 将d3.event.preventDefault();添加到您的函数中。//drawr

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 - (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 - fatal error : Using $this when not in object context - OOPHP

我只是想通过构造函数设置post_id并通过另一个函数获取该id。但它正在返回:fatalerror:不在对象上下文中时使用$this但不知道为什么会这样正在发生。我以前做过很多次,但现在出了问题。代码如下classPostData{privatestatic$instance=null;public$post_id=0;publicfunction__construct($post_id=0){if((int)$post_id>0){$this->setId($post_id);}}privatefunctionsetId($post_id){return$this->post_id

arrays - "Can' t use function return value in write context”PHP错误

Fatalerror:Can'tusefunctionreturnvalueinwritecontextinline3,在什么情况下会触发此类错误?我的程序://QUERYVARIABLE$query="select*formuserwhereuser_name='$user_name'anduser_password='sha($user_password)'";//ESTABLISHINGCONNECTION$result=mysqli_query($dbc,$query)ordie('ErrorQueryingDatabase');while($row=mysqli_num_ro

php - HTML5 <audio> 隐藏音频源

我想使用HTML5标记从我的网站流式传输mp3文件。问题是,任何ol'Joe都可以查看页面源代码并查看流式mp3文件的位置,然后他们就可以直接下载整个文件(而不是通过播放器“流式传输”)。我能做些什么来阻止用户查看mp3文件在我的服务器上的位置?我(或没有)有哪些选择?如果相关的话,我将Apache与PHP结合使用。 最佳答案 您可以使用php脚本为您提取音频文件。将源设置为php脚本而不是实际文件。然后在php脚本中,您可以在返回mp3文件之前进行检查以确保请求有效。 关于php-HT