Browse code

move noise bitstream filter in its own file

Originally committed as revision 9064 to svn://svn.ffmpeg.org/ffmpeg/trunk

Aurelien Jacobs authored on 2007/05/19 09:30:15
Showing 3 changed files
... ...
@@ -306,7 +306,7 @@ OBJS-$(CONFIG_VC1_PARSER)              += vc1_parser.o
306 306
 
307 307
 OBJS-$(CONFIG_DUMP_EXTRADATA_BSF)      += bitstream_filter.o
308 308
 OBJS-$(CONFIG_REMOVE_EXTRADATA_BSF)    += bitstream_filter.o
309
-OBJS-$(CONFIG_NOISE_BSF)               += bitstream_filter.o
309
+OBJS-$(CONFIG_NOISE_BSF)               += noise_bsf.o
310 310
 OBJS-$(CONFIG_MP3_HEADER_COMPRESS_BSF) += mp3_header_compress_bsf.o
311 311
 OBJS-$(CONFIG_MP3_HEADER_DECOMPRESS_BSF) += mp3_header_decompress_bsf.o mpegaudiodata.o
312 312
 OBJS-$(CONFIG_MJPEGA_DUMP_HEADER_BSF)  += mjpegdec.o mjpeg.o jpeglsdec.o jpegls.o
... ...
@@ -106,24 +106,6 @@ static int remove_extradata(AVBitStreamFilterContext *bsfc, AVCodecContext *avct
106 106
     return 0;
107 107
 }
108 108
 
109
-static int noise(AVBitStreamFilterContext *bsfc, AVCodecContext *avctx, const char *args,
110
-                     uint8_t **poutbuf, int *poutbuf_size,
111
-                     const uint8_t *buf, int buf_size, int keyframe){
112
-    int amount= args ? atoi(args) : 10000;
113
-    unsigned int *state= bsfc->priv_data;
114
-    int i;
115
-
116
-    *poutbuf= av_malloc(buf_size + FF_INPUT_BUFFER_PADDING_SIZE);
117
-
118
-    memcpy(*poutbuf, buf, buf_size + FF_INPUT_BUFFER_PADDING_SIZE);
119
-    for(i=0; i<buf_size; i++){
120
-        (*state) += (*poutbuf)[i] + 1;
121
-        if(*state % amount == 0)
122
-            (*poutbuf)[i] = *state;
123
-    }
124
-    return 1;
125
-}
126
-
127 109
 #ifdef CONFIG_DUMP_EXTRADATA_BSF
128 110
 AVBitStreamFilter dump_extradata_bsf={
129 111
     "dump_extra",
... ...
@@ -139,11 +121,3 @@ AVBitStreamFilter remove_extradata_bsf={
139 139
     remove_extradata,
140 140
 };
141 141
 #endif
142
-
143
-#ifdef CONFIG_NOISE_BSF
144
-AVBitStreamFilter noise_bsf={
145
-    "noise",
146
-    sizeof(int),
147
-    noise,
148
-};
149
-#endif
150 142
new file mode 100644
... ...
@@ -0,0 +1,46 @@
0
+/*
1
+ * copyright (c) 2006 Michael Niedermayer <michaelni@gmx.at>
2
+ *
3
+ * This file is part of FFmpeg.
4
+ *
5
+ * FFmpeg is free software; you can redistribute it and/or
6
+ * modify it under the terms of the GNU Lesser General Public
7
+ * License as published by the Free Software Foundation; either
8
+ * version 2.1 of the License, or (at your option) any later version.
9
+ *
10
+ * FFmpeg is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13
+ * Lesser General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Lesser General Public
16
+ * License along with FFmpeg; if not, write to the Free Software
17
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
+ */
19
+
20
+#include "avcodec.h"
21
+
22
+
23
+static int noise(AVBitStreamFilterContext *bsfc, AVCodecContext *avctx, const char *args,
24
+                     uint8_t **poutbuf, int *poutbuf_size,
25
+                     const uint8_t *buf, int buf_size, int keyframe){
26
+    int amount= args ? atoi(args) : 10000;
27
+    unsigned int *state= bsfc->priv_data;
28
+    int i;
29
+
30
+    *poutbuf= av_malloc(buf_size + FF_INPUT_BUFFER_PADDING_SIZE);
31
+
32
+    memcpy(*poutbuf, buf, buf_size + FF_INPUT_BUFFER_PADDING_SIZE);
33
+    for(i=0; i<buf_size; i++){
34
+        (*state) += (*poutbuf)[i] + 1;
35
+        if(*state % amount == 0)
36
+            (*poutbuf)[i] = *state;
37
+    }
38
+    return 1;
39
+}
40
+
41
+AVBitStreamFilter noise_bsf={
42
+    "noise",
43
+    sizeof(int),
44
+    noise,
45
+};