Libav 0.7.1
|
00001 /* 00002 * a64 video encoder - tables used by a64 encoders 00003 * Copyright (c) 2009 Tobias Bindhammer 00004 * 00005 * This file is part of Libav. 00006 * 00007 * Libav is free software; you can redistribute it and/or 00008 * modify it under the terms of the GNU Lesser General Public 00009 * License as published by the Free Software Foundation; either 00010 * version 2.1 of the License, or (at your option) any later version. 00011 * 00012 * Libav is distributed in the hope that it will be useful, 00013 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00015 * Lesser General Public License for more details. 00016 * 00017 * You should have received a copy of the GNU Lesser General Public 00018 * License along with Libav; if not, write to the Free Software 00019 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 00020 */ 00021 00027 #ifndef AVCODEC_A64TABLES_H 00028 #define AVCODEC_A64TABLES_H 00029 00030 #include <stdint.h> 00031 00036 static const uint8_t multi_dither_patterns[9][4][4] = { 00037 { 00038 {0, 0, 0, 0}, 00039 {0, 0, 0, 0}, 00040 {0, 0, 0, 0}, 00041 {0, 0, 0, 0} 00042 }, 00043 { 00044 {1, 0, 0, 0}, 00045 {0, 0, 0, 0}, 00046 {0, 0, 1, 0}, 00047 {0, 0, 0, 0} 00048 }, 00049 { 00050 {1, 0, 0, 0}, 00051 {0, 0, 1, 0}, 00052 {0, 1, 0, 0}, 00053 {0, 0, 0, 1} 00054 }, 00055 { 00056 {1, 0, 0, 0}, 00057 {0, 1, 0, 1}, 00058 {0, 0, 1, 0}, 00059 {0, 1, 0, 1} 00060 }, 00061 { 00062 {1, 0, 1, 0}, 00063 {0, 1, 0, 1}, 00064 {1, 0, 1, 0}, 00065 {0, 1, 0, 1} 00066 }, 00067 { 00068 {1, 1, 1, 0}, 00069 {0, 1, 0, 1}, 00070 {1, 0, 1, 1}, 00071 {0, 1, 0, 1} 00072 }, 00073 { 00074 {0, 1, 1, 1}, 00075 {1, 1, 0, 1}, 00076 {1, 0, 1, 1}, 00077 {1, 1, 1, 0} 00078 }, 00079 { 00080 {0, 1, 1, 1}, 00081 {1, 1, 1, 1}, 00082 {1, 1, 0, 1}, 00083 {1, 1, 1, 1} 00084 }, 00085 { 00086 {1, 1, 1, 1}, 00087 {1, 1, 1, 1}, 00088 {1, 1, 1, 1}, 00089 {1, 1, 1, 1} 00090 }, 00091 }; 00092 00093 static const uint8_t interlaced_dither_patterns[9][8][4] = { 00094 { 00095 {0, 0, 0, 0}, {0, 0, 0, 0}, 00096 {0, 0, 0, 0}, {0, 0, 0, 0}, 00097 {0, 0, 0, 0}, {0, 0, 0, 0}, 00098 {0, 0, 0, 0}, {0, 0, 0, 0}, 00099 }, 00100 { 00101 {1, 0, 1, 0}, {0, 0, 0, 0}, 00102 {0, 0, 0, 0}, {0, 0, 0, 0}, 00103 {1, 0, 1, 0}, {0, 0, 0, 0}, 00104 {0, 0, 0, 0}, {0, 0, 0, 0}, 00105 }, 00106 { 00107 {1, 0, 1, 0}, {0, 0, 0, 0}, 00108 {0, 0, 0, 0}, {0, 1, 0, 1}, 00109 {1, 0, 1, 0}, {0, 0, 0, 0}, 00110 {0, 0, 0, 0}, {0, 1, 0, 1}, 00111 }, 00112 { 00113 {1, 0, 1, 0}, {0, 1, 0, 1}, 00114 {0, 1, 0, 1}, {0, 0, 0, 0}, 00115 {1, 0, 1, 0}, {0, 1, 0, 1}, 00116 {0, 1, 0, 1}, {0, 0, 0, 0}, 00117 }, 00118 { 00119 {1, 0, 1, 0}, {0, 1, 0, 1}, 00120 {0, 1, 0, 1}, {1, 0, 1, 0}, 00121 {1, 0, 1, 0}, {0, 1, 0, 1}, 00122 {0, 1, 0, 1}, {1, 0, 1, 0}, 00123 }, 00124 { 00125 {1, 0, 1, 0}, {0, 1, 0, 1}, 00126 {1, 1, 1, 1}, {1, 0, 1, 0}, 00127 {1, 0, 1, 0}, {0, 1, 0, 1}, 00128 {1, 1, 1, 1}, {1, 0, 1, 0}, 00129 }, 00130 { 00131 {1, 0, 1, 0}, {1, 1, 1, 1}, 00132 {1, 1, 1, 1}, {0, 1, 0, 1}, 00133 {1, 0, 1, 0}, {1, 1, 1, 1}, 00134 {1, 1, 1, 1}, {0, 1, 0, 1}, 00135 }, 00136 { 00137 {1, 1, 1, 1}, {1, 1, 1, 1}, 00138 {1, 1, 1, 1}, {0, 1, 0, 1}, 00139 {1, 1, 1, 1}, {1, 1, 1, 1}, 00140 {1, 1, 1, 1}, {0, 1, 0, 1}, 00141 }, 00142 { 00143 {1, 1, 1, 1}, {1, 1, 1, 1}, 00144 {1, 1, 1, 1}, {1, 1, 1, 1}, 00145 {1, 1, 1, 1}, {1, 1, 1, 1}, 00146 {1, 1, 1, 1}, {1, 1, 1, 1}, 00147 } 00148 }; 00149 00150 #endif /* AVCODEC_A64TABLES_H */