私は、関連するコードhttps://developer.xamarin.com/samples/monodroid/Example_WorkingWithAudio/からベースのWAVファイルを作成は、以下のとおりです。Android AudioRecord pcm16bit WAVファイル - 外部で再生できないのですか?次のように
private const int RECORDER_SAMPLERATE = 16000;
private const ChannelIn RECORDER_CHANNELS = ChannelIn.Mono;
private const Android.Media.Encoding RECORDER_AUDIO_ENCODING = Android.Media.Encoding.Pcm16bit;
...
var bufferSize = AudioRecord.GetMinBufferSize(RECORDER_SAMPLERATE, RECORDER_CHANNELS, RECORDER_AUDIO_ENCODING);
audioBuffer = new byte[bufferSize];
audioRecord = new AudioRecord(
// Hardware source of recording.
AudioSource.Mic,
// Frequency
RECORDER_SAMPLERATE,
// Mono or stereo
RECORDER_CHANNELS,
// Audio encoding
RECORDER_AUDIO_ENCODING,
// Length of the audio clip.
audioBuffer.Length
);
audioRecord.StartRecording();
...
using (var fileStream = new FileStream(filePath, FileMode.Create, FileAccess.Write))
{
while (true)
{
if (endRecording)
{
endRecording = false;
break;
}
try
{
// Keep reading the buffer while there is audio input.
int numBytes = await audioRecord.ReadAsync(audioBuffer, 0, audioBuffer.Length);
await fileStream.WriteAsync(audioBuffer, 0, numBytes);
// Do something with the audio input.
}
catch (Exception ex)
{
Console.Out.WriteLine(ex.Message);
break;
}
}
fileStream.Close();
}
audioRecord.Stop();
audioRecord.Release();
私の質問は - 私は、Windows(または他のOS)にコピーした後、この.wavファイルを再生することができますか?ここに私の観察結果は以下のとおりです。https://developer.xamarin.com/samples/monodroid/Example_WorkingWithAudio/コードサンプルに示すように
- .WAVファイルは、AndroidのAudioTrackクラスを使用して再生することができます。
- コードサンプルは、/ data/Example_WorkingWithAudio/files /ディレクトリにtestAudio.wavファイルを作成します。
- このファイルをWindows PCにコピーし、.WAVをサポートするオーディオプレーヤーで.WAVファイルを再生してみます。ファイルを再生できないことを確認してください。