- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Tarsos Dsp for android 从音频文件中检索频谱峰值。从版本 2 开始,TarsosDSP 不再使用 javax,这应该会使一切变得容易得多。
困扰我的是我的代码工作正常,但 android 正在努力处理音频文件:这似乎是用 avconv 制作的。
PipedAudioStream localPipedAudioStream = new PipedAudioStream(fileName);
TarsosDSPAudioInputStream localTarsosDSPAudioInputStream1 = localPipedAudioStream.getMonoStream(this.sampleRate);
如何创建解码器:
public PipeDecoder(){
//Use sensible defaults depending on the platform
if(System.getProperty("os.name").indexOf("indows") > 0 ){
pipeEnvironment = "cmd.exe";
pipeArgument = "/C";
}else{
pipeEnvironment = "/bin/bash";
pipeArgument = "-c";
}
pipeCommand = "avconv -i \"%resource%\" -vn -ar %sample_rate% -ac %channels% -sample_fmt s16 -f s16le pipe:1";
//pipeLogFile = new File("decoder_log.txt");
pipeBuffer = 10000;
}
是缺少 avconv 库,还是 android 无法处理这些命令?
这是错误输出:
4651/com.example.giuseppe.tsptest I/PipeDecoder﹕ Starting piped decoding process for /sdcard/sample.wav
4651/com.example.giuseppe.tsptest W/PipeDecoder﹕ IO exception while decoding audio via sub process.Error running exec(). Command: [/bin/bash, -c, avconv -i "/sdcard/sample.wav" -vn -ar 44100 -ac 1 -sample_fmt s16 -f s16le pipe:1] Working Directory: null Environment: [ANDROID_ROOT=/system, EMULATED_STORAGE_SOURCE=/mnt/shell/emulated, LOOP_MOUNTPOINT=/mnt/obb, LD_PRELOAD=libsigchain.so, ANDROID_BOOTLOGO=1, EMULATED_STORAGE_TARGET=/storage/emulated, EXTERNAL_STORAGE=/storage/emulated/legacy, SYSTEMSERVERCLASSPATH=/system/framework/services.jar:/system/framework/ethernet-service.jar:/system/framework/wifi-service.jar, ANDROID_SOCKET_zygote=10, PATH=/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin, ANDROID_DATA=/data, ANDROID_ASSETS=/system/app, ASEC_MOUNTPOINT=/mnt/asec, BOOTCLASSPATH=/system/framework/core-libart.jar:/system/framework/conscrypt.jar:/system/framework/okhttp.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/voip-common.jar:/system/framework/ims-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/apache-xml.jar, ANDROID_PROPERTY_WORKSPACE=9,0, ANDROID_STORAGE=/storage]
02-20 17:53:54.020 4651-4651/com.example.giuseppe.tsptest W/System.err﹕ java.io.IOException: Error running exec(). Command: [/bin/bash, -c, avconv -i "/sdcard/sample.wav" -vn -ar 44100 -ac 1 -sample_fmt s16 -f s16le pipe:1] Working Directory: null Environment: [ANDROID_ROOT=/system, EMULATED_STORAGE_SOURCE=/mnt/shell/emulated, LOOP_MOUNTPOINT=/mnt/obb, LD_PRELOAD=libsigchain.so, ANDROID_BOOTLOGO=1, EMULATED_STORAGE_TARGET=/storage/emulated, EXTERNAL_STORAGE=/storage/emulated/legacy, SYSTEMSERVERCLASSPATH=/system/framework/services.jar:/system/framework/ethernet-service.jar:/system/framework/wifi-service.jar, ANDROID_SOCKET_zygote=10, PATH=/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin, ANDROID_DATA=/data, ANDROID_ASSETS=/system/app, ASEC_MOUNTPOINT=/mnt/asec, BOOTCLASSPATH=/system/framework/core-libart.jar:/system/framework/conscrypt.jar:/system/framework/okhttp.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/voip-common.jar:/system/framework/ims-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/apache-xml.jar, ANDROID_PROPERTY_WORKSPACE=9,0, ANDROID_STORAGE=/storage]
[...]
--------- beginning of crash
02-20 17:53:54.033 4651-4651/com.example.giuseppe.tsptest E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.example.giuseppe.tsptest, PID: 4651
java.lang.NullPointerException: Attempt to invoke virtual method 'int java.io.InputStream.read(byte[], int, int)' on a null object reference
at be.tarsos.dsp.io.UniversalAudioInputStream.read(Unknown Source)
at be.tarsos.dsp.AudioDispatcher.processFirstBuffer(Unknown Source)
at be.tarsos.dsp.AudioDispatcher.runSourcedDispatcher(Unknown Source)
at be.tarsos.dsp.AudioDispatcher.run(Unknown Source) [...]
最佳答案
PipeDecoder
确实是特定于平台的。它仅适用于存在 avconv
可执行文件的机器(UNIX、Windows)。它通过调用这个可执行文件来工作,例如以 44.1kHz 采样的 MP3,它通过管道返回以请求的采样率解码的 PCM 样本。 “avconv”可以替换为任何可以通过管道解码、重新采样和流式传输音频的可执行文件(例如 ffmpeg 和 SoX)。
由于 Android 本质上是 Unix,这原则上可以在 Android 上运行,但实际上(据我所知)很难在 Android 上安装 avconv。解决方案是寻找平台特定的音频解码器或提供此功能的 Java 库(例如 jlayer)。
一旦您拥有 pcm 样本,这些样本就可以轻松进入 TarsosDSP 音频管道。
关于android - 适用于 Android 的 TARSOS DSP : retrieving SpectralPeaks,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28634351/
我有一条路线,有两个与之关联的模型,如下所示: App.IndexRoute = Ember.Route.extend({ model: function() { return Emb
这是我的第一个 Python 脚本,所以我认为我做错了什么。但是我在任何教程或示例中都找不到线索。以下代码(可以这么说): import urllib urllib.retrieve("http://
SDK:适用于 Go 0.5.0 的 Apache Beam SDK 我们在 Google Cloud Data Flow 中运行 Apache Beam Go SDK 作业。他们一直工作得很好,直到
我希望简化网站用户在 Adobe Business Catalyst 网站上注册、登录和检索/重置密码的流程。 我已成功使用 AJAX 提交安全区登录表单。我还使用 jQuery.load 从密码
我在 R 中收到以下错误消息: Error in .verify.JDBC.result(r, "Unable to retrieve JDBC result set", : Unable to r
在什么情况下“反文档频率”在信息检索中不起作用? 最佳答案 如果您不希望在系统中权衡稀有术语而不是频繁出现的术语,则可能不希望使用IDF。此外,计算idf是一项昂贵的操作。从以下事实可以明显看出这一点
我正在尝试计算 Average Precision (和 Mean Average Precision )在 Oxford Building image dataset 上. 下面是他们提供的用于计算
有人知道在网站上查找最相关的联系信息的脚本/食谱/库吗? 一些可能的情况: 在个人网页上查找联系电话号码 在博客上查找所有者电子邮件地址 查找联系页面的网址 最佳答案 查看WSO2's Mashup
我看过像“sc2ranks.com”这样的网站,我完全想知道他们是如何获得我只能在游戏中访问的信息的。我的意思是我如何访问星际争霸 II 欧盟天梯?这只是我们必须访问/下载的 URL,还是需要通过注入
我已阅读 Permuterm indexes stanford 网站上的页面,但是我仍然无法弄清楚我们如何从以下地址到达:*X*至 X* . 那么$在哪里? ? 我可以得到这些: For X, loo
考虑以下选定的 html 片段: .......... .......||||||||||||||||||||||||||||||....... 第二行代表用户选择(管道),跨越多个跨度标签。使用 j
我需要从我的 GitHub 私有(private)仓库下载一个文件。因此,按照 GitHub 站点上的说明,我为我的凭据创建了一个 OAuth token 。 然后我执行了这个 PS 脚本: $Web
我有几个扩展 C 的类,并且我需要一个接受 C 类型的任何参数的方法。但是在这个方法中我想知道我正在处理 A 还是 B。 * public A extends C public B extends C
我正在尝试学习 Apache Struts 框架,并且我编写了一个用于进行类(class)注册的小型应用程序,但每当我尝试加载我的应用程序时,它都会抛出以下异常: javax.servlet.Serv
有点跟进 my self-answered question about finding the column names. 在 UniVerse 中,您无法查询文件的所有列,除非文件字典中的 @ 短
我正在为 Dynamics CRM 2011 创建一个插件,以便在用户打开潜在客户时执行。所以我使用 Retrieve 消息来执行插件。 IPluginExecutionContext context
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 6年前关闭。 Improve thi
正在尝试检索文章的文本。我想选择 中的所有文本 ... 我做到了。 但我只想从文章正文中检索文本,而不是整个页面 Document article = Jsoup.connect("html doc
我一直在尝试元素存储,但我被元素存储中的 .retrieve(); 问题所困扰。 文档指出: Element:retrieve actually accepts an optional second
尝试对 facebook 进行图形 API 调用时出现以下错误。我知道我的回调 url 很好,因为当我在 facebook 调试器中测试它时,它可以很好地查看页面。我也在使用 Google App E
我是一名优秀的程序员,十分优秀!