The Curious Engineer

All blogs / Audio / hi-fi

Matthew van Eerde's web log

learn.microsoft.com/en-us/archive/blogs/matthew_van_eerde

Audio / hi-fiWindows internalsMathMicrosoft blogsMSDN archive

’10’15’20’25
Posts
170 from 14 Dec 2007 to 26 Mar 2019
Posting
archived, read-only
Kind
personal blog
Feed
https://learn.microsoft.com/en-us/archive/blogs/matthew_van_eerde/feed.xml

2019 1

  1. Matthew van Eerde's blog has moved to https://matthewvaneerde.wordpress.com/

2018 6

  1. How to grab a kernel memory dump during upgrade
  2. What API is being used to play or record audio?
  3. If Windows Update sent you Intel Audio Controller version 9.21.0.3755 by mistake, uninstall it
  4. So I have this audio problem on Windows 7...
  5. Tracking down calls to AvSetMmThreadCharacteristics
  6. Helping Nancy and Esther with a math problem

2017 7

  1. Some Dow Jones Industrial Average statistics, by United States President
  2. How to gather and read logs for Microsoft's USB Audio 2.0 class driver
  3. How to negotiate an audio format for a Windows Audio Session API (WASAPI) client
  4. In defense of Lulu
  5. How far apart can squares be?
  6. Collecting audio logs the old-fashioned way
  7. Getting larger bluescreen memory dumps on your PC

2016 8

  1. Adding logs to a reported problem in Feedback Hub
  2. Report problems, with logs, and suggest features, with the Feedback Hub
  3. Media eXperience Analyzer now available in the Assessment and Deployment Kit (ADK)
  4. Installing the Microsoft class driver(s) for USB Audio devices
  5. Cyrus Smith lays a sick burn on Captain Nemo in Jules Verne's "The Mysterious Island"
  6. How to record a phone call on a Windows 10 phone
  7. Extracting GUIDs from a bunch of text
  8. Getting the schema for Windows Performance Recorder profiles

2015 10

  1. Perl scripts to encrypting and decrypt text using Rijndael
  2. Pulling ClickOnce applications from the client using a script
  3. Riffing on Raymond - incrementing the reference count on a smart pointer
  4. All the code on this blog has been moved into Git
  5. Poking into the "trusted root certification authorities" certificate stores for the current user and the local machine
  6. Taking audio glitch traces on Windows 10: phone edition
  7. Taking audio glitch traces on Windows 10: desktop edition
  8. Playing audio to the earpiece from a Windows Phone 8.1 universal app
  9. Enumerating inactive volume sessions
  10. Using StrCmpLogicalW to sort strings the way the shell does

2014 13

  1. Walking the IDeviceTopology tree to see audio driver settings
  2. Draining the WASAPI capture buffer fully
  3. More on audio buffer alignment requirements
  4. Using the Speech API to convert speech to text
  5. Expressing a function f: GF(2⁸) → GF(2⁸) as a polynomial using a Lagrange polynomial
  6. Generating the Rijndael S-box
  7. Troubleshooting default audio device heuristics
  8. Efficient multiplication and division in GF(2⁸)
  9. A mental model for the Windows Phone AudioRoutingManager API
  10. Sieving irreducible monic polynomials over a finite field
  11. Addition and multiplication table for GF(2²)
  12. Microsoft etiquette: calendar appointments when going out of office
  13. Why is 1 Pascal equal to 94 dB Sound Pressure Level? (1 Pa = 94 dB SPL)

2013 10

  1. Getting peak meters and volume settings for all apps and audio devices on the system
  2. shellproperty.exe v2: read all properties on a file; set properties of certain non-VT_LPWSTR types
  3. Sample app for RECT functions
  4. shellproperty.exe - set/read string properties on a file from the command line
  5. Even if someone's signaling right, they still have the right of way
  6. Getting the package full name of a Windows Store app, given the process ID
  7. More on IAudioSessionControl and IAudioSessionControl2, plus: how to log a GUID
  8. Buffer size alignment and the audio period
  9. An attempt to explain the twin prime conjecture to a five-year-old
  10. Grabbing the output of the Microsoft Speech API text-to-speech engine as audio data

2012 21

  1. How to dump Speech API object properties
  2. Generating sample first names
  3. Programmatically adding a folder to a shell library (e.g., the Music library)
  4. Changing the desktop wallpaper using IDesktopWallpaper
  5. Grabbing large amounts of text from STDIN in O(n) time
  6. Finding the longest substring which occurs twice in a given string
  7. Enumerating mixer devices, mixer lines, and mixer controls
  8. Enumerating MIDI devices
  9. Implementing a "listen" command using ISpRecoContext from the Microsoft Speech API
  10. Implementing a "say" command using ISpVoice from the Microsoft Speech API
  11. Muting all audio outputs with IAudioEndpointVolume
  12. Getting audio peak meter values for all active audio sessions
  13. Windows Sound test team rowing morale event
  14. Programmatically rearranging displays
  15. Weighing the Sun and the Moon
  16. unattend.xml: turning on Remote Desktop automatically
  17. Sample: how to enumerate waveIn and waveOut devices on your system
  18. How many numbers are straights?
  19. My unattend.xml file
  20. Programmatically setting a local user account to never expire its password
  21. Teaching someone to fish and the AKS primality test

2011 27

  1. Excruciating rhymes
  2. What is a perfect score in Yahtzee?
  3. Programmatically grabbing a screenshot of the primary display
  4. Generating primes using the Sieve of Eratosthenes plus a few optimizations
  5. How to create a shortcut from the command line
  6. Command-line app to set the desktop wallpaper
  7. Welcome Yuk Lai Suen to the blogosphere!
  8. Beep sample
  9. Mark your variadic logging function with __format_string to have PREfast catch format specifier errors
  10. How to install unsigned drivers
  11. How to validate and log a WAVEFORMATEX
  12. Anand vs. Gelfand world chess championship 2012 oldest pair of contenders since 1886
  13. Disney princesses: an attempt at a complete list
  14. Disney princess pedigree: Belle
  15. Nitpicking Sam Loyd - a wheel within a wheel
  16. How to enumerate audio endpoint (IMMDevice) properties on your system
  17. Linearity of Windows volume APIs - render session and stream volumes
  18. Car Talk puzzler analysis - palindromic odometers
  19. Translating Ada Lovelace - mathematical science is an instrument
  20. Car Talk puzzler analysis - Limerick equation
  21. Linearity of Windows volume APIs - IAudioMeterInformation and full-scale signals
  22. Basic audio volume theory
  23. Generating formulae for polygonal numbers (triangular, square, pentagonal...)
  24. Windows audio render volume settings, from local to global
  25. Spot the bug - control flow macro
  26. How much is a perfect Jeopardy! score?
  27. Perl script to parse ADTS audio header

2010 23

  1. How to write a leading apostrophe in Word
  2. Phase and stereo-to-mono downmix
  3. Perl script to parse MPEG audio header
  4. optimal tic-tac-toe (XKCD)
  5. Downmixing stereo to mono
  6. UI text flow of various languages
  7. Troubleshooting: how to install the Microsoft HD Audio class driver
  8. How to enumerate WASAPI Audio Processing Objects (APOs) on your system
  9. How to enumerate Audio Compression Manager (ACM) drivers on your system (spot the bug!)
  10. How to enumerate DirectSound DirectX Media Objects (DMOs) on your system
  11. How to enumerate DirectShow filters on your system
  12. Wheel of Fortune conundrum
  13. How to enumerate Media Foundation transforms on your system
  14. Jeopardy conundrum
  15. Pirates of Penzance puzzle - what year is it?
  16. Solution: baby boys and baby girls
  17. Interview question: baby boys and baby girls
  18. Spot the bug - Outlook "block sender" icon, solution
  19. Spot the bug - Outlook "block sender" icon
  20. Blown movie lines - Torn Curtain
  21. Famous Watch Story
  22. Newton: combining celestial and terrestrial mechanics
  23. Deriving the centripetal acceleration formula

2009 20

  1. Rules for making change
  2. How to turn on HDCP or SCMS in an audio playback app
  3. Perl one-liner: approximate pi via Monte Carlo method
  4. Nitpicking László Polgár's Chess: ... #1071
  5. Forcing Windows to install on a single partition
  6. Tweaks I make every time I install Windows
  7. How to calculate a sine sweep - the right way
  8. Bad Perl: locker problem
  9. How to calculate a sine sweep - the wrong way
  10. Bad Perl: Josephus problem
  11. Bad Perl: Russian Peasant multiplication algorithm
  12. Bug - jack detection on Windows 7 hdaudio.sys mixed capture
  13. Minimal unsatisfiable regular expression, XPath query
  14. Why square waves have ears: Gibbs' phenomenon (Wilbraham's phenomenon)
  15. Daylight Saving Time and Benjamin Franklin
  16. Second cousins, cousins once removed; relationships by generations to common ancestor
  17. Spock's chess games from Star Trek Ishmael
  18. The more experience I get the more I like to try new things
  19. Why a full-scale sine wave has an intensity of -3 dB FS
  20. Sample - WASAPI exclusive-mode event-driven playback app, including the HD Audio alignment dance

2008 21

  1. Sample - WASAPI loopback capture (record what you hear)
  2. Sample - playing silence via WASAPI event-driven (pull) mode
  3. Good Perl, Bad Perl
  4. xargs start
  5. xkcd finds East and West confusing - what about North and South?
  6. The case of the default audio device from the future
  7. How long can the logoff sound be?
  8. Rotating a matrix redux
  9. The largest prime ever - you saw it here first
  10. Solution: x! + y! + z! = x * y * z
  11. Interview question: find solution to x! + y! + z! = x * y * z
  12. Nitpicking Sam Loyd's "Organ Pipes" mate in two
  13. Triangular primes: or, the dangers of non-rigorous proofs
  14. Sample: find out if your default audio playback and audio capture devices are on the same hardware
  15. Blown movie lines - Casablanca
  16. Spot the Bug - IMFOutputSchema
  17. Unsolving the Rubik's Cube
  18. Generating a sine wave with phase - answers
  19. Blown movie lines - The Matrix
  20. Generating a sine wave with phase
  21. Generating a sine wave

2007 3

  1. The evolution of HRESULT_FROM_WIN32
  2. If you see a fact, try to see it as intuitively as possible
  3. Calculating timeouts with a clock that wraps