1 #ifndef DVDPLAYER_CODEC_H_
2 #define DVDPLAYER_CODEC_H_
5 * Copyright (C) 2005-2013 Team XBMC
8 * This Program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2, or (at your option)
13 * This Program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
18 * You should have received a copy of the GNU General Public License
19 * along with XBMC; see the file COPYING. If not, see
20 * <http://www.gnu.org/licenses/>.
26 #include "cores/dvdplayer/DVDDemuxers/DVDDemux.h"
27 #include "cores/dvdplayer/DVDCodecs/Audio/DVDAudioCodec.h"
28 #include "cores/dvdplayer/DVDInputStreams/DVDInputStream.h"
30 class DVDPlayerCodec : public ICodec
34 virtual ~DVDPlayerCodec();
36 virtual bool Init(const CStdString &strFile, unsigned int filecache);
37 virtual void DeInit();
38 virtual int64_t Seek(int64_t iSeekTime);
39 virtual int ReadPCM(BYTE *pBuffer, int size, int *actualsize);
40 virtual bool CanInit();
41 virtual bool CanSeek();
42 virtual CAEChannelInfo GetChannelInfo() {return m_ChannelInfo;}
44 void SetContentType(const CStdString &strContent);
47 CDVDDemux* m_pDemuxer;
48 CDVDInputStream* m_pInputStream;
49 CDVDAudioCodec* m_pAudioCodec;
51 CStdString m_strContentType;
53 std::string m_strFileName;
58 DemuxPacket* m_pPacket ;
63 CAEChannelInfo m_ChannelInfo;