983{
984 auto extractor = std::make_shared<Yantra::FeatureExtractor<>>();
985 extractor->set_extraction_method(Yantra::ExtractionMethod::SILENCE_DATA);
986 extractor->set_parameter("silence_threshold", threshold);
987 extractor->set_parameter("min_duration", static_cast<uint32_t>(min_silence_duration));
988
990 auto result = extractor->apply_operation(input);
991
992 std::vector<std::pair<size_t, size_t>> silence_regions;
993 auto window_positions_opt = result.template get_metadata<std::vector<std::pair<size_t, size_t>>>("window_positions");
994 if (window_positions_opt.has_value()) {
995 silence_regions = window_positions_opt.value();
996 }
997
998 return silence_regions;
999}
Input/Output container for computation pipeline data flow with structure preservation.