我上篇文章有交大家如何编译Opus库
不多说直接贴代码了
opusCodec.h
#import
@interface opusCodec : NSObject
-(void)opusInit;
-(NSData*)encodePCMData:(NSData*)data;
-(NSData*)decodeOpusData:(NSData*)data;
-(void)destroy;
@end
opusCodec.m
#import "opusCodec.h"
#import "opus.h"
#define kDefaultSampleRate 8000
#define WB_FRAME_SIZE 320
@implementation opusCodec
{
OpusEncoder *enc;
OpusDecoder *dec;
unsigned char opus_data_encoder[40];
}
-(void)opusInit
{
int error;
enc = opus_encoder_create(kDefaultSampleRate, 1, OPUS_APPLICATION_VOIP, &error);//(采样率,声道数,,)
dec = opus_decoder_create(kDefaultSampleRate, 1, &error);
opus_encoder_ctl(enc, OPUS_SET_BITRATE(kDefaultSampleRate));//比特率