Tag: audio

AVAudioPlayer不能播放任何声音

我正在开发一个需要使用AVFoundation框架播放声音的iOS应用程序。 Xcode 4中的工作区结构包含两个项目: 工作区 应用程序本身(主要项目) 一个实用程序库 在构build实用程序库之后,会产生一个静态库,在主应用程序中用作框架。 所以,当试图通过使用下面的代码在主应用程序中播放声音时,它按预期工作。 NSString *resourcePath = [[NSBundle mainBundle] resourcePath]; NSString *path = [NSString stringWithFormat:@"%@/sound.mp3", resourcePath]; NSURL *url = [NSURL fileURLWithPath:path]; NSError *error = nil; AVAudioPlayer *audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&error]; [audioPlayer play]; 相反,当试图使用与上面相同的代码在实用程序库内播放完全相同的声音(或任何其他声音)时,即使错误为零 ,并且audioPlayer属性值是正确的(数字频道,持续时间)。 我已经确定AVFoundation框架在两个项目中。 另外,我的类使用AVAudioPlayerDelegate协议并实现了这两个方法: – (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag; – (void)audioPlayerDecodeErrorDidOccur:(AVAudioPlayer *)player error:(NSError *)error; 尝试播放声音后,不会调用这些方法。 如果我使用AudioToolbox框架,那么它会播放声音。 但是我有兴趣使用AVFoundation有几个原因。 任何想法是怎么回事? […]

如何在Android上显示可用的通知声音列表

我在我的Android应用程序中创build通知,并希望在我的首选项中有一个选项来设置通知使用的声音。 我知道在“设置”应用程序中,您可以从列表中select一个默认通知声音。 这份清单是从哪里来的,有没有办法让我在申请表中显示相同的清单?

在button上单击android播放声音

点击时如何获得button以播放原始声音? 我刚刚创build了一个id为button1的button,但是无论写什么代码,都是错误的。 import android.media.MediaPlayer; public class BasicScreenActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_basic_screen); } Button one = (Button)this.findViewById(R.id.button1); MediaPlayer = mp; mp = MediaPlayer.create(this, R.raw.soho); zero.setOnCliclListener(new View.OnClickListener() ) @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.basic_screen, […]

使用javascript / html5即时生成声音

是否有可能与JavaScript / HTML生成一个不断的声音stream? 例如,为了产生一个永久的正弦波,我会有一个callback函数,当输出缓冲区变为空的时候会被调用: function getSampleAt(timestep) { return Math.sin(timestep); } (这个想法是用这个来制作一个交互式的合成器,我不知道一个键被按下多久,所以我不能使用一个固定长度的缓冲器)

Python:代码完成时声音报警

我处于这样一种情况,即我的代码需要很长的时间才能运行,我不想一直盯着它,而是想知道什么时候完成。 我怎样才能使(Python)的代码types的声音“报警”,当它完成? 我正在考虑让它播放一个.wav文件,当它到达代码的结尾… 这是一个可行的想法吗? 如果是这样,我该怎么办呢?

iPhone上的文字转语音

有什么办法可以在iPhone应用程序中将文本转换为语音? 是否有可能使用SDK?

为什么FFT产生复数而不是实数?

即使algorithm的input是一组离散的实数(整数),我们所遇到的所有FFT实现都会导致复值(包含实部和虚部)。 仅用实数来表示频域是不可能的?

通过AVAssetWriter和AVAssetWriterInputs编写video+audio的代码不起作用。 为什么?

我一直在尝试使用AVAssetWriter和AVAssetWriterInputs编写video+audio。 我在这个论坛上看到多个post说他们能够完成这个任务,但是这对我来说并不合适。 如果我只是写video,那么代码就很好。 当我添加audio输出文件已损坏,无法复制。 这是我的代码的一部分: 设置AVCaptureVideoDataOutput和AVCaptureAudioDataOutput: NSError *error = nil; // Setup the video input AVCaptureDevice *videoDevice = [AVCaptureDevice defaultDeviceWithMediaType: AVMediaTypeVideo]; // Create a device input with the device and add it to the session. AVCaptureDeviceInput *videoInput = [AVCaptureDeviceInput deviceInputWithDevice:videoDevice error:&error]; // Setup the video output _videoOutput = [[AVCaptureVideoDataOutput alloc] init]; _videoOutput.alwaysDiscardsLateVideoFrames = NO; _videoOutput.videoSettings […]

了解FFT输出

我需要一些帮助来理解DFT / FFT计算的输出。 我是一名经验丰富的软件工程师,需要解读一些智能手机加速计读数,例如find主要频率。 不幸的是,我十五年前就读过大部分大学的EE课程,但在过去的几天里,我一直在阅读DFT和FFT(显然没有多大用处)。 请不要回答“去参加EE课”。 我实际上打算这样做,如果我的雇主将支付我。 🙂 所以这是我的问题: 我已经捕获了一个32赫兹的信号。 这是我在Excel中绘制的32分的1秒样本。 然后,我得到了哥伦比亚大学用Java编写的一些FFT代码 (在遵循“ Java中可靠且快速的FFT ”的文章中的build议之后)。 这个程序的输出如下。 我相信它正在运行一个就地FFT,所以它重新使用相同的缓冲区的input和输出。 Before: Re: [0.887 1.645 2.005 1.069 1.069 0.69 1.046 1.847 0.808 0.617 0.792 1.384 1.782 0.925 0.751 0.858 0.915 1.006 0.985 0.97 1.075 1.183 1.408 1.575 1.556 1.282 1.06 1.061 1.283 1.701 1.101 0.702 ] Im: [0.0 0.0 […]

用AVAudioPlayer播放声音

我试图用AVAudioPlayer播放声音,但它不会工作。 编辑1:仍然不起作用。 编辑2 :此代码的作品。 我的设备处于静音模式。 import UIKit import AVFoundation class ViewController: UIViewController { var audioPlayer = AVAudioPlayer() override func viewDidLoad() { super.viewDidLoad() var alertSound = NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("button-09", ofType: "wav")) println(alertSound) var error:NSError? audioPlayer = AVAudioPlayer(contentsOfURL: alertSound, error: &error) audioPlayer.prepareToPlay() audioPlayer.play() }