annotate libmpcodecs/vf_test.c @ 33569:8e70a224c411

Change vo_directx to use w32_common.c While I tested it quite thoroughly, with and without -wid, -vm, -fs, ... it is _very_ likely to break something, please report any regressions! In the worst case it can still be reverted, however since it has very little relevance nowadays it will rot all the faster if not at least some code is shared.
author reimar
date Sun, 19 Jun 2011 12:51:36 +0000
parents 7af3e6f901fd
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
1 /*
26727
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
2 * Copyright (C) 2002 Michael Niedermayer <michaelni@gmx.at>
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
3 *
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
4 * This file is part of MPlayer.
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
5 *
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
6 * MPlayer is free software; you can redistribute it and/or modify
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
7 * it under the terms of the GNU General Public License as published by
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
8 * the Free Software Foundation; either version 2 of the License, or
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
9 * (at your option) any later version.
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
10 *
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
11 * MPlayer is distributed in the hope that it will be useful,
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
14 * GNU General Public License for more details.
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
15 *
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
16 * You should have received a copy of the GNU General Public License along
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
17 * with MPlayer; if not, write to the Free Software Foundation, Inc.,
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
18 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
82601a38e2a7 Use standard license headers.
diego
parents: 25221
diff changeset
19 */
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
20
a88b82461c17 test pattern filter
michael
parents:
diff changeset
21 #include <stdio.h>
a88b82461c17 test pattern filter
michael
parents:
diff changeset
22 #include <stdlib.h>
a88b82461c17 test pattern filter
michael
parents:
diff changeset
23 #include <string.h>
a88b82461c17 test pattern filter
michael
parents:
diff changeset
24 #include <inttypes.h>
a88b82461c17 test pattern filter
michael
parents:
diff changeset
25
17012
6ff3379a0862 Unify include path handling, -I.. is in CFLAGS.
diego
parents: 9593
diff changeset
26 #include "config.h"
6ff3379a0862 Unify include path handling, -I.. is in CFLAGS.
diego
parents: 9593
diff changeset
27 #include "mp_msg.h"
18004
bcd805923554 Part2 of several printf2mp_msg changes in patch from Otvos Attila oattila AT chello DOT hu with LOTS of modifications by me
reynaldo
parents: 17906
diff changeset
28 #include "help_mp.h"
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
29
a88b82461c17 test pattern filter
michael
parents:
diff changeset
30 #include "img_format.h"
a88b82461c17 test pattern filter
michael
parents:
diff changeset
31 #include "mp_image.h"
a88b82461c17 test pattern filter
michael
parents:
diff changeset
32 #include "vf.h"
a88b82461c17 test pattern filter
michael
parents:
diff changeset
33
a88b82461c17 test pattern filter
michael
parents:
diff changeset
34 //===========================================================================//
a88b82461c17 test pattern filter
michael
parents:
diff changeset
35
a88b82461c17 test pattern filter
michael
parents:
diff changeset
36 #include <inttypes.h>
a88b82461c17 test pattern filter
michael
parents:
diff changeset
37 #include <math.h>
a88b82461c17 test pattern filter
michael
parents:
diff changeset
38
a88b82461c17 test pattern filter
michael
parents:
diff changeset
39 #define MAX(a,b) ((a) > (b) ? (a) : (b))
a88b82461c17 test pattern filter
michael
parents:
diff changeset
40 #define MIN(a,b) ((a) < (b) ? (a) : (b))
a88b82461c17 test pattern filter
michael
parents:
diff changeset
41 #define ABS(a,b) ((a) > 0 ? (a) : -(a))
a88b82461c17 test pattern filter
michael
parents:
diff changeset
42
a88b82461c17 test pattern filter
michael
parents:
diff changeset
43 #define WIDTH 512
a88b82461c17 test pattern filter
michael
parents:
diff changeset
44 #define HEIGHT 512
a88b82461c17 test pattern filter
michael
parents:
diff changeset
45
6413
ac9c125ea627 rounding bugfix
michael
parents: 6278
diff changeset
46 struct vf_priv_s {
ac9c125ea627 rounding bugfix
michael
parents: 6278
diff changeset
47 int frame_num;
ac9c125ea627 rounding bugfix
michael
parents: 6278
diff changeset
48 };
ac9c125ea627 rounding bugfix
michael
parents: 6278
diff changeset
49
30642
a972c1a4a012 cosmetics: Rename struct vf_instance_s --> vf_instance.
diego
parents: 30638
diff changeset
50 static int config(struct vf_instance *vf,
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
51 int width, int height, int d_width, int d_height,
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
52 unsigned int flags, unsigned int outfmt){
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
53
a88b82461c17 test pattern filter
michael
parents:
diff changeset
54 if(vf_next_query_format(vf,IMGFMT_YV12)<=0){
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
55 mp_msg(MSGT_VFILTER, MSGL_WARN, MSGTR_MPCODECS_WarnNextFilterDoesntSupport, "YV12");
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
56 return 0;
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
57 }
a88b82461c17 test pattern filter
michael
parents:
diff changeset
58
a88b82461c17 test pattern filter
michael
parents:
diff changeset
59 //hmm whats the meaning of these ... ;)
a88b82461c17 test pattern filter
michael
parents:
diff changeset
60 d_width= width= WIDTH;
a88b82461c17 test pattern filter
michael
parents:
diff changeset
61 d_height= height= HEIGHT;
a88b82461c17 test pattern filter
michael
parents:
diff changeset
62
a88b82461c17 test pattern filter
michael
parents:
diff changeset
63 return vf_next_config(vf,width,height,d_width,d_height,flags,IMGFMT_YV12);
a88b82461c17 test pattern filter
michael
parents:
diff changeset
64 }
a88b82461c17 test pattern filter
michael
parents:
diff changeset
65
a88b82461c17 test pattern filter
michael
parents:
diff changeset
66 static double c[64];
a88b82461c17 test pattern filter
michael
parents:
diff changeset
67
17566
f580a7755ac5 Patch by Stefan Huehner / stefan % huehner ! org \
rathann
parents: 17367
diff changeset
68 static void initIdct(void)
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
69 {
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
70 int i;
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
71
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
72 for (i=0; i<8; i++)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
73 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
74 double s= i==0 ? sqrt(0.125) : 0.5;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
75 int j;
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
76
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
77 for(j=0; j<8; j++)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
78 c[i*8+j]= s*cos((3.141592654/8.0)*i*(j+0.5));
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
79 }
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
80 }
a88b82461c17 test pattern filter
michael
parents:
diff changeset
81
a88b82461c17 test pattern filter
michael
parents:
diff changeset
82
a88b82461c17 test pattern filter
michael
parents:
diff changeset
83 static void idct(uint8_t *dst, int dstStride, int src[64])
a88b82461c17 test pattern filter
michael
parents:
diff changeset
84 {
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
85 int i, j, k;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
86 double tmp[64];
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
87
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
88 for(i=0; i<8; i++)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
89 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
90 for(j=0; j<8; j++)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
91 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
92 double sum= 0.0;
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
93
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
94 for(k=0; k<8; k++)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
95 sum+= c[k*8+j]*src[8*i+k];
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
96
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
97 tmp[8*i+j]= sum;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
98 }
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
99 }
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
100
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
101 for(j=0; j<8; j++)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
102 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
103 for(i=0; i<8; i++)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
104 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
105 int v;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
106 double sum= 0.0;
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
107
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
108 for(k=0; k<8; k++)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
109 sum+= c[k*8+i]*tmp[8*k+j];
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
110
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
111 v= (int)floor(sum+0.5);
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
112 if(v<0) v=0;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
113 else if(v>255) v=255;
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
114
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
115 dst[dstStride*i + j] = v;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
116 }
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
117 }
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
118 }
a88b82461c17 test pattern filter
michael
parents:
diff changeset
119
a88b82461c17 test pattern filter
michael
parents:
diff changeset
120 static void drawDc(uint8_t *dst, int stride, int color, int w, int h)
a88b82461c17 test pattern filter
michael
parents:
diff changeset
121 {
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
122 int y;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
123 for(y=0; y<h; y++)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
124 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
125 int x;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
126 for(x=0; x<w; x++)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
127 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
128 dst[x + y*stride]= color;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
129 }
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
130 }
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
131 }
a88b82461c17 test pattern filter
michael
parents:
diff changeset
132
a88b82461c17 test pattern filter
michael
parents:
diff changeset
133 static void drawBasis(uint8_t *dst, int stride, int amp, int freq, int dc)
a88b82461c17 test pattern filter
michael
parents:
diff changeset
134 {
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
135 int src[64];
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
136
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
137 memset(src, 0, 64*sizeof(int));
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
138 src[0]= dc;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
139 if(amp) src[freq]= amp;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
140 idct(dst, stride, src);
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
141 }
a88b82461c17 test pattern filter
michael
parents:
diff changeset
142
a88b82461c17 test pattern filter
michael
parents:
diff changeset
143 static void drawCbp(uint8_t *dst[3], int stride[3], int cbp, int amp, int dc)
a88b82461c17 test pattern filter
michael
parents:
diff changeset
144 {
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
145 if(cbp&1) drawBasis(dst[0] , stride[0], amp, 1, dc);
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
146 if(cbp&2) drawBasis(dst[0]+8 , stride[0], amp, 1, dc);
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
147 if(cbp&4) drawBasis(dst[0]+ 8*stride[0], stride[0], amp, 1, dc);
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
148 if(cbp&8) drawBasis(dst[0]+8+8*stride[0], stride[0], amp, 1, dc);
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
149 if(cbp&16)drawBasis(dst[1] , stride[1], amp, 1, dc);
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
150 if(cbp&32)drawBasis(dst[2] , stride[2], amp, 1, dc);
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
151 }
a88b82461c17 test pattern filter
michael
parents:
diff changeset
152
a88b82461c17 test pattern filter
michael
parents:
diff changeset
153 static void dc1Test(uint8_t *dst, int stride, int w, int h, int off)
a88b82461c17 test pattern filter
michael
parents:
diff changeset
154 {
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
155 const int step= MAX(256/(w*h/256), 1);
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
156 int y;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
157 int color=off;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
158 for(y=0; y<h; y+=16)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
159 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
160 int x;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
161 for(x=0; x<w; x+=16)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
162 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
163 drawDc(dst + x + y*stride, stride, color, 8, 8);
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
164 color+=step;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
165 }
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
166 }
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
167 }
a88b82461c17 test pattern filter
michael
parents:
diff changeset
168
a88b82461c17 test pattern filter
michael
parents:
diff changeset
169 static void freq1Test(uint8_t *dst, int stride, int off)
a88b82461c17 test pattern filter
michael
parents:
diff changeset
170 {
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
171 int y;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
172 int freq=0;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
173 for(y=0; y<8*16; y+=16)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
174 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
175 int x;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
176 for(x=0; x<8*16; x+=16)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
177 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
178 drawBasis(dst + x + y*stride, stride, 4*(96+off), freq, 128*8);
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
179 freq++;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
180 }
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
181 }
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
182 }
a88b82461c17 test pattern filter
michael
parents:
diff changeset
183
a88b82461c17 test pattern filter
michael
parents:
diff changeset
184 static void amp1Test(uint8_t *dst, int stride, int off)
a88b82461c17 test pattern filter
michael
parents:
diff changeset
185 {
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
186 int y;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
187 int amp=off;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
188 for(y=0; y<16*16; y+=16)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
189 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
190 int x;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
191 for(x=0; x<16*16; x+=16)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
192 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
193 drawBasis(dst + x + y*stride, stride, 4*(amp), 1, 128*8);
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
194 amp++;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
195 }
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
196 }
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
197 }
a88b82461c17 test pattern filter
michael
parents:
diff changeset
198
a88b82461c17 test pattern filter
michael
parents:
diff changeset
199 static void cbp1Test(uint8_t *dst[3], int stride[3], int off)
a88b82461c17 test pattern filter
michael
parents:
diff changeset
200 {
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
201 int y;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
202 int cbp=0;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
203 for(y=0; y<16*8; y+=16)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
204 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
205 int x;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
206 for(x=0; x<16*8; x+=16)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
207 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
208 uint8_t *dst1[3];
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
209 dst1[0]= dst[0] + x*2 + y*2*stride[0];
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
210 dst1[1]= dst[1] + x + y*stride[1];
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
211 dst1[2]= dst[2] + x + y*stride[2];
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
212
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
213 drawCbp(dst1, stride, cbp, (64+off)*4, 128*8);
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
214 cbp++;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
215 }
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
216 }
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
217 }
a88b82461c17 test pattern filter
michael
parents:
diff changeset
218
a88b82461c17 test pattern filter
michael
parents:
diff changeset
219 static void mv1Test(uint8_t *dst, int stride, int off)
a88b82461c17 test pattern filter
michael
parents:
diff changeset
220 {
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
221 int y;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
222 for(y=0; y<16*16; y++)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
223 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
224 int x;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
225 if(y&16) continue;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
226 for(x=0; x<16*16; x++)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
227 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
228 dst[x + y*stride]= x + off*8/(y/32+1);
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
229 }
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
230 }
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
231 }
a88b82461c17 test pattern filter
michael
parents:
diff changeset
232
6413
ac9c125ea627 rounding bugfix
michael
parents: 6278
diff changeset
233 static void ring1Test(uint8_t *dst, int stride, int off)
ac9c125ea627 rounding bugfix
michael
parents: 6278
diff changeset
234 {
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
235 int y;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
236 int color=0;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
237 for(y=off; y<16*16; y+=16)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
238 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
239 int x;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
240 for(x=off; x<16*16; x+=16)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
241 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
242 drawDc(dst + x + y*stride, stride, ((x+y)&16) ? color : -color, 16, 16);
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
243 // dst[x + y*stride]= 255 + (off&1);
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
244 color++;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
245 }
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
246 }
6413
ac9c125ea627 rounding bugfix
michael
parents: 6278
diff changeset
247 }
ac9c125ea627 rounding bugfix
michael
parents: 6278
diff changeset
248
ac9c125ea627 rounding bugfix
michael
parents: 6278
diff changeset
249 static void ring2Test(uint8_t *dst, int stride, int off)
ac9c125ea627 rounding bugfix
michael
parents: 6278
diff changeset
250 {
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
251 int y;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
252 for(y=0; y<16*16; y++)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
253 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
254 int x;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
255 for(x=0; x<16*16; x++)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
256 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
257 double d= sqrt((x-8*16)*(x-8*16) + (y-8*16)*(y-8*16));
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
258 double r= d/20 - (int)(d/20);
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
259 if(r<off/30.0)
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
260 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
261 dst[x + y*stride]= 255;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
262 dst[x + y*stride+256]= 0;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
263 }
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
264 else{
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
265 dst[x + y*stride]= x;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
266 dst[x + y*stride+256]= x;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
267 }
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
268 }
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
269 }
6413
ac9c125ea627 rounding bugfix
michael
parents: 6278
diff changeset
270 }
ac9c125ea627 rounding bugfix
michael
parents: 6278
diff changeset
271
30642
a972c1a4a012 cosmetics: Rename struct vf_instance_s --> vf_instance.
diego
parents: 30638
diff changeset
272 static int put_image(struct vf_instance *vf, mp_image_t *mpi, double pts){
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
273 mp_image_t *dmpi;
6413
ac9c125ea627 rounding bugfix
michael
parents: 6278
diff changeset
274 int frame= vf->priv->frame_num;
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
275
a88b82461c17 test pattern filter
michael
parents:
diff changeset
276 // hope we'll get DR buffer:
a88b82461c17 test pattern filter
michael
parents:
diff changeset
277 dmpi=vf_get_image(vf->next,IMGFMT_YV12,
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
278 MP_IMGTYPE_TEMP, MP_IMGFLAG_ACCEPT_STRIDE,
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
279 WIDTH, HEIGHT);
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
280
a88b82461c17 test pattern filter
michael
parents:
diff changeset
281 // clean
a88b82461c17 test pattern filter
michael
parents:
diff changeset
282 memset(dmpi->planes[0], 0, dmpi->stride[0]*dmpi->h);
6539
79b536a37e40 better planar support, chroma subsampling support and Y8/Y800 support
alex
parents: 6413
diff changeset
283 memset(dmpi->planes[1], 128, dmpi->stride[1]*dmpi->h>>dmpi->chroma_y_shift);
79b536a37e40 better planar support, chroma subsampling support and Y8/Y800 support
alex
parents: 6413
diff changeset
284 memset(dmpi->planes[2], 128, dmpi->stride[2]*dmpi->h>>dmpi->chroma_y_shift);
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
285
a88b82461c17 test pattern filter
michael
parents:
diff changeset
286 if(frame%30)
a88b82461c17 test pattern filter
michael
parents:
diff changeset
287 {
a88b82461c17 test pattern filter
michael
parents:
diff changeset
288 switch(frame/30)
32702
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
289 {
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
290 case 0: dc1Test(dmpi->planes[0], dmpi->stride[0], 256, 256, frame%30); break;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
291 case 1: dc1Test(dmpi->planes[1], dmpi->stride[1], 256, 256, frame%30); break;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
292 case 2: freq1Test(dmpi->planes[0], dmpi->stride[0], frame%30); break;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
293 case 3: freq1Test(dmpi->planes[1], dmpi->stride[1], frame%30); break;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
294 case 4: amp1Test(dmpi->planes[0], dmpi->stride[0], frame%30); break;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
295 case 5: amp1Test(dmpi->planes[1], dmpi->stride[1], frame%30); break;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
296 case 6: cbp1Test(dmpi->planes , dmpi->stride , frame%30); break;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
297 case 7: mv1Test(dmpi->planes[0], dmpi->stride[0], frame%30); break;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
298 case 8: ring1Test(dmpi->planes[0], dmpi->stride[0], frame%30); break;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
299 case 9: ring2Test(dmpi->planes[0], dmpi->stride[0], frame%30); break;
7af3e6f901fd Convert some tabs to whitespace to allow using MPlayer filter sourcecode in FFmpeg.
cehoyos
parents: 30642
diff changeset
300 }
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
301 }
a88b82461c17 test pattern filter
michael
parents:
diff changeset
302
a88b82461c17 test pattern filter
michael
parents:
diff changeset
303 frame++;
6413
ac9c125ea627 rounding bugfix
michael
parents: 6278
diff changeset
304 vf->priv->frame_num= frame;
17906
20aca9baf5d8 passing pts through the filter layer (lets see if pts or cola comes out at the end)
michael
parents: 17566
diff changeset
305 return vf_next_put_image(vf,dmpi, pts);
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
306 }
a88b82461c17 test pattern filter
michael
parents:
diff changeset
307
a88b82461c17 test pattern filter
michael
parents:
diff changeset
308 //===========================================================================//
a88b82461c17 test pattern filter
michael
parents:
diff changeset
309
30642
a972c1a4a012 cosmetics: Rename struct vf_instance_s --> vf_instance.
diego
parents: 30638
diff changeset
310 static int query_format(struct vf_instance *vf, unsigned int fmt){
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
311 return vf_next_query_format(vf,IMGFMT_YV12) & (~VFCAP_CSP_SUPPORTED_BY_HW);
a88b82461c17 test pattern filter
michael
parents:
diff changeset
312 }
a88b82461c17 test pattern filter
michael
parents:
diff changeset
313
30638
a7b908875c14 Rename open() vf initialization function to vf_open().
diego
parents: 26727
diff changeset
314 static int vf_open(vf_instance_t *vf, char *args){
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
315 vf->config=config;
a88b82461c17 test pattern filter
michael
parents:
diff changeset
316 vf->put_image=put_image;
a88b82461c17 test pattern filter
michael
parents:
diff changeset
317 vf->query_format=query_format;
6413
ac9c125ea627 rounding bugfix
michael
parents: 6278
diff changeset
318 vf->priv=malloc(sizeof(struct vf_priv_s));
ac9c125ea627 rounding bugfix
michael
parents: 6278
diff changeset
319 vf->priv->frame_num= args ? atoi(args) : 0;
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
320 initIdct();
a88b82461c17 test pattern filter
michael
parents:
diff changeset
321 return 1;
a88b82461c17 test pattern filter
michael
parents:
diff changeset
322 }
a88b82461c17 test pattern filter
michael
parents:
diff changeset
323
25221
00fff9a3b735 Make all vf_info_t structs const
reimar
parents: 23373
diff changeset
324 const vf_info_t vf_info_test = {
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
325 "test pattern generator",
a88b82461c17 test pattern filter
michael
parents:
diff changeset
326 "test",
a88b82461c17 test pattern filter
michael
parents:
diff changeset
327 "Michael Niedermayer",
a88b82461c17 test pattern filter
michael
parents:
diff changeset
328 "",
30638
a7b908875c14 Rename open() vf initialization function to vf_open().
diego
parents: 26727
diff changeset
329 vf_open,
9593
e9a2af584986 Add the new -vf option wich is the same as vop in reverse order.
albeu
parents: 7368
diff changeset
330 NULL
6278
a88b82461c17 test pattern filter
michael
parents:
diff changeset
331 };
a88b82461c17 test pattern filter
michael
parents:
diff changeset
332
a88b82461c17 test pattern filter
michael
parents:
diff changeset
333 //===========================================================================//