| 1389 | } |
| 1390 | |
| 1391 | void AudioIO::StartStreamCleanup(bool bOnlyBuffers) |
| 1392 | { |
| 1393 | mpTransportState.reset(); |
| 1394 | |
| 1395 | mPlaybackBuffers.clear(); |
| 1396 | mScratchBuffers.clear(); |
| 1397 | mScratchPointers.clear(); |
| 1398 | mPlaybackMixers.clear(); |
| 1399 | mCaptureBuffers.clear(); |
| 1400 | mResample.clear(); |
| 1401 | mPlaybackSchedule.mTimeQueue.Clear(); |
| 1402 | |
| 1403 | if(!bOnlyBuffers) |
| 1404 | { |
| 1405 | Pa_AbortStream( mPortStreamV19 ); |
| 1406 | Pa_CloseStream( mPortStreamV19 ); |
| 1407 | mPortStreamV19 = NULL; |
| 1408 | mStreamToken = 0; |
| 1409 | } |
| 1410 | |
| 1411 | mPlaybackSchedule.GetPolicy().Finalize( mPlaybackSchedule ); |
| 1412 | } |
| 1413 | |
| 1414 | bool AudioIO::IsAvailable(AudacityProject &project) const |
| 1415 | { |