#3 23.07.12 17:30
Re: Запись, проигрывание, сохранение видео аудио.
удалось сделать все желаемые операции со звуком. но осталась загвоздка с записью звука с диктофона.
я хочу чтобы можно было записать сообщение. затем записать еще одно сообщение в тот же буфер, не удаляя его (буфер). сделал так:
void vinSound::start_recording() {
if (OK == LASTERROR) {
pDSCBuffer->Start(DSCBSTART_LOOPING);
recording = true;
}
}
void vinSound::finish_recording() {
if (OK == LASTERROR) {
recording = false;
DWORD dwCapBufSize;
pDSCBuffer->Lock(0, 0, (LPVOID*)&pCapBuf, &dwCapBufSize, NULL, 0, DSCBLOCK_ENTIREBUFFER);
save(/*параметры сохранения*/);
pDSCBuffer->Unlock(pCapBuf, dwCapBufSize, NULL, 0);
if (pDSCBuffer) {
pDSCBuffer->Release();
pDSCBuffer = NULL;
}
if (FAILED (pDSoundCapture->CreateCaptureBuffer(&dscBufDesc, &pDSCBuffer, NULL))) {
error(CREATE_CAPTURE_BUFFER_ERROR);
return;
}
}
}
как сделать это "правильно" без вызова этого кода:
if (pDSCBuffer) {
pDSCBuffer->Release();
pDSCBuffer = NULL;
}
if (FAILED (pDSoundCapture->CreateCaptureBuffer(&dscBufDesc, &pDSCBuffer, NULL))) {
error(CREATE_CAPTURE_BUFFER_ERROR);
return;
}
???
Исправлено Flinn (23.07.12 17:30)
Offline

