in kinesis_video_streamer/src/streamer.cpp [64:91]
KinesisManagerStatus StreamerNode::Initialize()
{
ClientConfigurationProvider configuration_provider(parameter_reader_);
ClientConfiguration aws_sdk_config =
configuration_provider.GetClientConfiguration();
/* Set up subscription callbacks */
if (!subscription_installer_->SetDefaultCallbacks()) {
AWS_LOG_FATAL(__func__, "Failed to set up subscription callbacks.");
return KINESIS_MANAGER_STATUS_ERROR_BASE;
}
auto kinesis_client = std::unique_ptr<KinesisClient>(
Aws::New<Aws::Kinesis::KinesisClientFacade>(__func__, aws_sdk_config));
stream_manager_ = std::make_shared<KinesisStreamManager>(
parameter_reader_.get(), &stream_definition_provider_, subscription_installer_.get(),
std::move(kinesis_client));
subscription_installer_->set_stream_manager(stream_manager_.get());
/* Initialization of video producer */
KinesisManagerStatus initialize_video_producer_result =
stream_manager_->InitializeVideoProducer(aws_sdk_config.region.c_str());
if (KINESIS_MANAGER_STATUS_FAILED(initialize_video_producer_result)) {
fprintf(stderr, "Failed to initialize video producer");
AWS_LOGSTREAM_FATAL(__func__, "Failed to initialize video producer. Error code: "
<< initialize_video_producer_result);
return initialize_video_producer_result;
}
return KINESIS_MANAGER_STATUS_SUCCESS;
}