PROBLEM:
Similar to this question for Linux, I'm running into a OSError: PortAudio library not found after I package my app with pyinstaller and execute the .exe. (Note, I do not encounter any issues when running my unpackaged app via shell. This only happens when I package it with pyinstaller).
Although installing portaudio via package manager seems to work for Linux, this doesn't seem to be an option for Windows, since the sounddevice docs say, "If you are using Mac OS X or Windows, the library will be installed automagically with pip" and doing a pip search portaudio only returns wrappers
QUESTION
What do I need to do to get sounddevice to work in my Windows environment?
Why does it work in my shell, but not after packaging the app?
FULL ERROR:
(venv) λ my-app.exe
Traceback (most recent call last):
  File "site-packages\sounddevice.py", line 71, in <module>
OSError: PortAudio library not found
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "point-of-service-recorder.py", line 11, in <module>
    import sounddevice as sd
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "c:\path\to\my\app\venv\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 627, in exec_module
    exec(bytecode, module.__dict__)
  File "site-packages\sounddevice.py", line 83, in <module>
OSError: cannot load library 'C:\Users\TYLER~1.HIT\AppData\Local\Temp\_MEI250242\_sounddevice_data\portaudio-binaries\libportaudio32bit.dll': error 0x7e
[23156] Failed to execute script point-of-service-recorder
BUILD OUTPUT
- Selected output from running pyinstaller build:
 
[...]
22251 INFO: Looking for dynamic libraries
22260 INFO: Cannot get manifest resource from non-PE file c:\users\path\to\app\venv\lib\site-packages\_soundfile_data\COPYING
22262 WARNING: Can not get binary dependencies for file: c:\users\path\to\app\venv\lib\site-packages\_soundfile_data\COPYING
22262 WARNING:   Reason: 'DOS Header magic not found.'
INSTALLED PACKAGES:
- note that 
cffi,sounddevice, andsetuptoolsare present, as specified by the requirements.portaudiois not listed, but I assumed it is included insounddevice, like the docs say (?) 
(venv) λ pip list            
Package        Version       
-------------- ---------     
altgraph       0.16.1              
certifi        2019.6.16     
cffi           1.12.3        
chardet        3.0.4         
Click          7.0           
Flask          1.1.1         
Flask-WTF      0.14.2        
future         0.17.1        
idna           2.8           
itsdangerous   1.1.0         
Jinja2         2.10.1        
MarkupSafe     1.1.1         
numpy          1.17.0        
pefile         2019.4.18     
pip            19.2.2        
pycparser      2.19          
pydub          0.23.1        
PyInstaller    3.5           
pywin32-ctypes 0.2.0         
requests       2.22.0        
setuptools     41.0.1        
sounddevice    0.3.13        
SoundFile      0.10.2        
urllib3        1.25.3        
waitress       1.3.0         
Werkzeug       0.15.5        
wheel          0.33.4        
WTForms        2.2.1