]> git.sesse.net Git - vlc/commitdiff
Add avparser.h to prepare for submodulification
authorJean-Baptiste Kempf <jb@videolan.org>
Thu, 26 Feb 2015 19:55:34 +0000 (20:55 +0100)
committerJean-Baptiste Kempf <jb@videolan.org>
Thu, 26 Feb 2015 20:06:41 +0000 (21:06 +0100)
modules/codec/avcodec/avcodec.c
modules/packetizer/Makefile.am
modules/packetizer/avparser.c
modules/packetizer/avparser.h [new file with mode: 0644]
po/POTFILES.in

index ed53cbd92a337bbfeff02d8b1e7843ee1e9c9516..2251cda45fc8dbdfff8052c7e8ff0d42ee4f444b 100644 (file)
@@ -70,6 +70,7 @@ static const char *const enc_hq_list_text[] = {
 #ifdef MERGE_FFMPEG
 # include "../../demux/avformat/avformat.h"
 # include "../../access/avio.h"
+# include "../../packetizer/avparser.h"
 #endif
 
 /*****************************************************************************
@@ -238,6 +239,8 @@ vlc_module_begin ()
 #   include "../../demux/avformat/avformat.c"
     add_submodule ()
         AVIO_MODULE
+    add_submodule ()
+        AVPARSER_MODULE
 #endif
 vlc_module_end ()
 
index ce71ce2b264c511d801b7914478a4df5513eaefe..d67fc2113bd23e9ea8dccb8cca7c3a192404d307 100644 (file)
@@ -14,6 +14,7 @@ libpacketizer_flac_plugin_la_SOURCES = packetizer/flac.c
 libpacketizer_hevc_plugin_la_SOURCES = packetizer/hevc.c
 
 libpacketizer_avparser_plugin_la_SOURCES = packetizer/avparser.c \
+       packetizer/avparser.h \
        codec/avcodec/avcommon.h \
        codec/avcodec/avcodec.h \
        codec/avcodec/fourcc.c
index b6f41432ee4f7456735c4fb8b4f86526771b0cfb..c5d2891f6a0ecdbb2d433225c04cccf1a6b49c3d 100644 (file)
 #include "../codec/avcodec/avcodec.h"
 #include "../codec/avcodec/avcommon.h"
 
+#include "avparser.h"
 /*****************************************************************************
  * Module descriptor
  *****************************************************************************/
-static int  OpenPacketizer ( vlc_object_t * );
-static void ClosePacketizer( vlc_object_t * );
-
+#ifndef MERGE_FFMPEG
 vlc_module_begin ()
-    set_category( CAT_SOUT )
-    set_subcategory( SUBCAT_SOUT_PACKETIZER )
-    set_description( N_("avparser packetizer") )
-    set_capability( "packetizer", 1 )
-    set_callbacks( OpenPacketizer, ClosePacketizer )
+    AVPARSER_MODULE
 vlc_module_end ()
+#endif
 
 /*****************************************************************************
  * Local prototypes
@@ -69,7 +65,7 @@ static block_t * Packetize( decoder_t *, block_t ** );
  * Tries to launch a decoder and return score so that the interface is able
  * to choose.
  *****************************************************************************/
-static int OpenPacketizer( vlc_object_t *p_this )
+int OpenPacketizer( vlc_object_t *p_this )
 {
     decoder_t     *p_dec = (decoder_t*)p_this;
     decoder_sys_t *p_sys;
@@ -125,7 +121,7 @@ static int OpenPacketizer( vlc_object_t *p_this )
 /*****************************************************************************
  * ClosePacketizer:
  *****************************************************************************/
-static void ClosePacketizer( vlc_object_t *p_this )
+void ClosePacketizer( vlc_object_t *p_this )
 {
     decoder_t     *p_dec = (decoder_t*)p_this;
     avcodec_free_context( &p_dec->p_sys->p_codec_ctx );
diff --git a/modules/packetizer/avparser.h b/modules/packetizer/avparser.h
new file mode 100644 (file)
index 0000000..dabbd7a
--- /dev/null
@@ -0,0 +1,51 @@
+/*****************************************************************************
+ * avparser.h
+ *****************************************************************************
+ * Copyright (C) 2015 VLC authors and VideoLAN
+ * $Id$
+ *
+ * Authors: Denis Charmet <typx@videolan.org>
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2.1 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
+ *****************************************************************************/
+
+/*****************************************************************************
+ * Preamble
+ *****************************************************************************/
+
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
+#include <vlc_common.h>
+#include <vlc_plugin.h>
+#include <vlc_codec.h>
+#include <vlc_block.h>
+
+#include "../codec/avcodec/avcodec.h"
+#include "../codec/avcodec/avcommon.h"
+
+/*****************************************************************************
+ * Module descriptor
+ *****************************************************************************/
+int  OpenPacketizer ( vlc_object_t * );
+void ClosePacketizer( vlc_object_t * );
+
+#define AVPARSER_MODULE \
+    set_category( CAT_SOUT )                            \
+    set_subcategory( SUBCAT_SOUT_PACKETIZER )           \
+    set_description( N_("avparser packetizer") )        \
+    set_capability( "packetizer", 1 )                   \
+    set_callbacks( OpenPacketizer, ClosePacketizer )
index b679347338983bb74aa03108ea4bf1881dfb4872..0d93de1bfbd8048b46264bf25a5f3984e9cf4457 100644 (file)
@@ -998,7 +998,7 @@ modules/mux/ogg.c
 modules/mux/wav.c
 modules/notify/growl.m
 modules/notify/notify.c
-modules/packetizer/avparser.c
+modules/packetizer/avparser.h
 modules/packetizer/copy.c
 modules/packetizer/dirac.c
 modules/packetizer/flac.c