Move ff_flac_write_header() to flacenc.h, which removes the Matroska muxer's
authorJustin Ruggles <justin.ruggles@gmail.com>
Mon, 22 Mar 2010 21:58:38 +0000 (21:58 +0000)
committerJustin Ruggles <justin.ruggles@gmail.com>
Mon, 22 Mar 2010 21:58:38 +0000 (21:58 +0000)
dependency on flacenc.o and fixes the unnecessary dependency on vorbiscomment.o.

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

libavformat/Makefile
libavformat/flacenc.c
libavformat/flacenc.h

index 39ac96ce04ff05a10473f27c3a31b7970aeb3f2b..c244ceec941e7363eca1c5b5aa84a1d42c68e824 100644 (file)
@@ -103,7 +103,7 @@ OBJS-$(CONFIG_M4V_MUXER)                 += raw.o
 OBJS-$(CONFIG_MATROSKA_DEMUXER)          += matroskadec.o matroska.o \
                                             riff.o isom.o rmdec.o rm.o
 OBJS-$(CONFIG_MATROSKA_MUXER)            += matroskaenc.o matroska.o \
-                                            riff.o isom.o avc.o flacenc.o
+                                            riff.o isom.o avc.o
 OBJS-$(CONFIG_MJPEG_DEMUXER)             += raw.o
 OBJS-$(CONFIG_MJPEG_MUXER)               += raw.o
 OBJS-$(CONFIG_MLP_DEMUXER)               += raw.o id3v2.o
index ff90731d8e6e874b97cd6413d546861cf320804f..91a080f3a3f68314f180e492b793bbf7d8116ec1 100644 (file)
 #include "vorbiscomment.h"
 #include "libavcodec/bytestream.h"
 
-int ff_flac_write_header(ByteIOContext *pb, AVCodecContext *codec,
-                         int last_block)
-{
-    uint8_t header[8] = {
-        0x66, 0x4C, 0x61, 0x43, 0x00, 0x00, 0x00, 0x22
-    };
-    uint8_t *streaminfo;
-    enum FLACExtradataFormat format;
-
-    header[4] = last_block ? 0x80 : 0x00;
-    if (!ff_flac_is_extradata_valid(codec, &format, &streaminfo))
-        return -1;
-
-    /* write "fLaC" stream marker and first metadata block header if needed */
-    if (format == FLAC_EXTRADATA_FORMAT_STREAMINFO) {
-        put_buffer(pb, header, 8);
-    }
-
-    /* write STREAMINFO or full header */
-    put_buffer(pb, codec->extradata, codec->extradata_size);
-
-    return 0;
-}
 
 static int flac_write_block_padding(ByteIOContext *pb, unsigned int n_padding_bytes,
                                     int last_block)
index 748c68ea8962ec1aaee236c2e6a1b5c3414703fc..471376692acec4875d7d5d9c4f8a3f6bdbd966c3 100644 (file)
 #ifndef AVFORMAT_FLACENC_H
 #define AVFORMAT_FLACENC_H
 
+#include "libavcodec/flac.h"
+#include "libavcodec/bytestream.h"
 #include "avformat.h"
 
-int ff_flac_write_header(ByteIOContext *pb, AVCodecContext *codec,
-                         int last_block);
+static int ff_flac_write_header(ByteIOContext *pb, AVCodecContext *codec,
+                                int last_block)
+{
+    uint8_t header[8] = {
+        0x66, 0x4C, 0x61, 0x43, 0x00, 0x00, 0x00, 0x22
+    };
+    uint8_t *streaminfo;
+    enum FLACExtradataFormat format;
+
+    header[4] = last_block ? 0x80 : 0x00;
+    if (!ff_flac_is_extradata_valid(codec, &format, &streaminfo))
+        return -1;
+
+    /* write "fLaC" stream marker and first metadata block header if needed */
+    if (format == FLAC_EXTRADATA_FORMAT_STREAMINFO) {
+        put_buffer(pb, header, 8);
+    }
+
+    /* write STREAMINFO or full header */
+    put_buffer(pb, codec->extradata, codec->extradata_size);
+
+    return 0;
+}
 
 #endif /* AVFORMAT_FLACENC_H */