#pragma once #include "engine/framework/assets/tensor_source.h" #include "engine/framework/core/backend.h" #include "engine/models/fish_audio/assets.h" #include "engine/models/fish_audio/types.h" #include #include namespace engine::models::fish_audio { class FishAudioDualARRuntime { public: FishAudioDualARRuntime( std::shared_ptr assets, core::BackendConfig backend, int threads, size_t graph_arena_bytes, size_t weight_context_bytes, assets::TensorStorageType weight_storage_type); ~FishAudioDualARRuntime(); engine::codecs::FishDacCodes generate( const FishAudioPrompt & prompt, const FishAudioGenerationOptions & options, const std::function &)> & on_frame = {}); void release_runtime_graphs(); private: class Impl; std::unique_ptr impl_; }; } // namespace engine::models::fish_audio