diff options
author | austriancoder <austriancoder> | 2004-12-09 07:27:51 +0000 |
---|---|---|
committer | austriancoder <austriancoder> | 2004-12-09 07:27:51 +0000 |
commit | 3d01f4c6059ef89433bfb26e3979f8844dc43325 (patch) | |
tree | 5386574e0a17e37f6b9e7dc6131669ef79fc64d5 /dxr3audiodecoder.c | |
parent | 9fafcab114dcb86b15526969d9db6c32158cb59b (diff) | |
download | vdr-plugin-dxr3-3d01f4c6059ef89433bfb26e3979f8844dc43325.tar.gz vdr-plugin-dxr3-3d01f4c6059ef89433bfb26e3979f8844dc43325.tar.bz2 |
change code to fit own coding style
Diffstat (limited to 'dxr3audiodecoder.c')
-rw-r--r-- | dxr3audiodecoder.c | 114 |
1 files changed, 58 insertions, 56 deletions
diff --git a/dxr3audiodecoder.c b/dxr3audiodecoder.c index b48b614..a4ee123 100644 --- a/dxr3audiodecoder.c +++ b/dxr3audiodecoder.c @@ -32,21 +32,23 @@ ToDo: #include "dxr3pesframe.h" // ================================== -const int LPCM_HEADER_LENGTH = 7; +const int cLPCM_HEADER_LENGTH = 7; // ================================== //! constructor -cDxr3AudioDecoder::cDxr3AudioDecoder() : rbuf(50000), ac3dtsDecoder(&rbuf) +cDxr3AudioDecoder::cDxr3AudioDecoder() : m_RBuf(50000), m_AC3dtsDecoder(&m_RBuf) { - decoderOpened = false; - audioSynched = false; - volume = 255; - Codec.id = CODEC_ID_MP2; + // default start values + m_DecoderOpened = false; + m_AudioSynched = false; + m_Volume = 255; + m_Codec.id = CODEC_ID_MP2; Init(); - lastHeader[0] = 0xFF; - lastHeader[1] = lastHeader[2] = lastHeader[3] = 0; + // setuo our header + m_LastHeader[0] = 0xFF; + m_LastHeader[1] = m_LastHeader[2] = m_LastHeader[3] = 0; }; // ================================== @@ -54,7 +56,7 @@ cDxr3AudioDecoder::cDxr3AudioDecoder() : rbuf(50000), ac3dtsDecoder(&rbuf) cDxr3AudioDecoder::~cDxr3AudioDecoder() { // close codec, if it is open - cDxr3Ffmepg::Instance().CloseCodec(Codec); + cDxr3Ffmepg::Instance().CloseCodec(m_Codec); }; // ================================== @@ -62,19 +64,19 @@ cDxr3AudioDecoder::~cDxr3AudioDecoder() void cDxr3AudioDecoder::Init() { // (re)init codec - cDxr3Ffmepg::Instance().CloseCodec(Codec); - if (cDxr3Ffmepg::Instance().FindCodec(Codec)) + cDxr3Ffmepg::Instance().CloseCodec(m_Codec); + if (cDxr3Ffmepg::Instance().FindCodec(m_Codec)) { - cDxr3Ffmepg::Instance().OpenCodec(Codec); - rate = channels = -1; - frameSize = Codec.codec_context.frame_size; - decoderOpened = true; - foundHeader = false; - decodeAudio = true; + cDxr3Ffmepg::Instance().OpenCodec(m_Codec); + m_Rate = m_Channels = -1; + m_FrameSize = m_Codec.codec_context.frame_size; + m_DecoderOpened = true; + m_FoundHeader = false; + m_DecodeAudio = true; } else { - decoderOpened = false; + m_DecoderOpened = false; } } @@ -82,7 +84,7 @@ void cDxr3AudioDecoder::Init() //! decode given buffer void cDxr3AudioDecoder::Decode(const uint8_t* buf, int length, uint32_t pts, cDxr3SyncBuffer &aBuf) { - if (!decoderOpened) + if (!m_DecoderOpened) { // No decoder is open, so it // is better to stop here. @@ -99,63 +101,63 @@ void cDxr3AudioDecoder::Decode(const uint8_t* buf, int length, uint32_t pts, cDx }; int i = 0; - for (i = 0; i < length-4 && !foundHeader; i++) + for (i = 0; i < length-4 && !m_FoundHeader; i++) { unsigned int tempHead = *((unsigned int*)(buf+i)); if (HeadCheck(tempHead)) { - if ((buf[i+2] & 0xFC) != (lastHeader[2] & 0xFC)) + if ((buf[i+2] & 0xFC) != (m_LastHeader[2] & 0xFC)) { cLog::Instance() << "cDxr3AudioDecoder::Decode Found different audio header -> init\n"; - cLog::Instance() << "cDxr3AduioDecoder::Decode Old header 0x" << std::hex << *((uint32_t*) lastHeader) << " new header 0x" << *((uint32_t*) (buf+i))<< std::dec << "\n"; + cLog::Instance() << "cDxr3AduioDecoder::Decode Old header 0x" << std::hex << *((uint32_t*) m_LastHeader) << " new header 0x" << *((uint32_t*) (buf+i))<< std::dec << "\n"; Init(); - lastHeader[0] = buf[i]; - lastHeader[1] = buf[i+1]; - lastHeader[2] = buf[i+2]; - lastHeader[3] = buf[i+3]; + m_LastHeader[0] = buf[i]; + m_LastHeader[1] = buf[i+1]; + m_LastHeader[2] = buf[i+2]; + m_LastHeader[3] = buf[i+3]; } - foundHeader = true; + m_FoundHeader = true; } } - if (audioSynched) + if (m_AudioSynched) { // no header found - decodeAudio = true; + m_DecodeAudio = true; } else { - if (foundHeader && pts) + if (m_FoundHeader && pts) { - decodeAudio = true; - audioSynched = true; + m_DecodeAudio = true; + m_AudioSynched = true; } } try { - while (length > 0 && decodeAudio) + while (length > 0 && m_DecodeAudio) { - len = avcodec_decode_audio(&Codec.codec_context, (short *)(&pcmbuf), &out_size, + len = avcodec_decode_audio(&m_Codec.codec_context, (short *)(&m_PcmBuf), &out_size, const_cast<uint8_t *>(buf), length); if (len < 0 || out_size < 0) throw WRONG_LENGTH; - if (Codec.codec_context.sample_rate != rate) + if (m_Codec.codec_context.sample_rate != m_Rate) { - cLog::Instance() << "cDxr3AudioDecoder::Decode Sample rate = " << Codec.codec_context.sample_rate << "\n"; + cLog::Instance() << "cDxr3AudioDecoder::Decode Sample rate = " << m_Codec.codec_context.sample_rate << "\n"; if (rate != -1) throw UNEXPECTED_PARAMETER_CHANGE; - rate = Codec.codec_context.sample_rate; + m_Rate = m_Codec.codec_context.sample_rate; } - if (Codec.codec_context.channels != channels+1 ) + if (m_Codec.codec_context.channels != m_Channels+1 ) { - if (channels != -1) throw UNEXPECTED_PARAMETER_CHANGE; - channels = (Codec.codec_context.channels == 2) ? 1 : 0; - cLog::Instance() << "cDxr3AudioDecoder::Decode channels = " << Codec.codec_context.channels << "\n"; + if (m_Channels != -1) throw UNEXPECTED_PARAMETER_CHANGE; + m_Channels = (m_Codec.codec_context.channels == 2) ? 1 : 0; + cLog::Instance() << "cDxr3AudioDecoder::Decode channels = " << m_Codec.codec_context.channels << "\n"; } if (out_size) { - cFixedLengthFrame* pTempFrame = aBuf.Push(pcmbuf, out_size, pts); + cFixedLengthFrame* pTempFrame = aBuf.Push(PcmBuf, out_size, pts); pTempFrame->SetChannelCount(channels); pTempFrame->SetDataRate(rate); } @@ -189,15 +191,15 @@ void cDxr3AudioDecoder::Decode(const uint8_t* buf, int length, uint32_t pts, cDx //! decode lpcm void cDxr3AudioDecoder::DecodeLpcm(const uint8_t* buf, int length, uint32_t pts, cDxr3SyncBuffer &aBuf) { - if (length > (LPCM_HEADER_LENGTH + 2)) + if (length > (cLPCM_HEADER_LENGTH + 2)) { - uint8_t* pFrame = new uint8_t[length - LPCM_HEADER_LENGTH]; - assert(!((length - LPCM_HEADER_LENGTH) % 2)); // only even number of bytes are allowed + uint8_t* pFrame = new uint8_t[length - cLPCM_HEADER_LENGTH]; + assert(!((length - cLPCM_HEADER_LENGTH) % 2)); // only even number of bytes are allowed - for (int i = LPCM_HEADER_LENGTH; i < length; i += 2) + for (int i = cLPCM_HEADER_LENGTH; i < length; i += 2) { - pFrame[i - LPCM_HEADER_LENGTH] = buf[i + 1]; - pFrame[i - LPCM_HEADER_LENGTH + 1] = buf[i]; + pFrame[i - cLPCM_HEADER_LENGTH] = buf[i + 1]; + pFrame[i - cLPCM_HEADER_LENGTH + 1] = buf[i]; } int codedSpeed = (buf[5] >> 4) & 0x03; @@ -222,7 +224,7 @@ void cDxr3AudioDecoder::DecodeLpcm(const uint8_t* buf, int length, uint32_t pts, break; } - cFixedLengthFrame* pTempFrame = aBuf.Push(pFrame, length - LPCM_HEADER_LENGTH, pts); + cFixedLengthFrame* pTempFrame = aBuf.Push(pFrame, length - cLPCM_HEADER_LENGTH, pts); pTempFrame->SetChannelCount(1); pTempFrame->SetDataRate(speed); @@ -237,26 +239,26 @@ void cDxr3AudioDecoder::DecodeAc3Dts(const uint8_t* pPes, const uint8_t* buf, in int headerLength = (int) (buf - pPes); uint8_t* pBuf = (uint8_t*) pPes; - ac3dtsDecoder.Check(pBuf + headerLength, length, pBuf); - ac3dtsDecoder.Encapsulate(pBuf + headerLength, length); + m_AC3dtsDecoder.Check(pBuf + headerLength, length, pBuf); + m_AC3dtsDecoder.Encapsulate(pBuf + headerLength, length); cFrame* pFrame = 0; - while ((pFrame = rbuf.Get())) + while ((pFrame = m_RBuf.Get())) { if (pFrame && pFrame->Count()) { cDxr3PesFrame tempPes; tempPes.ExtractNextFrame(pFrame->Data(), pFrame->Count()); int pesHeaderLength = (int) (tempPes.GetEsStart() - tempPes.GetPesStart()); - uint8_t* pData = pFrame->Data() + pesHeaderLength + LPCM_HEADER_LENGTH; + uint8_t* pData = pFrame->Data() + pesHeaderLength + cLPCM_HEADER_LENGTH; - for (int i = 0; i < pFrame->Count() - pesHeaderLength - LPCM_HEADER_LENGTH; i += 2) + for (int i = 0; i < pFrame->Count() - pesHeaderLength - cLPCM_HEADER_LENGTH; i += 2) { std::swap(pData[i], pData[i + 1]); } - aBuf.Push(pFrame->Data() + pesHeaderLength + LPCM_HEADER_LENGTH, pFrame->Count() - pesHeaderLength - 7, tempPes.GetPts()); - if (pFrame) rbuf.Drop(pFrame); + aBuf.Push(pFrame->Data() + pesHeaderLength + cLPCM_HEADER_LENGTH, pFrame->Count() - pesHeaderLength - 7, tempPes.GetPts()); + if (pFrame) m_RBuf.Drop(pFrame); } } } |