vishal_h Ответов: 1

диалоговое окно "Сохранить" для wav-файла


Я хочу, чтобы обеспечить диалоговое окно "Сохранить файл", чтобы сохранить файл WAV. Он отлично работает с текстовым файлом, но что мне нужно сделать для файла .wav?
Мой код таков:
Stream myStream;
SaveFileDialog saveFileDialog1 = new SaveFileDialog();

saveFileDialog1.Filter = "wav (*.wav)|*.wav|All files (*.*)|*.*";
saveFileDialog1.FilterIndex = 2;
saveFileDialog1.RestoreDirectory = true;

if (saveFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{           
    if ((myStream = saveFileDialog1.OpenFile()) != null)
    {
        // Code to write the stream goes here.
        myStream.Write(record.wav);
        myStream.Close();
    }
}
mciSendString("save recsound c:\\record.wav", "", 0, 0);
mciSendString("close recsound ", "", 0, 0);
Computer c = new Computer();
c.Audio.Stop();

Fabio V Silva

Вы получаете какие-нибудь ошибки?

BobJanova

Диалог сохранения на самом деле ничего не делает. Он будет работать одинаково для любого расширения файла. О чем ты на самом деле просишь?

Albert Holguin

видите мое решение, я думаю, что это то, о чем он спрашивает...

Mark Salsbery

ЛОЛ, да, это один из способов интерпретировать вопрос. Но код показывает, что OP знает, как сохранить WAV-файл с помощью MCI ... просто не уверен, почему он вызывается с жестко закодированным путем вместо использования пути, выбранного пользователем через SaveFileDialog...

Я вижу, что этот вопрос нуждается в уточнении! :)

Albert Holguin

правда, я не читал так далеко в этом вопросе, просто увидел mystream.write() и предположил, что он пытается написать wav-файл напрямую... ой

1 Ответов

Рейтинг:
0

Albert Holguin

Если у вас есть звуковой битовый поток, который вы хотите воспроизвести как WAV-файл, то вам нужно добавить заголовок WAV, чтобы указать, какой это тип аудио:

http://en.wikipedia.org/wiki/WAV[^]
http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/WAVE.html[^]
https://ccrma.stanford.edu/courses/422/projects/WaveFormat/[^]


Sergey Alexandrovich Kryukov

Ну, основываясь на догадках... вопрос получил мой 1, слишком плохо.
Мои 5 за этот ответ.
--СА

Albert Holguin

это довольно плохая формулировка, не думаю, что кто-то действительно понял проблему... хотя спасибо... :)

Sergey Alexandrovich Kryukov

Соглашаться. Вы только что предоставили полезную информацию, которая может помочь.
--СА