MonoTouch的:试图从正在使用AVAudioPlayer动态生成的文件播放音频

问题描述 投票:3回答:1

我现在面临的以下问题..我想记录从麦克风使用AVAudioRecorder音频文件和流输出到AVAudioPlayer实时。我想,通过打开流

的FileStream F =新的FileStream(文件名,FileMode.Open,FileAccess.Read,FileShare.ReadWrite);

其中,文件名是由刻录机写入文件的名称。然后我tryed来初始化AVAudioPlayer:

AVAudioPlayer玩家= AVAudioPlayer.FromData(NSData.FromStream(F));

总是返回一个空的球员,所以我包裹的FileStream到像BufferedStream

BufferedStream BF =新BufferedStream(F);

然后我初始化成使用上面的代码行中的播放器,但不是通过在F流I通过BF流。

这使得玩家至少获得null以外的值,但我不能听到任何声音。

有没有人遇到同样的问题,并且知道该解决方案的任何机会呢?我可以使用AVAudioPlayer这样还是我做的这一切错误的方式?

c# streaming xamarin.ios avaudioplayer
1个回答
1
投票

我知道这是一个老问题,但我万一别人运行跨答疑。

要播放刚刚录制的音频创建是基于刚刚录制的文件名的URL的音频播放器:

AVAudioPlayer player = AVAudioPlayer.FRomUrl(NSUrl.FromFileName(fileName));
player.PrepareToPlay();
player.Play();

希望这可以帮助别人。

© www.soinside.com 2019 - 2024. All rights reserved.