summaryrefslogtreecommitdiff
path: root/SDL_Core/src/components/media_manager/src/media_manager_impl.cc
diff options
context:
space:
mode:
Diffstat (limited to 'SDL_Core/src/components/media_manager/src/media_manager_impl.cc')
-rw-r--r--SDL_Core/src/components/media_manager/src/media_manager_impl.cc323
1 files changed, 0 insertions, 323 deletions
diff --git a/SDL_Core/src/components/media_manager/src/media_manager_impl.cc b/SDL_Core/src/components/media_manager/src/media_manager_impl.cc
deleted file mode 100644
index e692d887e..000000000
--- a/SDL_Core/src/components/media_manager/src/media_manager_impl.cc
+++ /dev/null
@@ -1,323 +0,0 @@
-/**
-* Copyright (c) 2013, Ford Motor Company
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions are met:
-*
-* Redistributions of source code must retain the above copyright notice, this
-* list of conditions and the following disclaimer.
-*
-* Redistributions in binary form must reproduce the above copyright notice,
-* this list of conditions and the following
-* disclaimer in the documentation and/or other materials provided with the
-* distribution.
-*
-* Neither the name of the Ford Motor Company nor the names of its contributors
-* may be used to endorse or promote products derived from this software
-* without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
-* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*/
-
-#include "config_profile/profile.h"
-#include "media_manager/media_manager_impl.h"
-#include "media_manager/audio/from_mic_recorder_listener.h"
-#include "media_manager/streamer_listener.h"
-#include "application_manager/message_helper.h"
-#include "application_manager/application.h"
-#include "application_manager/application_manager_impl.h"
-#include "application_manager/application_impl.h"
-#include "utils/file_system.h"
-#if defined(EXTENDED_MEDIA_MODE)
-#include "media_manager/audio/a2dp_source_player_adapter.h"
-#include "media_manager/audio/from_mic_recorder_adapter.h"
-#endif
-#include "media_manager/video/socket_video_streamer_adapter.h"
-#include "media_manager/audio/socket_audio_streamer_adapter.h"
-#include "media_manager/video/pipe_video_streamer_adapter.h"
-#include "media_manager/audio/pipe_audio_streamer_adapter.h"
-#include "media_manager/video/video_stream_to_file_adapter.h"
-
-
-namespace media_manager {
-
-log4cxx::LoggerPtr MediaManagerImpl::logger_ = log4cxx::LoggerPtr(
- log4cxx::Logger::getLogger("MediaManagerImpl"));
-
-MediaManagerImpl::MediaManagerImpl()
- : protocol_handler_(NULL)
- , a2dp_player_(NULL)
- , from_mic_recorder_(NULL)
- , video_streamer_(NULL)
- , audio_streamer_(NULL)
- , video_stream_active_(false)
- , audio_stream_active_(false) {
- Init();
-}
-
-MediaManagerImpl::~MediaManagerImpl() {
- if (a2dp_player_) {
- delete a2dp_player_;
- a2dp_player_ = NULL;
- }
-
- if (from_mic_recorder_) {
- delete from_mic_recorder_;
- from_mic_recorder_ = NULL;
- }
-
- if (video_streamer_) {
- delete video_streamer_;
- video_streamer_ = NULL;
- }
-
- if (audio_streamer_) {
- delete audio_streamer_;
- audio_streamer_ = NULL;
- }
-}
-
-void MediaManagerImpl::SetProtocolHandler(
- protocol_handler::ProtocolHandler* protocol_handler) {
- protocol_handler_ = protocol_handler;
-}
-
-void MediaManagerImpl::Init() {
- LOG4CXX_INFO(logger_, "MediaManagerImpl::Init()");
-
-#if defined(EXTENDED_MEDIA_MODE)
- LOG4CXX_INFO(logger_, "Called Init with default configuration.");
- a2dp_player_ = new A2DPSourcePlayerAdapter();
- from_mic_recorder_ = new FromMicRecorderAdapter();
-#endif
-
- if ("socket" == profile::Profile::instance()->video_server_type()) {
- video_streamer_ = new SocketVideoStreamerAdapter();
- } else if ("pipe" == profile::Profile::instance()->video_server_type()) {
- video_streamer_ = new PipeVideoStreamerAdapter();
- } else if ("file" == profile::Profile::instance()->video_server_type()) {
- video_streamer_ = new VideoStreamToFileAdapter(
- profile::Profile::instance()->video_stream_file());
- }
-
- if ("socket" == profile::Profile::instance()->audio_server_type()) {
- audio_streamer_ = new SocketAudioStreamerAdapter();
- } else if ("pipe" == profile::Profile::instance()->audio_server_type()) {
- audio_streamer_ = new PipeAudioStreamerAdapter();
- } else if ("file" == profile::Profile::instance()->audio_server_type()) {
- audio_streamer_ = new VideoStreamToFileAdapter(
- profile::Profile::instance()->audio_stream_file());
- }
-
- video_streamer_listener_ = new StreamerListener();
- audio_streamer_listener_ = new StreamerListener();
-
- if (NULL != video_streamer_) {
- video_streamer_->AddListener(video_streamer_listener_);
- }
-
- if (NULL != audio_streamer_) {
- audio_streamer_->AddListener(audio_streamer_listener_);
- }
-}
-
-void MediaManagerImpl::PlayA2DPSource(int32_t application_key) {
- LOG4CXX_INFO(logger_, "MediaManagerImpl::PlayA2DPSource");
- if (a2dp_player_) {
- a2dp_player_->StartActivity(application_key);
- }
-}
-
-void MediaManagerImpl::StopA2DPSource(int32_t application_key) {
- LOG4CXX_INFO(logger_, "MediaManagerImpl::StopA2DPSource");
- if (a2dp_player_) {
- a2dp_player_->StopActivity(application_key);
- }
-}
-
-void MediaManagerImpl::StartMicrophoneRecording(
- int32_t application_key,
- const std::string& output_file,
- int32_t duration) {
- LOG4CXX_INFO(logger_, "MediaManagerImpl::StartMicrophoneRecording to "
- << output_file);
- application_manager::ApplicationSharedPtr app =
- application_manager::ApplicationManagerImpl::instance()->
- application(application_key);
- std::string relative_file_path =
- file_system::CreateDirectory(app->name());
- relative_file_path += "/";
- relative_file_path += output_file;
- from_mic_listener_ = new FromMicRecorderListener(relative_file_path);
-#if defined(EXTENDED_MEDIA_MODE)
- if (from_mic_recorder_) {
- from_mic_recorder_->AddListener(from_mic_listener_);
- (static_cast<FromMicRecorderAdapter*>(from_mic_recorder_))
- ->set_output_file(relative_file_path);
- (static_cast<FromMicRecorderAdapter*>(from_mic_recorder_))
- ->set_duration(duration);
- from_mic_recorder_->StartActivity(application_key);
- }
-#else
- if (file_system::FileExists(relative_file_path)) {
- LOG4CXX_INFO(logger_, "File " << output_file << " exists, removing");
- if (file_system::DeleteFile(relative_file_path)) {
- LOG4CXX_INFO(logger_, "File " << output_file << " removed");
- }
- else {
- LOG4CXX_WARN(logger_, "Could not remove file " << output_file);
- }
- }
- const std::string predefined_rec_file = "audio.8bit.wav";
- std::vector<uint8_t> buf;
- if (file_system::ReadBinaryFile(predefined_rec_file, buf)) {
- if (file_system::Write(relative_file_path, buf)) {
- LOG4CXX_INFO(logger_,
- "File " << predefined_rec_file << " copied to " << output_file);
- }
- else {
- LOG4CXX_WARN(logger_, "Could not write to file " << output_file);
- }
- }
- else {
- LOG4CXX_WARN(logger_, "Could not read file " << predefined_rec_file);
- }
-#endif
- from_mic_listener_->OnActivityStarted(application_key);
-}
-
-void MediaManagerImpl::StopMicrophoneRecording(int32_t application_key) {
- LOG4CXX_INFO(logger_, "MediaManagerImpl::StopMicrophoneRecording");
-#if defined(EXTENDED_MEDIA_MODE)
- if (from_mic_recorder_) {
- from_mic_recorder_->StopActivity(application_key);
- }
-#endif
- if (from_mic_listener_) {
- from_mic_listener_->OnActivityEnded(application_key);
- }
-}
-
-void MediaManagerImpl::StartVideoStreaming(int32_t application_key) {
- LOG4CXX_INFO(logger_, "MediaManagerImpl::StartVideoStreaming");
-
- if (video_streamer_) {
- if (!video_stream_active_) {
- video_stream_active_ = true;
- video_streamer_->StartActivity(application_key);
-
- char url[100] = {'\0'};
-
-
- if ("socket" == profile::Profile::instance()->video_server_type()) {
- snprintf(url, sizeof(url) / sizeof(url[0]), "http://%s:%d",
- profile::Profile::instance()->server_address().c_str(),
- profile::Profile::instance()->video_streaming_port());
- } else if ("pipe" == profile::Profile::instance()->video_server_type()) {
- snprintf(url, sizeof(url) / sizeof(url[0]), "%s",
- profile::Profile::instance()->named_video_pipe_path().c_str());
- } else {
- DCHECK(snprintf(url, sizeof(url) / sizeof(url[0]), "%s", file_system::FullPath(
- profile::Profile::instance()->video_stream_file()).c_str()));
- }
- application_manager::MessageHelper::SendNaviStartStream(url,
- application_key);
- }
- }
-}
-
-void MediaManagerImpl::StopVideoStreaming(int32_t application_key) {
- LOG4CXX_INFO(logger_, "MediaManagerImpl::StopVideoStreaming");
- if (video_streamer_) {
- video_stream_active_ = false;
- application_manager::MessageHelper::SendNaviStopStream(application_key);
- video_streamer_->StopActivity(application_key);
- }
-}
-
-void MediaManagerImpl::StartAudioStreaming(int32_t application_key) {
- LOG4CXX_INFO(logger_, "MediaManagerImpl::StartAudioStreaming");
-
- if (audio_streamer_) {
- if (!audio_stream_active_) {
- audio_stream_active_ = true;
- audio_streamer_->StartActivity(application_key);
-
- char url[100] = {'\0'};
-
- if ("socket" == profile::Profile::instance()->audio_server_type()) {
- snprintf(url, sizeof(url) / sizeof(url[0]), "http://%s:%d",
- profile::Profile::instance()->server_address().c_str(),
- profile::Profile::instance()->audio_streaming_port());
- } else if ("pipe" == profile::Profile::instance()->audio_server_type()) {
- snprintf(url, sizeof(url) / sizeof(url[0]), "%s",
- profile::Profile::instance()->named_audio_pipe_path().c_str());
- } else {
- DCHECK(snprintf(url, sizeof(url) / sizeof(url[0]), "%s",
- file_system::FullPath(profile::Profile::instance()->
- audio_stream_file()).c_str()));
- }
-
- application_manager::MessageHelper::SendAudioStartStream(url,
- application_key);
- }
- }
-}
-
-void MediaManagerImpl::StopAudioStreaming(int32_t application_key) {
- LOG4CXX_INFO(logger_, "MediaManagerImpl::StopAudioStreaming");
- if (audio_streamer_) {
- audio_stream_active_ = false;
- application_manager::MessageHelper::SendAudioStopStream(application_key);
- audio_streamer_->StopActivity(application_key);
- }
-}
-
-
-void MediaManagerImpl::OnMessageReceived(
- const protocol_handler::RawMessagePtr& message) {
- if (message->service_type()
- == protocol_handler::kMobileNav) {
- if (!(application_manager::ApplicationManagerImpl::instance()->
- IsVideoStreamingAllowed(message->connection_key()))) {
- return;
- }
- if (video_streamer_) {
- video_streamer_->SendData(message->connection_key(), message);
- }
- } else if (message->service_type()
- == protocol_handler::kAudio) {
- if (!(application_manager::ApplicationManagerImpl::instance()->
- IsAudioStreamingAllowed(message->connection_key()))) {
- return;
- }
- if (audio_streamer_) {
- audio_streamer_->SendData(message->connection_key(), message);
- }
- }
-}
-
-void MediaManagerImpl::OnMobileMessageSent(
- const protocol_handler::RawMessagePtr& message) {
-}
-
-void MediaManagerImpl::FramesProcessed(int32_t application_key,
- int32_t frame_number) {
- if (protocol_handler_) {
- /*protocol_handler_->SendFramesNumber(application_key,
- frame_number);*/
- }
-}
-
-} // namespace media_manager