91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 15.2MB
    文件類型: .zip
    金幣: 1
    下載: 0 次
    發布日期: 2023-07-04
  • 語言: 其他
  • 標簽: ios??音頻??轉碼??PCM??MP3??

資源簡介

ios 音頻轉碼, MP3 轉為PCM 也可以自定義轉碼。 可以實現按照 buffer 返回。

資源截圖

代碼片段和文件信息

//
//??AlinkAudioTransport.m
//??GDAlinkSDK
//
//??Created?by?qihongru?on?15/11/27.
//??Copyright???2015年?AutoNavi.?All?rights?reserved.
//

#import?“AlinkAudioTransport.h“
//#import?“AlinkWiFiSocketOperator.h“
//#import?“AlinkEASessionOperator.h“
//#import?“AlinkCommandRequest.h“
#import?“GDAudioTranscoder.h“
#import?

#define?SEND_DATA_LENGTH?(44100*8)
#define?SEND_TIME_INTERVAL?????????0.2
#define?SEND_TIME_TOLERANC?????????0

@interface?AlinkAudioTransport()
{
????void*?_pcmDataBuffer;
}

@property?(nonatomic?strong)?NSMutableData?*musicData;
@property?(nonatomic?strong)?dispatch_queue_t?audioTransport;
@property?(nonatomic?strong)?dispatch_source_t?sendTimer;
@property?(nonatomic?strong)?GDAudioTranscoder?*transcoder;

@end

@implementation?AlinkAudioTransport

-?(id)initWithURL:(NSURL?*)url?httpRequestHeaders:(NSDictionary?*)httpRequestHeaders?transcodingToUrl:(NSURL?*)transcodeToUrl{
????
????if?(self?=?[super?init])?{
????????_musicData?=?[NSMutableData?data];
????????_audioTransport?=?dispatch_queue_create(“com.Alink.AudioTransport.queue“?NULL);
????????
????????_pcmDataBuffer?=?malloc(SEND_DATA_LENGTH);
????????
????????_transcoder?=?[[GDAudioTranscoder?alloc]?initWithURL:url?httpRequestHeaders:httpRequestHeaders?transcodingToUrl:transcodeToUrl];
????????_transcoder.delegate?=?self;
????????_transcoder.outputAudioFileType?=?kAudioFileWAVEType;
????????_transcoder.outputAudioFormat?=?kAudioFormatLinearPCM;
????????
????????_transcoder.outputBufferSize?=?SEND_DATA_LENGTH;
????}
????
????return?self;
}

-?(id)initWithURL:(NSURL?*)url?transcodingToUrl:(NSURL?*)transcodeToUrl{
???return?[self?initWithURL:url?httpRequestHeaders:nil?transcodingToUrl:transcodeToUrl];
}

-(void)dealloc{
????if?(_pcmDataBuffer)?{
????????free(_pcmDataBuffer);
????}
????
????_pcmDataBuffer?=?NULL;
}

-?(void)startTransport
{
????__weak?AlinkAudioTransport?*wself?=?self;
????
????dispatch_async(self.audioTransport?^{
????????[wself.transcoder?start];
????????
????????[wself?createAndStartSendDataTimer];
????????
????????[[NSRunLoop?currentRunLoop]?run];
????????
????});
}

-?(void)createAndStartSendDataTimer
{
????
????self.sendTimer?=?dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER?0?0?self.audioTransport);
????
????_pcmDataBuffer?=?malloc(SEND_DATA_LENGTH);
????
????if?(self.sendTimer?!=?NULL)?{
????????dispatch_source_set_timer(self.sendTimer
??????????????????????????????????dispatch_time(DISPATCH_TIME_NOW?SEND_TIME_INTERVAL?*?NSEC_PER_SEC)
??????????????????????????????????SEND_TIME_TOLERANC?*?NSEC_PER_SEC?0);
????????
????????dispatch_source_set_event_handler(self.sendTimer?^{
????????????[self?readNextPCMData];
????????});
????????
????????dispatch_resume(self.sendTimer);
????}

????
????
}

-?(void)cancel
{
????[self?invalidateSendTimer];
????[self.transcoder?cancel];
}


-?(void)invalidateSendTimer
{
????if?(self.sendTimer?!=?NULL)?{
????????dispatch_source_t?timer?=?self.sendTimer;
????????
??

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2015-11-26?09:01??lameTest\
?????文件????????6148??2015-12-01?09:52??lameTest\.DS_Store
?????目錄???????????0??2015-12-01?09:52??__MACOSX\
?????目錄???????????0??2015-12-01?09:52??__MACOSX\lameTest\
?????文件?????????120??2015-12-01?09:52??__MACOSX\lameTest\._.DS_Store
?????目錄???????????0??2015-12-01?09:52??lameTest\lameTest\
?????文件????????6148??2015-12-01?09:52??lameTest\lameTest\.DS_Store
?????目錄???????????0??2015-12-01?09:52??__MACOSX\lameTest\lameTest\
?????文件?????????120??2015-12-01?09:52??__MACOSX\lameTest\lameTest\._.DS_Store
?????文件?????????745??2015-11-30?14:28??lameTest\lameTest\AlinkAudioTransport.h
?????文件?????????171??2015-11-30?14:28??__MACOSX\lameTest\lameTest\._AlinkAudioTransport.h
?????文件????????5512??2015-11-30?15:04??lameTest\lameTest\AlinkAudioTransport.m
?????文件?????????171??2015-11-30?15:04??__MACOSX\lameTest\lameTest\._AlinkAudioTransport.m
?????文件?????????272??2015-11-13?17:13??lameTest\lameTest\AppDelegate.h
?????文件?????????171??2015-11-13?17:13??__MACOSX\lameTest\lameTest\._AppDelegate.h
?????文件????????2026??2015-11-13?17:19??lameTest\lameTest\AppDelegate.m
?????文件?????????171??2015-11-13?17:19??__MACOSX\lameTest\lameTest\._AppDelegate.m
?????目錄???????????0??2015-11-13?17:13??lameTest\lameTest\Assets.xcassets\
?????目錄???????????0??2015-11-13?17:13??lameTest\lameTest\Assets.xcassets\AppIcon.appiconset\
?????文件?????????585??2015-11-13?17:13??lameTest\lameTest\Assets.xcassets\AppIcon.appiconset\Contents.json
?????目錄???????????0??2015-12-01?09:52??__MACOSX\lameTest\lameTest\Assets.xcassets\
?????目錄???????????0??2015-12-01?09:52??__MACOSX\lameTest\lameTest\Assets.xcassets\AppIcon.appiconset\
?????文件?????????171??2015-11-13?17:13??__MACOSX\lameTest\lameTest\Assets.xcassets\AppIcon.appiconset\._Contents.json
?????目錄???????????0??2015-11-25?16:08??lameTest\lameTest\base.lproj\
?????文件????????1664??2015-11-13?17:13??lameTest\lameTest\base.lproj\LaunchScreen.storyboard
?????目錄???????????0??2015-12-01?09:52??__MACOSX\lameTest\lameTest\base.lproj\
?????文件?????????171??2015-11-13?17:13??__MACOSX\lameTest\lameTest\base.lproj\._LaunchScreen.storyboard
?????文件????????1588??2015-11-25?16:08??lameTest\lameTest\base.lproj\Main.storyboard
?????文件????????3963??2015-11-27?16:20??lameTest\lameTest\GDAudioTranscoder.h
?????文件?????????171??2015-11-27?16:20??__MACOSX\lameTest\lameTest\._GDAudioTranscoder.h
?????文件???????36560??2015-11-30?15:04??lameTest\lameTest\GDAudioTranscoder.m
............此處省略152個文件信息

評論

共有 條評論