FFmpeg
|
Files | |
file | display.h |
Functions | |
double | av_display_rotation_get (const int32_t matrix[9]) |
Extract the rotation component of the transformation matrix. More... | |
void | av_display_rotation_set (int32_t matrix[9], double angle) |
Initialize a transformation matrix describing a pure clockwise rotation by the specified angle (in degrees). More... | |
void | av_display_matrix_flip (int32_t matrix[9], int hflip, int vflip) |
Flip the input matrix horizontally and/or vertically. More... | |
The display transformation matrix specifies an affine transformation that should be applied to video frames for correct presentation. It is compatible with the matrices stored in the ISO/IEC 14496-12 container format.
The data is a 3x3 matrix represented as a 9-element array:
All numbers are stored in native endianness, as 16.16 fixed-point values, except for u, v and w, which are stored as 2.30 fixed-point values.
The transformation maps a point (p, q) in the source (pre-transformation) frame to the point (p', q') in the destination (post-transformation) frame as follows:
The transformation can also be more explicitly written in components as follows:
Extract the rotation component of the transformation matrix.
matrix | the transformation matrix |
Definition at line 35 of file display.c.
Referenced by dump_sidedata(), filter_frame(), get_rotation(), main(), print_frame_side_data(), and print_pkt_side_data().
Initialize a transformation matrix describing a pure clockwise rotation by the specified angle (in degrees).
[out] | matrix | a transformation matrix (will be fully overwritten by this function) |
angle | rotation angle in degrees. |
Definition at line 51 of file display.c.
Referenced by add_display_matrix(), add_display_matrix_to_stream(), cri_decode_frame(), enc_open(), ff_h2645_sei_to_frame(), ff_mjpeg_decode_frame_from_buf(), h264_metadata_handle_display_orientation(), main(), and streamcopy_init().
Flip the input matrix horizontally and/or vertically.
[in,out] | matrix | a transformation matrix |
hflip | whether the matrix should be flipped horizontally | |
vflip | whether the matrix should be flipped vertically |
Definition at line 66 of file display.c.
Referenced by add_display_matrix(), add_display_matrix_to_stream(), cri_decode_frame(), ff_h2645_sei_to_frame(), ff_mjpeg_decode_frame_from_buf(), h264_metadata_handle_display_orientation(), and main().