我刚刚发现了一个令人烦恼的bug,它的新keyboardDismissMode属性scroll view.当使用带有text view值的a UIScrollViewKeyboardDismissModeInteractive并且键盘被解除时,scroll view似乎在它继续减速之前跳到顶部.
我已向Apple提交了一份错误报告,但需要解决方法.我已经尝试了DAKeyboardControl没有新的iOS7支持,幕后使用它keyboardDismissMode,它仍然做到这对我来说表明这是一个更深层次的问题.
有什么建议?
我试图从iPod库中的MP3中提取原始PCM样本,以便我可以播放歌曲并操纵音调,速度和应用声音效果(如滤镜).我已经走了AVPlayer和AVAudioPlayer的路线,它们都不能完全控制播放.
以下代码就我所知.我现在处于一个不知道如何处理我的while循环中的CMSampleBufferRef的地步,因为我不知道使用哪个框架来播放音频并应用这些效果.
知道什么是实现这一目标的最佳方法?我已经查看了使用AVAssetWriter转换文件的情况,但这不会为我删除它,因为该过程太耗时.当然我可以将PCM样本读入内存进行播放,而不必先将它们写入磁盘?
注意:我知道下面的代码引用了项目中的一个mp3,但是我知道这种方法与我从MPMediaPropertyAssetURL中提取NSURL的方法相同
-(IBAction)loadTrack:(id)sender {
NSString *songPath = [[NSBundle mainBundle] pathForResource:@"Smooth_Sub Focus_192" ofType:@"mp3"];
NSURL *assetURL = [[NSURL alloc] initFileURLWithPath:songPath];
AVURLAsset *songAsset = [AVURLAsset URLAssetWithURL:assetURL options:nil];
NSError *assetError = nil;
AVAssetReader *assetReader = [[AVAssetReader assetReaderWithAsset:songAsset
error:&assetError] retain];
if (assetError) {
NSLog (@"Error: %@", assetError);
return;
}
AVAssetReaderOutput *assetReaderOutput = [[AVAssetReaderAudioMixOutput assetReaderAudioMixOutputWithAudioTracks:songAsset.tracks
audioSettings: nil] retain];
if (![assetReader canAddOutput:assetReaderOutput]) {
NSLog (@"Incompatible Asser Reader Output");
return;
}
[assetReader addOutput: assetReaderOutput];
[assetReader startReading];
CMSampleBufferRef nextBuffer;
while (nextBuffer = [assetReaderOutput copyNextSampleBuffer]) {
/* What …Run Code Online (Sandbox Code Playgroud) 过去两周我一直在这里,这让我发疯.几天前我问过这个问题(提取iPod库原始PCM样本并播放声音效果),虽然答案让我走了一半,但我仍然卡住了.
基本上我想要实现的是从iPod库中加载多首歌曲,以便通过弯音,均衡效果等效果进行播放......
我走了AVPlayer和AVAudioPlayer的路线太简单了.我见过的唯一可以用这些效果播放音频的框架是OpenAL.我尝试了一些客观的c包装器(Finch和ObjectAL)Finch不播放压缩音频,而ObjectAL只会为我转换它,如果我传入一个文件的URL(这是我不能做的,因为我只有一个不兼容的iPod库URL).
一个应用程序的一个例子,我想要美丽的东西是Tap DJ.它可以快速加载来自iPod库的歌曲(与TouchDJ不同,它可以播放各种各样的效果.
任何帮助将非常感激.
iphone ×2
ipod ×2
objective-c ×2
audio ×1
ios ×1
ios7 ×1
mp3 ×1
openal ×1
pcm ×1
uiscrollview ×1
uitextview ×1
xcode ×1