Closed zurgeg closed 9 months ago
Seems like this is related, from the log:
5.296 [ERROR] RSAsioDeviceEnum::UpdateAvailableDevices - failed.
Alright, I'm trying to set up a mic input to see if that works. Just purged my prefix again, wish me luck
Alright, mic is working (with latency problems obviously). Gonna try following the guide again
Sorry for the lackluster support. I'm a bit busy with real life.
If a microphone is working now, you seem to be a good track and it would be interesting for others to know what caused the issue.
Sorry for the lackluster support. I'm a bit busy with real life.
If a microphone is working now, you seem to be a good track and it would be interesting for others to know what caused the issue. Yeah, so the microphone works, but ASIO doesn't (yet, need t If you found something that works, then this isn't important, but I'm gonna leave it here
RS2014 appears on "Readable Clients / Output Port" but not "Writable Clients / Input Ports" in QjackCTL.
I don't know what those two terms mean and I also can't find these in QjackCTL, but I guess Rocksmith doesn't take audio in? Yeah. If you go in QJackCTL, there's a setting to use "Connections" instead of the graph
"To play in Real Tone Cable Mode[...]"
I have never seen that message, but I guess it's telling you that no RealToneCable is plugged in? Exactly.
I'm trying to set up a mic input
In the sense of a physical microphone, or the mic input that you can set up in the RS_ASIO config file? Yep, a physical mic. I wanted to see if that worked (which it did)
Alright, I've tried again. RSASIO is saying DebugDeviceEnum::UpdateAvailableDevices - 3 render devices, 5 capture devices
in the logs, but still giving me the no RTC error
@theNizo Wait a sec...
This setup isn't audio interfaces only right? I'm using a USB microphone...
This setup isn't audio interfaces only right? I'm using a USB microphone...
I don't understand the question...
You can theoretically use a microphone as an input. That technically works.
A USB microphone is an audio interface to your PC.
This setup isn't audio interfaces only right? I'm using a USB microphone...
I don't understand the question...
You can theoretically use a microphone as an input. That technically works.
A USB microphone is an audio interface to your PC.
Ahh okay, that was what I was looking for.
I'm going to try using chaotic-aur
's wineasio
build, although I don't have high hopes for that helping, given VBAsioTest32 worked, which means wineasio was working. I'll update later once I test
Yeah, still nothing...
RS2014 is showing up in QJackCTLs connection graph as "ALSA plug-in [wine-preloader]" if that helps.
Ah-ha! This might give us a clue:
RSAsioDeviceEnum::UpdateAvailableDevices - failed.
...then later...
DebugDeviceEnum::UpdateAvailableDevices - 12 render devices, 0 capture devices
Wonder what's different between the two DeviceEnum
s
RS2014 is showing up in QJackCTLs [...]
I won't help you with a UI that I don't understand.
Okay, let's start from the beginning. Can you even hear sound from Rocksmith?
RS2014 is showing up in QJackCTLs [...]
I won't help you with a UI that I don't understand. Okay, let's start from the beginning. Can you even hear sound from Rocksmith?
Yeah, but only if I set EnableWasapiInputs=1
Yeah, but only if I set
EnableWasapiInputs=1
This should have been listed under "did you do anything different".
WASAPI is the audio protocol that Rocksmith uses by default, AKA the one we DO NOT want. Please disable that.
Okay, I'm currently working on the guide to update it for the wineasio update. There are some steps I will change.
Could you please do the following steps and tell me the outcome:
EDIT: this is meant for wineasio 1.2, sorry.
env WINEPREFIX=$STEAMLIBRARY/steamapps/compatdata/221680/pfx ./wineasio-register
(the wineasio-register script comes in the wineasio zip (the one you get here))Driver=
lines to wineasio-rsasio
instead.wineasio-register
spit out the usual failed to create L"C:\\Windws\system32\whatever.dll
, which is awk'd out with awk '!/create_dest_file/'
to prevent that from flooding the log. Besides that, it outputs this:
002c:fixme:winediag:LdrInitializeThunk wine-staging 8.15 is a testing version containing experimental patches.
002c:fixme:winediag:LdrInitializeThunk Please mention your exact version when filing bug reports on winehq.org.
0080:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
0080:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
0080:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
0080:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
0090:err:winediag:is_broken_driver Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead.
0090:fixme:xrandr:xrandr10_get_current_mode Non-primary adapters are unsupported.
0090:fixme:xrandr:xrandr10_get_current_mode Non-primary adapters are unsupported.
0090:fixme:xrandr:xrandr10_get_current_mode Non-primary adapters are unsupported.
0034:err:winediag:is_broken_driver Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead.
002c:err:winediag:is_broken_driver Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead.
0024:err:winediag:is_broken_driver Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead.
0114:err:winediag:is_broken_driver Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead.
regsvr32: Successfully registered DLL '/usr/lib32/wine/i386-unix/wineasio32.dll.so'
'/usr/lib/wine/x86_64-windows/wineasio64.dll' -> '/home/jg/.local/share/Steam//steamapps/compatdata/221680/pfx/drive_c/windows/system32/wineasio64.dll'
011c:err:winediag:is_broken_driver Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead.
012c:err:winediag:is_broken_driver Broken NVIDIA RandR detected, falling back to RandR 1.0. Please consider using the Nouveau driver instead.
regsvr32: Successfully registered DLL '/usr/lib/wine/x86_64-unix/wineasio64.dll.so'
RS_ASIO-log.txt contains (after going to the path/input menu, then closing the game)
0.000 [INFO] - Wrapper DLL loaded (v0.7.0)
0.000 [INFO] PatchOriginalCode
0.043 [INFO] image crc32: 0xd1b38fcb
0.263 [INFO] Patching CoCreateInstance
0.263 [INFO] Patch_CallAbsoluteIndirectAddress - num locations: 2
0.263 [INFO] Patching call at 00C02DBD
0.263 [INFO] Patching call at 00E75278
0.263 [INFO] Patching PortAudio MarshalStreamComPointers
0.263 [INFO] Patch_CallRelativeAddress - num locations: 1
0.263 [INFO] Patching call at 00E7483F
0.263 [INFO] Patching PortAudio UnmarshalStreamComPointers
0.263 [INFO] Patch_CallRelativeAddress - num locations: 1
0.263 [INFO] Patching call at 00E748F4
0.263 [INFO] Patching Two Guitar Tones Connected Message Box (num locations: 1)
0.263 [INFO] Patching bytes at 007C0C5F
0.263 [INFO] Patched_CoCreateInstance called: IID_IMMDeviceEnumerator
0.264 [INFO] DebugDeviceEnum::GetDefaultAudioEndpoint - dataFlow: eRender - role: eMultimedia
0.264 [INFO] RSAggregatorDeviceEnum::UpdateAvailableDevices
0.264 [INFO] GetWineAsioInfo - Looking for wineasio.dll...
0.265 [INFO] Failed to load wineasio.dll or file not found
0.265 [INFO] AsioHelpers::FindDrivers
0.265 [INFO] RSAsioDeviceEnum::UpdateAvailableDevices - output requesting ASIO driver: wineasio-rsasio
0.265 [ERROR] RSAsioDeviceEnum::UpdateAvailableDevices - failed.
0.265 [INFO] RSAsioDeviceEnum::UpdateAvailableDevices - input[0] requesting ASIO driver: wineasio-rsasio
0.265 [ERROR] RSAsioDeviceEnum::UpdateAvailableDevices - failed.
0.265 [INFO] RSAsioDeviceEnum::UpdateAvailableDevices - input[1] requesting ASIO driver: wineasio-rsasio
0.265 [ERROR] RSAsioDeviceEnum::UpdateAvailableDevices - failed.
0.265 [INFO] RSAsioDeviceEnum::UpdateAvailableDevices - input[2] requesting ASIO driver: wineasio-rsasio
0.265 [ERROR] RSAsioDeviceEnum::UpdateAvailableDevices - failed.
0.265 [INFO] DebugDeviceEnum::UpdateAvailableDevices - 0 render devices, 0 capture devices
0.265 [INFO] hr: 80070490
0.265 [INFO] *ppEndpoint: 00000000
0.265 [INFO] DebugDeviceEnum::GetDefaultAudioEndpoint - dataFlow: eCapture - role: eMultimedia
0.265 [INFO] hr: 80070490
0.265 [INFO] *ppEndpoint: 00000000
0.265 [INFO] DebugDeviceEnum::EnumAudioEndpoints - dataFlow: eAll - dwStateMask: 1
0.265 [INFO] hr: S_OK
0.265 [INFO] *ppDevices: 11892F70
1.089 [INFO] Patched_CoCreateInstance called: IID_IMMDeviceEnumerator
1.089 [INFO] DebugDeviceEnum::GetDefaultAudioEndpoint - dataFlow: eRender - role: eMultimedia
1.089 [INFO] RSAggregatorDeviceEnum::UpdateAvailableDevices
1.089 [INFO] AsioHelpers::FindDrivers
1.089 [INFO] RSAsioDeviceEnum::UpdateAvailableDevices - output requesting ASIO driver: wineasio-rsasio
1.089 [ERROR] RSAsioDeviceEnum::UpdateAvailableDevices - failed.
1.089 [INFO] RSAsioDeviceEnum::UpdateAvailableDevices - input[0] requesting ASIO driver: wineasio-rsasio
1.089 [ERROR] RSAsioDeviceEnum::UpdateAvailableDevices - failed.
1.089 [INFO] RSAsioDeviceEnum::UpdateAvailableDevices - input[1] requesting ASIO driver: wineasio-rsasio
1.089 [ERROR] RSAsioDeviceEnum::UpdateAvailableDevices - failed.
1.089 [INFO] RSAsioDeviceEnum::UpdateAvailableDevices - input[2] requesting ASIO driver: wineasio-rsasio
1.089 [ERROR] RSAsioDeviceEnum::UpdateAvailableDevices - failed.
1.089 [INFO] DebugDeviceEnum::UpdateAvailableDevices - 0 render devices, 0 capture devices
1.089 [INFO] hr: 80070490
1.089 [INFO] *ppEndpoint: 00000000
1.089 [INFO] DebugDeviceEnum::GetDefaultAudioEndpoint - dataFlow: eCapture - role: eMultimedia
1.089 [INFO] hr: 80070490
1.089 [INFO] *ppEndpoint: 00000000
1.089 [INFO] DebugDeviceEnum::EnumAudioEndpoints - dataFlow: eAll - dwStateMask: 1
1.089 [INFO] hr: S_OK
1.089 [INFO] *ppDevices: 118968F0
1.090 [INFO] DebugDeviceEnum::RegisterEndpointNotificationCallback
48.151 [INFO] DebugDeviceEnum::UnregisterEndpointNotificationCallback
48.375 [INFO] - Wrapper DLL unloaded
RS_ASIO.ini contains this:
# for "EnableWasapiOutputs" you can use -1 to have a message prompting
# to use either WASAPI or ASIO for output every time you boot the game
[Config]
EnableWasapiOutputs=0
EnableWasapiInputs=0
EnableAsio=1
[Asio]
; available buffer size modes:
; driver - respect buffer size setting set in the driver
; host - use a buffer size as close as possible as that requested by the host application
; custom - use the buffer size specified in CustomBufferSize field
BufferSizeMode=driver
CustomBufferSize=
# if your game hangs or crashes on exit, try setting "EnableRefCountHack" to true.
# when blank or invalid, the value of "EnableRefCountHack" will be interpreted as
# true if RS ASIO detects the usage of Asio4All.
# the same applies for all inputs.
[Asio.Output]
Driver=wineasio-rsasio
BaseChannel=0
AltBaseChannel=
EnableSoftwareEndpointVolumeControl=1
EnableSoftwareMasterVolumeControl=1
SoftwareMasterVolumePercent=100
EnableRefCountHack=
[Asio.Input.0]
Driver=wineasio-rsasio
Channel=0
EnableSoftwareEndpointVolumeControl=1
EnableSoftwareMasterVolumeControl=1
SoftwareMasterVolumePercent=100
EnableRefCountHack=
[Asio.Input.1]
Driver=wineasio-rsasio
Channel=1
EnableSoftwareEndpointVolumeControl=1
EnableSoftwareMasterVolumeControl=1
SoftwareMasterVolumePercent=100
EnableRefCountHack=
[Asio.Input.Mic]
Driver=wineasio-rsasio
Channel=1
EnableSoftwareEndpointVolumeControl=1
EnableSoftwareMasterVolumeControl=1
SoftwareMasterVolumePercent=100
EnableRefCountHack=
usual
failed to create L"C:\\Windws\system32\whatever.dll
As the guide says:
(Errors are normal, should end with "regsvr32: Successfully registered DLL [...]")
So it seems to have been worked fine.
Just to be sure, you're using 1.2 now? And since the files are called different now, please make sure that you're not using both versions simultaneously.
RS_ASIO.ini
looks good
RS_ASIO-log.txt
So it can't find the DLL.
According to my log, this should be located in C:\windows\system32\wineasio.dll
.
In drive_c/windows/system32/
there should be
wineasio.dll
wineasio32.dll
wineasio64.dll
If that's the case, how are you launching Rocksmith?
usual
failed to create L"C:\\Windws\system32\whatever.dll
As the guide says:
(Errors are normal, should end with "regsvr32: Successfully registered DLL [...]")
So it seems to have been worked fine.
Just to be sure, you're using 1.2 now?
Yeah.
RS_ASIO.ini
looks good
RS_ASIO-log.txt
So it can't find the DLL.
According to my log, this should be located in
C:\windows\system32\wineasio.dll
.In
drive_c/windows/system32/
there should be* `wineasio.dll` * `wineasio32.dll` * `wineasio64.dll`
So, the latest build of wineasio doesn't have a wineasio.dll. I ended up copying wineasio32.dll to wineasio.dll. Other than that, it all seems fine.
If that's the case, how are you launching Rocksmith?
I've tried with the start script generated by PROTON_LOG=1 PROTON_DUMP_DEBUG_COMMANDS=1 %command%
, that being:
#!/bin/bash
#Run game or given command in environment
cd "/home/jg/.local/share/Steam/steamapps/common/Rocksmith2014"
DEF_CMD=("/home/jg/.local/share/Steam/steamapps/common/Rocksmith2014/Rocksmith2014.exe" "-uplay_steam_mode")
PATH="/home/jg/.local/share/Steam/steamapps/common/Proton - Experimental/files/bin/:/usr/bin:/bin" \
TERM="xterm" \
WINEDEBUG="-all" \
WINEDLLPATH="/home/jg/.local/share/Steam/steamapps/common/Proton - Experimental/files/lib64//wine:/home/jg/.local/share/Steam/steamapps/common/Proton - Experimental/files/lib//wine" \
LD_LIBRARY_PATH="/home/jg/.local/share/Steam/ubuntu12_64/video/:/home/jg/.local/share/Steam/ubuntu12_32/video/:/home/jg/.local/share/Steam/steamapps/common/Proton - Experimental/files/lib64/:/home/jg/.local/share/Steam/steamapps/common/Proton - Experimental/files/lib/:/usr/lib/pressure-vessel/overrides/lib/x86_64-linux-gnu/aliases:/usr/lib/pressure-vessel/overrides/lib/i386-linux-gnu/aliases" \
WINEPREFIX="/home/jg/.local/share/Steam/steamapps/compatdata/221680/pfx/" \
WINEESYNC="1" \
WINEFSYNC="1" \
SteamGameId="221680" \
SteamAppId="221680" \
WINEDLLOVERRIDES="steam.exe=b;dotnetfx35.exe=b;dotnetfx35setup.exe=b;beclient.dll=b,n;beclient_x64.dll=b,n;d3d11=n;d3d10core=n;d3d9=n;dxgi=n;d3d12=n;d3d12core=n" \
STEAM_COMPAT_CLIENT_INSTALL_PATH="/home/jg/.local/share/Steam" \
WINE_LARGE_ADDRESS_AWARE="1" \
GST_PLUGIN_SYSTEM_PATH_1_0="/home/jg/.local/share/Steam/steamapps/common/Proton - Experimental/files/lib64/gstreamer-1.0:/home/jg/.local/share/Steam/steamapps/common/Proton - Experimental/files/lib/gstreamer-1.0" \
WINE_GST_REGISTRY_DIR="/home/jg/.local/share/Steam/steamapps/compatdata/221680/gstreamer-1.0/" \
"/home/jg/.local/share/Steam/steamapps/common/Proton - Experimental/files/bin/wine64" c:\\windows\\system32\\steam.exe "${@:-${DEF_CMD[@]}}"
But launching from Steam with LD_PRELOAD=/usr/lib32/libjack.so PIPEWIRE_LATENCY=256/48000 %command%
also fails in the same way.
AHA! I got it!
Turns out I was doing two things wrong:
wineasio.dll
for it to work.Now with everything set as normal, it works (with the WineASIO autodetect too!)
Thanks!
AHA! I got it!
Awesome.
(with the WineASIO autodetect
Do you mean the autodetect that RS_ASIO claims to have? (For which you don't need to register the dlls to the prefix?)
AHA! I got it!
Awesome.
(with the WineASIO autodetect
Do you mean the autodetect that RS_ASIO claims to have? (For which you don't need to register the dlls to the prefix?)
Yep
Interesting. I didn't manage that. Maybe you might be able to help me with this issue (if you want to, of course): https://github.com/theNizo/linux_rocksmith/issues/33