Я хотел бы захватить микрофон и немедленно воспроизвести его. Я искал решение, как использовать элемент MediaCapture под Windows 8 для захвата только аудиоданных с микрофона, но я нашел только, как захватить веб-камеру. Если бы кто-нибудь также мог сказать мне, как изменить данные перед их воспроизведением, это было бы удивительно. Пожалуйста, я жажду ответа. Неважно, будет ли ответ в c # или c ++.
Я написал это для настольного приложения, но то же самое должно работать почти везде.
private void RecordAudio()
{
var capture = new MediaCapture();
var settings = new MediaCaptureInitializationSettings();
settings.StreamingCaptureMode = StreamingCaptureMode.Audio;
capture.InitializeAsync(settings).Completed = (info, status) =>
{
StorageFolder folder = KnownFolders.DocumentsLibrary;
var op = folder.CreateFileAsync("sample.mp3", CreationCollisionOption.ReplaceExisting);
op.Completed = (
i, s) =>
{
var file = i.GetResults();
var profile = MediaEncodingProfile.CreateMp3(AudioEncodingQuality.High);
capture.StartRecordToStorageFileAsync(profile, file);
};
};
}
Других решений пока нет …