2073531564655260153

This commit is contained in:
ed committed 2026-08-25 11:46:55 -04:00
1 parent 84a2e3b82d
commit ea754be3ab
4 files changed
+56 -51

No files matched your search

@@ -1,47 +0,0 @@
---
title: "So instead of the massive \"mmdeviceapi.h\" mess-ware, I defined a stupid CPP_(object,virtual_function_number) macro."
type: archive
source: twitter
source_url: "https://x.com/NOTimothyLottes/status/2073110092447203466"
author: "NOTimothyLottes"
handle: NOTimothyLottes
post_id: "2073110092447203466"
date: 2026-07-03
archived: 2026-08-23
draft: false
tags:
- archive
- twitter
- NOTimothyLottes
description: "So instead of the massive \"mmdeviceapi.h\" mess-ware, I defined a stupid CPP_(object,virtual_function_number) macro."
in_reply_to: ""
---
## Source
- URL: https://x.com/NOTimothyLottes/status/2073110092447203466
- Author: NOTimothyLottes (@NOTimothyLottes)
- Posted: 2026-07-03 18:22:17
## Thread
**1/**
So instead of the massive "mmdeviceapi.h" mess-ware, I defined a stupid CPP_(object,virtual_function_number) macro. This way I just have to write down the index in the VT table for the specific virtual function ...
![](https://pbs.twimg.com/media/HMUqNm_XIAA0JEP?format=png&name=orig)
**2/**
Here is initial bring up, function call by function call. No headers, and no C++. The magic of typecasting at usage IC4_(CPP_(... is that I don't ever have to build the headers. That is at least working out well. I do line by line to test in Wine, defer fail handling until later
![](https://pbs.twimg.com/media/HMUrDz2XsAA9JLP?format=png&name=orig)
**3/**
More on bring-up. I just run and check visually for output in the console (this time 'B055'). Since compile times are under a second, it is super fast to check as I go. Easy to see how much code bloat there is for C++ this way (doing it manually).
![](https://pbs.twimg.com/media/HMUs9oLWUAAaHx9?format=png&name=orig)
**4/**
Example below of how much header bloat I'm factoring out using my simple macros
![](https://pbs.twimg.com/media/HMUujnwWoAAUQd1?format=png&name=orig)
@@ -7,7 +7,7 @@ author: "NOTimothyLottes"
handle: NOTimothyLottes
post_id: "2073543950497898839"
date: 2026-07-04
archived: 2026-08-23
archived: 2026-08-25
draft: false
tags:
- archive
@@ -15,6 +15,7 @@ tags:
- NOTimothyLottes
description: "Wine's IAudioClient::GetDevicePeriod() returns 53333 for minimum (which is 256 samples at 48KHz - really crappy) and 100000 for default (which is 480 samples at 48Khz - even worse), neither which work with EXCLUSIVE mode."
in_reply_to: ""
parent_post_id: "2073539101320417502"
---
## Source
@@ -23,8 +24,12 @@ in_reply_to: ""
- Author: NOTimothyLottes (@NOTimothyLottes)
- Posted: 2026-07-04 23:06:17
## Thread
## Branch
**1/**
Wine's IAudioClient::GetDevicePeriod() returns 53333 for minimum (which is 256 samples at 48KHz - really crappy) and 100000 for default (which is 480 samples at 48Khz - even worse), neither which work with EXCLUSIVE mode. Man Wine sucks, nothing but constant show stopping bugs.
## Related
- Spine: [[archive/threads/NOTimothyLottes/2026-07-04-oh-no-maybe-another-wine-bug-error-photo-im-also]]
@@ -0,0 +1,48 @@
---
title: "Oh no, maybe another Wine bug (error photo)? I'm also getting an \"AUDCLNT_E_DEVICE_IN_USE\" (0x8889000A) when http://x.com is open (which would imply pipewire owning the audio device)."
type: archive
source: twitter
source_url: "https://x.com/NOTimothyLottes/status/2073531564655260153"
author: "NOTimothyLottes"
handle: NOTimothyLottes
post_id: "2073531564655260153"
date: 2026-07-04
archived: 2026-08-25
draft: false
tags:
- archive
- twitter
- NOTimothyLottes
description: "Oh no, maybe another Wine bug (error photo)? I'm also getting an \"AUDCLNT_E_DEVICE_IN_USE\" (0x8889000A) when http://x.com is open (which would imply pipewire owning the audio device)."
in_reply_to: ""
---
## Source
- URL: https://x.com/NOTimothyLottes/status/2073531564655260153
- Author: NOTimothyLottes (@NOTimothyLottes)
- Posted: 2026-07-04 22:17:04
## Thread
**1/**
Oh no, maybe another Wine bug (error photo)? I'm also getting an "AUDCLNT_E_DEVICE_IN_USE" (0x8889000A) when http://x.com is open (which would imply pipewire owning the audio device). So still holding out hope that Wine actually tried to emulate exclusive mode ...
![](https://pbs.twimg.com/media/HMapMOaXIAEqXQe?format=png&name=orig)
**2/**
... haha what a joke. Nope, actually at another Wine bug, when my other Linux digital twin can open the audio device with exclusive access, the wine'd version cannot. So I'm back to another actual WINE bug where they return AUDCLNT_E_DEVICE_IN_USE to avoid needing to implement
**3/**
Nothing smells more like the 4th of july, than rain and grepping wine source to track down wine bugs. Does look like they just didn't implement EXCLUSIVE mode. Because I'm passing "*duration == *period" ...
![](https://pbs.twimg.com/media/HMavfcGXUAAC7xf?format=png&name=orig)
Branches: [[archive/threads/NOTimothyLottes/2026-07-04-oh-no-maybe-another-wine-bug-error-photo-im-also/2026-07-04-NOTimothyLottes-wines-iaudioclient-getdeviceperiod-returns-53333]]
**4/**
@NOTimothyLottes Once upon a time Wine didn’t implement a particular cryptography path and game broke when trying to verify file integrity, had to patch it out. It was so bad that Valve made a Proton Hotfix version (I think it ignored integrity check and returned success regardless).
+1 -2
View File
@@ -83,8 +83,7 @@ tags:
- [[archive/threads/NOTimothyLottes/2026-07-02-settings-im-using-for-snd-pcm-sw-params-for-alsa]]
- [[archive/threads/NOTimothyLottes/2026-07-02-yuck-starting-on-wdm-ks-audio-interface-for-win32]]
- [[archive/threads/NOTimothyLottes/2026-07-03-following-the-succession-thanks-of-re-trying]]
- [[archive/threads/NOTimothyLottes/2026-07-03-so-instead-of-the-massive-mmdeviceapi-h-mess-ware]]
- [[archive/threads/NOTimothyLottes/2026-07-04-wines-iaudioclient-getdeviceperiod-returns-53333]]
- [[archive/threads/NOTimothyLottes/2026-07-04-oh-no-maybe-another-wine-bug-error-photo-im-also]]
- [[archive/threads/NOTimothyLottes/2026-07-06-vulkan-starts-with-the-ping-pong-between-getting]]
- [[archive/threads/NOTimothyLottes/2026-07-08-next-pre-device-opening-activity-is-choosing]]
- [[archive/threads/NOTimothyLottes/2026-07-10-oh-i-probably-have-a-lot-to-learn-here-building]]