mirror of
				https://git.suyu.dev/suyu/suyu
				synced 2025-11-04 00:49:02 -06:00 
			
		
		
		
	Merge pull request #2834 from Morph1984/audrenu_QueryAudioDeviceInputEvent
audren_u: Stub IAudioDevice::QueryAudioDeviceInputEvent
This commit is contained in:
		@@ -173,7 +173,7 @@ public:
 | 
			
		||||
            {7, &IAudioDevice::SetAudioDeviceOutputVolume, "SetAudioDeviceOutputVolumeAuto"},
 | 
			
		||||
            {8, &IAudioDevice::GetAudioDeviceOutputVolume, "GetAudioDeviceOutputVolumeAuto"},
 | 
			
		||||
            {10, &IAudioDevice::GetActiveAudioDeviceName, "GetActiveAudioDeviceNameAuto"},
 | 
			
		||||
            {11, nullptr, "QueryAudioDeviceInputEvent"},
 | 
			
		||||
            {11, &IAudioDevice::QueryAudioDeviceInputEvent, "QueryAudioDeviceInputEvent"},
 | 
			
		||||
            {12, &IAudioDevice::QueryAudioDeviceOutputEvent, "QueryAudioDeviceOutputEvent"},
 | 
			
		||||
            {13, nullptr, "GetAudioSystemMasterVolumeSetting"},
 | 
			
		||||
        };
 | 
			
		||||
@@ -183,6 +183,10 @@ public:
 | 
			
		||||
        buffer_event = Kernel::WritableEvent::CreateEventPair(kernel, Kernel::ResetType::Automatic,
 | 
			
		||||
                                                              "IAudioOutBufferReleasedEvent");
 | 
			
		||||
 | 
			
		||||
        // Should be similar to audio_output_device_switch_event
 | 
			
		||||
        audio_input_device_switch_event = Kernel::WritableEvent::CreateEventPair(
 | 
			
		||||
            kernel, Kernel::ResetType::Automatic, "IAudioDevice:AudioInputDeviceSwitchedEvent");
 | 
			
		||||
 | 
			
		||||
        // Should only be signalled when an audio output device has been changed, example: speaker
 | 
			
		||||
        // to headset
 | 
			
		||||
        audio_output_device_switch_event = Kernel::WritableEvent::CreateEventPair(
 | 
			
		||||
@@ -292,6 +296,15 @@ private:
 | 
			
		||||
        rb.Push<u32>(1);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // Should be similar to QueryAudioDeviceOutputEvent
 | 
			
		||||
    void QueryAudioDeviceInputEvent(Kernel::HLERequestContext& ctx) {
 | 
			
		||||
        LOG_WARNING(Service_Audio, "(STUBBED) called");
 | 
			
		||||
 | 
			
		||||
        IPC::ResponseBuilder rb{ctx, 2, 1};
 | 
			
		||||
        rb.Push(RESULT_SUCCESS);
 | 
			
		||||
        rb.PushCopyObjects(audio_input_device_switch_event.readable);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void QueryAudioDeviceOutputEvent(Kernel::HLERequestContext& ctx) {
 | 
			
		||||
        LOG_DEBUG(Service_Audio, "called");
 | 
			
		||||
 | 
			
		||||
@@ -302,6 +315,7 @@ private:
 | 
			
		||||
 | 
			
		||||
    u32_le revision = 0;
 | 
			
		||||
    Kernel::EventPair buffer_event;
 | 
			
		||||
    Kernel::EventPair audio_input_device_switch_event;
 | 
			
		||||
    Kernel::EventPair audio_output_device_switch_event;
 | 
			
		||||
 | 
			
		||||
}; // namespace Audio
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user