TAspectSettings Struct Reference

#include <AspectRatio.h>

List of all members.

Public Attributes

int SourceAspect
int TargetAspect
int AspectMode
 Mode 0 = do nothing, 1 = Letterboxed, 2 = 16:9 anamorphic.

int CustomSourceAspect
int custom_target_aspect
long LuminanceThreshold
 Luminance cutoff for a black pixel for letterbox detection. 0-127.

long ChromaRange
BOOL bAllowGreaterThanScreen
long IgnoreNonBlackPixels
long SkipPercent
int AutoDetectAspect
 0 = no ratio detection, 1 = black bars detection, 2 = AR detection using only WSS

long ZoomInFrameCount
long ZoomOutFrameCount
long AspectHistoryTime
long AspectConsistencyTime
long AspectEqualFudgeFactor
long ShortRatioIgnoreMs
 Don't remember aspect ratios that lasted less than this many milliseconds.

eVertPos VerticalPos
eHorzPos HorizontalPos
RECT DestinationRect
RECT SourceRect
RECT DestinationRectWindow
BOOL DeferedSetOverlay
 Wait until middle of WM_PAINT to set overlay (between drawing of black bars and drawing of overlay color).

BOOL OverlayNeedsSetting
int InitialTopOverscan
int InitialBottomOverscan
int InitialLeftOverscan
int InitialRightOverscan
BOOL AspectImageClipped
BOOL BounceEnabled
time_t BounceStartTime
time_t BouncePeriod
 Number of minutes for a complete cycle of bounce to occur (default is half hour).

long TimerBounceMS
 # of miliseconds between aspect updates

long BounceAmplitude
 percentage of window over which the overlay bounces

BOOL OrbitEnabled
int OrbitSize
 # of pixels of variation (both X and Y axis)

time_t OrbitPeriodX
 Time to move across the entire orbit area on X axis (seconds).

time_t OrbitPeriodY
 Time to move across the entire orbit area on Y axis (seconds).

long TimerOrbitMS
 # of miliseconds between aspect updates for orbiting (miliseconds)

BOOL AutoResizeWindow
 If TRUE, resize non-fullscreen window to fit image exactly.

BOOL DetectAspectNow
 True if we want to use whatever ratio is present on the next frame.

long ZoomFactorX
 Zoom.

long ZoomFactorY
long ZoomCenterX
long ZoomCenterY
BOOL bWaitForVerticalBlank
 WaitForVerticalBlank.

int SourceAspectAdjust
 this is used by filters to adjust the aspect ratio

int MaskGreyShade
 which shade of grey to use for mask

BOOL SquarePixels
 if TRUE, the pixels in the overlay must be considered as squares

BOOL bUseWSS
int DefaultSourceAspect
int DefaultAspectMode
BOOL bAnalogueBlanking


Detailed Description

Aspect Settings structure

Todo:
Cleanup this struct, possibly split into 2 or 3 structures based on function of the various settings.


Member Data Documentation

long TAspectSettings::AspectConsistencyTime
 

For aspect autodetect, only zoom in if we haven't detected a smaller ratio in some amount of time.

long TAspectSettings::AspectEqualFudgeFactor
 

For aspect autodetect, consider two ratios to be equal if they're within this amount of each other. This is not in pixels, but in aspect*1000 units.

long TAspectSettings::AspectHistoryTime
 

For aspect autodetect, zoom in quickly if we've used this ratio in the last N seconds.

BOOL TAspectSettings::AspectImageClipped
 

If TRUE, black bars are drawn. If FALSE, we leave any leftover image on the screen For advanced use - typically used FALSE with top-aligned for viewing captions

BOOL TAspectSettings::bAllowGreaterThanScreen
 

Nonzero to allow automatic switch to ratio greater than the screen ratio when in fullscreen mode and ratio autodetection mode

BOOL TAspectSettings::BounceEnabled
 

If TRUE, the WorkoutOverlaySize function will gradually bounce the image across any black space, starting at the middle, working to the right/bottom then bouncing to the right/top. NOTE: SOMETHING ELSE must take responsibility for calling WorkoutOverlaySize to ensure the bouncing takes place.

time_t TAspectSettings::BounceStartTime
 

Time to consider bouncing as started - once set it is not reset until dTV is restarted.

BOOL TAspectSettings::bUseWSS
 

if TRUE, the WSS data included in the signal is used to determine the aspect ratio

long TAspectSettings::ChromaRange
 

Range of chroma values (centered around 128) we'll consider black for letterbox detection. 0-255.

int TAspectSettings::DefaultSourceAspect
 

Default source aspect ratio to use when using WSS signal to set the ratio, and no WSS signal is embedded in the signal

long TAspectSettings::IgnoreNonBlackPixels
 

Ignore this many non-black pixels when detecting letterbox. Setting this too high may cause problems with dark scenes.

BOOL TAspectSettings::OrbitEnabled
 

Orbit - shifts the source image around on a regular basis Shares the BounceStartTime for calculations PeriodX and PeriodY should be different for ideal results

long TAspectSettings::SkipPercent
 

Skip over this percentage of pixels on each side (left and right) when detecting letterbox. If zero, no pixels are skipped.

int TAspectSettings::SourceAspect
 

Added variable in dTV.c to track which aspect Mode we are currently in Use aspect * 1000 (1.66 = 1660, 2.35 = 2350, etc) Use negative values for SourceAspect to imply anamorphic sources Note: TargetAspect is the aspect ratio of the screen.

eVertPos TAspectSettings::VerticalPos
 

Where does the window sit on the screen defaults to bang in the middle

long TAspectSettings::ZoomInFrameCount
 

For aspect autodetect, require the same aspect ratio for this number of frames before zooming in.

long TAspectSettings::ZoomOutFrameCount
 

For aspect autodetect, require a lower aspect ratio for this number of frames before zooming out. This value must be low, only few frames to avoid cutting the image off for a long time


The documentation for this struct was generated from the following file:
Generated on Mon Oct 27 09:55:03 2003 for DScaler by doxygen 1.3.4