xine-lib: xine-lib-1.2.12/src/post/deinterlace/tvtime.h File Reference

xine-lib 1.2.12

Data Structures | Enumerations | Functions
tvtime.h File Reference
`#include <stdint.h>`
`#include "deinterlace.h"`

Go to the source code of this file.

## Data Structures
struct | tvtime_t

## Enumerations
enum | { PULLDOWN_NONE = 0 , PULLDOWN_VEKTOR = 1 , PULLDOWN_MAX = 2 }
enum | { FRAMERATE_FULL = 0 , FRAMERATE_HALF_TFF = 1 , FRAMERATE_HALF_BFF = 2 , FRAMERATE_MAX = 3 }

## Functions
int | tvtime_build_deinterlaced_frame (tvtime_t *this, uint8_t *output, uint8_t *curframe, uint8_t *lastframe, uint8_t *secondlastframe, int bottom_field, int second_field, int width, int frame_height, int instride, int outstride)
int | tvtime_build_copied_field (tvtime_t *this, uint8_t *output, uint8_t *curframe, int bottom_field, int width, int frame_height, int instride, int outstride)
tvtime_t * | tvtime_new_context (void)
void | tvtime_reset_context (tvtime_t *this)

## Enumeration Type Documentation

## ◆ anonymous enum

anonymous enum

Copyright (c) 2001, 2002, 2003 Billy Biggs vekto.nosp@m.r@du.nosp@m.mbter.nosp@m.m.ne.nosp@m.t.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA. Which pulldown algorithm we're using.

Enumerator
PULLDOWN_NONE |
PULLDOWN_VEKTOR |
PULLDOWN_MAX |

## ◆ anonymous enum

anonymous enum

Enumerator
FRAMERATE_FULL |
FRAMERATE_HALF_TFF |
FRAMERATE_HALF_BFF |
FRAMERATE_MAX |

## Function Documentation

## ◆ tvtime_build_copied_field()

int tvtime_build_copied_field | ( | tvtime_t * | this,
|  | uint8_t * | output,
|  | uint8_t * | curframe,
|  | int | bottom_field,
|  | int | width,
|  | int | frame_height,
|  | int | instride,
|  | int | outstride
| ) |  |

References blit_packed422_scanline, quarter_blit_vertical_packed422_scanline, and width.

Referenced by deinterlace_build_output_field().

## ◆ tvtime_build_deinterlaced_frame()

int tvtime_build_deinterlaced_frame | ( | tvtime_t * | this,
|  | uint8_t * | output,
|  | uint8_t * | curframe,
|  | uint8_t * | lastframe,
|  | uint8_t * | secondlastframe,
|  | int | bottom_field,
|  | int | second_field,
|  | int | width,
|  | int | frame_height,
|  | int | instride,
|  | int | outstride
| ) |  |

References deinterlace_scanline_data_s::b0, deinterlace_scanline_data_s::b1, deinterlace_scanline_data_s::b2, deinterlace_scanline_data_s::bb0, deinterlace_scanline_data_s::bb1, deinterlace_scanline_data_s::bb2, deinterlace_scanline_data_s::bb3, blit_packed422_scanline, deinterlace_scanline_data_s::bottom_field, deinterlace_scanline_data_s::bytes_left, calculate_pulldown_score_vektor(), deinterlace_method_s::copy_scanline, tvtime_t::curmethod, deinterlace_method_s::deinterlace_frame, determine_pulldown_offset_short_history_new(), deinterlace_frame_data_s::f0, deinterlace_frame_data_s::f1, deinterlace_frame_data_s::f2, tvtime_t::filmmode, deinterlace_method_s::interpolate_scanline, tvtime_t::last_botdiff, tvtime_t::last_topdiff, deinterlace_scanline_data_s::m0, deinterlace_scanline_data_s::m1, deinterlace_scanline_data_s::m2, deinterlace_scanline_data_s::m3, tvtime_t::pderror, tvtime_t::pdlastbusted, tvtime_t::pdoffset, tvtime_t::pulldown_alg, pulldown_drop(), PULLDOWN_ERROR_THRESHOLD, tvtime_t::pulldown_error_wait, pulldown_merge_fields(), PULLDOWN_SEQ_AA, PULLDOWN_SEQ_DD, pulldown_source(), PULLDOWN_VEKTOR, deinterlace_method_s::scanlinemode, deinterlace_scanline_data_s::t0, deinterlace_scanline_data_s::t1, deinterlace_scanline_data_s::t2, deinterlace_scanline_data_s::tt0, deinterlace_scanline_data_s::tt1, deinterlace_scanline_data_s::tt2, deinterlace_scanline_data_s::tt3, and width.

Referenced by deinterlace_build_output_field().

## ◆ tvtime_new_context()

tvtime_t * tvtime_new_context | ( | void |  | ) |

References tvtime_t::curmethod, NULL, tvtime_t::pulldown_alg, PULLDOWN_NONE, and tvtime_reset_context().

Referenced by deinterlace_open_plugin().

## ◆ tvtime_reset_context()

void tvtime_reset_context | ( | tvtime_t * | this | ) |

References tvtime_t::filmmode, tvtime_t::last_botdiff, tvtime_t::last_topdiff, tvtime_t::pderror, tvtime_t::pdlastbusted, tvtime_t::pdoffset, tvtime_t::pulldown_error_wait, and PULLDOWN_SEQ_AA.

Referenced by deinterlace_draw(), and tvtime_new_context().