00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef INTERLACEMODES_H
00019 #define INTERLACEMODES_H
00020
00021 #define BC_ILACE_UNKNOWN_T "Error!"
00022
00023
00024 #define BC_ILACE_AUTOFIXOPTION_MANUAL 0
00025 #define BC_ILACE_AUTOFIXOPTION_MANUAL_T "Manual compensation using selection"
00026 #define BC_ILACE_AUTOFIXOPTION_AUTO 1
00027 #define BC_ILACE_AUTOFIXOPTION_AUTO_T "Automatic compensation using modes"
00028
00029
00030
00031 #define BC_ILACE_MODE_UNDETECTED 0
00032 #define BC_ILACE_MODE_UNDETECTED_XMLT "UNKNOWN"
00033 #define BC_ILACE_MODE_UNDETECTED_T "Unknown"
00034 #define BC_ILACE_MODE_TOP_FIRST 1
00035 #define BC_ILACE_MODE_TOP_FIRST_XMLT "TOP_FIELD_FIRST"
00036 #define BC_ILACE_MODE_TOP_FIRST_T "Top Fields First"
00037 #define BC_ILACE_MODE_BOTTOM_FIRST 2
00038 #define BC_ILACE_MODE_BOTTOM_FIRST_XMLT "BOTTOM_FIELD_FIRST"
00039 #define BC_ILACE_MODE_BOTTOM_FIRST_T "Bottom Fields First"
00040 #define BC_ILACE_MODE_NOTINTERLACED 3
00041 #define BC_ILACE_MODE_NOTINTERLACED_XMLT "NOTINTERLACED"
00042 #define BC_ILACE_MODE_NOTINTERLACED_T "Not Interlaced"
00043
00044 #define BC_ILACE_ASSET_MODEDEFAULT BC_ILACE_MODE_UNDETECTED
00045 #define BC_ILACE_PROJECT_MODEDEFAULT BC_ILACE_MODE_NOTINTERLACED_T
00046
00047
00048
00049 #define BC_ILACE_FIXMETHOD_NONE 0
00050 #define BC_ILACE_FIXMETHOD_NONE_XMLT "DO_NOTHING"
00051 #define BC_ILACE_FIXMETHOD_NONE_T "Do Nothing"
00052 #define BC_ILACE_FIXMETHOD_UPONE 1
00053 #define BC_ILACE_FIXMETHOD_UPONE_XMLT "SHIFT_UPONE"
00054 #define BC_ILACE_FIXMETHOD_UPONE_T "Shift Up 1 pixel"
00055 #define BC_ILACE_FIXMETHOD_DOWNONE 2
00056 #define BC_ILACE_FIXMETHOD_DOWNONE_XMLT "SHIFT_DOWNONE"
00057 #define BC_ILACE_FIXMETHOD_DOWNONE_T "Shift Down 1 pixel"
00058
00059
00060 #define BC_ILACE_FIXDEFAULT BC_ILACE_FIXMETHOD_UPONE
00061
00062
00063
00064 #define BC_ILACE_Y4M_UKNOWN_T "unknown"
00065 #define BC_ILACE_Y4M_NONE_T "non-interlaced, progressive frame"
00066 #define BC_ILACE_Y4M_TOP_FIRST_T "interlaced, top-field first"
00067 #define BC_ILACE_Y4M_BOTTOM_FIRST_T "interlaced, bottom-field first"
00068 #define BC_ILACE_Y4M_MIXED_T "mixed, \"refer to frame header\""
00069
00070 #ifdef __cplusplus
00071 extern "C" {
00072 #endif
00073
00074 void ilaceautofixoption_to_text(char *string, int autofixoption);
00075 int ilaceautofixoption_from_text(char *text, int thedefault);
00076
00077 void ilacemode_to_text(char *string, int ilacemode);
00078 int ilacemode_from_text(char *text, int thedefault);
00079 void ilacemode_to_xmltext(char *string, int ilacemode);
00080 int ilacemode_from_xmltext(char *text, int thedefault);
00081
00082 void ilacefixmethod_to_text(char *string, int fixmethod);
00083 int ilacefixmethod_from_text(char *text, int thedefault);
00084 void ilacefixmethod_to_xmltext(char *string, int fixmethod);
00085 int ilacefixmethod_from_xmltext(char *text, int thedefault);
00086
00087
00088 int ilaceautofixmethod(int projectilacemode, int assetilacemode);
00089 int ilaceautofixmethod2(int projectilacemode, int assetautofixoption, int assetilacemode, int assetfixmethod);
00090
00091 int ilace_bc_to_yuv4mpeg(int ilacemode);
00092 int ilace_yuv4mpeg_to_bc(int ilacemode);
00093
00094 void ilace_yuv4mpeg_mode_to_text(char *string, int ilacemode);
00095
00096 #ifdef __cplusplus
00097 }
00098 #endif
00099
00100 #endif // INTERLACEMODES_H