Skip to content

SGProcessingManager/include/processors/processing_processor_mnn_audio.hpp

Namespaces

Name
sgns
sgns::sgprocessing
MNN

Classes

Name
class sgns::sgprocessing::MNN_Audio

Defines

Name
MNN_OPEN_TIME_TRACE

Macros Documentation

define MNN_OPEN_TIME_TRACE

#define MNN_OPEN_TIME_TRACE 

Header file for processing posenet using MNN Justin Church

Source code

#pragma once
#include <cmath>
#include <memory>
#include <vector>

#include <MNN/ImageProcess.hpp>
#include <MNN/Interpreter.hpp>
#include "processing_processor.hpp"
#define MNN_OPEN_TIME_TRACE
#include <MNN/AutoTime.hpp>

namespace sgns::sgprocessing
{
    using namespace MNN;

    class MNN_Audio : public ProcessingProcessor
    {
    public:
        MNN_Audio() 
            //imageData_( std::make_unique<std::vector<std::vector<char>>>() ),
            //modelFile_( std::make_unique<std::vector<uint8_t>>() )
        {
        }

        ~MNN_Audio() override{
            //stbi_image_free(imageData_);
        };
        std::vector<uint8_t> StartProcessing( std::vector<std::vector<uint8_t>> &chunkhashes,
                                              const sgns::IoDeclaration         &proc,
                                              std::vector<char>                 &imageData,
                                              std::vector<char>                 &modelFile ) override;

        //void SetData(
        //    std::shared_ptr<std::pair<std::vector<std::string>, std::vector<std::vector<char>>>> buffers ) override;

    private:
        std::unique_ptr<MNN::Tensor> Process( const std::vector<uint8_t> &audiodata, 
                                                std::vector<uint8_t> &modelFile, 
                                                const int channels, 
                                                const int origwidth, 
                                                const int origheight,
                                                const std::string filename = "" );

        //std::unique_ptr<std::vector<std::vector<char>>> imageData_;
        //std::unique_ptr<std::vector<uint8_t>>           modelFile_;
        //std::string                                     fileName_;
    };

}

Updated on 2026-03-04 at 13:10:44 -0800