| ASIO blocking i/o implementation needs testing | | | | |
| priming behavior of Pa_ReadStream and Pa_WriteStream is under specified | | | | |
| blocking i/o not implemented for dsound | | | | |
| review and possibly correct bit-transparancy of int<->float<->int converters | | | | |
| require clipping for dithering sample conversion functions? | | | | |
| PA/DirectSound recommended deviceInfo->default*Latency values are (higher than necessary) | | | | |
| PA/WMME timeInfo.inputBufferAdcTime is not implemented | | | | |
| CoreAudio callback timeInfo.inputBufferAdcTime is broken for input-only streams | | | | |
| [META] ABI/API changes before V19 final release | | | | |
| use patest_wmme_find_best_latency_params.c to gather viable WMME default latency values | | | | |
| Use patest_dsound_find_best_latency_params.c to gather viable default DirectSound latency values | | | | |
| Write a test that prints out the default latency values for each device | | | | |
| Verify that each host API returns non-zero default latency values using test from #201 | | | | |
| Manually test that PA default latencies result in no glitching for each host API | | | | |
| M1 Latency related code review | | | | |
| QA Test: compare loopback and reported stream latencies for each host API | | | | |
| add callback API for detecting connection/removal of devices | | | | |
| Enable >16bit output sample widths using DirectSound API | | | | |
| Directsound callback scheduling could be improved | | | | |
| blocking i/o not implemented for asio (committed needs testing see #148) | | | | |
| Underspecified behavior for Stream Finished Callback with Blocking Streams | | | | |
| harmonise DirectSound file naming conventions | | | | |
| PaUtil_AllocateMemory doc omits value for alignment guarantees | | | | |
| There's no global documentation for PA_* configuration defines | | | | |
| timeInfo.currentTime passed to PaStreamCallback is not strictly conformant to spec | | | | |
| WMME ignores callback stream completion flags while priming output | | | | |
| [META] Some PA recommended deviceInfo->default*Latency values are bad or unimplemented | | | | |
| [META] Harmonize Pa_OpenStream() suggestedLatency param to native buffer size calculations | | | | |
| [META] ensure 0 Pa_OpenStream() suggestedLatency param means "use minimum implementable latency" | | | | |
| PA/ASIO ignores some driver notifications it probably shouldn't | | | | |
| Review and specify error teardown behavior for Pa_CloseStream()/CloseStream | | | | |
| review WMME blocking i/o buffer queueing underflow/overflow handling | | | | |
| ill defined stream flag handling when pa_process.c calls multiple user callbacks for one host buffer | | | | |
| PA/WMME timeInfo is not implemented during stream priming | | | | |
| enable >16 bit output with WMME api | | | | |
| PA/WMME doesn't implement paInputUnderflow, paOutputOverflow streamCallback statusFlags. | | | | |
| PA doesn't provide a mechanism for handling/reporting async errors or failure | | | | |
| API WART: streamInfo.inputLatency and streamInfo.outputLatency are in seconds, should be samples | | | | |
| Use Windows Multimedia Class Scheduler Service (MMCSS) for WMME, DSound, ASIO | | | | |
| Rename PaStreamParameters::suggestedLatency to requestedLatency | | | | |
| [META] ensure reported streamInfo->input/ouputLatency values are correct | | | | |
| Query functions in portaudio.h should take const PaStream ptr | | | | |
| Test to graph callback timestamp behavior | | | | |
| Memory barriers in pa_ringbuffer,c need to be reviewed again | | | | |
| PortAudio should use UTF8 for character encoding of public API strings | | | | |
| Doc comments for PaDeviceInfo are dismal | | | | |
| PA/ASIO GetStreamTime will reset to zero after 49 days | | | | |
| /src/os/win/pa_x86_plain_converters.h might be better in /include? | | | | |
| bypass ASIO SDK limitation of 1 device open at a time. | | | | |
| Improve ASIO blocking i/o buffering and latency calculations | | | | |
| PA/ASIO IsFormatSupported() doesn't validate input/outputParameters->hostApiSpecificStreamInfo | | | | |
| Map ASIO errors to meaningful values not paUnanticipatedHostApiError | | | | |
| ASIO devices with multiple sample formats are unsupported | | | | |
| Allow PaAsio_ShowControlPanel to be called for open stream. Fix ASIOInit(..systemSpecific) | | | | |
| ASIO callback underflow/overflow buffer slip detection doesn't work | | | | |
| Consider allowing Pa_ReadStream(0) and Pa_WriteStream(0) to be used to poll for underflow/overflow | | | | |
| pa_process.c doesn't support paPrimeOutputBuffersUsingStreamCallback for adapted buffer sizes | | | | |
| DirectSound IsFormatSupported implementation may be incomplete | | | | |
| DirectSound doesn't distinguish callback paAbort from paComplete | | | | |
| DirectSound paUnanticipatedHostError doesn't set host-specific error string | | | | |
| pull default DirectSound devices from system like WMME does | | | | |
| Pa/DSound returns paUnanticipatedHostError more often than it should | | | | |
| PA/DirectSound doesn't handle input buffer overflow | | | | |
| PA/DirectSound doesn't implement paNeverDropInput | | | | |
| win PaUtil_GetTime implementation doesn't deal with kb q274323 QueryPerformanceCounter issue | | | | |
| PA/WMME can set last host error info from callback thread | | | | |
| PA/WMME review and fix error cleanup in StartStream() function and elsewhere | | | | |
| PA/WMME StartStream may not handle paComplete/paAbort correctly when paPrimeOutputBuffersUsingStreamCallback priming | | | | |
| PA/WMME could reset waveOut device when callback returns paAbort | | | | |
| PA/WMME doesn't implement paNeverDropInput | | | | |
| PortAudio implementation for iOS | | | | |
| add a function to dynamically select which i/o channels we're interested in at each callback | | | | |
| consolodate windows error handling functions to improve error reporting quality | | | | |