[Avidemux-svn-commit] r6726 - in branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers: . Mxf
mean at mail.berlios.de
mean at mail.berlios.de
Sun Nov 7 10:09:39 CET 2010
Author: mean
Date: 2010-11-07 10:09:39 +0100 (Sun, 07 Nov 2010)
New Revision: 6726
Added:
branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/Mxf/
branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/Mxf/ADM_mxf.cpp
branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/Mxf/ADM_mxf.h
branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/Mxf/ADM_mxfPlugin.cpp
branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/Mxf/CMakeLists.txt
Modified:
branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/CMakeLists.txt
Log:
[MXF/Demuxer] Skeleton
Modified: branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/CMakeLists.txt
===================================================================
--- branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/CMakeLists.txt 2010-11-01 08:14:39 UTC (rev 6725)
+++ branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/CMakeLists.txt 2010-11-07 09:09:39 UTC (rev 6726)
@@ -7,4 +7,5 @@
ADD_SUBDIRECTORY(MpegTS)
ADD_SUBDIRECTORY(Asf)
ADD_SUBDIRECTORY(AvsProxy)
+ADD_SUBDIRECTORY(Mxf)
#
Added: branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/Mxf/ADM_mxf.cpp
===================================================================
--- branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/Mxf/ADM_mxf.cpp (rev 0)
+++ branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/Mxf/ADM_mxf.cpp 2010-11-07 09:09:39 UTC (rev 6726)
@@ -0,0 +1,113 @@
+/***************************************************************************
+ \file ADM_mxf.cpp
+ \brief MXF demuxer
+ \author mean, fixounet at free.fr (C) 2010
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#include "ADM_default.h"
+
+#include <string.h>
+#include <math.h>
+
+#include "ADM_mxf.h"
+
+
+#define aprintf(...) {}
+/**
+ \fn ctor
+*/
+mxfHeader::mxfHeader(void)
+{
+
+}
+/**
+ \fn getTime
+*/
+
+uint64_t mxfHeader::getTime(uint32_t frameNum)
+{
+ return 0;
+}
+/**
+ \fn getVideoDuration
+*/
+
+uint64_t mxfHeader::getVideoDuration(void)
+{
+ return 0;
+}
+/**
+ \fn getFrameSize
+*/
+uint8_t mxfHeader::getFrameSize(uint32_t frame,uint32_t *size)
+{
+ return 0;
+}
+/**
+ \fn getFrame
+*/
+uint8_t mxfHeader::getFrame(uint32_t framenum, ADMCompressedImage *img)
+{
+ return 0;
+}
+/**
+ \fn close
+*/
+uint8_t mxfHeader::close(void)
+{
+ return true;
+}
+
+/**
+ \fn open
+*/
+uint8_t mxfHeader::open(const char *inname)
+{
+
+ return false;
+}
+/**
+ \fn setFlag
+*/
+
+uint8_t mxfHeader::setFlag(uint32_t frame, uint32_t flags)
+{
+ UNUSED_ARG(frame);
+ UNUSED_ARG(flags);
+ return 0;
+}
+/**
+ \fn getFlags
+*/
+
+uint32_t mxfHeader::getFlags(uint32_t frame, uint32_t * flags)
+{
+ UNUSED_ARG(frame);
+ UNUSED_ARG(flags);
+ return 0;
+}
+/**
+ \fn getPtsDts
+*/
+bool mxfHeader::getPtsDts(uint32_t frame,uint64_t *pts,uint64_t *dts)
+{
+ return false;
+}
+/**
+ \fn setPtsDts
+*/
+
+bool mxfHeader::setPtsDts(uint32_t frame,uint64_t pts,uint64_t dts)
+{
+ return false;
+}
+// EOF
Added: branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/Mxf/ADM_mxf.h
===================================================================
--- branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/Mxf/ADM_mxf.h (rev 0)
+++ branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/Mxf/ADM_mxf.h 2010-11-07 09:09:39 UTC (rev 6726)
@@ -0,0 +1,80 @@
+/***************************************************************************
+ \file ADM_mxf.cpp
+ \brief MXF demuxer
+ \author mean, fixounet at free.fr (C) 2010
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+
+
+#ifndef ADM_MXF_H
+#define ADM_MXF_H
+
+#include "ADM_Video.h"
+#include "ADM_audioStream.h"
+
+/**
+ \class mxfHeader
+ \brief Demuxers for mxf format
+
+*/
+class mxfHeader :public vidHeader
+{
+protected:
+
+
+public:
+// static int checkFourCC(uint8_t *in, uint8_t *fourcc);
+
+virtual void Dump(void) {};
+
+ mxfHeader( void );
+ ~mxfHeader( ) { };
+// AVI io
+virtual uint8_t open(const char *name);
+virtual uint8_t close(void) ;
+ //__________________________
+ // Info
+ //__________________________
+
+ //__________________________
+ // Audio
+ //__________________________
+
+
+virtual WAVHeader *getAudioInfo(uint32_t i ) {return NULL;} ;
+virtual uint8_t getAudioStream(uint32_t i,ADM_audioStream **audio) {*audio=NULL;return 1;}
+virtual uint8_t getNbAudioStreams(void) {return 0;}
+
+
+// Frames
+ //__________________________
+ // video
+ //__________________________
+
+virtual uint8_t setFlag(uint32_t frame,uint32_t flags);
+virtual uint32_t getFlags(uint32_t frame,uint32_t *flags);
+virtual uint8_t getFrame(uint32_t framenum,ADMCompressedImage *);
+
+virtual uint64_t getTime(uint32_t frameNum);
+virtual uint64_t getVideoDuration(void);
+virtual uint8_t getFrameSize(uint32_t frame,uint32_t *size);
+
+virtual bool getPtsDts(uint32_t frame,uint64_t *pts,uint64_t *dts);
+virtual bool setPtsDts(uint32_t frame,uint64_t pts,uint64_t dts);
+
+
+};
+
+
+#endif
+
+
Added: branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/Mxf/ADM_mxfPlugin.cpp
===================================================================
--- branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/Mxf/ADM_mxfPlugin.cpp (rev 0)
+++ branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/Mxf/ADM_mxfPlugin.cpp 2010-11-07 09:09:39 UTC (rev 6726)
@@ -0,0 +1,44 @@
+/***************************************************************************
+ \file ADM_mxf.cpp
+ \brief MXF demuxer
+ \author mean, fixounet at free.fr (C) 2010
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#include "ADM_mxf.h"
+#include "ADM_demuxerInternal.h"
+#include "fourcc.h"
+
+ADM_DEMUXER_BEGIN( mxfHeader, 50,
+ 1,0,0,
+ "MXF",
+ "MXF demuxer plugin (c) Mean 2010"
+ );
+
+/**
+ \fn Probe
+*/
+
+extern "C" uint32_t probe(uint32_t magic, const char *fileName)
+{
+uint32_t result=0;
+
+ if(magic==0x342b0e06)
+ {
+
+ printf("\n\t MXF file detected...\n");
+ return 100;
+ }
+
+ printf (" [mxfHeader] Cannot open that (%x)\n",magic);
+ return 0;
+}
+// EOF
\ No newline at end of file
Added: branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/Mxf/CMakeLists.txt
===================================================================
--- branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/Mxf/CMakeLists.txt (rev 0)
+++ branches/avidemux_2.6_branch_mean/avidemux_plugins/ADM_demuxers/Mxf/CMakeLists.txt 2010-11-07 09:09:39 UTC (rev 6726)
@@ -0,0 +1,15 @@
+# Demuxer for mxfture
+# PNG etc...
+
+include(dm_plugin)
+
+SET(ADM_mxf_SRCS
+ ADM_mxfPlugin.cpp
+ ADM_mxf.cpp
+)
+
+ADD_LIBRARY(ADM_dm_mxf SHARED ${ADM_mxf_SRCS})
+
+INIT_DEMUXER(ADM_dm_mxf)
+INSTALL_DEMUXER(ADM_dm_mxf)
+
More information about the Avidemux-svn-commit
mailing list