问题标签 [libsndfile]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1220 浏览

c++ - 未定义符号:_sf_open(OSX 上的简单音频内容)

我正在尝试进入 C++ 编程领域,但我对这些小细节非常挣扎。现在,我正试图让下面的代码片段工作,显然它会编译,但不会链接。(错误信息是这篇文章的底部)

libsndfile用来打开音频文件,链接器似乎没有找到它的正确库文件。这是在 OS X 10.5 上。

我已经从 mega-nerd.com 下载了 libsndfile 并通过 ususal configuremakesudo make install过程安装了它。还有什么我需要做的吗?

编辑:如果有任何问题,我的系统上安装了 macports。

这是我的代码:

这是完整的错误消息:

0 投票
1 回答
1184 浏览

c - 如何从 MSVC 中的 libsndfile-1.dll 访问函数?

  我无法让 libsndfile-1.dll 在我的 MSVC 项目中工作。sf_command()我可以通过调用我的代码来加载库并从 dll 中检索版本字符串。但是,我似乎无法sf__open()返回 SNDFILE 指针。

我还注意到我也无法fopen()返回 FILE 指针(也许这是相关的,我认为sf_open()使用fopen()!?)。

一般来说,我对 MSVC、C/C++ 和 windows 还是很陌生,所以我可能遗漏了一些非常明显的东西。

我的 main.cpp 看起来像这样:

该项目使用代码 3 构建并退出(无法打开文件!(我很确定文件在那里!!))。

当我运行exe时,输出是:
Version: libsndfile-1.0.17
Doh! couldn't open the SNDFILE

有人对我哪里出错有任何建议吗?

非常感谢,
乔希。

0 投票
1 回答
9394 浏览

linux - 软件包 libsndfile-dev 没有安装候选

我正在尝试安装“libsndfile-dev”。我执行以下操作:

结果我得到以下信息:

所以,我的安装尝试失败了。谁能告诉我应该明确选择什么以及我该怎么做?

先感谢您。

0 投票
3 回答
925 浏览

java - 移植用 libsndfile 编写的 C++ 代码时,我应该在 Android 中使用什么?

我正在将一个小型(<10 类)C++ 项目移植到 Java。该项目处理声音文件,在 C++ 中使用libsndfile进行此操作。该代码包括以下内容:

在 Java 中,在低级别操作声音文件的最佳方法是什么?我说的是规范化、添加回声等内容。

进度报告

经过一番挖掘,我发现了javax.sound.sampled,看起来它可能会完成这项工作。

编辑 2仔细检查后,它不起作用(或至少不能以任何可用的方式),因为它依赖于com.sun.sound包。

编辑 3在更多的检查和实验中,com.sun.soundsun.misc包是在 GNU GPLv2 下发布的,我已经将它们下载到我的项目中。重命名javax.sound.sampled为 后imp.javax.sound.sampled,项目编译,我可以创建AudioFileFormat对象而不会引发任何异常。我还没有机会玩太多,但我会及时通知你。

编辑 4好的,有些东西似乎适用于 javax.sound.sampled,有些则不适用。例如,调用如下:

不起作用,但是我可以通过以下方式解决此问题:

通常,调用诸如AudioSystem.getAudioFileTypes()返回空列表之类的东西。我可以深入研究这些软件包,看看它与提供商有关,但我不知道如何解决这个问题。得到我的stream对象后,它确实正确地报告了它的编码等,这是令人鼓舞的。

目前我最大的问题是创建一个 Clip 对象。这需要使用 Line 对象创建,该对象通常来自 AudioSystem。谁能想到解决这个问题的方法?

0 投票
1 回答
258 浏览

java - Java 等效于 C++ sf_readf_double()

我在 Android 中处理 .wav 音频文件。
到目前为止一切进展顺利(我可以从麦克风录制一个 .wav 文件,添加回声等),但我想模仿 C++ 中的 libsndfile 的行为sf_readf_double()sf_writef_double按照libsndfile来实现更复杂的过滤器。
我有一个 com.sun.media.sound.WaveFileReader 和 WaveFileWriter 对象,我正在使用

它返回一个AudioInputStream
这只是一次从流中读取 8 个字节到双精度的情况,还是还有更多?我有点困惑,因为我使用的其他过滤器似乎在操纵shorts 而不是doubles。

0 投票
2 回答
3125 浏览

c - Libsndfile 库可以在 iPhone iOS 上使用吗?

Libsndfile C 库可以在 iPhone 操作系统上使用吗如果是这样,我是否需要“包含”它,或者它是否更复杂。

谢谢!

0 投票
1 回答
990 浏览

python - 调用函数时Python模块audiolab返回错误

我需要为一个研究项目安装 Python 模块 audiolab,虽然我已经设法安装它并让模块导入 Python shell,但它在调用模块中最基本的函数之一时返回错误,wavread( )。

我主要使用的是 Python2.7.1,虽然我确实尝试过为 Python2.6.6 回溯和安装 audiolab,但在导入和调用 wavread() 函数后却发现相同的错误消息。

我的操作系统是带有英特尔处理器的 Mac OS X 10.5.8。

一般情况下是这样的:

回溯(最近一次通话最后):

我使用 pip 安装了 libsndfile 库(我相信 audiofile 只是一个包装器),它似乎安装得很好,没有错误。然后我尝试使用终端中的命令从 tar.gz 文件安装 audiolab python setup.py install。这是按照文档中的指示,在标题“构建”下找到

该文档还谈到在某些情况下需要制作一个“site.cfg”文件,根据我在谷歌搜索后看到的内容,该文件仅适用于 Windows 用户,尽管我对此不确定。

您能对我的问题提出任何意见将不胜感激!!

0 投票
2 回答
3316 浏览

audio - libsndfile 使用加入和混合 .wav 文件

我需要帮助开始使用 libsndfile。

我有四个 .wav 文件(所有相同的采样率)。

我想把前两个一起加入,然后接下来的两个一起,

然后将生成的 2 个 .wav 文件混合为一个。

0 投票
2 回答
576 浏览

haskell - 使用 hsndfile (libsndfile) 的错误格式

我正在尝试使用 hsndfile(libsndfile 的 Haskell 绑定)来生成一个 .wav 文件,但我又遇到了一个无法克服的难题。以下代码引发错误“格式错误”。(如 openWavHandle 中所写)。我已经尝试了我认为存在的所有字节顺序与 HeaderFormatWav 和 SampleFormatPcm16 的组合,但无济于事。有谁知道如何解决这一问题?

0 投票
18 回答
378880 浏览

java - 如何修复 JNI 项目中的 UnsatisfiedLinkError(找不到依赖库)

我正在开发一个使用 JNI 的 Java 项目。JNI 调用我自己编写的自定义库,比如说 mylib.dll,它依赖于第 3 方库 libsndfile-1.dll。

当我运行我的程序时,它崩溃了

我搜索了这个网站(和其他网站),并尝试了一些修复:

  1. 我跑了依赖步行者。DW 给出了几个警告——libsndfile 所需的两个库 MPR.DLL 和 SHLWAPI.DLL 有“未解析的导入”——但DW 常见问题解答说可以安全地忽略这些警告。

  2. 我按照这里的建议修复了 mylib.dll 中的方法名称。方法名称不知何故被编译器弄乱了,但是我添加了链接器标志,并且 dll 方法名称现在与我的 jni 头文件中的名称完全匹配。

  3. 我将所有这些 DLL 放在同一个目录中——与调用它们的 .jar 相同的目录——以确保它们位于正确的 PATH 上。

没有骰子。

有谁知道发生了什么?

我正在 MacBook pro(通过 Parallels)上使用 Visual Studio 2010 进行开发。我正在东芝笔记本电脑上的 Windows XP 中进行测试。