audio_core: add teakra and lle interface
This commit is contained in:
		
							
								
								
									
										15
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										15
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
								
							@@ -38,11 +38,14 @@
 | 
			
		||||
    path = externals/discord-rpc
 | 
			
		||||
    url = https://github.com/discordapp/discord-rpc.git
 | 
			
		||||
[submodule "externals/libzmq"]
 | 
			
		||||
	path = externals/libzmq
 | 
			
		||||
	url = https://github.com/zeromq/libzmq
 | 
			
		||||
    path = externals/libzmq
 | 
			
		||||
    url = https://github.com/zeromq/libzmq
 | 
			
		||||
[submodule "externals/cppzmq"]
 | 
			
		||||
	path = externals/cppzmq
 | 
			
		||||
	url = https://github.com/zeromq/cppzmq
 | 
			
		||||
    path = externals/cppzmq
 | 
			
		||||
    url = https://github.com/zeromq/cppzmq
 | 
			
		||||
[submodule "cpp-jwt"]
 | 
			
		||||
	path = externals/cpp-jwt
 | 
			
		||||
	url = https://github.com/arun11299/cpp-jwt.git
 | 
			
		||||
    path = externals/cpp-jwt
 | 
			
		||||
    url = https://github.com/arun11299/cpp-jwt.git
 | 
			
		||||
[submodule "teakra"]
 | 
			
		||||
    path = externals/teakra
 | 
			
		||||
    url = https://github.com/wwylele/teakra.git
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										3
									
								
								externals/CMakeLists.txt
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								externals/CMakeLists.txt
									
									
									
									
										vendored
									
									
								
							@@ -51,6 +51,9 @@ add_subdirectory(soundtouch)
 | 
			
		||||
# The SoundTouch target doesn't export the necessary include paths as properties by default
 | 
			
		||||
target_include_directories(SoundTouch INTERFACE ./soundtouch/include)
 | 
			
		||||
 | 
			
		||||
# Teakra
 | 
			
		||||
add_subdirectory(teakra)
 | 
			
		||||
 | 
			
		||||
# Xbyak
 | 
			
		||||
if (ARCHITECTURE_x86_64)
 | 
			
		||||
    # Defined before "dynarmic" above
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										1
									
								
								externals/teakra
									
									
									
									
										vendored
									
									
										Submodule
									
								
							
							
								
								
								
								
								
							
						
						
									
										1
									
								
								externals/teakra
									
									
									
									
										vendored
									
									
										Submodule
									
								
							 Submodule externals/teakra added at 6dc1297548
									
								
							@@ -14,6 +14,8 @@ add_library(audio_core STATIC
 | 
			
		||||
    hle/shared_memory.h
 | 
			
		||||
    hle/source.cpp
 | 
			
		||||
    hle/source.h
 | 
			
		||||
    lle/lle.cpp
 | 
			
		||||
    lle/lle.h
 | 
			
		||||
    interpolate.cpp
 | 
			
		||||
    interpolate.h
 | 
			
		||||
    null_sink.h
 | 
			
		||||
@@ -30,7 +32,7 @@ add_library(audio_core STATIC
 | 
			
		||||
create_target_directory_groups(audio_core)
 | 
			
		||||
 | 
			
		||||
target_link_libraries(audio_core PUBLIC common core)
 | 
			
		||||
target_link_libraries(audio_core PRIVATE SoundTouch)
 | 
			
		||||
target_link_libraries(audio_core PRIVATE SoundTouch teakra)
 | 
			
		||||
 | 
			
		||||
if(SDL2_FOUND)
 | 
			
		||||
    target_link_libraries(audio_core PRIVATE SDL2)
 | 
			
		||||
@@ -41,4 +43,3 @@ if(ENABLE_CUBEB)
 | 
			
		||||
    target_link_libraries(audio_core PRIVATE cubeb)
 | 
			
		||||
    add_definitions(-DHAVE_CUBEB=1)
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										17
									
								
								src/audio_core/lle/lle.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								src/audio_core/lle/lle.cpp
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
			
		||||
// Copyright 2018 Citra Emulator Project
 | 
			
		||||
// Licensed under GPLv2 or any later version
 | 
			
		||||
// Refer to the license.txt file included.
 | 
			
		||||
 | 
			
		||||
#include "audio_core/lle/lle.h"
 | 
			
		||||
#include "teakra/teakra.h"
 | 
			
		||||
 | 
			
		||||
namespace AudioCore {
 | 
			
		||||
 | 
			
		||||
struct DspLle::Impl final {
 | 
			
		||||
    Teakra::Teakra teakra;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
DspLle::DspLle() : impl(std::make_unique<Impl>()) {}
 | 
			
		||||
DspLle::~DspLle() = default;
 | 
			
		||||
 | 
			
		||||
} // namespace AudioCore
 | 
			
		||||
							
								
								
									
										22
									
								
								src/audio_core/lle/lle.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								src/audio_core/lle/lle.h
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,22 @@
 | 
			
		||||
// Copyright 2018 Citra Emulator Project
 | 
			
		||||
// Licensed under GPLv2 or any later version
 | 
			
		||||
// Refer to the license.txt file included.
 | 
			
		||||
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
#include "audio_core/dsp_interface.h"
 | 
			
		||||
 | 
			
		||||
namespace AudioCore {
 | 
			
		||||
 | 
			
		||||
class DspLle final : public DspInterface {
 | 
			
		||||
public:
 | 
			
		||||
    DspLle();
 | 
			
		||||
    ~DspLle();
 | 
			
		||||
 | 
			
		||||
private:
 | 
			
		||||
    struct Impl;
 | 
			
		||||
    friend struct Impl;
 | 
			
		||||
    std::unique_ptr<Impl> impl;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
} // namespace AudioCore
 | 
			
		||||
		Reference in New Issue
	
	Block a user