History

avfilter/vf_stereo3d: stop dumping half of data for interleave rows output

Paul B Mahol committed 11 years ago

Commit 0c511eb1 parent 32dd9b21 file · +5 −14Browse files

Unified · Split

libavfilter/vf_stereo3d.c+5−14
@@ -327,13 +327,6 @@ static int config_output(AVFilterLink *outlink) · 326 unmodified lines
327327 case ABOVE_BELOW_LR:
328328 case ABOVE_BELOW_2_RL:
329329 case ABOVE_BELOW_RL:
330− if (s->out.format == INTERLEAVE_ROWS_LR ||
331− s->out.format == INTERLEAVE_ROWS_RL) {
332− if (inlink->h & 3) {
333− av_log(ctx, AV_LOG_ERROR, "height must be multiple of 4\n");
334− return AVERROR_INVALIDDATA;
335− }
336− }
337330 if (inlink->h & 1) {
338331 av_log(ctx, AV_LOG_ERROR, "height must be even\n");
339332 return AVERROR_INVALIDDATA;
@@ -391,9 +384,7 @@ static int config_output(AVFilterLink *outlink) · 51 unmodified lines
391384 s->in.off_lstep = 1;
392385 else
393386 s->in.off_rstep = 1;
394− if (s->out.format != INTERLEAVE_ROWS_LR &&
395− s->out.format != INTERLEAVE_ROWS_RL &&
396− s->out.format != CHECKERBOARD_LR &&
387+ if (s->out.format != CHECKERBOARD_LR &&
397388 s->out.format != CHECKERBOARD_RL)
398389 s->height = inlink->h / 2;
399390 break;
@@ -468,16 +459,16 @@ static int config_output(AVFilterLink *outlink) · 68 unmodified lines
468459 s->out.row_left = s->height;
469460 break;
470461 case INTERLEAVE_ROWS_LR:
471− s->in.row_step = 2;
462+ s->in.row_step = 1 + (s->in.format == INTERLEAVE_ROWS_RL);
472463 s->out.row_step = 2;
473− s->height = s->height / 2;
464+ s->out.height = s->height * 2;
474465 s->out.off_rstep = 1;
475466 s->in.off_rstep = s->in.format != INTERLEAVE_ROWS_RL;
476467 break;
477468 case INTERLEAVE_ROWS_RL:
478− s->in.row_step = 2;
469+ s->in.row_step = 1 + (s->in.format == INTERLEAVE_ROWS_LR);
479470 s->out.row_step = 2;
480− s->height = s->height / 2;
471+ s->out.height = s->height * 2;
481472 s->out.off_lstep = 1;
482473 s->in.off_lstep = s->in.format != INTERLEAVE_ROWS_LR;
483474 break;

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t