From f2d8b06db22e84d3805e1e0b790a6990aed16158 Mon Sep 17 00:00:00 2001 From: Joao Carreira Date: Fri, 1 Feb 2019 18:25:39 +0000 Subject: [PATCH] Fix support for interlaced formats with more than 1 byte / pixel --- lib/CalypFrame.cpp | 4 ++-- lib/PixelFormats.cpp | 17 ----------------- 2 files changed, 2 insertions(+), 19 deletions(-) diff --git a/lib/CalypFrame.cpp b/lib/CalypFrame.cpp index 6024c2e..829b256 100644 --- a/lib/CalypFrame.cpp +++ b/lib/CalypFrame.cpp @@ -593,10 +593,10 @@ void CalypFrame::frameFromBuffer( ClpByte* Buff, int iEndianness ) { ratioW = ch > 0 ? d->m_pcPelFormat->log2ChromaWidth : 0; ratioH = ch > 0 ? d->m_pcPelFormat->log2ChromaHeight : 0; - step = d->m_pcPelFormat->comp[ch].step_minus1; + step = ( d->m_pcPelFormat->comp[ch].step_minus1 ) * bytesPixel; pPel = d->m_pppcInputPel[ch][0]; - pTmpBuff = ppBuff[d->m_pcPelFormat->comp[ch].plane] + ( d->m_pcPelFormat->comp[ch].offset_plus1 - 1 ); + pTmpBuff = ppBuff[d->m_pcPelFormat->comp[ch].plane] + ( d->m_pcPelFormat->comp[ch].offset_plus1 - 1 ) * bytesPixel; for( i = 0; i < CHROMASHIFT( d->m_uiHeight, ratioH ) * CHROMASHIFT( d->m_uiWidth, ratioW ); i++ ) { diff --git a/lib/PixelFormats.cpp b/lib/PixelFormats.cpp index ee7d644..f600035 100644 --- a/lib/PixelFormats.cpp +++ b/lib/PixelFormats.cpp @@ -177,23 +177,6 @@ const std::map g_CalypPixFmtDescriptorsMap = { }, }, }, - { - CLP_BGR24, - { - "BGR", - CLP_COLOR_RGB, - 3, - 1, - 0, - 0, - ADD_FFMPEG_PEL_FMT( AV_PIX_FMT_BGR24 ), - { - {0, 2, 3}, /* R */ - {0, 2, 2}, /* G */ - {0, 2, 1}, /* B */ - }, - }, - }, { CLP_RGBA32, {