mxfsplit.cpp File Reference

Splitter (linear sequential unwrap program) for MXFLib. More...

#include "mxflib/mxflib.h"
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <map>
#include <stdarg.h>

Namespaces

namespace  mxflib

Classes

struct  StreamFile
class  RawFileSink
 EssenceSink that writes a raw file to the currently open file. More...
class  WaveFileSink
 EssenceSink that writes a wave file to the currently open file. More...

Defines

#define MAX_DUMPSIZE   128

Typedefs

typedef map< string, StreamFileFileMap
typedef list< std::string > DMFileList
 DM Dictionaries.
typedef std::map< UInt32,
EssenceInfo > 
EssenceInfoMap
 Map of EssenceInfo structures indexed by BodySID.

Functions

static void DumpObject (MDObjectPtr Object, std::string Prefix)
 Dump an object and any physical or logical children.
static void DumpHeader (PartitionPtr ThisPartition)
static void DumpIndex (PartitionPtr ThisPartition)
static void DumpBody (PartitionPtr ThisPartition)
static void WriteWaveHeader (FileHandle File, Int16 Channels, UInt32 SamplesPerSec, UInt16 BitsPerSample, UInt32 DataSize)
 Write a basic wave fle header.
static bool UpdateWaveLengths (FileHandle File)
 Update the lengths in the header of the specified wave file.
bool BuildEssenceInfo (MXFFilePtr &File, EssenceInfoMap &EssenceLookup)
 Build an EssenceInfoMap for the essence in a given file.
int main_process (int argc, char *argv[])
 Do the main processing (less any pause before exit).
int main (int argc, char *argv[])
 Do the main processing and pause if required.
void warning (const char *Fmt,...)
 Display a warning message.
void error (const char *Fmt,...)
 Display an error message.

Variables

int Verbose = 0
 Debug flag for KLVLib.
static bool Quiet = false
 Debug flag for MXFLib.
static bool DebugMode = false
static bool DumpAllHeader = false
static bool SplitIndex = false
static bool SplitGC = false
static bool SplitWave = false
static bool SplitMono = false
static bool SplitStereo = false
static bool SplitParts = false
static bool FullIndex = false
static bool DumpExtraneous = false
FileMap theStreams
 Output Streams.
DMFileList DMDicts
EssenceInfoMap EssenceLookup
 The map of essence info for this file.
bool PauseBeforeExit = false
 Should we pause before exit?


Detailed Description

Splitter (linear sequential unwrap program) for MXFLib.

Version:
Id
mxfsplit.cpp,v 1.20 2006/09/02 14:04:17 matt-beard Exp

Define Documentation

#define MAX_DUMPSIZE   128


Typedef Documentation

typedef list<std::string> DMFileList

DM Dictionaries.

typedef std::map<UInt32, EssenceInfo> EssenceInfoMap [static]

Map of EssenceInfo structures indexed by BodySID.

typedef map<string, StreamFile> FileMap


Function Documentation

bool BuildEssenceInfo ( MXFFilePtr File,
EssenceInfoMap EssenceLookup 
)

Build an EssenceInfoMap for the essence in a given file.

Returns:
True if al OK, else false

static void DumpBody ( PartitionPtr  ThisPartition  )  [static]

static void DumpHeader ( PartitionPtr  ThisPartition  )  [static]

static void DumpIndex ( PartitionPtr  ThisPartition  )  [static]

void DumpObject ( MDObjectPtr  Object,
std::string  Prefix 
) [static]

Dump an object and any physical or logical children.

int main ( int  argc,
char *  argv[] 
)

Do the main processing and pause if required.

int main_process ( int  argc,
char *  argv[] 
)

Do the main processing (less any pause before exit).

bool UpdateWaveLengths ( FileHandle  File  )  [static]

Update the lengths in the header of the specified wave file.

Returns:
true if updated OK

"RIFF"

"WAVE"

"fmt "

"data"

Buffer for working values

void WriteWaveHeader ( FileHandle  File,
Int16  Channels,
UInt32  SamplesPerSec,
UInt16  BitsPerSample,
UInt32  DataSize = 0 
) [static]

Write a basic wave fle header.

"RIFF"

"WAVE"

"fmt "

"data"

Buffer big enough to hold a basic Wave Header

Walking buffer pointer


Variable Documentation

bool DebugMode = false [static]

MDObjectPtr Descriptor

DMFileList DMDicts

bool DumpAllHeader = false [static]

bool DumpExtraneous = false [static]

EssenceInfoMap EssenceLookup [static]

The map of essence info for this file.

bool FullIndex = false [static]

PackagePtr Package

UMIDPtr PackageID

bool PauseBeforeExit = false

Should we pause before exit?

bool Quiet = false [static]

Debug flag for MXFLib.

bool SplitGC = false [static]

bool SplitIndex = false [static]

bool SplitMono = false [static]

bool SplitParts = false [static]

bool SplitStereo = false [static]

bool SplitWave = false [static]

FileMap theStreams

Output Streams.

int Verbose = 0

Debug flag for KLVLib.


Generated on Mon Apr 2 15:20:55 2007 for MXFLib by  doxygen 1.5.1-p1