Managed Direct Sound не работает без студии(((
От: Morcheeba  
Дата: 28.10.08 14:27
Оценка:
Уважаемые коллеги, по долгу службы мне пришлось создать на C# приложение, которое параллельно пишет звук с микрофона и обрабатывает его. Все было прекрасно пока я не попытался запустить exe-файл через проводник. Тут же посыпались эксепшены. Я попытался проделать ту же операцию с сэмплом от мелкософта, который использовал в качестве отправной точки. Каково же было мое удивление, когда ситуация повторилась!!!
Не встречался ли кто-нибудь с проблемой записи звука с микрофона через Managed Direct Sound?

Я работаю из под WinXP, DirectX SDK — февраль 2007, 2005-я студия
Re: Managed Direct Sound не работает без студии(((
От: CTpaHHoe Россия http://ctpahhoe.blogspot.com/
Дата: 30.10.08 13:31
Оценка:
Здравствуйте, Morcheeba, Вы писали:

M>Не встречался ли кто-нибудь с проблемой записи звука с микрофона через Managed Direct Sound?


M>Я работаю из под WinXP, DirectX SDK — февраль 2007, 2005-я студия


1. release сборка ведёт себя так же?

2. какие конкретно ошибки вываливаются?
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
[тишина]
сразу к делу, без приветов. осторожно, злой антиспам
Re[2]: Managed Direct Sound не работает без студии(((
От: Morcheeba  
Дата: 31.10.08 07:12
Оценка:
CTH>1. release сборка ведёт себя так же?

CTH>2. какие конкретно ошибки вываливаются?


Релиз сборка и моего приложения и мелкософтовского сэмпла при запуске вне студии выдают один и тот же NullRefferenceException. После этого JIT компилятор находит у меня на компе студию и предлагает провести отладку в ней.
В случае, если я запускал через проводник не релиз а дебаг версию экзешника, дебаггер указывает на следующую инструкцию

private void WaitThread()
{
while (Capturing)
{
//Sit here and wait for a message to arrive
NotificationEvent.WaitOne(Timeout.Infinite, true);
RecordCapturedData();
}
}
якобы объект NotificationEvent класса AutoResetEvent не был инициализирован.
В коде программы я действительно не нашел инициализации данного объекта, хотя при запуске из студии все работает корректно (данные поступают и сбрасываются в файл)

Я пытался самостоятельно проинициализировать данный объект

NotificationEvent = new AutoResetEvent(false);

При запуске из студии программа продолжает корректно работать, но при запуске экзешника через проводник (и Debug и Release) она делает вид, что работает (эксепшены не вылетают), но нагрузка на процессор нулевая и длина чанка данных внутри WAVE файла равна нулю.
Re[3]: Managed Direct Sound не работает без студии(((
От: Morcheeba  
Дата: 01.11.08 11:17
Оценка:
Уважаемые администраторы, благодаря помощи коллеги (CTpaHHoe), проблему удалось решить (в родном сэмпле Microsoft обнаружен баг ). Ветку можно удалить
Re[4]: Managed Direct Sound не работает без студии(((
От: CTpaHHoe Россия http://ctpahhoe.blogspot.com/
Дата: 01.11.08 19:18
Оценка:
Здравствуйте, Morcheeba, Вы писали:

>> (в родном сэмпле Microsoft обнаружен баг ). Ветку можно удалить


может это нормально работало в той студии, для которой писалось.
а выложи исправление, чтобы снова по граблям не ходили?
сразу к делу, без приветов. осторожно, злой антиспам
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.