4#include "declarative/PropertyMacros.h"
28 std::string _modelPath,
35 template<
typename PropsT>
38 const std::map<std::string, apra::ScalarPropertyValue>& values,
39 std::vector<std::string>& missingRequired
41 apra::applyProp(props.modelPath,
"modelPath", values,
true, missingRequired);
42 apra::applyProp(props.bufferSize,
"bufferSize", values,
false, missingRequired);
45 auto it = values.find(
"samplingStrategy");
46 if (it != values.end()) {
47 if (
auto* val = std::get_if<std::string>(&it->second)) {
48 if (*val ==
"GREEDY") {
49 props.samplingStrategy =
GREEDY;
50 }
else if (*val ==
"BEAM_SEARCH") {
58 if (propName ==
"modelPath")
return modelPath;
59 if (propName ==
"bufferSize")
return static_cast<int64_t
>(
bufferSize);
60 if (propName ==
"samplingStrategy") {
63 throw std::runtime_error(
"Unknown property: " + propName);
77 template <
class Archive>
78 void serialize(Archive& ar,
const unsigned int version);
93 bool process(frame_container& frames);
97 void addInputPin(framemetadata_sp& metadata,
string& pinId);
Definition AudioToTextXForm.h:10
void serialize(Archive &ar, const unsigned int version)
Definition AudioToTextXForm.cpp:26
int bufferSize
Definition AudioToTextXForm.h:19
static void applyProperties(PropsT &props, const std::map< std::string, apra::ScalarPropertyValue > &values, std::vector< std::string > &missingRequired)
Definition AudioToTextXForm.h:36
static std::vector< std::string > dynamicPropertyNames()
Definition AudioToTextXForm.h:70
bool setProperty(const std::string &propName, const apra::ScalarPropertyValue &value)
Definition AudioToTextXForm.h:66
DecoderSamplingStrategy samplingStrategy
Definition AudioToTextXForm.h:17
size_t getSerializeSize()
Definition AudioToTextXForm.cpp:18
DecoderSamplingStrategy
Definition AudioToTextXForm.h:12
@ GREEDY
Definition AudioToTextXForm.h:13
@ BEAM_SEARCH
Definition AudioToTextXForm.h:14
apra::ScalarPropertyValue getProperty(const std::string &propName) const
Definition AudioToTextXForm.h:57
friend class boost::serialization::access
Definition AudioToTextXForm.h:75
std::string modelPath
Definition AudioToTextXForm.h:18
AudioToTextXFormProps()
Definition AudioToTextXForm.h:22
Definition AudioToTextXForm.cpp:34
Definition AudioToTextXForm.h:82
void setMetadata(framemetadata_sp &metadata)
Definition AudioToTextXForm.cpp:187
void setProps(AudioToTextXFormProps &props)
Definition AudioToTextXForm.cpp:217
bool process(frame_container &frames)
Definition AudioToTextXForm.cpp:154
bool handleFlushingBuffer()
Definition AudioToTextXForm.cpp:231
AudioToTextXForm(AudioToTextXFormProps _props)
Definition AudioToTextXForm.cpp:74
bool term()
Definition AudioToTextXForm.cpp:146
AudioToTextXFormProps getProps()
Definition AudioToTextXForm.cpp:202
bool init()
Definition AudioToTextXForm.cpp:137
bool validateInputPins()
Definition AudioToTextXForm.cpp:81
bool validateOutputPins()
Definition AudioToTextXForm.cpp:110
void addInputPin(framemetadata_sp &metadata, string &pinId)
Definition AudioToTextXForm.cpp:129
bool processEOS(string &pinId)
Definition AudioToTextXForm.cpp:225
bool processSOS(frame_sp &frame)
Definition AudioToTextXForm.cpp:195
boost::shared_ptr< Detail > mDetail
Definition AudioToTextXForm.h:105
bool handlePropsChange(frame_sp &frame)
Definition AudioToTextXForm.cpp:208
virtual ~AudioToTextXForm()
Definition AudioToTextXForm.cpp:79
void applyProp(T &member, const char *propName, const std::map< std::string, ScalarPropertyValue > &values, bool isRequired, std::vector< std::string > &missingRequired)
Definition PropertyMacros.h:36
std::variant< int64_t, double, bool, std::string > ScalarPropertyValue
Definition ModuleRegistry.h:30