In yadif filter, default to top field first if interlacing is unknown
Originally committed as revision 26347 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
3cdf69eefa
commit
a51c71bb54
@ -996,6 +996,8 @@ enable automatic detection
|
|||||||
@end table
|
@end table
|
||||||
|
|
||||||
Default value is -1.
|
Default value is -1.
|
||||||
|
If interlacing is unknown or decoder does not export this information,
|
||||||
|
top field first will be assumed.
|
||||||
|
|
||||||
@c man end VIDEO FILTERS
|
@c man end VIDEO FILTERS
|
||||||
|
|
||||||
|
@ -167,7 +167,14 @@ static void return_frame(AVFilterContext *ctx, int is_second)
|
|||||||
{
|
{
|
||||||
YADIFContext *yadif = ctx->priv;
|
YADIFContext *yadif = ctx->priv;
|
||||||
AVFilterLink *link= ctx->outputs[0];
|
AVFilterLink *link= ctx->outputs[0];
|
||||||
int tff = yadif->parity == -1 ? yadif->cur->video->top_field_first : (yadif->parity^1);
|
int tff;
|
||||||
|
|
||||||
|
if (yadif->parity == -1) {
|
||||||
|
tff = yadif->cur->video->interlaced ?
|
||||||
|
yadif->cur->video->top_field_first : 1;
|
||||||
|
} else {
|
||||||
|
tff = yadif->parity^1;
|
||||||
|
}
|
||||||
|
|
||||||
if (is_second)
|
if (is_second)
|
||||||
yadif->out = avfilter_get_video_buffer(link, AV_PERM_WRITE | AV_PERM_PRESERVE |
|
yadif->out = avfilter_get_video_buffer(link, AV_PERM_WRITE | AV_PERM_PRESERVE |
|
||||||
|
Loading…
x
Reference in New Issue
Block a user