mirror of https://git.ffmpeg.org/ffmpeg.git
Use pixel format descriptors for checking if the input format is
paletted. Simpler and more robust. Originally committed as revision 21631 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
43e4d57f66
commit
ef9f8dd730
|
@ -24,6 +24,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "avfilter.h"
|
#include "avfilter.h"
|
||||||
|
#include "libavutil/pixdesc.h"
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
int x; ///< x offset of the non-cropped area with respect to the input area
|
int x; ///< x offset of the non-cropped area with respect to the input area
|
||||||
|
@ -173,11 +174,7 @@ static void start_frame(AVFilterLink *link, AVFilterPicRef *picref)
|
||||||
ref2->data[0] += crop->y * ref2->linesize[0];
|
ref2->data[0] += crop->y * ref2->linesize[0];
|
||||||
ref2->data[0] += (crop->x * crop->bpp) >> 3;
|
ref2->data[0] += (crop->x * crop->bpp) >> 3;
|
||||||
|
|
||||||
if (link->format != PIX_FMT_PAL8 &&
|
if (!(av_pix_fmt_descriptors[link->format].flags & PIX_FMT_PAL)) {
|
||||||
link->format != PIX_FMT_BGR4_BYTE &&
|
|
||||||
link->format != PIX_FMT_RGB4_BYTE &&
|
|
||||||
link->format != PIX_FMT_BGR8 &&
|
|
||||||
link->format != PIX_FMT_RGB8) {
|
|
||||||
for (i = 1; i < 3; i ++) {
|
for (i = 1; i < 3; i ++) {
|
||||||
if (ref2->data[i]) {
|
if (ref2->data[i]) {
|
||||||
ref2->data[i] += (crop->y >> crop->vsub) * ref2->linesize[i];
|
ref2->data[i] += (crop->y >> crop->vsub) * ref2->linesize[i];
|
||||||
|
|
Loading…
Reference in New Issue