[xiph-commits] r8757 - in trunk/oggdsf/src:
lib/codecs/cmml/libCMMLParse lib/helper/libOOOggChef
tools/CMMLDump tools/mod_oggchef
ozone at motherfish-iii.xiph.org
ozone at motherfish-iii.xiph.org
Fri Jan 14 03:05:02 PST 2005
Author: ozone
Date: 2005-01-14 03:05:01 -0800 (Fri, 14 Jan 2005)
New Revision: 8757
Modified:
trunk/oggdsf/src/lib/codecs/cmml/libCMMLParse/CMMLParser.cpp
trunk/oggdsf/src/lib/helper/libOOOggChef/AnnodexRecomposer.cpp
trunk/oggdsf/src/lib/helper/libOOOggChef/AnnodexRecomposer.h
trunk/oggdsf/src/lib/helper/libOOOggChef/CMMLRecomposer.cpp
trunk/oggdsf/src/tools/CMMLDump/CMMLDump.vcproj
trunk/oggdsf/src/tools/mod_oggchef/mod_oggchef.vcproj
Log:
oggdsf:
* Update comments in libCMMLParse/CMMLParser
* Make libOOOggChef work in release mode (note to self: never trust C++, STL and const when all used together)
* Make CMMLDump link against the write library
* Correct Release build settings for mod_oggchef
Modified: trunk/oggdsf/src/lib/codecs/cmml/libCMMLParse/CMMLParser.cpp
===================================================================
--- trunk/oggdsf/src/lib/codecs/cmml/libCMMLParse/CMMLParser.cpp 2005-01-14 09:05:48 UTC (rev 8756)
+++ trunk/oggdsf/src/lib/codecs/cmml/libCMMLParse/CMMLParser.cpp 2005-01-14 11:05:01 UTC (rev 8757)
@@ -44,9 +44,10 @@
using namespace std;
-// TODO: Properly parse preamble
+
// TODO: i18n?
+
CMMLParser::CMMLParser(void)
{
}
@@ -102,7 +103,7 @@
// XTag doesn't currently handle preambles, so we'll have to skip until we find
// a <cmml> tag which it can handle ... (note that XML is case-sensitive, so
- // we don't need to scan for "<CMML"
+ // we don't need to scan for "<CMML")
size_t locCMMLTagIndex = locCMMLFileWString.find(L"<cmml", 0);
if (locCMMLTagIndex != string::npos) {
locCMMLFileWString = locCMMLFileWString.substr(locCMMLTagIndex);
@@ -173,7 +174,7 @@
// Narrow the text given us, so we can pass it to XTag
string locClipText = StringHelper::toNarrowStr(inClipText);
- // Look for a <cmml> tag
+ // Look for a <clip> tag
XTag *locClipParser = NULL;
locClipParser = xtag_new_parse(locClipText.c_str(), (int)locClipText.size());
if (locClipParser) {
Modified: trunk/oggdsf/src/lib/helper/libOOOggChef/AnnodexRecomposer.cpp
===================================================================
--- trunk/oggdsf/src/lib/helper/libOOOggChef/AnnodexRecomposer.cpp 2005-01-14 09:05:48 UTC (rev 8756)
+++ trunk/oggdsf/src/lib/helper/libOOOggChef/AnnodexRecomposer.cpp 2005-01-14 11:05:01 UTC (rev 8757)
@@ -64,13 +64,16 @@
BufferWriter inBufferWriter,
void* inBufferWriterUserData,
string inCachedSeekTableFilename)
- : mFilename(inFilename)
- , mDemuxState(SEEN_NOTHING)
+ : mDemuxState(SEEN_NOTHING)
, mDemuxParserState(LOOK_FOR_HEADERS)
, mBufferWriter(inBufferWriter)
, mBufferWriterUserData(inBufferWriterUserData)
- , mCachedSeekTableFilename(inCachedSeekTableFilename)
{
+ // These need to go in the constructor body, because we can't assign
+ // strings in the initialiser list
+
+ mFilename = inFilename;
+ mCachedSeekTableFilename = inCachedSeekTableFilename;
}
AnnodexRecomposer::~AnnodexRecomposer(void)
Modified: trunk/oggdsf/src/lib/helper/libOOOggChef/AnnodexRecomposer.h
===================================================================
--- trunk/oggdsf/src/lib/helper/libOOOggChef/AnnodexRecomposer.h 2005-01-14 09:05:48 UTC (rev 8756)
+++ trunk/oggdsf/src/lib/helper/libOOOggChef/AnnodexRecomposer.h 2005-01-14 11:05:01 UTC (rev 8757)
@@ -49,7 +49,7 @@
{
public:
AnnodexRecomposer(void);
- AnnodexRecomposer(string inFilename, BufferWriter inBufferWriter, void* inBufferWriterUserData, const string inCachedSeekTableFilename = "");
+ AnnodexRecomposer(string inFilename, BufferWriter inBufferWriter, void* inBufferWriterUserData, string inCachedSeekTableFilename = "");
~AnnodexRecomposer(void);
bool recomposeStreamFrom(double inStartingTimeOffset, const vector<string>* inWantedMIMETypes);
Modified: trunk/oggdsf/src/lib/helper/libOOOggChef/CMMLRecomposer.cpp
===================================================================
--- trunk/oggdsf/src/lib/helper/libOOOggChef/CMMLRecomposer.cpp 2005-01-14 09:05:48 UTC (rev 8756)
+++ trunk/oggdsf/src/lib/helper/libOOOggChef/CMMLRecomposer.cpp 2005-01-14 11:05:01 UTC (rev 8757)
@@ -157,6 +157,20 @@
// Indicate success to our callee
locReturnValue = true;
+ } else {
+ // The user didn't want CMML, i.e. they'll be wanting media. We scan the
+ // CMML file for the <stream> tag, to see if it imports any media -- if it
+ // does, we'll have to figure out what MIME types the media files are (and
+ // perhaps mux them) so that the the user gets it in the form they want.
+ //
+ // e.g. if the user requests an application/x-annodex file, the CMML
+ // <stream> tag has an import expression pointing to a Vorbis file, and
+ // another import expression pointing to a Theora file, we need to mux
+ // those two files together, add an empty CMML track (so it's a valid
+ // Annodex file), and then send that to the user -- possibly only from
+ // a particular time offset. Fun!
+
+
}
#if 0
Modified: trunk/oggdsf/src/tools/CMMLDump/CMMLDump.vcproj
===================================================================
--- trunk/oggdsf/src/tools/CMMLDump/CMMLDump.vcproj 2005-01-14 09:05:48 UTC (rev 8756)
+++ trunk/oggdsf/src/tools/CMMLDump/CMMLDump.vcproj 2005-01-14 11:05:01 UTC (rev 8757)
@@ -70,7 +70,7 @@
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\lib\core\ogg;.;..\..\lib\helper;..\..\lib\codecs\cmml"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
- RuntimeLibrary="2"
+ RuntimeLibrary="0"
UsePrecompiledHeader="3"
WarningLevel="4"
Detect64BitPortabilityProblems="TRUE"
Modified: trunk/oggdsf/src/tools/mod_oggchef/mod_oggchef.vcproj
===================================================================
--- trunk/oggdsf/src/tools/mod_oggchef/mod_oggchef.vcproj 2005-01-14 09:05:48 UTC (rev 8756)
+++ trunk/oggdsf/src/tools/mod_oggchef/mod_oggchef.vcproj 2005-01-14 11:05:01 UTC (rev 8757)
@@ -67,15 +67,26 @@
</Configuration>
<Configuration
Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
+ OutputDirectory="$(ConfigurationName)"
+ IntermediateDirectory="$(ConfigurationName)"
ConfigurationType="2"
- CharacterSet="2">
+ CharacterSet="2"
+ WholeProgramOptimization="TRUE">
<Tool
Name="VCCLCompilerTool"
+ Optimization="3"
+ GlobalOptimizations="TRUE"
+ InlineFunctionExpansion="2"
+ EnableIntrinsicFunctions="TRUE"
+ FavorSizeOrSpeed="1"
+ OmitFramePointers="TRUE"
+ OptimizeForProcessor="3"
AdditionalIncludeDirectories="..\..\lib\helper;..\..\lib\core\ogg;"C:\Program Files\Apache Group\Apache2\include""
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
+ StringPooling="TRUE"
+ MinimalRebuild="FALSE"
RuntimeLibrary="2"
+ EnableFunctionLevelLinking="TRUE"
UsePrecompiledHeader="0"
WarningLevel="4"
Detect64BitPortabilityProblems="TRUE"
@@ -86,16 +97,18 @@
<Tool
Name="VCLinkerTool"
AdditionalOptions="/NODEFAULTLIB:library"
- AdditionalDependencies="libapr.lib libaprutil.lib libhttpd.lib apr.lib aprutil.lib"
+ AdditionalDependencies="libhttpd.lib libapr.lib"
OutputFile="$(OutDir)/mod_oggchef.so"
LinkIncremental="1"
AdditionalLibraryDirectories=""C:\Program Files\Apache Group\Apache2\lib""
IgnoreAllDefaultLibraries="FALSE"
- IgnoreDefaultLibraryNames="MSVCRT"
+ IgnoreDefaultLibraryNames=""
GenerateDebugInformation="TRUE"
+ ProgramDatabaseFile="$(OutDir)/mod_oggchef.pdb"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
+ OptimizeForWindows98="1"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
More information about the commits
mailing list