[xiph-commits] r15331 - in trunk/oggdsf: . bin build/NSIS/Release

cristianadam at svn.xiph.org cristianadam at svn.xiph.org
Sun Sep 21 21:46:21 PDT 2008


Author: cristianadam
Date: 2008-09-21 21:46:20 -0700 (Sun, 21 Sep 2008)
New Revision: 15331

Added:
   trunk/oggdsf/ChangeLog.txt
   trunk/oggdsf/bin/Ogg Codecs.manifest
Modified:
   trunk/oggdsf/build/NSIS/Release/oggcodecs_release.nsi
Log:
Added ChangeLog.txt and support for Registration-Free COM Activation.

Added: trunk/oggdsf/ChangeLog.txt
===================================================================
--- trunk/oggdsf/ChangeLog.txt	                        (rev 0)
+++ trunk/oggdsf/ChangeLog.txt	2008-09-22 04:46:20 UTC (rev 15331)
@@ -0,0 +1,118 @@
+Version 0.80.xxxxx
+
+    * Updated compiler to Visual Studio 2008 Service Pack 1
+    * Added support for Registration Free COM Activation
+    * Fixed #1382: IOggCodec is not an interface
+    * Fixed #1392: OggDemuxPacketSourceFilter GetCurFile memory allocation causes crashes
+    * Fixed #1404: Installer doesn't respect the silent command line parameter
+    * Fixed #1408: libOOTheora.dll memory leak
+    
+Version 0.80.15039 - 14/06/2008
+
+    * Support for Microsoft Windows Vista
+    * Updated compiler to Visual Studio 2008 Express, which drops support for Windows 9x, NT 4.
+    * Updated libspeex to version 1.2 beta 1
+    * Updated libvorbis to version 1.2.1 (20080501)
+    * Updated libogg to version 1.1.3
+    * Updated libtheora to version 1.0beta3 (20080416)
+    * Updated libFLAC to version 1.2.1
+    * Fixed crash at the end of incomplete Theora files. 
+
+Version 0.73.1936 - 21/10/2006
+
+This version mainly exposes encoding options for all the codecs as COM interfaces, and as property pages
+(viewable in graphedit).  Still needs more testing and error checking. Fixed a bug with flac that caused silence 
+when a track automatically repeated. The aspect  ratio handling in theora is now correct, the channel order in 
+vorbis is now correct. And now explorer has the "Add to WMP playlist" option,  which other media files have in 
+their right-click menu.
+
+    * Encode options for theora, vorbis, speex and flac and property pages in graphedit
+    * Improved OGM decoding
+    * Improved subtitle support
+    * Vorbis channel order fixed
+    * 24/32 bit >2 channel decode support improved for vorbis and flac
+    * Fix end of file/repeat bug in flac
+    * Correct handling of aspect ratio in theora
+    * "Add to playlist" option for WMP appears in explorer right-click menu 
+    
+
+Version 0.72.1838 - 17/9/2006
+
+Major changes in this version include, updating all the code to Visual Studio 2005. There is now a "working" 
+port for Windows Mobile 5.0  as at this revision, this is not yet released. Many minor bugixes and compatability 
+fixes, dependancy updates, speed increases, unicode support, improved installer. Some major work was done to 
+maintain Windows 9X/ME support while properly supporting unicode. If you use or have an  interest in the 
+maintaining of support for these obsolete operating systems, please let me know whether they are working 
+for you.
+
+    * Fixed bug that would refuse to play extremely small files
+    * Added YUY2 output support to better support old graphics hardware
+    * Updated speex to 1.2beta1
+    * Updated project to VS 2005
+    * Using theora-exp for theora decoding ~30% speed up
+    * Improved 24/32 bit support for FLAC (still may not be perfect)
+    * All code moved to unicode. Fixed bug which would fail if paths had unicode chars
+    * Custom unicode emulating(unicows) CRT's to maintain Windows 9X support
+    * Compatablity fixes for Media Portal and Media Player Classic
+    * Installer detects and offers to remove previous versions
+    * Installer offers to optionally associate WMP to .ogg
+    * MMX optimisations for libtheora ported to MASM, encoding ~25-30% faster
+    * Xiph fish icon in explorer
+    * Code ported to Windows Mobile 5.0 (currently unreleased build)
+    * Switch to integer decoding version of speex 
+
+Version 0.71.0946 - 24/02/2006
+
+More bugfixes, particularly to theora. See 0.70 release for more details about recent changes. Docs and source 
+package will be updated on the weekend, there's no major changes there from 0.70. This version is fairly stable 
+now it seems.
+
+    * Fixed the theora seeking bug, should accurately seek to any frame without artefacts.
+    * Fixed bug not handling WMP doing hardware video acceleration, caused crash on some files (Thanks slashdot!)
+    * Fixed handling of missing 3xx http response codes
+    * Fixed bug where player would crash if you dragged it from one monitor to another while playing
+    * Fixed COM reference double-release bug
+    * Fixed race condition which could crash or hang sometimes after a seek. 
+
+Version (0.70.0827) - 16/02/2006
+
+Wow... has it been a whole year :) Yes, this project is still alive! There's a fair bit of new code, so if you have problems 
+you might want to try the history page and get version 0.69. One notable thing that this new version does not do correctly, 
+is it no longer handles chained icecast streams, but it handles streaming static files on a server much better. The previous 
+solution for icecast was a real hack which is no longer possible, it will be fixed properly fairly soon.
+
+I'm releasing now, because otherwise you'll be waiting forever! Releases should be coming much more frequently hopefully. 
+As always, email me your bugs and feature requests. The unicode filenames will be fixed as soon as I can, sorry, I keep putting 
+that one off.
+
+    * Theora can seek without artefacts to any frame, even non-keyframes.(95% of the time, there's still a slight bug)
+    * All seeking in all codecs is accurate to within a single audio sample (ie. sub-second)
+    * Complete rewrite of demux, it's much easier for me to continue now.
+    * OGM support is improved a bit, still not great. It does not associate with the .ogm extension to avoid messing with other 
+       solutions for .ogm you might have. But renaming the .ogm file to .ogg it will attempt to play it.
+    * Improved handling of static files on servers (still not seeking over http)
+    * Be aware that it builds a seektable for all on-disk files. For really large files (>250MB) it may take a little while 
+       for the file to load.
+    * Updated most libraries, vorbis is still at 1.1.1, speex still 1.1.10. Another release soonish may rectify this. 
+       I just want to release what I've got now, or it will keep being put off. 
+
+Version (0.69.8924) - 15/02/2005
+
+Lots of bufixes, especially memory leaks and memory management. Along with a new installer based on NSIS, which 
+is just click-and-run.
+
+    * Removed several major memory leaks in encoders and decoders
+    * More intelligent buffer sizing, reduces memory footprint about 5-10 fold
+    * Much more documentation
+    * Vorbis encoder has programmatic interface for setting quality
+    * Annodex Muxing support
+    * Programmitic interface for encoding progress
+    * Can seek in WMP6.4
+    * Several other tools (not included in this binary) for server side seeking, and .NET media players added to SDK 
+
+Version 0.68.8333 - 06/12/2004
+
+    * Fixed playback from windows network drives.
+    * Fixed bug where audio would stop if you seek really close to the end.
+    * Seeking performance back to almost instant. 
+    
\ No newline at end of file

Added: trunk/oggdsf/bin/Ogg Codecs.manifest
===================================================================
--- trunk/oggdsf/bin/Ogg Codecs.manifest	                        (rev 0)
+++ trunk/oggdsf/bin/Ogg Codecs.manifest	2008-09-22 04:46:20 UTC (rev 15331)
@@ -0,0 +1,173 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
+
+<assemblyIdentity
+    type="win32"
+    name="Ogg Codecs"
+    version="1.0.0.0" />
+
+<file name="dsfAnxMux.dll">
+
+    <comClass
+        description="AnxMuxFilter"
+        clsid="{6C5746D3-D309-4988-8694-D435AB86460D}"
+        threadingModel="Both" />
+
+</file>
+
+<file name="dsfCMMLDecoder.dll">
+
+    <comClass
+        description="CMML Decode Filter"
+        clsid="{BF1121D1-8739-45E1-BCD8-90B828F643AB}"
+        threadingModel="Both" />
+
+</file>
+
+<file name="dsfCMMLRawSource.dll">
+
+    <comClass
+        description="CMMLRawDemuxFilter"
+        clsid="{B78032F1-DCC8-4AF4-91AD-FB98E806130D}"
+        threadingModel="Both" />
+
+</file>
+
+<file name="dsfFLACDecoder.dll">
+
+    <comClass
+        description="FLAC Decode Filter"
+        clsid="{3376086C-D6F9-4CE4-8B89-33CD570106B5}"
+        threadingModel="Both" />
+
+</file>
+
+<file name="dsfFLACEncoder.dll">
+
+    <comClass
+        description="FLAC Encode Filter"
+        clsid="{77E3A6A3-2A24-43FA-B929-00747E4B560B}"
+        threadingModel="Both" />
+
+    <comClass
+        description="FLAC Encode Properties"
+        clsid="{EE66A998-4E5C-4E23-A0F3-97C40D87EC48}"
+        threadingModel="Both" />
+
+</file>
+
+<file name="dsfNativeFLACSource.dll">
+
+    <comClass
+        description="Native FLAC SourceFilter"
+        clsid="{6DDA37BA-0553-499A-AE0D-BEBA67204548}"
+        threadingModel="Both" />
+
+</file>
+
+<file name="dsfOggDemux2.dll">
+
+    <comClass
+        description="OggDemuxFilter"
+        clsid="{C9361F5A-3282-4944-9899-6D99CDC5370B}"
+        threadingModel="Both" />
+
+</file>
+
+<file name="dsfOggMux.dll">
+
+    <comClass
+        description="OggMuxFilter"
+        clsid="{1F3EFFE4-0E70-47C7-9C48-05EB99E20011}"
+        threadingModel="Both" />
+
+</file>
+
+<file name="dsfOGMDecoder.dll">
+
+    <comClass
+        description="OGM Decode Filter"
+        clsid="{368DD7F2-5644-4A88-AC4C-D334B82660B5}"
+        threadingModel="Both" />
+
+</file>
+
+<file name="dsfSpeexDecoder.dll">
+
+    <comClass
+        description="Speex Decode Filter"
+        clsid="{7605E26C-DE38-4B82-ADD8-FE2568CC0B25}"
+        threadingModel="Both" />
+
+</file>
+
+<file name="dsfSpeexEncoder.dll">
+
+    <comClass
+        description="Speex Encode Filter"
+        clsid="{7036C2FE-A209-464C-97AB-95B9260EDBF7}"
+        threadingModel="Both" />
+
+    <comClass
+        description="Speex Encode Properties"
+        clsid="{ED79AEC0-68AD-4BE6-B06E-B4D3C8101624}"
+        threadingModel="Both" />
+
+</file>
+
+<file name="dsfSubtitleVMR9.dll">
+
+    <comClass
+        description="Subtitle VMR9 Filter"
+        clsid="{5709E326-01D8-49AD-9D08-F8723112D82E}"
+        threadingModel="Both" />
+
+</file>
+
+<file name="dsfTheoraDecoder.dll">
+
+    <comClass
+        description="Theora Decode Filter"
+        clsid="{05187161-5C36-4324-A734-22BF37509F2D}"
+        threadingModel="Both" />
+
+</file>
+
+<file name="dsfTheoraEncoder.dll">
+
+    <comClass
+        description="Theora Encode Filter"
+        clsid="{5C769985-C3E1-4F95-BEE7-1101C465F5FC}"
+        threadingModel="Both" />
+
+    <comClass
+        description="Theora Encode Properties"
+        clsid="{121EA765-6D3F-4519-9686-A0BA6E5281A2}"
+        threadingModel="Both" />
+
+</file>
+
+<file name="dsfVorbisDecoder.dll">
+
+    <comClass
+        description="Vorbis Decode Filter"
+        clsid="{05A1D945-A794-44EF-B41A-2F851A117155}"
+        threadingModel="Both" />
+
+</file>
+
+<file name="dsfVorbisEncoder.dll">
+
+    <comClass
+        description="Vorbis Encode Filter"
+        clsid="{5C94FE86-B93B-467F-BFC3-BD6C91416F9B}"
+        threadingModel="Both" />
+
+    <comClass
+        description="Vorbis Encode Properties"
+        clsid="{A538F05F-DC08-4BF9-994F-18A86CCA6CC4}"
+        threadingModel="Both" />
+
+</file>
+
+</assembly>

Modified: trunk/oggdsf/build/NSIS/Release/oggcodecs_release.nsi
===================================================================
--- trunk/oggdsf/build/NSIS/Release/oggcodecs_release.nsi	2008-09-21 19:38:45 UTC (rev 15330)
+++ trunk/oggdsf/build/NSIS/Release/oggcodecs_release.nsi	2008-09-22 04:46:20 UTC (rev 15331)
@@ -104,6 +104,12 @@
 !insertmacro MUI_PAGE_STARTMENU Application $ICONS_GROUP
 ; Instfiles page
 !insertmacro MUI_PAGE_INSTFILES
+
+; Instfiles page
+!define MUI_FINISHPAGE_SHOWREADME
+!define MUI_FINISHPAGE_SHOWREADME_TEXT "Show release notes"
+!define MUI_FINISHPAGE_SHOWREADME_FUNCTION ShowReleaseNotes
+
 ; Finish page
 !insertmacro MUI_PAGE_FINISH
 
@@ -177,18 +183,16 @@
 ;--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 ; COM registration macros, with fallbacks on regsvr32
 ;--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-!macro RegisterCOM localFile destFile tempbasedir
+!macro RegisterCOM file
 	!define LIBRARY_COM
-	;!insertmacro InstallLib REGDLL NOTSHARED NOREBOOT_NOTPROTECTED "${localFile}" "${destFile}" "${tempbasedir}"
-	RegDLL "${destFile}"
+	RegDLL "${file}"
 	!undef LIBRARY_COM
 	IfErrors 0 +2
-	ExecWait '$SYSDIR\regsvr32.exe "/s" "${destFile}"'
+	ExecWait '$SYSDIR\regsvr32.exe "/s" "${file}"'
 !macroend
 
 !macro UnRegisterCOM file
 	!define LIBRARY_COM
-	;!insertmacro UnInstallLib REGDLL NOTSHARED NOREBOOT_NOTPROTECTED "${file}" 
 	UnRegDLL "${file}"
 	!undef LIBRARY_COM
 	IfErrors 0 +2
@@ -216,11 +220,7 @@
 
   ; ico files - 1 (One file contains all these packed)
   File "${OGGCODECS_ROOT_DIR}\bin\xifish.ico"
-  ;File "${OGGCODECS_ROOT_DIR}\bin\xifish-16.ico"
-  ;File "${OGGCODECS_ROOT_DIR}\bin\xifish-32.ico"
-  ;File "${OGGCODECS_ROOT_DIR}\bin\xifish-48.ico"
 
-
   ; Libraries - 10
   File "bin\libOOOgg.dll"
   File "bin\libOOOggSeek.dll"
@@ -243,7 +243,7 @@
   File "bin\OOOggCommentDump.exe"
 
 
-  ; Text files - 7
+  ; Text files - 9
   File "${OGGCODECS_ROOT_DIR}\ABOUT.txt"
   File "${OGGCODECS_ROOT_DIR}\VERSIONS"
   File "${OGGCODECS_ROOT_DIR}\README"
@@ -252,6 +252,8 @@
 
   File "${OGGCODECS_ROOT_DIR}\AUTHORS"
   File "${OGGCODECS_ROOT_DIR}\HISTORY"
+  File "${OGGCODECS_ROOT_DIR}\ChangeLog.txt"
+  File "${OGGCODECS_ROOT_DIR}\bin\Ogg Codecs.manifest" 
   
   ; Install Filters - 16  
 
@@ -287,28 +289,28 @@
   SetOutPath "$INSTDIR"
   ; Register libraries - 16
 
-  !insertmacro RegisterCOM "bin\dsfFLACEncoder.dll" $INSTDIR\dsfFLACEncoder.dll $INSTDIR
-  !insertmacro RegisterCOM "bin\dsfSpeexEncoder.dll" $INSTDIR\dsfSpeexEncoder.dll $INSTDIR
-  !insertmacro RegisterCOM "bin\dsfTheoraEncoder.dll" $INSTDIR\dsfTheoraEncoder.dll $INSTDIR
-  !insertmacro RegisterCOM "bin\dsfVorbisEncoder.dll" $INSTDIR\dsfVorbisEncoder.dll $INSTDIR
+  !insertmacro RegisterCOM "$INSTDIR\dsfFLACEncoder.dll"
+  !insertmacro RegisterCOM "$INSTDIR\dsfSpeexEncoder.dll" 
+  !insertmacro RegisterCOM "$INSTDIR\dsfTheoraEncoder.dll"
+  !insertmacro RegisterCOM "$INSTDIR\dsfVorbisEncoder.dll" 
   
-  !insertmacro RegisterCOM "bin\dsfNativeFLACSource.dll" $INSTDIR\dsfNativeFLACSource.dll $INSTDIR
-  !insertmacro RegisterCOM "bin\dsfSpeexDecoder.dll" $INSTDIR\dsfSpeexDecoder.dll $INSTDIR
-  !insertmacro RegisterCOM "bin\dsfTheoraDecoder.dll" $INSTDIR\dsfTheoraDecoder.dll $INSTDIR
-  !insertmacro RegisterCOM "bin\dsfFLACDecoder.dll" $INSTDIR\dsfFLACDecoder.dll $INSTDIR
-  !insertmacro RegisterCOM "bin\dsfVorbisDecoder.dll" $INSTDIR\dsfVorbisDecoder.dll $INSTDIR
+  !insertmacro RegisterCOM "$INSTDIR\dsfNativeFLACSource.dll" 
+  !insertmacro RegisterCOM "$INSTDIR\dsfSpeexDecoder.dll" 
+  !insertmacro RegisterCOM "$INSTDIR\dsfTheoraDecoder.dll" 
+  !insertmacro RegisterCOM "$INSTDIR\dsfFLACDecoder.dll" 
+  !insertmacro RegisterCOM "$INSTDIR\dsfVorbisDecoder.dll" 
   
-  !insertmacro RegisterCOM "bin\dsfOGMDecoder.dll" $INSTDIR\dsfOGMDecoder.dll $INSTDIR
+  !insertmacro RegisterCOM "$INSTDIR\dsfOGMDecoder.dll" 
   
-  !insertmacro RegisterCOM "bin\dsfOggDemux2.dll" $INSTDIR\dsfOggDemux2.dll $INSTDIR
-  !insertmacro RegisterCOM "bin\dsfOggMux.dll" $INSTDIR\dsfOggMux.dll $INSTDIR
+  !insertmacro RegisterCOM "$INSTDIR\dsfOggDemux2.dll" 
+  !insertmacro RegisterCOM "$INSTDIR\dsfOggMux.dll" 
   
-  !insertmacro RegisterCOM "bin\dsfCMMLDecoder.dll" $INSTDIR\dsfCMMLDecoder.dll $INSTDIR
-  !insertmacro RegisterCOM "bin\dsfCMMLRawSource.dll" $INSTDIR\dsfCMMLRawSource.dll $INSTDIR
-  !insertmacro RegisterCOM "bin\dsfSubtitleVMR9.dll" $INSTDIR\dsfSubtitleVMR9.dll $INSTDIR
+  !insertmacro RegisterCOM "$INSTDIR\dsfCMMLDecoder.dll" 
+  !insertmacro RegisterCOM "$INSTDIR\dsfCMMLRawSource.dll" 
+  !insertmacro RegisterCOM "$INSTDIR\dsfSubtitleVMR9.dll" 
   
-  ;!insertmacro RegisterCOM "bin\dsfAnxDemux.dll" $INSTDIR\dsfAnxDemux.dll $INSTDIR
-  !insertmacro RegisterCOM "bin\dsfAnxMux.dll"  $INSTDIR\dsfAnxMux.dll $INSTDIR\
+  ;!insertmacro RegisterCOM "$INSTDIR\dsfAnxDemux.dll" 
+  !insertmacro RegisterCOM "$INSTDIR\dsfAnxMux.dll"
 
   IfSilent +3
   Push $INSTDIR\Install.log
@@ -605,8 +607,6 @@
   WriteRegStr HKLM "SOFTWARE\Microsoft\MediaPlayer\MLS\Extensions" "spx" "audio"
   WriteRegStr HKLM "SOFTWARE\Microsoft\MediaPlayer\MLS\Extensions" "flac" "audio"  
   
-
-  ;Sleep 10000
 ; Shortcuts
   !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
   !insertmacro MUI_STARTMENU_WRITE_END
@@ -774,6 +774,10 @@
   !insertmacro MUI_STARTMENU_WRITE_END
 SectionEnd
 
+;--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
+Function ShowReleaseNotes
+	ExecShell "open" "$INSTDIR\ChangeLog.txt"
+FunctionEnd
 
 ;--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 Section -Post
@@ -942,6 +946,12 @@
   DeleteRegValue HKLM "SOFTWARE\Microsoft\MediaPlayer\MLS\Extensions" "spx"
   DeleteRegValue HKLM "SOFTWARE\Microsoft\MediaPlayer\MLS\Extensions" "flac"  
 
+    ; Point the extension to the handlers
+  DeleteRegKey HKCR "WMP.OggFile"
+  DeleteRegKey HKCR "WMP.OgaFile"
+  DeleteRegKey HKCR "WMP.OgvFile"
+  DeleteRegKey HKCR "WMP.SpxFile"
+  DeleteRegKey HKCR "WMP.FlacFile"
   
   !insertmacro MUI_STARTMENU_GETFOLDER "Application" $ICONS_GROUP
  
@@ -1000,7 +1010,7 @@
   ; Delete "$INSTDIR\dsfAnxDemux.dll"
 
 
-  ; Delete text files - 7
+  ; Delete text files - 9
   Delete "$INSTDIR\ABOUT.txt"
   Delete "$INSTDIR\VERSIONS"
   Delete "$INSTDIR\README"
@@ -1009,6 +1019,8 @@
 
   Delete "$INSTDIR\AUTHORS"
   Delete "$INSTDIR\HISTORY"
+  Delete "$INSTDIR\ChangeLog.txt"
+  Delete "$INSTDIR\Ogg Codecs.manifest" 
 
   ; Delete runtimes - 2
   Delete "$INSTDIR\${VS_RUNTIME_PREFIX}r90.dll"
@@ -1017,11 +1029,7 @@
 
   ; Delete icons - 3
   Delete "$INSTDIR\xifish.ico"
-  ;Delete "$INSTDIR\xifish-16.ico"
-  ;Delete "$INSTDIR\xifish-32.ico"
-  ;Delete "$INSTDIR\xifish-48.ico"
 
-
   ;Delete accesory files, links etc.
   Delete "$SMPROGRAMS\$ICONS_GROUP\Website.url"
   Delete "$INSTDIR\uninst.exe"
@@ -1035,7 +1043,7 @@
   SetOutPath "$TEMP"
   RMDir "$INSTDIR"
 
-  ; Remove the "illiminable" parent directory (but only if it's empty)
+  ; Remove the parent directory (but only if it's empty)
   RMDir "$INSTDIR\.."
 
   DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"



More information about the commits mailing list