Originally committed as revision 9064 to svn://svn.ffmpeg.org/ffmpeg/trunk
| ... | ... |
@@ -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 |
+}; |