作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在点击按钮并使用 iOS 5 文件播放器音频单元时播放声音。
文件播放器使用 ScheduledAudioFileRegion 播放音频,并且可以根据需要安排播放尽可能多的帧
ScheduledAudioFileRegion rgn;
memset (&rgn.mTimeStamp, 0, sizeof(rgn.mTimeStamp));
rgn.mTimeStamp.mFlags = kAudioTimeStampSampleTimeValid;
rgn.mTimeStamp.mSampleTime = 0;
rgn.mCompletionProc = NULL;
rgn.mCompletionProcUserData = NULL;
rgn.mAudioFile = audioFile;
rgn.mLoopCount = INT_MAX;
rgn.mStartFrame = 0;
rgn.mFramesToPlay = nPackets * fileASBD.mFramesPerPacket; // plays entire file.
最佳答案
调用 AudioUnitReset
停止播放,然后启动并再次播放。立即发生(或尽可能接近没有区别。)
每当您的用户按下按钮时执行此操作:
// Reset
AudioUnitReset(filePlayerUnit, kAudioUnitScope_Global, 0);
// Prime (have to do this before every play call.)
UInt32 defaultVal = 0;
AudioUnitSetProperty(filePlayerUnit,
kAudioUnitProperty_ScheduledFilePrime,
kAudioUnitScope_Global,
0,
&defaultVal,
sizeof(defaultVal));
// Play (again)
AudioUnitSetProperty(_playerUnit,
kAudioUnitProperty_ScheduleStartTimeStamp,
kAudioUnitScope_Global,
0,
&startTime,
sizeof(startTime));
AudioTimeStamp
:
AudioTimeStamp startTime;
memset(&startTime, 0, sizeof(startTime));
startTime.mFlags = kAudioTimeStampSampleTimeValid;
startTime.mSampleTime = -1;
关于ios5 - 设置一个 ScheduledAudioFileRegion 重新开始,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11780946/
我正在尝试在点击按钮并使用 iOS 5 文件播放器音频单元时播放声音。 文件播放器使用 ScheduledAudioFileRegion 播放音频,并且可以根据需要安排播放尽可能多的帧 Schedul
在 Objective-C 中,我们像这样填写 ScheduledAudioFileRegion 结构: ScheduledAudioFileRegion playRegion; playRegion
在 iOS 上,我有一个类型为 kAudioUnitSubType_AudioFilePlayer 的音频单元,由 AUNode 封装并连接到音频图中的多 channel 混音器和远程 IO(输出)。
我是一名优秀的程序员,十分优秀!