2
A
回答
4
这是一段代码,适合我。对于任何更多的信息,你应该看看这本书核心音频粗切割。
#include "WavGenerator.h"
#import <Foundation/Foundation.h>
#import <AudioToolbox/AudioToolbox.h>
#include "AudioController.h"
#define SAMPLE_RATE 44100
#define DURATION 5.0
#define COUNT_OF(x) ((sizeof(x)/sizeof(0[x]))/((size_t)(!(sizeof(x) % sizeof(0[x])))))
// #define FILENAME @"newFile.caf"
extern unsigned int global_size_of_instrumental;
extern unsigned int global_size_output;
void createNewWAV (const char *location, int *sample_array){
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSString *filePath = NSTemporaryDirectory();
filePath = [filePath stringByAppendingPathComponent:@"name_of_your_file.wav"];
NSURL *fileURL = [NSURL fileURLWithPath:filePath];
AudioStreamBasicDescription asbd;
memset(&asbd,0, sizeof(asbd));
asbd.mSampleRate = SAMPLE_RATE;
asbd.mFormatID = kAudioFormatLinearPCM;
asbd.mFormatFlags = kLinearPCMFormatFlagIsSignedInteger | kLinearPCMFormatFlagIsPacked;
// asbd.mFormatFlags = kAudioFormatFlagIsBigEndian;
asbd.mBitsPerChannel = 16;
asbd.mChannelsPerFrame = 1;
asbd.mFramesPerPacket = 1;
asbd.mBytesPerFrame = 2;
asbd.mBytesPerPacket = 2;
AudioFileID audioFile;
OSStatus audioErr = noErr;
audioErr = AudioFileCreateWithURL((CFURLRef)fileURL,
kAudioFileWAVEType,
&asbd,
kAudioFileFlags_EraseFile,
&audioFile);
assert (audioErr == noErr);
printf("WAV GENERATOR --- global_size_output %d \n", global_size_output);
int size_of_output = global_size_output;
SInt16 *the_samples = (SInt16 *) malloc(global_size_of_instrumental*size_of_output*sizeof(SInt16));
for (int i=0; i< global_size_of_instrumental*size_of_output; i++)
{
the_samples[i] = sample_array[i];
}
UInt32 numSamples = global_size_of_instrumental*size_of_output;
UInt32 bytesToWrite = numSamples;
audioErr = AudioFileWriteBytes(audioFile, false, 0, &bytesToWrite, the_samples);
audioErr = AudioFileClose(audioFile);
assert(audioErr == noErr);
[pool drain];
}
+0
酷,thanx很多! – headkit 2012-03-02 09:14:17
0
如果你下载的http://www.dspdimension.com/technology-licensing/dirac2/用于读取和写入音频文件的免费版本,你会在样品源代码功能发现,我不记得是什么格式寿。
相关问题
- 1. 如何将iPhone音频文件保存在文档目录中
- 2. 如何将SAPI文本保存为VBScript中的音频文件的语音?
- 3. 如何将音频转换为iPhone上的整数阵列
- 4. 如何在iPhone中录制后保存音频文件?
- 5. 如何将会话中的音频文件保存在sqlite数据库中,iphone?
- 6. 如何将文本转换为iPhone中的音频文件?
- 7. 如何将音频流转换为.wav文件并保存
- 8. 如何将音频数据保存为wav文件?
- 9. 将文件保存为音频文件后未播放文件
- 10. 使用iphone保存文档目录中的音频文件
- 11. 如何将音频文件保存到语音备忘录
- 12. 如何保存音频文件后记录在iphone xpcode
- 13. 将两个.caf音频文件合并为一个iPhone中的音频文件
- 14. pygame保存音频文件
- 15. 保存音频流为MP3文件(iOS)
- 16. 如何将生成的音色保存到iOS中的音频文件?
- 17. iPhone SDK:将流式传输的音频文件保存到Documents文件夹
- 18. Android: - 将录制的音频文件转换为浮点阵列
- 19. NSDocument保存音频和视频文件
- 20. 用Sphinx4将语音保存到音频文件中
- 21. 如何将音频添加到iPhone上的视频文件SDK
- 22. 如何将视频添加到iPhone SDK上的音频文件
- 23. 将音频文件保存为数据库中的BLOB或文件系统中?
- 24. 在iPod库中保存音频文件
- 25. iPhone - 如何将aiff音频文件转换为aac?
- 26. 将应用程序中的音频文件保存到iPad/iPhone库
- 27. 如何将网络音频流保存到文件(C++/java)
- 28. 如何使用Swift将音频文件保存到iCloud?
- 29. Titanium将录制的音频文件保存到文件夹中,将音频文件上传到Web服务器,
- 30. 如何在目标C(iPhone)中保存录制的音频
你从哪里得到样品? – Anurag 2011-06-07 03:18:59
哦,我自己做的。好吧,我用“采样”这个词作为信号序列。抱歉让你困惑。 – akira108 2011-06-07 04:31:31