From 9d11b08ad61b1f0d6d7023ce403285d8662efaed Mon Sep 17 00:00:00 2001 From: manuel Date: Wed, 4 Mar 2015 00:23:39 +0100 Subject: sync with upstream --- xbmc/addons/AddonCallbacksCodec.cpp | 116 ------------------------------------ 1 file changed, 116 deletions(-) delete mode 100644 xbmc/addons/AddonCallbacksCodec.cpp (limited to 'xbmc/addons/AddonCallbacksCodec.cpp') diff --git a/xbmc/addons/AddonCallbacksCodec.cpp b/xbmc/addons/AddonCallbacksCodec.cpp deleted file mode 100644 index 9c7be30..0000000 --- a/xbmc/addons/AddonCallbacksCodec.cpp +++ /dev/null @@ -1,116 +0,0 @@ -/* - * Copyright (C) 2012-2013 Team XBMC - * http://xbmc.org - * - * This Program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. - * - * This Program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with XBMC; see the file COPYING. If not, see - * . - * - */ - -#include "Application.h" -#include "Addon.h" -#include "AddonCallbacksCodec.h" -#include "utils/StringUtils.h" - -extern "C" { -#include "libavcodec/avcodec.h" -#include "libavformat/avformat.h" -} - -namespace ADDON -{ -class CCodecIds -{ -public: - virtual ~CCodecIds(void) {} - - static CCodecIds& Get(void) - { - static CCodecIds _instance; - return _instance; - } - - xbmc_codec_t GetCodecByName(const char* strCodecName) - { - xbmc_codec_t retVal = XBMC_INVALID_CODEC; - if (strlen(strCodecName) == 0) - return retVal; - - std::string strUpperCodecName = strCodecName; - StringUtils::ToUpper(strUpperCodecName); - - std::map::const_iterator it = m_lookup.find(strUpperCodecName); - if (it != m_lookup.end()) - retVal = it->second; - - return retVal; - } - -private: - CCodecIds(void) - { - // get ids and names - AVCodec* codec = NULL; - xbmc_codec_t tmp; - while ((codec = av_codec_next(codec))) - { - if (av_codec_is_decoder(codec)) - { - tmp.codec_type = (xbmc_codec_type_t)codec->type; - tmp.codec_id = codec->id; - - std::string strUpperCodecName = codec->name; - StringUtils::ToUpper(strUpperCodecName); - - m_lookup.insert(std::make_pair(strUpperCodecName, tmp)); - } - } - - // teletext is not returned by av_codec_next. we got our own decoder - tmp.codec_type = XBMC_CODEC_TYPE_SUBTITLE; - tmp.codec_id = AV_CODEC_ID_DVB_TELETEXT; - m_lookup.insert(std::make_pair("TELETEXT", tmp)); - - // rds is not returned by av_codec_next. we got our own decoder - tmp.codec_type = XBMC_CODEC_TYPE_RDS; - tmp.codec_id = AV_CODEC_ID_NONE; - m_lookup.insert(std::make_pair("RDS", tmp)); - } - - std::map m_lookup; -}; - -CAddonCallbacksCodec::CAddonCallbacksCodec(CAddon* addon) -{ - m_addon = addon; - m_callbacks = new CB_CODECLib; - - /* write XBMC addon-on specific add-on function addresses to the callback table */ - m_callbacks->GetCodecByName = GetCodecByName; -} - -CAddonCallbacksCodec::~CAddonCallbacksCodec() -{ - /* delete the callback table */ - delete m_callbacks; -} - -xbmc_codec_t CAddonCallbacksCodec::GetCodecByName(const void* addonData, const char* strCodecName) -{ - (void)addonData; - return CCodecIds::Get().GetCodecByName(strCodecName); -} - -}; /* namespace ADDON */ - -- cgit v1.2.3