Browse Source

tags/2021-05-28
jules 17 years ago
parent
commit
e08ebbf2e6
100 changed files with 1027 additions and 1189 deletions
  1. +2
    -1
      build/linux/platform_specific_code/juce_linux_Files.cpp
  2. +1
    -3
      build/linux/platform_specific_code/juce_linux_Windowing.cpp
  3. +7
    -4
      build/macosx/platform_specific_code/juce_mac_CoreAudio.cpp
  4. +8
    -4
      build/macosx/platform_specific_code/juce_mac_CoreMidi.cpp
  5. +2
    -2
      build/macosx/platform_specific_code/juce_mac_Files.cpp
  6. +7
    -11
      build/macosx/platform_specific_code/juce_mac_HTTPStream.h
  7. +5
    -5
      build/macosx/platform_specific_code/juce_mac_Network.mm
  8. +2
    -0
      build/macosx/platform_specific_code/juce_mac_SystemStats.cpp
  9. +8
    -8
      build/macosx/platform_specific_code/juce_mac_WebBrowserComponent.mm
  10. +14
    -14
      build/macosx/platform_specific_code/juce_mac_Windowing.cpp
  11. +3
    -0
      build/win32/platform_specific_code/juce_win32_ASIO.cpp
  12. +3
    -0
      build/win32/platform_specific_code/juce_win32_DirectSound.cpp
  13. +6
    -0
      build/win32/platform_specific_code/juce_win32_Misc.cpp
  14. +1
    -1
      build/win32/platform_specific_code/juce_win32_Network.cpp
  15. +5
    -1
      build/win32/platform_specific_code/juce_win32_Threads.cpp
  16. +1
    -3
      build/win32/platform_specific_code/juce_win32_Windowing.cpp
  17. +3
    -1
      build/win32/platform_specific_code/win32_headers.h
  18. +4
    -4
      extras/the jucer/src/model/components/jucer_ComboBoxHandler.h
  19. +5
    -5
      extras/the jucer/src/model/components/jucer_ComponentTypeHandler.cpp
  20. +11
    -11
      extras/the jucer/src/model/jucer_ComponentLayout.cpp
  21. +32
    -0
      src/juce_appframework/audio/audio_file_formats/flac/all.h
  22. +0
    -26
      src/juce_appframework/audio/audio_file_formats/flac/libFLAC/bitreader.c
  23. +0
    -9
      src/juce_appframework/audio/audio_file_formats/flac/libFLAC/bitwriter.c
  24. +29
    -29
      src/juce_appframework/audio/audio_file_formats/flac/libFLAC/stream_decoder.c
  25. +25
    -25
      src/juce_appframework/audio/audio_file_formats/flac/libFLAC/stream_encoder.c
  26. +4
    -4
      src/juce_appframework/audio/audio_file_formats/oggvorbis/bitwise.c
  27. +9
    -9
      src/juce_appframework/audio/audio_file_formats/oggvorbis/framing.c
  28. +1
    -1
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/analysis.c
  29. +1
    -1
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/backends.h
  30. +7
    -7
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/bitrate.c
  31. +42
    -52
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/block.c
  32. +8
    -15
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/codebook.c
  33. +20
    -0
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/codec_internal.h
  34. +12
    -12
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/envelope.c
  35. +9
    -9
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/floor0.c
  36. +28
    -44
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/floor1.c
  37. +23
    -33
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/info.c
  38. +3
    -3
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/lpc.c
  39. +14
    -14
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/lsp.c
  40. +32
    -42
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/mapping0.c
  41. +3
    -3
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/mdct.c
  42. +27
    -27
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/psy.c
  43. +20
    -29
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/res0.c
  44. +11
    -19
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/sharedbook.c
  45. +2
    -2
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/smallft.c
  46. +9
    -9
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/synthesis.c
  47. +26
    -26
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/vorbisenc.c
  48. +14
    -14
      src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/vorbisfile.c
  49. +10
    -0
      src/juce_appframework/audio/audio_file_formats/oggvorbis/ogg.h
  50. +2
    -0
      src/juce_appframework/audio/plugins/formats/juce_AudioUnitPluginFormat.cpp
  51. +2
    -0
      src/juce_appframework/audio/plugins/formats/juce_VSTPluginFormat.cpp
  52. +8
    -8
      src/juce_appframework/events/juce_MultiTimer.cpp
  53. +13
    -12
      src/juce_appframework/gui/components/controls/juce_ComboBox.cpp
  54. +2
    -2
      src/juce_appframework/gui/components/controls/juce_ComboBox.h
  55. +5
    -5
      src/juce_appframework/gui/components/controls/juce_TableHeaderComponent.cpp
  56. +2
    -2
      src/juce_appframework/gui/components/controls/juce_TableHeaderComponent.h
  57. +1
    -1
      src/juce_appframework/gui/components/controls/juce_Toolbar.cpp
  58. +3
    -0
      src/juce_appframework/gui/components/controls/juce_Toolbar.h
  59. +1
    -3
      src/juce_appframework/gui/components/controls/juce_ToolbarItemComponent.cpp
  60. +5
    -3
      src/juce_appframework/gui/components/filebrowser/juce_DirectoryContentsList.cpp
  61. +1
    -3
      src/juce_appframework/gui/components/juce_Component.cpp
  62. +6
    -6
      src/juce_appframework/gui/components/juce_Desktop.cpp
  63. +82
    -82
      src/juce_appframework/gui/components/special/juce_QuickTimeMovieComponent.cpp
  64. +3
    -1
      src/juce_appframework/gui/components/windows/juce_ComponentPeer.h
  65. +2
    -4
      src/juce_appframework/gui/components/windows/juce_TopLevelWindow.cpp
  66. +1
    -0
      src/juce_appframework/gui/graphics/contexts/juce_Graphics.cpp
  67. +1
    -0
      src/juce_appframework/gui/graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp
  68. +5
    -5
      src/juce_appframework/gui/graphics/geometry/juce_Path.cpp
  69. +6
    -0
      src/juce_appframework/gui/graphics/geometry/juce_Path.h
  70. +20
    -28
      src/juce_appframework/gui/graphics/geometry/juce_PathIterator.cpp
  71. +5
    -0
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jchuff.h
  72. +0
    -67
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jcmarker.c
  73. +19
    -19
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jcphuff.c
  74. +15
    -15
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jctrans.c
  75. +16
    -16
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdcoefct.c
  76. +14
    -14
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdcolor.c
  77. +6
    -0
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdct.h
  78. +11
    -37
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdhuff.c
  79. +5
    -0
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdhuff.h
  80. +7
    -7
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdinput.c
  81. +17
    -17
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdmainct.c
  82. +9
    -77
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdmarker.c
  83. +7
    -7
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdmaster.c
  84. +2
    -2
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdmerge.c
  85. +17
    -43
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdphuff.c
  86. +8
    -8
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdsample.c
  87. +101
    -0
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jinclude.h
  88. +1
    -1
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jmemnobs.c
  89. +10
    -5
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jmemsys.h
  90. +15
    -15
      src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jquant2.c
  91. +1
    -1
      src/juce_appframework/gui/graphics/imaging/image_file_formats/pnglib/pngconf.h
  92. +3
    -0
      src/juce_appframework/gui/graphics/imaging/image_file_formats/pnglib/pngpread.c
  93. +5
    -3
      src/juce_core/io/files/juce_DirectoryIterator.cpp
  94. +5
    -3
      src/juce_core/io/files/juce_File.cpp
  95. +1
    -1
      src/juce_core/io/network/juce_URL.cpp
  96. +2
    -8
      src/juce_core/io/streams/zlib/adler32.c
  97. +4
    -13
      src/juce_core/io/streams/zlib/compress.c
  98. +6
    -22
      src/juce_core/io/streams/zlib/crc32.c
  99. +23
    -81
      src/juce_core/io/streams/zlib/deflate.c
  100. +2
    -0
      src/juce_core/io/streams/zlib/deflate.h

+ 2
- 1
build/linux/platform_specific_code/juce_linux_Files.cpp View File

@@ -352,7 +352,8 @@ struct FindFileStruct
// returns 0 on failure // returns 0 on failure
void* juce_findFileStart (const String& directory, const String& wildCard, String& firstResultFile, void* juce_findFileStart (const String& directory, const String& wildCard, String& firstResultFile,
bool* isDir, bool* isHidden, int64* fileSize, Time* modTime, Time* creationTime, bool* isReadOnly) throw()
bool* isDir, bool* isHidden, int64* fileSize, Time* modTime,
Time* creationTime, bool* isReadOnly) throw()
{ {
DIR* d = opendir (directory.toUTF8()); DIR* d = opendir (directory.toUTF8());


+ 1
- 3
build/linux/platform_specific_code/juce_linux_Windowing.cpp View File

@@ -177,8 +177,6 @@ bool juce_isRunningAsApplication()
extern Display* display; extern Display* display;
extern XContext improbableNumber; extern XContext improbableNumber;
const int juce_windowIsSemiTransparentFlag = (1 << 31); // also in component.cpp
static const int eventMask = NoEventMask | KeyPressMask | KeyReleaseMask | ButtonPressMask | ButtonReleaseMask static const int eventMask = NoEventMask | KeyPressMask | KeyReleaseMask | ButtonPressMask | ButtonReleaseMask
| EnterWindowMask | LeaveWindowMask | PointerMotionMask | KeymapStateMask | EnterWindowMask | LeaveWindowMask | PointerMotionMask | KeymapStateMask
| ExposureMask | StructureNotifyMask | FocusChangeMask; | ExposureMask | StructureNotifyMask | FocusChangeMask;
@@ -2052,7 +2050,7 @@ private:
XSetWMHints (display, wndH, wmHints); XSetWMHints (display, wndH, wmHints);
XFree (wmHints); XFree (wmHints);
if ((styleFlags & juce_windowIsSemiTransparentFlag) != 0)
if ((styleFlags & windowIsSemiTransparent) != 0)
{ {
//xxx //xxx
} }


+ 7
- 4
build/macosx/platform_specific_code/juce_mac_CoreAudio.cpp View File

@@ -48,14 +48,16 @@ BEGIN_JUCE_NAMESPACE
#endif #endif
//============================================================================== //==============================================================================
#undef log
#if JUCE_COREAUDIO_LOGGING_ENABLED #if JUCE_COREAUDIO_LOGGING_ENABLED
#define log(a) Logger::writeToLog (a) #define log(a) Logger::writeToLog (a)
#else #else
#define log(a) #define log(a)
#endif #endif
#undef OK
#if JUCE_COREAUDIO_ERROR_LOGGING_ENABLED #if JUCE_COREAUDIO_ERROR_LOGGING_ENABLED
static bool logAnyErrors (const OSStatus err, const int lineNum)
static bool logAnyErrors_CoreAudio (const OSStatus err, const int lineNum)
{ {
if (err == noErr) if (err == noErr)
return true; return true;
@@ -65,7 +67,7 @@ BEGIN_JUCE_NAMESPACE
return false; return false;
} }
#define OK(a) logAnyErrors (a, __LINE__)
#define OK(a) logAnyErrors_CoreAudio (a, __LINE__)
#else #else
#define OK(a) (a == noErr) #define OK(a) (a == noErr)
#endif #endif
@@ -398,8 +400,8 @@ public:
{ {
if (((unsigned int) index) < num) if (((unsigned int) index) < num)
{ {
OSType id = types[index];
AudioDeviceSetProperty (deviceID, 0, 0, input, kAudioDevicePropertyDataSource, sizeof (id), &id);
OSType typeId = types[index];
AudioDeviceSetProperty (deviceID, 0, 0, input, kAudioDevicePropertyDataSource, sizeof (typeId), &typeId);
} }
juce_free (types); juce_free (types);
@@ -1188,5 +1190,6 @@ AudioIODeviceType* juce_createDefaultAudioIODeviceType()
return new CoreAudioIODeviceType(); return new CoreAudioIODeviceType();
} }
#undef log
END_JUCE_NAMESPACE END_JUCE_NAMESPACE

+ 8
- 4
build/macosx/platform_specific_code/juce_mac_CoreMidi.cpp View File

@@ -43,9 +43,10 @@ BEGIN_JUCE_NAMESPACE
#include "../../../src/juce_core/threads/juce_ScopedLock.h" #include "../../../src/juce_core/threads/juce_ScopedLock.h"
//============================================================================== //==============================================================================
#undef log
#define log(a) Logger::writeToLog(a) #define log(a) Logger::writeToLog(a)
static bool logAnyErrors (const OSStatus err, const int lineNum)
static bool logAnyErrorsMidi (const OSStatus err, const int lineNum)
{ {
if (err == noErr) if (err == noErr)
return true; return true;
@@ -55,7 +56,8 @@ static bool logAnyErrors (const OSStatus err, const int lineNum)
return false; return false;
} }
#define OK(a) logAnyErrors(a, __LINE__)
#undef OK
#define OK(a) logAnyErrorsMidi(a, __LINE__)
//============================================================================== //==============================================================================
@@ -141,10 +143,10 @@ static const String getConnectedEndpointName (MIDIEndpointRef endpoint)
for (int i = 0; i < numConnections; ++i, ++pid) for (int i = 0; i < numConnections; ++i, ++pid)
{ {
MIDIUniqueID id = EndianS32_BtoN (*pid);
MIDIUniqueID uid = EndianS32_BtoN (*pid);
MIDIObjectRef connObject; MIDIObjectRef connObject;
MIDIObjectType connObjectType; MIDIObjectType connObjectType;
OSStatus err = MIDIObjectFindByUniqueID (id, &connObject, &connObjectType);
OSStatus err = MIDIObjectFindByUniqueID (uid, &connObject, &connObjectType);
if (err == noErr) if (err == noErr)
{ {
@@ -585,4 +587,6 @@ void MidiInput::stop()
mpe->active = false; mpe->active = false;
} }
#undef log
END_JUCE_NAMESPACE END_JUCE_NAMESPACE

+ 2
- 2
build/macosx/platform_specific_code/juce_mac_Files.cpp View File

@@ -43,7 +43,6 @@
BEGIN_JUCE_NAMESPACE BEGIN_JUCE_NAMESPACE
#include "../../../src/juce_core/io/files/juce_FileInputStream.h" #include "../../../src/juce_core/io/files/juce_FileInputStream.h"
#include "../../../src/juce_core/io/files/juce_FileOutputStream.h" #include "../../../src/juce_core/io/files/juce_FileOutputStream.h"
#include "../../../src/juce_core/io/network/juce_URL.h" #include "../../../src/juce_core/io/network/juce_URL.h"
@@ -634,7 +633,8 @@ struct FindFileStruct
// returns 0 on failure // returns 0 on failure
void* juce_findFileStart (const String& directory, const String& wildCard, String& firstResultFile, void* juce_findFileStart (const String& directory, const String& wildCard, String& firstResultFile,
bool* isDir, bool* isHidden, int64* fileSize, Time* modTime, Time* creationTime, bool* isReadOnly) throw()
bool* isDir, bool* isHidden, int64* fileSize, Time* modTime,
Time* creationTime, bool* isReadOnly) throw()
{ {
DIR* const d = opendir (directory.toUTF8()); DIR* const d = opendir (directory.toUTF8());


+ 7
- 11
build/macosx/platform_specific_code/juce_mac_HTTPStream.h View File

@@ -29,9 +29,6 @@
============================================================================== ==============================================================================
*/ */
#ifndef __JUCE_MAC_HTTPSTREAM_JUCEHEADER__
#define __JUCE_MAC_HTTPSTREAM_JUCEHEADER__
// (This file gets included by the mac + linux networking code) // (This file gets included by the mac + linux networking code)
//============================================================================== //==============================================================================
@@ -42,8 +39,7 @@ class JUCE_HTTPSocketStream
public: public:
//============================================================================== //==============================================================================
JUCE_HTTPSocketStream() JUCE_HTTPSocketStream()
: statusCode (0),
readPosition (0),
: readPosition (0),
socketHandle (-1), socketHandle (-1),
levelsOfRedirection (0), levelsOfRedirection (0),
timeoutSeconds (15) timeoutSeconds (15)
@@ -146,9 +142,11 @@ public:
StringArray lines; StringArray lines;
lines.addLines (responseHeader); lines.addLines (responseHeader);
statusCode = responseHeader.fromFirstOccurrenceOf (T(" "), false, false)
.substring (0, 3).getIntValue();
// NB - using charToString() here instead of just T(" "), because that was
// causing a mysterious gcc internal compiler error...
const int statusCode = responseHeader.fromFirstOccurrenceOf (String::charToString (T(' ')), false, false)
.substring (0, 3)
.getIntValue();
//int contentLength = findHeaderItem (lines, T("Content-Length:")).getIntValue(); //int contentLength = findHeaderItem (lines, T("Content-Length:")).getIntValue();
//bool isChunked = findHeaderItem (lines, T("Transfer-Encoding:")).equalsIgnoreCase ("chunked"); //bool isChunked = findHeaderItem (lines, T("Transfer-Encoding:")).equalsIgnoreCase ("chunked");
@@ -195,7 +193,7 @@ public:
} }
//============================================================================== //==============================================================================
int statusCode, readPosition;
int readPosition;
//============================================================================== //==============================================================================
juce_UseDebuggingNewOperator juce_UseDebuggingNewOperator
@@ -402,5 +400,3 @@ int juce_seekInInternetFile (void* handle, int newPosition)
return 0; return 0;
} }
#endif // __JUCE_MAC_HTTPSTREAM_JUCEHEADER__

+ 5
- 5
build/macosx/platform_specific_code/juce_mac_Network.mm View File

@@ -31,11 +31,11 @@


#include "../../../src/juce_core/basics/juce_StandardHeader.h" #include "../../../src/juce_core/basics/juce_StandardHeader.h"


#import <Cocoa/Cocoa.h>
#import <IOKit/IOKitLib.h>
#import <IOKit/network/IOEthernetInterface.h>
#import <IOKit/network/IONetworkInterface.h>
#import <IOKit/network/IOEthernetController.h>
#include <Cocoa/Cocoa.h>
#include <IOKit/IOKitLib.h>
#include <IOKit/network/IOEthernetInterface.h>
#include <IOKit/network/IONetworkInterface.h>
#include <IOKit/network/IOEthernetController.h>


#include <netdb.h> #include <netdb.h>
#include <arpa/inet.h> #include <arpa/inet.h>


+ 2
- 0
build/macosx/platform_specific_code/juce_mac_SystemStats.cpp View File

@@ -159,8 +159,10 @@ void SystemStats::initialiseStats() throw()
highResTimerFrequency = (int64) AudioGetHostClockFrequency(); highResTimerFrequency = (int64) AudioGetHostClockFrequency();
#if ! ONLY_INCLUDE_JUCE_CORE_HEADERS
if (JUCEApplication::getInstance() != 0) if (JUCEApplication::getInstance() != 0)
RegisterAppearanceClient(); RegisterAppearanceClient();
#endif
TXNInitTextension (0, 0, kTXNWantMoviesMask | kTXNWantGraphicsMask); TXNInitTextension (0, 0, kTXNWantMoviesMask | kTXNWantGraphicsMask);


+ 8
- 8
build/macosx/platform_specific_code/juce_mac_WebBrowserComponent.mm View File

@@ -31,10 +31,10 @@


#include "../../../src/juce_core/basics/juce_StandardHeader.h" #include "../../../src/juce_core/basics/juce_StandardHeader.h"


#import <Cocoa/Cocoa.h>
#import <WebKit/HIWebView.h>
#import <WebKit/WebPolicyDelegate.h>
#import <WebKit/CarbonUtils.h>
#include <Cocoa/Cocoa.h>
#include <WebKit/HIWebView.h>
#include <WebKit/WebPolicyDelegate.h>
#include <WebKit/CarbonUtils.h>


BEGIN_JUCE_NAMESPACE BEGIN_JUCE_NAMESPACE
#include "../../../src/juce_appframework/events/juce_Timer.h" #include "../../../src/juce_appframework/events/juce_Timer.h"
@@ -47,7 +47,7 @@ END_JUCE_NAMESPACE
juce::WebBrowserComponent* ownerComponent; juce::WebBrowserComponent* ownerComponent;
} }


- (DownloadClickDetector*) init: (juce::WebBrowserComponent*) ownerComponent;
- (DownloadClickDetector*) initWithOwner: (juce::WebBrowserComponent*) ownerComponent;


- (void) webView: (WebView*) webView decidePolicyForNavigationAction: (NSDictionary*) actionInformation - (void) webView: (WebView*) webView decidePolicyForNavigationAction: (NSDictionary*) actionInformation
request: (NSURLRequest*) request request: (NSURLRequest*) request
@@ -58,7 +58,7 @@ END_JUCE_NAMESPACE
//============================================================================== //==============================================================================
@implementation DownloadClickDetector @implementation DownloadClickDetector


- (DownloadClickDetector*) init: (juce::WebBrowserComponent*) ownerComponent_
- (DownloadClickDetector*) initWithOwner: (juce::WebBrowserComponent*) ownerComponent_
{ {
[super init]; [super init];
ownerComponent = ownerComponent_; ownerComponent = ownerComponent_;
@@ -83,7 +83,7 @@ BEGIN_JUCE_NAMESPACE
class WebBrowserComponentInternal : public Timer class WebBrowserComponentInternal : public Timer
{ {
public: public:
WebBrowserComponentInternal (WebBrowserComponent* const owner_)
WebBrowserComponentInternal (WebBrowserComponent* owner_)
: owner (owner_), : owner (owner_),
view (0), view (0),
webView (0) webView (0)
@@ -124,7 +124,7 @@ public:


webView = HIWebViewGetWebView (view); webView = HIWebViewGetWebView (view);


clickListener = [[DownloadClickDetector alloc] init: owner_];
clickListener = [[DownloadClickDetector alloc] initWithOwner: owner_];
[webView setPolicyDelegate: clickListener]; [webView setPolicyDelegate: clickListener];
} }




+ 14
- 14
build/macosx/platform_specific_code/juce_mac_Windowing.cpp View File

@@ -2547,16 +2547,16 @@ const unsigned int kSpecialNoCursor = 'nocr';
void* juce_createStandardMouseCursor (MouseCursor::StandardCursorType type) throw() void* juce_createStandardMouseCursor (MouseCursor::StandardCursorType type) throw()
{ {
ThemeCursor id = kThemeArrowCursor;
ThemeCursor cursorId = kThemeArrowCursor;
switch (type) switch (type)
{ {
case MouseCursor::NormalCursor: case MouseCursor::NormalCursor:
id = kThemeArrowCursor;
cursorId = kThemeArrowCursor;
break; break;
case MouseCursor::NoCursor: case MouseCursor::NoCursor:
id = kSpecialNoCursor;
cursorId = kSpecialNoCursor;
break; break;
case MouseCursor::DraggingHandCursor: case MouseCursor::DraggingHandCursor:
@@ -2573,19 +2573,19 @@ void* juce_createStandardMouseCursor (MouseCursor::StandardCursorType type) thro
break; break;
case MouseCursor::CopyingCursor: case MouseCursor::CopyingCursor:
id = kThemeCopyArrowCursor;
cursorId = kThemeCopyArrowCursor;
break; break;
case MouseCursor::WaitCursor: case MouseCursor::WaitCursor:
id = kThemeWatchCursor;
cursorId = kThemeWatchCursor;
break; break;
case MouseCursor::IBeamCursor: case MouseCursor::IBeamCursor:
id = kThemeIBeamCursor;
cursorId = kThemeIBeamCursor;
break; break;
case MouseCursor::PointingHandCursor: case MouseCursor::PointingHandCursor:
id = kThemePointingHandCursor;
cursorId = kThemePointingHandCursor;
break; break;
case MouseCursor::LeftRightResizeCursor: case MouseCursor::LeftRightResizeCursor:
@@ -2655,13 +2655,13 @@ void* juce_createStandardMouseCursor (MouseCursor::StandardCursorType type) thro
} }
case MouseCursor::CrosshairCursor: case MouseCursor::CrosshairCursor:
id = kThemeCrossCursor;
cursorId = kThemeCrossCursor;
break; break;
} }
CursorWrapper* cw = new CursorWrapper(); CursorWrapper* cw = new CursorWrapper();
cw->cursor = 0; cw->cursor = 0;
cw->themeCursor = id;
cw->themeCursor = cursorId;
return (void*) cw; return (void*) cw;
} }
@@ -2767,14 +2767,14 @@ public:
if (currentModel != 0) if (currentModel != 0)
{ {
int id = 1000;
int menuId = 1000;
const StringArray menuNames (currentModel->getMenuBarNames()); const StringArray menuNames (currentModel->getMenuBarNames());
for (int i = 0; i < menuNames.size(); ++i) for (int i = 0; i < menuNames.size(); ++i)
{ {
const PopupMenu menu (currentModel->getMenuForIndex (i, menuNames [i])); const PopupMenu menu (currentModel->getMenuForIndex (i, menuNames [i]));
MenuRef m = createMenu (menu, menuNames [i], id, i);
MenuRef m = createMenu (menu, menuNames [i], menuId, i);
InsertMenu (m, 0); InsertMenu (m, 0);
CFRelease (m); CFRelease (m);
@@ -2795,19 +2795,19 @@ public:
} }
} }
void invoke (const int id, ApplicationCommandManager* const commandManager, const int topLevelIndex) const
void invoke (const int commandId, ApplicationCommandManager* const commandManager, const int topLevelIndex) const
{ {
if (currentModel != 0) if (currentModel != 0)
{ {
if (commandManager != 0) if (commandManager != 0)
{ {
ApplicationCommandTarget::InvocationInfo info (id);
ApplicationCommandTarget::InvocationInfo info (commandId);
info.invocationMethod = ApplicationCommandTarget::InvocationInfo::fromMenu; info.invocationMethod = ApplicationCommandTarget::InvocationInfo::fromMenu;
commandManager->invoke (info, true); commandManager->invoke (info, true);
} }
currentModel->menuItemSelected (id, topLevelIndex);
currentModel->menuItemSelected (commandId, topLevelIndex);
} }
} }


+ 3
- 0
build/win32/platform_specific_code/juce_win32_ASIO.cpp View File

@@ -30,6 +30,7 @@
*/ */
#include "win32_headers.h" #include "win32_headers.h"
#undef WINDOWS
#if JUCE_ASIO #if JUCE_ASIO
@@ -1959,4 +1960,6 @@ AudioIODeviceType* juce_createASIOAudioIODeviceType()
END_JUCE_NAMESPACE END_JUCE_NAMESPACE
#undef log
#endif #endif

+ 3
- 0
build/win32/platform_specific_code/juce_win32_DirectSound.cpp View File

@@ -219,7 +219,9 @@ static const String getDSErrorMessage (HRESULT hr)
#ifdef DS_DEBUGGING #ifdef DS_DEBUGGING
#define CATCH JUCE_CATCH_EXCEPTION #define CATCH JUCE_CATCH_EXCEPTION
#undef log
#define log(a) Logger::writeToLog(a); #define log(a) Logger::writeToLog(a);
#undef logError
#define logError(a) logDSError(a, __LINE__); #define logError(a) logDSError(a, __LINE__);
static void logDSError (HRESULT hr, int lineNum) static void logDSError (HRESULT hr, int lineNum)
@@ -1783,5 +1785,6 @@ const String DSoundAudioIODevice::openDevice (const BitArray& inputChannels,
return error; return error;
} }
#undef log
END_JUCE_NAMESPACE END_JUCE_NAMESPACE

+ 6
- 0
build/win32/platform_specific_code/juce_win32_Misc.cpp View File

@@ -41,6 +41,7 @@ BEGIN_JUCE_NAMESPACE
//============================================================================== //==============================================================================
#if ! ONLY_INCLUDE_JUCE_CORE_HEADERS
bool AlertWindow::showNativeDialogBox (const String& title, bool AlertWindow::showNativeDialogBox (const String& title,
const String& bodyText, const String& bodyText,
bool isOkCancel) bool isOkCancel)
@@ -50,6 +51,8 @@ bool AlertWindow::showNativeDialogBox (const String& title,
: MB_OK) == IDOK; : MB_OK) == IDOK;
} }
#endif
//============================================================================== //==============================================================================
void PlatformUtilities::beep() void PlatformUtilities::beep()
{ {
@@ -62,6 +65,8 @@ void PlatformUtilities::beep()
#pragma warning (disable : 4127) // "Conditional expression is constant" warning #pragma warning (disable : 4127) // "Conditional expression is constant" warning
#endif #endif
#if ! ONLY_INCLUDE_JUCE_CORE_HEADERS
void SystemClipboard::copyTextToClipboard (const String& text) throw() void SystemClipboard::copyTextToClipboard (const String& text) throw()
{ {
if (OpenClipboard (0) != 0) if (OpenClipboard (0) != 0)
@@ -116,5 +121,6 @@ const String SystemClipboard::getTextFromClipboard() throw()
return result; return result;
} }
#endif
END_JUCE_NAMESPACE END_JUCE_NAMESPACE

+ 1
- 1
build/win32/platform_specific_code/juce_win32_Network.cpp View File

@@ -358,7 +358,7 @@ int SystemStats::getMACAddresses (int64* addresses, int maxNum, const bool littl
} }
//============================================================================== //==============================================================================
typedef ULONG (WINAPI *MAPISendMailType) (LHANDLE, ULONG, lpMapiMessage, FLAGS, ULONG);
typedef ULONG (WINAPI *MAPISendMailType) (LHANDLE, ULONG, lpMapiMessage, ::FLAGS, ULONG);
bool PlatformUtilities::launchEmailWithAttachments (const String& targetEmailAddress, bool PlatformUtilities::launchEmailWithAttachments (const String& targetEmailAddress,
const String& emailSubject, const String& emailSubject,


+ 5
- 1
build/win32/platform_specific_code/juce_win32_Threads.cpp View File

@@ -49,7 +49,9 @@ BEGIN_JUCE_NAMESPACE
#include "../../../src/juce_core/threads/juce_Process.h" #include "../../../src/juce_core/threads/juce_Process.h"
#include "../../../src/juce_core/threads/juce_InterProcessLock.h" #include "../../../src/juce_core/threads/juce_InterProcessLock.h"
extern HWND juce_messageWindowHandle;
#if ! ONLY_INCLUDE_JUCE_CORE_HEADERS
extern HWND juce_messageWindowHandle;
#endif
#ifdef _MSC_VER #ifdef _MSC_VER
#pragma warning (pop) #pragma warning (pop)
@@ -120,8 +122,10 @@ void JUCE_API juce_threadEntryPoint (void*);
static unsigned int __stdcall threadEntryProc (void* userData) throw() static unsigned int __stdcall threadEntryProc (void* userData) throw()
{ {
#if ! ONLY_INCLUDE_JUCE_CORE_HEADERS
AttachThreadInput (GetWindowThreadProcessId (juce_messageWindowHandle, 0), AttachThreadInput (GetWindowThreadProcessId (juce_messageWindowHandle, 0),
GetCurrentThreadId(), TRUE); GetCurrentThreadId(), TRUE);
#endif
juce_threadEntryPoint (userData); juce_threadEntryPoint (userData);


+ 1
- 3
build/win32/platform_specific_code/juce_win32_Windowing.cpp View File

@@ -95,8 +95,6 @@ extern void juce_repeatLastProcessPriority() throw(); // in juce_win32_Threads.c
extern void juce_CheckCurrentlyFocusedTopLevelWindow() throw(); // in juce_TopLevelWindow.cpp extern void juce_CheckCurrentlyFocusedTopLevelWindow() throw(); // in juce_TopLevelWindow.cpp
extern bool juce_IsRunningInWine() throw(); extern bool juce_IsRunningInWine() throw();
const int juce_windowIsSemiTransparentFlag = (1 << 31); // also in component.cpp
#ifndef ULW_ALPHA #ifndef ULW_ALPHA
#define ULW_ALPHA 0x00000002 #define ULW_ALPHA 0x00000002
#endif #endif
@@ -1053,7 +1051,7 @@ private:
if ((styleFlags & windowIgnoresMouseClicks) != 0) if ((styleFlags & windowIgnoresMouseClicks) != 0)
exstyle |= WS_EX_TRANSPARENT; exstyle |= WS_EX_TRANSPARENT;
if ((styleFlags & juce_windowIsSemiTransparentFlag) != 0
if ((styleFlags & windowIsSemiTransparent) != 0
&& Desktop::canUseSemiTransparentWindows()) && Desktop::canUseSemiTransparentWindows())
exstyle |= WS_EX_LAYERED; exstyle |= WS_EX_LAYERED;


+ 3
- 1
build/win32/platform_specific_code/win32_headers.h View File

@@ -34,7 +34,9 @@
#include "../../../juce_Config.h" #include "../../../juce_Config.h"
#define STRICT
#ifndef STRICT
#define STRICT 1
#endif
#define WIN32_LEAN_AND_MEAN #define WIN32_LEAN_AND_MEAN
// don't want to get told about microsoft's mistakes.. // don't want to get told about microsoft's mistakes..


+ 4
- 4
extras/the jucer/src/model/components/jucer_ComboBoxHandler.h View File

@@ -121,7 +121,7 @@ public:
StringArray lines; StringArray lines;
lines.addLines (c->getComponentProperty (T("items"), false)); lines.addLines (c->getComponentProperty (T("items"), false));
int id = 1;
int itemId = 1;
for (int i = 0; i < lines.size(); ++i) for (int i = 0; i < lines.size(); ++i)
{ {
@@ -129,7 +129,7 @@ public:
s << memberVariableName << "->addSeparator();\n"; s << memberVariableName << "->addSeparator();\n";
else else
s << memberVariableName << "->addItem (" s << memberVariableName << "->addItem ("
<< quotedString (lines[i]) << ", " << id++ << ");\n";
<< quotedString (lines[i]) << ", " << itemId++ << ");\n";
} }
if (needsCallback (component)) if (needsCallback (component))
@@ -169,14 +169,14 @@ public:
lines.addLines (c->getComponentProperty (T("items"), false)); lines.addLines (c->getComponentProperty (T("items"), false));
c->clear(); c->clear();
int id = 1;
int itemId = 1;
for (int i = 0; i < lines.size(); ++i) for (int i = 0; i < lines.size(); ++i)
{ {
if (lines[i].trim().isEmpty()) if (lines[i].trim().isEmpty())
c->addSeparator(); c->addSeparator();
else else
c->addItem (lines[i], id++);
c->addItem (lines[i], itemId++);
} }
} }


+ 5
- 5
extras/the jucer/src/model/components/jucer_ComponentTypeHandler.cpp View File

@@ -224,15 +224,15 @@ int64 ComponentTypeHandler::getComponentId (Component* comp)
if (comp == 0) if (comp == 0)
return 0; return 0;
int64 id = comp->getComponentProperty (T("jucerCompId"), false).getHexValue64();
int64 compId = comp->getComponentProperty (T("jucerCompId"), false).getHexValue64();
if (id == 0)
if (compId == 0)
{ {
id = Random::getSystemRandom().nextInt64();
setComponentId (comp, id);
compId = Random::getSystemRandom().nextInt64();
setComponentId (comp, compId);
} }
return id;
return compId;
} }
void ComponentTypeHandler::setComponentId (Component* comp, const int64 newID) void ComponentTypeHandler::setComponentId (Component* comp, const int64 newID)


+ 11
- 11
extras/the jucer/src/model/jucer_ComponentLayout.cpp View File

@@ -463,18 +463,18 @@ Component* ComponentLayout::getComponentRelativePosTarget (Component* comp, int
if (pe != 0) if (pe != 0)
{ {
int64 id;
int64 compId;
if (whichDimension == 0) if (whichDimension == 0)
id = pe->getPosition().relativeToX;
compId = pe->getPosition().relativeToX;
else if (whichDimension == 1) else if (whichDimension == 1)
id = pe->getPosition().relativeToY;
compId = pe->getPosition().relativeToY;
else if (whichDimension == 2) else if (whichDimension == 2)
id = pe->getPosition().relativeToW;
compId = pe->getPosition().relativeToW;
else else
id = pe->getPosition().relativeToH;
compId = pe->getPosition().relativeToH;
return findComponentWithId (id);
return findComponentWithcompId (id);
} }
else else
{ {
@@ -495,7 +495,7 @@ void ComponentLayout::setComponentRelativeTarget (Component* comp, int whichDime
if (compToBeRelativeTo != getComponentRelativePosTarget (comp, whichDimension) if (compToBeRelativeTo != getComponentRelativePosTarget (comp, whichDimension)
&& (compToBeRelativeTo == 0 || ! dependsOnComponentForRelativePos (compToBeRelativeTo, comp))) && (compToBeRelativeTo == 0 || ! dependsOnComponentForRelativePos (compToBeRelativeTo, comp)))
{ {
const int64 id = ComponentTypeHandler::getComponentId (compToBeRelativeTo);
const int64 compId = ComponentTypeHandler::getComponentId (compToBeRelativeTo);
Rectangle oldBounds (comp->getBounds()); Rectangle oldBounds (comp->getBounds());
RelativePositionedRectangle pos; RelativePositionedRectangle pos;
@@ -511,13 +511,13 @@ void ComponentLayout::setComponentRelativeTarget (Component* comp, int whichDime
} }
if (whichDimension == 0) if (whichDimension == 0)
pos.relativeToX = id;
pos.relativeToX = compId;
else if (whichDimension == 1) else if (whichDimension == 1)
pos.relativeToY = id;
pos.relativeToY = compId;
else if (whichDimension == 2) else if (whichDimension == 2)
pos.relativeToW = id;
pos.relativeToW = compId;
else if (whichDimension == 3) else if (whichDimension == 3)
pos.relativeToH = id;
pos.relativeToH = compId;
if (pe != 0) if (pe != 0)
{ {


+ 32
- 0
src/juce_appframework/audio/audio_file_formats/flac/all.h View File

@@ -42,6 +42,38 @@
#include "stream_decoder.h" #include "stream_decoder.h"
#include "stream_encoder.h" #include "stream_encoder.h"
#ifdef _MSC_VER
/* OPT: an MSVC built-in would be better */
static _inline FLAC__uint32 local_swap32_(FLAC__uint32 x)
{
x = ((x<<8)&0xFF00FF00) | ((x>>8)&0x00FF00FF);
return (x>>16) | (x<<16);
}
#endif
#if defined(_MSC_VER) && defined(_X86_)
/* OPT: an MSVC built-in would be better */
static void local_swap32_block_(FLAC__uint32 *start, FLAC__uint32 len)
{
__asm {
mov edx, start
mov ecx, len
test ecx, ecx
loop1:
jz done1
mov eax, [edx]
bswap eax
mov [edx], eax
add edx, 4
dec ecx
jmp short loop1
done1:
}
}
#endif
/** \mainpage /** \mainpage
* *
* \section intro Introduction * \section intro Introduction


+ 0
- 26
src/juce_appframework/audio/audio_file_formats/flac/libFLAC/bitreader.c View File

@@ -152,32 +152,6 @@ struct FLAC__BitReader {
FLAC__CPUInfo cpu_info; FLAC__CPUInfo cpu_info;
}; };
#if defined(_MSC_VER) && defined(_X86_)
/* OPT: an MSVC built-in would be better */
static _inline FLAC__uint32 local_swap32_(FLAC__uint32 x)
{
x = ((x<<8)&0xFF00FF00) | ((x>>8)&0x00FF00FF);
return (x>>16) | (x<<16);
}
static void local_swap32_block_(FLAC__uint32 *start, FLAC__uint32 len)
{
__asm {
mov edx, start
mov ecx, len
test ecx, ecx
loop1:
jz done1
mov eax, [edx]
bswap eax
mov [edx], eax
add edx, 4
dec ecx
jmp short loop1
done1:
}
}
#endif
static FLaC__INLINE void crc16_update_word_(FLAC__BitReader *br, brword word) static FLaC__INLINE void crc16_update_word_(FLAC__BitReader *br, brword word)
{ {
register unsigned crc = br->read_crc16; register unsigned crc = br->read_crc16;


+ 0
- 9
src/juce_appframework/audio/audio_file_formats/flac/libFLAC/bitwriter.c View File

@@ -110,15 +110,6 @@ struct FLAC__BitWriter {
unsigned bits; /* # of used bits in accum */ unsigned bits; /* # of used bits in accum */
}; };
#ifdef _MSC_VER
/* OPT: an MSVC built-in would be better */
static _inline FLAC__uint32 local_swap32_(FLAC__uint32 x)
{
x = ((x<<8)&0xFF00FF00) | ((x>>8)&0x00FF00FF);
return (x>>16) | (x<<16);
}
#endif
/* * WATCHOUT: The current implementation only grows the buffer. */ /* * WATCHOUT: The current implementation only grows the buffer. */
static FLAC__bool bitwriter_grow_(FLAC__BitWriter *bw, unsigned bits_to_add) static FLAC__bool bitwriter_grow_(FLAC__BitWriter *bw, unsigned bits_to_add)
{ {


+ 29
- 29
src/juce_appframework/audio/audio_file_formats/flac/libFLAC/stream_decoder.c View File

@@ -105,7 +105,7 @@ static FLAC__byte ID3V2_TAG_[3] = { 'I', 'D', '3' };
* *
***********************************************************************/ ***********************************************************************/
static void set_defaults_(FLAC__StreamDecoder *decoder);
static void set_defaults_dec(FLAC__StreamDecoder *decoder);
static FILE *get_binary_stdin_(void); static FILE *get_binary_stdin_(void);
static FLAC__bool allocate_output_(FLAC__StreamDecoder *decoder, unsigned size, unsigned channels); static FLAC__bool allocate_output_(FLAC__StreamDecoder *decoder, unsigned size, unsigned channels);
static FLAC__bool has_id_filtered_(FLAC__StreamDecoder *decoder, FLAC__byte *id); static FLAC__bool has_id_filtered_(FLAC__StreamDecoder *decoder, FLAC__byte *id);
@@ -138,9 +138,9 @@ static FLAC__bool seek_to_absolute_sample_(FLAC__StreamDecoder *decoder, FLAC__u
#if FLAC__HAS_OGG #if FLAC__HAS_OGG
static FLAC__bool seek_to_absolute_sample_ogg_(FLAC__StreamDecoder *decoder, FLAC__uint64 stream_length, FLAC__uint64 target_sample); static FLAC__bool seek_to_absolute_sample_ogg_(FLAC__StreamDecoder *decoder, FLAC__uint64 stream_length, FLAC__uint64 target_sample);
#endif #endif
static FLAC__StreamDecoderReadStatus file_read_callback_(const FLAC__StreamDecoder *decoder, FLAC__byte buffer[], size_t *bytes, void *client_data);
static FLAC__StreamDecoderSeekStatus file_seek_callback_(const FLAC__StreamDecoder *decoder, FLAC__uint64 absolute_byte_offset, void *client_data);
static FLAC__StreamDecoderTellStatus file_tell_callback_(const FLAC__StreamDecoder *decoder, FLAC__uint64 *absolute_byte_offset, void *client_data);
static FLAC__StreamDecoderReadStatus file_read_callback_dec (const FLAC__StreamDecoder *decoder, FLAC__byte buffer[], size_t *bytes, void *client_data);
static FLAC__StreamDecoderSeekStatus file_seek_callback_dec (const FLAC__StreamDecoder *decoder, FLAC__uint64 absolute_byte_offset, void *client_data);
static FLAC__StreamDecoderTellStatus file_tell_callback_dec (const FLAC__StreamDecoder *decoder, FLAC__uint64 *absolute_byte_offset, void *client_data);
static FLAC__StreamDecoderLengthStatus file_length_callback_(const FLAC__StreamDecoder *decoder, FLAC__uint64 *stream_length, void *client_data); static FLAC__StreamDecoderLengthStatus file_length_callback_(const FLAC__StreamDecoder *decoder, FLAC__uint64 *stream_length, void *client_data);
static FLAC__bool file_eof_callback_(const FLAC__StreamDecoder *decoder, void *client_data); static FLAC__bool file_eof_callback_(const FLAC__StreamDecoder *decoder, void *client_data);
@@ -333,7 +333,7 @@ FLAC_API FLAC__StreamDecoder *FLAC__stream_decoder_new(void)
decoder->private_->file = 0; decoder->private_->file = 0;
set_defaults_(decoder);
set_defaults_dec(decoder);
decoder->protected_->state = FLAC__STREAM_DECODER_UNINITIALIZED; decoder->protected_->state = FLAC__STREAM_DECODER_UNINITIALIZED;
@@ -370,7 +370,7 @@ FLAC_API void FLAC__stream_decoder_delete(FLAC__StreamDecoder *decoder)
* *
***********************************************************************/ ***********************************************************************/
static FLAC__StreamDecoderInitStatus init_stream_internal_(
static FLAC__StreamDecoderInitStatus init_stream_internal_dec(
FLAC__StreamDecoder *decoder, FLAC__StreamDecoder *decoder,
FLAC__StreamDecoderReadCallback read_callback, FLAC__StreamDecoderReadCallback read_callback,
FLAC__StreamDecoderSeekCallback seek_callback, FLAC__StreamDecoderSeekCallback seek_callback,
@@ -495,7 +495,7 @@ FLAC_API FLAC__StreamDecoderInitStatus FLAC__stream_decoder_init_stream(
void *client_data void *client_data
) )
{ {
return init_stream_internal_(
return init_stream_internal_dec(
decoder, decoder,
read_callback, read_callback,
seek_callback, seek_callback,
@@ -523,7 +523,7 @@ FLAC_API FLAC__StreamDecoderInitStatus FLAC__stream_decoder_init_ogg_stream(
void *client_data void *client_data
) )
{ {
return init_stream_internal_(
return init_stream_internal_dec(
decoder, decoder,
read_callback, read_callback,
seek_callback, seek_callback,
@@ -552,10 +552,10 @@ static FLAC__StreamDecoderInitStatus init_FILE_internal_(
FLAC__ASSERT(0 != file); FLAC__ASSERT(0 != file);
if(decoder->protected_->state != FLAC__STREAM_DECODER_UNINITIALIZED) if(decoder->protected_->state != FLAC__STREAM_DECODER_UNINITIALIZED)
return decoder->protected_->state = FLAC__STREAM_DECODER_INIT_STATUS_ALREADY_INITIALIZED;
return (FLAC__StreamDecoderInitStatus) (decoder->protected_->state = (FLAC__StreamDecoderState) FLAC__STREAM_DECODER_INIT_STATUS_ALREADY_INITIALIZED);
if(0 == write_callback || 0 == error_callback) if(0 == write_callback || 0 == error_callback)
return decoder->protected_->state = FLAC__STREAM_DECODER_INIT_STATUS_INVALID_CALLBACKS;
return (FLAC__StreamDecoderInitStatus) (decoder->protected_->state = (FLAC__StreamDecoderState) FLAC__STREAM_DECODER_INIT_STATUS_INVALID_CALLBACKS);
/* /*
* To make sure that our file does not go unclosed after an error, we * To make sure that our file does not go unclosed after an error, we
@@ -567,11 +567,11 @@ static FLAC__StreamDecoderInitStatus init_FILE_internal_(
decoder->private_->file = file; decoder->private_->file = file;
return init_stream_internal_(
return init_stream_internal_dec(
decoder, decoder,
file_read_callback_,
decoder->private_->file == stdin? 0: file_seek_callback_,
decoder->private_->file == stdin? 0: file_tell_callback_,
file_read_callback_dec,
decoder->private_->file == stdin? 0: file_seek_callback_dec,
decoder->private_->file == stdin? 0: file_tell_callback_dec,
decoder->private_->file == stdin? 0: file_length_callback_, decoder->private_->file == stdin? 0: file_length_callback_,
file_eof_callback_, file_eof_callback_,
write_callback, write_callback,
@@ -626,10 +626,10 @@ static FLAC__StreamDecoderInitStatus init_file_internal_(
* in FLAC__stream_decoder_init_FILE() before the FILE* is assigned. * in FLAC__stream_decoder_init_FILE() before the FILE* is assigned.
*/ */
if(decoder->protected_->state != FLAC__STREAM_DECODER_UNINITIALIZED) if(decoder->protected_->state != FLAC__STREAM_DECODER_UNINITIALIZED)
return decoder->protected_->state = FLAC__STREAM_DECODER_INIT_STATUS_ALREADY_INITIALIZED;
return (FLAC__StreamDecoderInitStatus) (decoder->protected_->state = (FLAC__StreamDecoderState) FLAC__STREAM_DECODER_INIT_STATUS_ALREADY_INITIALIZED);
if(0 == write_callback || 0 == error_callback) if(0 == write_callback || 0 == error_callback)
return decoder->protected_->state = FLAC__STREAM_DECODER_INIT_STATUS_INVALID_CALLBACKS;
return (FLAC__StreamDecoderInitStatus) (decoder->protected_->state = (FLAC__StreamDecoderState) FLAC__STREAM_DECODER_INIT_STATUS_INVALID_CALLBACKS);
file = filename? fopen(filename, "rb") : stdin; file = filename? fopen(filename, "rb") : stdin;
@@ -722,7 +722,7 @@ FLAC_API FLAC__bool FLAC__stream_decoder_finish(FLAC__StreamDecoder *decoder)
} }
decoder->private_->is_seeking = false; decoder->private_->is_seeking = false;
set_defaults_(decoder);
set_defaults_dec(decoder);
decoder->protected_->state = FLAC__STREAM_DECODER_UNINITIALIZED; decoder->protected_->state = FLAC__STREAM_DECODER_UNINITIALIZED;
@@ -1254,7 +1254,7 @@ unsigned FLAC__stream_decoder_get_input_bytes_unconsumed(const FLAC__StreamDecod
* *
***********************************************************************/ ***********************************************************************/
void set_defaults_(FLAC__StreamDecoder *decoder)
void set_defaults_dec(FLAC__StreamDecoder *decoder)
{ {
#if FLAC__HAS_OGG #if FLAC__HAS_OGG
decoder->private_->is_ogg = false; decoder->private_->is_ogg = false;
@@ -1369,12 +1369,12 @@ FLAC__bool has_id_filtered_(FLAC__StreamDecoder *decoder, FLAC__byte *id)
FLAC__bool find_metadata_(FLAC__StreamDecoder *decoder) FLAC__bool find_metadata_(FLAC__StreamDecoder *decoder)
{ {
FLAC__uint32 x; FLAC__uint32 x;
unsigned i, id;
unsigned i, id_;
FLAC__bool first = true; FLAC__bool first = true;
FLAC__ASSERT(FLAC__bitreader_is_consumed_byte_aligned(decoder->private_->input)); FLAC__ASSERT(FLAC__bitreader_is_consumed_byte_aligned(decoder->private_->input));
for(i = id = 0; i < 4; ) {
for(i = id_ = 0; i < 4; ) {
if(decoder->private_->cached) { if(decoder->private_->cached) {
x = (FLAC__uint32)decoder->private_->lookahead; x = (FLAC__uint32)decoder->private_->lookahead;
decoder->private_->cached = false; decoder->private_->cached = false;
@@ -1386,19 +1386,19 @@ FLAC__bool find_metadata_(FLAC__StreamDecoder *decoder)
if(x == FLAC__STREAM_SYNC_STRING[i]) { if(x == FLAC__STREAM_SYNC_STRING[i]) {
first = true; first = true;
i++; i++;
id = 0;
id_ = 0;
continue; continue;
} }
if(x == ID3V2_TAG_[id]) {
id++;
if(x == ID3V2_TAG_[id_]) {
id_++;
i = 0; i = 0;
if(id == 3) {
if(id_ == 3) {
if(!skip_id3v2_tag_(decoder)) if(!skip_id3v2_tag_(decoder))
return false; /* skip_id3v2_tag_ sets the state for us */ return false; /* skip_id3v2_tag_ sets the state for us */
} }
continue; continue;
} }
id = 0;
id_ = 0;
if(x == 0xff) { /* MAGIC NUMBER for the first 8 frame sync bits */ if(x == 0xff) { /* MAGIC NUMBER for the first 8 frame sync bits */
decoder->private_->header_warmup[0] = (FLAC__byte)x; decoder->private_->header_warmup[0] = (FLAC__byte)x;
if(!FLAC__bitreader_read_raw_uint32(decoder->private_->input, &x, 8)) if(!FLAC__bitreader_read_raw_uint32(decoder->private_->input, &x, 8))
@@ -1859,7 +1859,7 @@ FLAC__bool read_metadata_picture_(FLAC__StreamDecoder *decoder, FLAC__StreamMeta
/* read type */ /* read type */
if(!FLAC__bitreader_read_raw_uint32(decoder->private_->input, &x, FLAC__STREAM_METADATA_PICTURE_TYPE_LEN)) if(!FLAC__bitreader_read_raw_uint32(decoder->private_->input, &x, FLAC__STREAM_METADATA_PICTURE_TYPE_LEN))
return false; /* read_callback_ sets the state for us */ return false; /* read_callback_ sets the state for us */
obj->type = x;
obj->type = (FLAC__StreamMetadata_Picture_Type) x;
/* read MIME type */ /* read MIME type */
if(!FLAC__bitreader_read_raw_uint32(decoder->private_->input, &x, FLAC__STREAM_METADATA_PICTURE_MIME_TYPE_LENGTH_LEN)) if(!FLAC__bitreader_read_raw_uint32(decoder->private_->input, &x, FLAC__STREAM_METADATA_PICTURE_MIME_TYPE_LENGTH_LEN))
@@ -3323,7 +3323,7 @@ FLAC__bool seek_to_absolute_sample_ogg_(FLAC__StreamDecoder *decoder, FLAC__uint
} }
#endif #endif
FLAC__StreamDecoderReadStatus file_read_callback_(const FLAC__StreamDecoder *decoder, FLAC__byte buffer[], size_t *bytes, void *client_data)
FLAC__StreamDecoderReadStatus file_read_callback_dec(const FLAC__StreamDecoder *decoder, FLAC__byte buffer[], size_t *bytes, void *client_data)
{ {
(void)client_data; (void)client_data;
@@ -3340,7 +3340,7 @@ FLAC__StreamDecoderReadStatus file_read_callback_(const FLAC__StreamDecoder *dec
return FLAC__STREAM_DECODER_READ_STATUS_ABORT; /* abort to avoid a deadlock */ return FLAC__STREAM_DECODER_READ_STATUS_ABORT; /* abort to avoid a deadlock */
} }
FLAC__StreamDecoderSeekStatus file_seek_callback_(const FLAC__StreamDecoder *decoder, FLAC__uint64 absolute_byte_offset, void *client_data)
FLAC__StreamDecoderSeekStatus file_seek_callback_dec(const FLAC__StreamDecoder *decoder, FLAC__uint64 absolute_byte_offset, void *client_data)
{ {
(void)client_data; (void)client_data;
@@ -3352,7 +3352,7 @@ FLAC__StreamDecoderSeekStatus file_seek_callback_(const FLAC__StreamDecoder *dec
return FLAC__STREAM_DECODER_SEEK_STATUS_OK; return FLAC__STREAM_DECODER_SEEK_STATUS_OK;
} }
FLAC__StreamDecoderTellStatus file_tell_callback_(const FLAC__StreamDecoder *decoder, FLAC__uint64 *absolute_byte_offset, void *client_data)
FLAC__StreamDecoderTellStatus file_tell_callback_dec(const FLAC__StreamDecoder *decoder, FLAC__uint64 *absolute_byte_offset, void *client_data)
{ {
off_t pos; off_t pos;
(void)client_data; (void)client_data;


+ 25
- 25
src/juce_appframework/audio/audio_file_formats/flac/libFLAC/stream_encoder.c View File

@@ -150,7 +150,7 @@ static struct CompressionLevels {
* *
***********************************************************************/ ***********************************************************************/
static void set_defaults_(FLAC__StreamEncoder *encoder);
static void set_defaults_enc(FLAC__StreamEncoder *encoder);
static void free_(FLAC__StreamEncoder *encoder); static void free_(FLAC__StreamEncoder *encoder);
static FLAC__bool resize_buffers_(FLAC__StreamEncoder *encoder, unsigned new_blocksize); static FLAC__bool resize_buffers_(FLAC__StreamEncoder *encoder, unsigned new_blocksize);
static FLAC__bool write_bitbuffer_(FLAC__StreamEncoder *encoder, unsigned samples, FLAC__bool is_last_block); static FLAC__bool write_bitbuffer_(FLAC__StreamEncoder *encoder, unsigned samples, FLAC__bool is_last_block);
@@ -319,9 +319,9 @@ static FLAC__StreamDecoderWriteStatus verify_write_callback_(const FLAC__StreamD
static void verify_metadata_callback_(const FLAC__StreamDecoder *decoder, const FLAC__StreamMetadata *metadata, void *client_data); static void verify_metadata_callback_(const FLAC__StreamDecoder *decoder, const FLAC__StreamMetadata *metadata, void *client_data);
static void verify_error_callback_(const FLAC__StreamDecoder *decoder, FLAC__StreamDecoderErrorStatus status, void *client_data); static void verify_error_callback_(const FLAC__StreamDecoder *decoder, FLAC__StreamDecoderErrorStatus status, void *client_data);
static FLAC__StreamEncoderReadStatus file_read_callback_(const FLAC__StreamEncoder *encoder, FLAC__byte buffer[], size_t *bytes, void *client_data);
static FLAC__StreamEncoderSeekStatus file_seek_callback_(const FLAC__StreamEncoder *encoder, FLAC__uint64 absolute_byte_offset, void *client_data);
static FLAC__StreamEncoderTellStatus file_tell_callback_(const FLAC__StreamEncoder *encoder, FLAC__uint64 *absolute_byte_offset, void *client_data);
static FLAC__StreamEncoderReadStatus file_read_callback_enc(const FLAC__StreamEncoder *encoder, FLAC__byte buffer[], size_t *bytes, void *client_data);
static FLAC__StreamEncoderSeekStatus file_seek_callback_enc(const FLAC__StreamEncoder *encoder, FLAC__uint64 absolute_byte_offset, void *client_data);
static FLAC__StreamEncoderTellStatus file_tell_callback_enc(const FLAC__StreamEncoder *encoder, FLAC__uint64 *absolute_byte_offset, void *client_data);
static FLAC__StreamEncoderWriteStatus file_write_callback_(const FLAC__StreamEncoder *encoder, const FLAC__byte buffer[], size_t bytes, unsigned samples, unsigned current_frame, void *client_data); static FLAC__StreamEncoderWriteStatus file_write_callback_(const FLAC__StreamEncoder *encoder, const FLAC__byte buffer[], size_t bytes, unsigned samples, unsigned current_frame, void *client_data);
static FILE *get_binary_stdout_(void); static FILE *get_binary_stdout_(void);
@@ -557,7 +557,7 @@ FLAC_API FLAC__StreamEncoder *FLAC__stream_encoder_new(void)
encoder->private_->file = 0; encoder->private_->file = 0;
set_defaults_(encoder);
set_defaults_enc(encoder);
encoder->private_->is_being_deleted = false; encoder->private_->is_being_deleted = false;
@@ -633,7 +633,7 @@ FLAC_API void FLAC__stream_encoder_delete(FLAC__StreamEncoder *encoder)
* *
***********************************************************************/ ***********************************************************************/
static FLAC__StreamEncoderInitStatus init_stream_internal_(
static FLAC__StreamEncoderInitStatus init_stream_internal_enc(
FLAC__StreamEncoder *encoder, FLAC__StreamEncoder *encoder,
FLAC__StreamEncoderReadCallback read_callback, FLAC__StreamEncoderReadCallback read_callback,
FLAC__StreamEncoderWriteCallback write_callback, FLAC__StreamEncoderWriteCallback write_callback,
@@ -1150,7 +1150,7 @@ FLAC_API FLAC__StreamEncoderInitStatus FLAC__stream_encoder_init_stream(
void *client_data void *client_data
) )
{ {
return init_stream_internal_(
return init_stream_internal_enc(
encoder, encoder,
/*read_callback=*/0, /*read_callback=*/0,
write_callback, write_callback,
@@ -1172,7 +1172,7 @@ FLAC_API FLAC__StreamEncoderInitStatus FLAC__stream_encoder_init_ogg_stream(
void *client_data void *client_data
) )
{ {
return init_stream_internal_(
return init_stream_internal_enc(
encoder, encoder,
read_callback, read_callback,
write_callback, write_callback,
@@ -1184,7 +1184,7 @@ FLAC_API FLAC__StreamEncoderInitStatus FLAC__stream_encoder_init_ogg_stream(
); );
} }
static FLAC__StreamEncoderInitStatus init_FILE_internal_(
static FLAC__StreamEncoderInitStatus init_FILE_internal_enc(
FLAC__StreamEncoder *encoder, FLAC__StreamEncoder *encoder,
FILE *file, FILE *file,
FLAC__StreamEncoderProgressCallback progress_callback, FLAC__StreamEncoderProgressCallback progress_callback,
@@ -1221,12 +1221,12 @@ static FLAC__StreamEncoderInitStatus init_FILE_internal_(
encoder->private_->samples_written = 0; encoder->private_->samples_written = 0;
encoder->private_->frames_written = 0; encoder->private_->frames_written = 0;
init_status = init_stream_internal_(
init_status = init_stream_internal_enc(
encoder, encoder,
encoder->private_->file == stdout? 0 : is_ogg? file_read_callback_ : 0,
encoder->private_->file == stdout? 0 : is_ogg? file_read_callback_enc : 0,
file_write_callback_, file_write_callback_,
encoder->private_->file == stdout? 0 : file_seek_callback_,
encoder->private_->file == stdout? 0 : file_tell_callback_,
encoder->private_->file == stdout? 0 : file_seek_callback_enc,
encoder->private_->file == stdout? 0 : file_tell_callback_enc,
/*metadata_callback=*/0, /*metadata_callback=*/0,
client_data, client_data,
is_ogg is_ogg
@@ -1253,7 +1253,7 @@ FLAC_API FLAC__StreamEncoderInitStatus FLAC__stream_encoder_init_FILE(
void *client_data void *client_data
) )
{ {
return init_FILE_internal_(encoder, file, progress_callback, client_data, /*is_ogg=*/false);
return init_FILE_internal_enc(encoder, file, progress_callback, client_data, /*is_ogg=*/false);
} }
FLAC_API FLAC__StreamEncoderInitStatus FLAC__stream_encoder_init_ogg_FILE( FLAC_API FLAC__StreamEncoderInitStatus FLAC__stream_encoder_init_ogg_FILE(
@@ -1263,10 +1263,10 @@ FLAC_API FLAC__StreamEncoderInitStatus FLAC__stream_encoder_init_ogg_FILE(
void *client_data void *client_data
) )
{ {
return init_FILE_internal_(encoder, file, progress_callback, client_data, /*is_ogg=*/true);
return init_FILE_internal_enc(encoder, file, progress_callback, client_data, /*is_ogg=*/true);
} }
static FLAC__StreamEncoderInitStatus init_file_internal_(
static FLAC__StreamEncoderInitStatus init_file_internal_enc(
FLAC__StreamEncoder *encoder, FLAC__StreamEncoder *encoder,
const char *filename, const char *filename,
FLAC__StreamEncoderProgressCallback progress_callback, FLAC__StreamEncoderProgressCallback progress_callback,
@@ -1293,7 +1293,7 @@ static FLAC__StreamEncoderInitStatus init_file_internal_(
return FLAC__STREAM_ENCODER_INIT_STATUS_ENCODER_ERROR; return FLAC__STREAM_ENCODER_INIT_STATUS_ENCODER_ERROR;
} }
return init_FILE_internal_(encoder, file, progress_callback, client_data, is_ogg);
return init_FILE_internal_enc(encoder, file, progress_callback, client_data, is_ogg);
} }
FLAC_API FLAC__StreamEncoderInitStatus FLAC__stream_encoder_init_file( FLAC_API FLAC__StreamEncoderInitStatus FLAC__stream_encoder_init_file(
@@ -1303,7 +1303,7 @@ FLAC_API FLAC__StreamEncoderInitStatus FLAC__stream_encoder_init_file(
void *client_data void *client_data
) )
{ {
return init_file_internal_(encoder, filename, progress_callback, client_data, /*is_ogg=*/false);
return init_file_internal_enc(encoder, filename, progress_callback, client_data, /*is_ogg=*/false);
} }
FLAC_API FLAC__StreamEncoderInitStatus FLAC__stream_encoder_init_ogg_file( FLAC_API FLAC__StreamEncoderInitStatus FLAC__stream_encoder_init_ogg_file(
@@ -1313,7 +1313,7 @@ FLAC_API FLAC__StreamEncoderInitStatus FLAC__stream_encoder_init_ogg_file(
void *client_data void *client_data
) )
{ {
return init_file_internal_(encoder, filename, progress_callback, client_data, /*is_ogg=*/true);
return init_file_internal_enc(encoder, filename, progress_callback, client_data, /*is_ogg=*/true);
} }
FLAC_API FLAC__bool FLAC__stream_encoder_finish(FLAC__StreamEncoder *encoder) FLAC_API FLAC__bool FLAC__stream_encoder_finish(FLAC__StreamEncoder *encoder)
@@ -1376,7 +1376,7 @@ FLAC_API FLAC__bool FLAC__stream_encoder_finish(FLAC__StreamEncoder *encoder)
#endif #endif
free_(encoder); free_(encoder);
set_defaults_(encoder);
set_defaults_enc(encoder);
if(!error) if(!error)
encoder->protected_->state = FLAC__STREAM_ENCODER_UNINITIALIZED; encoder->protected_->state = FLAC__STREAM_ENCODER_UNINITIALIZED;
@@ -2119,7 +2119,7 @@ FLAC_API FLAC__bool FLAC__stream_encoder_process_interleaved(FLAC__StreamEncoder
* *
***********************************************************************/ ***********************************************************************/
void set_defaults_(FLAC__StreamEncoder *encoder)
void set_defaults_enc(FLAC__StreamEncoder *encoder)
{ {
FLAC__ASSERT(0 != encoder); FLAC__ASSERT(0 != encoder);
@@ -2450,7 +2450,7 @@ FLAC__StreamEncoderWriteStatus write_frame_(FLAC__StreamEncoder *encoder, const
* Watch for the STREAMINFO block and first SEEKTABLE block to go by and store their offsets. * Watch for the STREAMINFO block and first SEEKTABLE block to go by and store their offsets.
*/ */
if(samples == 0) { if(samples == 0) {
FLAC__MetadataType type = (buffer[0] & 0x7f);
FLAC__MetadataType type = (FLAC__MetadataType) (buffer[0] & 0x7f);
if(type == FLAC__METADATA_TYPE_STREAMINFO) if(type == FLAC__METADATA_TYPE_STREAMINFO)
encoder->protected_->streaminfo_offset = output_position; encoder->protected_->streaminfo_offset = output_position;
else if(type == FLAC__METADATA_TYPE_SEEKTABLE && encoder->protected_->seektable_offset == 0) else if(type == FLAC__METADATA_TYPE_SEEKTABLE && encoder->protected_->seektable_offset == 0)
@@ -4256,7 +4256,7 @@ void verify_error_callback_(const FLAC__StreamDecoder *decoder, FLAC__StreamDeco
encoder->protected_->state = FLAC__STREAM_ENCODER_VERIFY_DECODER_ERROR; encoder->protected_->state = FLAC__STREAM_ENCODER_VERIFY_DECODER_ERROR;
} }
FLAC__StreamEncoderReadStatus file_read_callback_(const FLAC__StreamEncoder *encoder, FLAC__byte buffer[], size_t *bytes, void *client_data)
FLAC__StreamEncoderReadStatus file_read_callback_enc(const FLAC__StreamEncoder *encoder, FLAC__byte buffer[], size_t *bytes, void *client_data)
{ {
(void)client_data; (void)client_data;
@@ -4270,7 +4270,7 @@ FLAC__StreamEncoderReadStatus file_read_callback_(const FLAC__StreamEncoder *enc
return FLAC__STREAM_ENCODER_READ_STATUS_CONTINUE; return FLAC__STREAM_ENCODER_READ_STATUS_CONTINUE;
} }
FLAC__StreamEncoderSeekStatus file_seek_callback_(const FLAC__StreamEncoder *encoder, FLAC__uint64 absolute_byte_offset, void *client_data)
FLAC__StreamEncoderSeekStatus file_seek_callback_enc(const FLAC__StreamEncoder *encoder, FLAC__uint64 absolute_byte_offset, void *client_data)
{ {
(void)client_data; (void)client_data;
@@ -4280,7 +4280,7 @@ FLAC__StreamEncoderSeekStatus file_seek_callback_(const FLAC__StreamEncoder *enc
return FLAC__STREAM_ENCODER_SEEK_STATUS_OK; return FLAC__STREAM_ENCODER_SEEK_STATUS_OK;
} }
FLAC__StreamEncoderTellStatus file_tell_callback_(const FLAC__StreamEncoder *encoder, FLAC__uint64 *absolute_byte_offset, void *client_data)
FLAC__StreamEncoderTellStatus file_tell_callback_enc(const FLAC__StreamEncoder *encoder, FLAC__uint64 *absolute_byte_offset, void *client_data)
{ {
off_t offset; off_t offset;


+ 4
- 4
src/juce_appframework/audio/audio_file_formats/oggvorbis/bitwise.c View File

@@ -41,7 +41,7 @@ static const unsigned int mask8B[]=
void oggpack_writeinit(oggpack_buffer *b){ void oggpack_writeinit(oggpack_buffer *b){
memset(b,0,sizeof(*b)); memset(b,0,sizeof(*b));
b->ptr=b->buffer=_ogg_malloc(BUFFER_INCREMENT);
b->ptr=b->buffer=(unsigned char*) _ogg_malloc(BUFFER_INCREMENT);
b->buffer[0]='\0'; b->buffer[0]='\0';
b->storage=BUFFER_INCREMENT; b->storage=BUFFER_INCREMENT;
} }
@@ -71,7 +71,7 @@ void oggpackB_writetrunc(oggpack_buffer *b,long bits){
/* Takes only up to 32 bits. */ /* Takes only up to 32 bits. */
void oggpack_write(oggpack_buffer *b,unsigned long value,int bits){ void oggpack_write(oggpack_buffer *b,unsigned long value,int bits){
if(b->endbyte+4>=b->storage){ if(b->endbyte+4>=b->storage){
b->buffer=_ogg_realloc(b->buffer,b->storage+BUFFER_INCREMENT);
b->buffer=(unsigned char*) _ogg_realloc(b->buffer,b->storage+BUFFER_INCREMENT);
b->storage+=BUFFER_INCREMENT; b->storage+=BUFFER_INCREMENT;
b->ptr=b->buffer+b->endbyte; b->ptr=b->buffer+b->endbyte;
} }
@@ -105,7 +105,7 @@ void oggpack_write(oggpack_buffer *b,unsigned long value,int bits){
/* Takes only up to 32 bits. */ /* Takes only up to 32 bits. */
void oggpackB_write(oggpack_buffer *b,unsigned long value,int bits){ void oggpackB_write(oggpack_buffer *b,unsigned long value,int bits){
if(b->endbyte+4>=b->storage){ if(b->endbyte+4>=b->storage){
b->buffer=_ogg_realloc(b->buffer,b->storage+BUFFER_INCREMENT);
b->buffer=(unsigned char*) _ogg_realloc(b->buffer,b->storage+BUFFER_INCREMENT);
b->storage+=BUFFER_INCREMENT; b->storage+=BUFFER_INCREMENT;
b->ptr=b->buffer+b->endbyte; b->ptr=b->buffer+b->endbyte;
} }
@@ -169,7 +169,7 @@ static void oggpack_writecopy_helper(oggpack_buffer *b,
/* aligned block copy */ /* aligned block copy */
if(b->endbyte+bytes+1>=b->storage){ if(b->endbyte+bytes+1>=b->storage){
b->storage=b->endbyte+bytes+BUFFER_INCREMENT; b->storage=b->endbyte+bytes+BUFFER_INCREMENT;
b->buffer=_ogg_realloc(b->buffer,b->storage);
b->buffer=(unsigned char*) _ogg_realloc(b->buffer,b->storage);
b->ptr=b->buffer+b->endbyte; b->ptr=b->buffer+b->endbyte;
} }


+ 9
- 9
src/juce_appframework/audio/audio_file_formats/oggvorbis/framing.c View File

@@ -192,11 +192,11 @@ int ogg_stream_init(ogg_stream_state *os,int serialno){
if(os){ if(os){
memset(os,0,sizeof(*os)); memset(os,0,sizeof(*os));
os->body_storage=16*1024; os->body_storage=16*1024;
os->body_data=_ogg_malloc(os->body_storage*sizeof(*os->body_data));
os->body_data=(unsigned char*) _ogg_malloc(os->body_storage*sizeof(*os->body_data));
os->lacing_storage=1024; os->lacing_storage=1024;
os->lacing_vals=_ogg_malloc(os->lacing_storage*sizeof(*os->lacing_vals));
os->granule_vals=_ogg_malloc(os->lacing_storage*sizeof(*os->granule_vals));
os->lacing_vals=(int*) _ogg_malloc(os->lacing_storage*sizeof(*os->lacing_vals));
os->granule_vals=(ogg_int64_t*) _ogg_malloc(os->lacing_storage*sizeof(*os->granule_vals));
os->serialno=serialno; os->serialno=serialno;
@@ -231,15 +231,15 @@ int ogg_stream_destroy(ogg_stream_state *os){
static void _os_body_expand(ogg_stream_state *os,int needed){ static void _os_body_expand(ogg_stream_state *os,int needed){
if(os->body_storage<=os->body_fill+needed){ if(os->body_storage<=os->body_fill+needed){
os->body_storage+=(needed+1024); os->body_storage+=(needed+1024);
os->body_data=_ogg_realloc(os->body_data,os->body_storage*sizeof(*os->body_data));
os->body_data=(unsigned char*) _ogg_realloc(os->body_data,os->body_storage*sizeof(*os->body_data));
} }
} }
static void _os_lacing_expand(ogg_stream_state *os,int needed){ static void _os_lacing_expand(ogg_stream_state *os,int needed){
if(os->lacing_storage<=os->lacing_fill+needed){ if(os->lacing_storage<=os->lacing_fill+needed){
os->lacing_storage+=(needed+32); os->lacing_storage+=(needed+32);
os->lacing_vals=_ogg_realloc(os->lacing_vals,os->lacing_storage*sizeof(*os->lacing_vals));
os->granule_vals=_ogg_realloc(os->granule_vals,os->lacing_storage*sizeof(*os->granule_vals));
os->lacing_vals=(int*)_ogg_realloc(os->lacing_vals,os->lacing_storage*sizeof(*os->lacing_vals));
os->granule_vals=(ogg_int64_t*)_ogg_realloc(os->granule_vals,os->lacing_storage*sizeof(*os->granule_vals));
} }
} }
@@ -520,9 +520,9 @@ char *ogg_sync_buffer(ogg_sync_state *oy, long size){
long newsize=size+oy->fill+4096; /* an extra page to be nice */ long newsize=size+oy->fill+4096; /* an extra page to be nice */
if(oy->data) if(oy->data)
oy->data=_ogg_realloc(oy->data,newsize);
oy->data=(unsigned char*) _ogg_realloc(oy->data,newsize);
else else
oy->data=_ogg_malloc(newsize);
oy->data=(unsigned char*) _ogg_malloc(newsize);
oy->storage=newsize; oy->storage=newsize;
} }
@@ -623,7 +623,7 @@ long ogg_sync_pageseek(ogg_sync_state *oy,ogg_page *og){
oy->bodybytes=0; oy->bodybytes=0;
/* search for possible capture */ /* search for possible capture */
next=memchr(page+1,'O',bytes-1);
next=(unsigned char*)memchr(page+1,'O',bytes-1);
if(!next) if(!next)
next=oy->data+oy->fill; next=oy->data+oy->fill;


+ 1
- 1
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/analysis.c View File

@@ -34,7 +34,7 @@ int analysis_noisy=1;
/* decides between modes, dispatches to the appropriate mapping. */ /* decides between modes, dispatches to the appropriate mapping. */
int vorbis_analysis(vorbis_block *vb, ogg_packet *op){ int vorbis_analysis(vorbis_block *vb, ogg_packet *op){
int ret,i; int ret,i;
vorbis_block_internal *vbi=vb->internal;
vorbis_block_internal *vbi=(vorbis_block_internal *)vb->internal;
vb->glue_bits=0; vb->glue_bits=0;
vb->time_bits=0; vb->time_bits=0;


+ 1
- 1
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/backends.h View File

@@ -92,7 +92,7 @@ typedef struct{
vorbis_info_residue *); vorbis_info_residue *);
void (*free_info) (vorbis_info_residue *); void (*free_info) (vorbis_info_residue *);
void (*free_look) (vorbis_look_residue *); void (*free_look) (vorbis_look_residue *);
long **(*class) (struct vorbis_block *,vorbis_look_residue *,
long **(*classx) (struct vorbis_block *,vorbis_look_residue *,
float **,int *,int); float **,int *,int);
int (*forward) (oggpack_buffer *,struct vorbis_block *, int (*forward) (oggpack_buffer *,struct vorbis_block *,
vorbis_look_residue *, vorbis_look_residue *,


+ 7
- 7
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/bitrate.c View File

@@ -31,7 +31,7 @@
/* compute bitrate tracking setup */ /* compute bitrate tracking setup */
void vorbis_bitrate_init(vorbis_info *vi,bitrate_manager_state *bm){ void vorbis_bitrate_init(vorbis_info *vi,bitrate_manager_state *bm){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info *)vi->codec_setup;
bitrate_manager_info *bi=&ci->bi; bitrate_manager_info *bi=&ci->bi;
memset(bm,0,sizeof(*bm)); memset(bm,0,sizeof(*bm));
@@ -67,7 +67,7 @@ void vorbis_bitrate_clear(bitrate_manager_state *bm){
int vorbis_bitrate_managed(vorbis_block *vb){ int vorbis_bitrate_managed(vorbis_block *vb){
vorbis_dsp_state *vd=vb->vd; vorbis_dsp_state *vd=vb->vd;
private_state *b=vd->backend_state;
private_state *b=(private_state*)vd->backend_state;
bitrate_manager_state *bm=&b->bms; bitrate_manager_state *bm=&b->bms;
if(bm && bm->managed)return(1); if(bm && bm->managed)return(1);
@@ -76,12 +76,12 @@ int vorbis_bitrate_managed(vorbis_block *vb){
/* finish taking in the block we just processed */ /* finish taking in the block we just processed */
int vorbis_bitrate_addblock(vorbis_block *vb){ int vorbis_bitrate_addblock(vorbis_block *vb){
vorbis_block_internal *vbi=vb->internal;
vorbis_block_internal *vbi=(vorbis_block_internal*)vb->internal;
vorbis_dsp_state *vd=vb->vd; vorbis_dsp_state *vd=vb->vd;
private_state *b=vd->backend_state;
private_state *b=(private_state*)vd->backend_state;
bitrate_manager_state *bm=&b->bms; bitrate_manager_state *bm=&b->bms;
vorbis_info *vi=vd->vi; vorbis_info *vi=vd->vi;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
bitrate_manager_info *bi=&ci->bi; bitrate_manager_info *bi=&ci->bi;
int choice=rint(bm->avgfloat); int choice=rint(bm->avgfloat);
@@ -232,14 +232,14 @@ int vorbis_bitrate_addblock(vorbis_block *vb){
} }
int vorbis_bitrate_flushpacket(vorbis_dsp_state *vd,ogg_packet *op){ int vorbis_bitrate_flushpacket(vorbis_dsp_state *vd,ogg_packet *op){
private_state *b=vd->backend_state;
private_state *b=(private_state*)vd->backend_state;
bitrate_manager_state *bm=&b->bms; bitrate_manager_state *bm=&b->bms;
vorbis_block *vb=bm->vb; vorbis_block *vb=bm->vb;
int choice=PACKETBLOBS/2; int choice=PACKETBLOBS/2;
if(!vb)return 0; if(!vb)return 0;
if(op){ if(op){
vorbis_block_internal *vbi=vb->internal;
vorbis_block_internal *vbi=(vorbis_block_internal*)vb->internal;
if(vorbis_bitrate_managed(vb)) if(vorbis_bitrate_managed(vb))
choice=bm->choice; choice=bm->choice;


+ 42
- 52
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/block.c View File

@@ -34,16 +34,6 @@
#include "registry.h" #include "registry.h"
#include "misc.h" #include "misc.h"
static int ilog2(unsigned int v){
int ret=0;
if(v)--v;
while(v){
ret++;
v>>=1;
}
return(ret);
}
/* pcm accumulator examples (not exhaustive): /* pcm accumulator examples (not exhaustive):
<-------------- lW ----------------> <-------------- lW ---------------->
@@ -95,8 +85,8 @@ int vorbis_block_init(vorbis_dsp_state *v, vorbis_block *vb){
vb->localalloc=0; vb->localalloc=0;
vb->localstore=NULL; vb->localstore=NULL;
if(v->analysisp){ if(v->analysisp){
vorbis_block_internal *vbi=
vb->internal=_ogg_calloc(1,sizeof(vorbis_block_internal));
vorbis_block_internal *vbi=(vorbis_block_internal*)
(vb->internal=(vorbis_block_internal*)_ogg_calloc(1,sizeof(vorbis_block_internal)));
vbi->ampmax=-9999; vbi->ampmax=-9999;
for(i=0;i<PACKETBLOBS;i++){ for(i=0;i<PACKETBLOBS;i++){
@@ -104,7 +94,7 @@ int vorbis_block_init(vorbis_dsp_state *v, vorbis_block *vb){
vbi->packetblob[i]=&vb->opb; vbi->packetblob[i]=&vb->opb;
}else{ }else{
vbi->packetblob[i]= vbi->packetblob[i]=
_ogg_calloc(1,sizeof(oggpack_buffer));
(oggpack_buffer*) _ogg_calloc(1,sizeof(oggpack_buffer));
} }
oggpack_writeinit(vbi->packetblob[i]); oggpack_writeinit(vbi->packetblob[i]);
} }
@@ -118,7 +108,7 @@ void *_vorbis_block_alloc(vorbis_block *vb,long bytes){
if(bytes+vb->localtop>vb->localalloc){ if(bytes+vb->localtop>vb->localalloc){
/* can't just _ogg_realloc... there are outstanding pointers */ /* can't just _ogg_realloc... there are outstanding pointers */
if(vb->localstore){ if(vb->localstore){
struct alloc_chain *link=_ogg_malloc(sizeof(*link));
struct alloc_chain *link=(struct alloc_chain*)_ogg_malloc(sizeof(*link));
vb->totaluse+=vb->localtop; vb->totaluse+=vb->localtop;
link->next=vb->reap; link->next=vb->reap;
link->ptr=vb->localstore; link->ptr=vb->localstore;
@@ -161,7 +151,7 @@ void _vorbis_block_ripcord(vorbis_block *vb){
int vorbis_block_clear(vorbis_block *vb){ int vorbis_block_clear(vorbis_block *vb){
int i; int i;
vorbis_block_internal *vbi=vb->internal;
vorbis_block_internal *vbi=(vorbis_block_internal*)vb->internal;
_vorbis_block_ripcord(vb); _vorbis_block_ripcord(vb);
if(vb->localstore)_ogg_free(vb->localstore); if(vb->localstore)_ogg_free(vb->localstore);
@@ -183,7 +173,7 @@ int vorbis_block_clear(vorbis_block *vb){
static int _vds_shared_init(vorbis_dsp_state *v,vorbis_info *vi,int encp){ static int _vds_shared_init(vorbis_dsp_state *v,vorbis_info *vi,int encp){
int i; int i;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
private_state *b=NULL; private_state *b=NULL;
int hs; int hs;
@@ -191,20 +181,20 @@ static int _vds_shared_init(vorbis_dsp_state *v,vorbis_info *vi,int encp){
hs=ci->halfrate_flag; hs=ci->halfrate_flag;
memset(v,0,sizeof(*v)); memset(v,0,sizeof(*v));
b=v->backend_state=_ogg_calloc(1,sizeof(*b));
b=(private_state*) (v->backend_state=(private_state*)_ogg_calloc(1,sizeof(*b)));
v->vi=vi; v->vi=vi;
b->modebits=ilog2(ci->modes); b->modebits=ilog2(ci->modes);
b->transform[0]=_ogg_calloc(VI_TRANSFORMB,sizeof(*b->transform[0]));
b->transform[1]=_ogg_calloc(VI_TRANSFORMB,sizeof(*b->transform[1]));
b->transform[0]=(vorbis_look_transform**)_ogg_calloc(VI_TRANSFORMB,sizeof(*b->transform[0]));
b->transform[1]=(vorbis_look_transform**)_ogg_calloc(VI_TRANSFORMB,sizeof(*b->transform[1]));
/* MDCT is tranform 0 */ /* MDCT is tranform 0 */
b->transform[0][0]=_ogg_calloc(1,sizeof(mdct_lookup)); b->transform[0][0]=_ogg_calloc(1,sizeof(mdct_lookup));
b->transform[1][0]=_ogg_calloc(1,sizeof(mdct_lookup)); b->transform[1][0]=_ogg_calloc(1,sizeof(mdct_lookup));
mdct_init(b->transform[0][0],ci->blocksizes[0]>>hs);
mdct_init(b->transform[1][0],ci->blocksizes[1]>>hs);
mdct_init((mdct_lookup*)b->transform[0][0],ci->blocksizes[0]>>hs);
mdct_init((mdct_lookup*)b->transform[1][0],ci->blocksizes[1]>>hs);
/* Vorbis I uses only window type 0 */ /* Vorbis I uses only window type 0 */
b->window[0]=ilog2(ci->blocksizes[0])-6; b->window[0]=ilog2(ci->blocksizes[0])-6;
@@ -218,12 +208,12 @@ static int _vds_shared_init(vorbis_dsp_state *v,vorbis_info *vi,int encp){
/* finish the codebooks */ /* finish the codebooks */
if(!ci->fullbooks){ if(!ci->fullbooks){
ci->fullbooks=_ogg_calloc(ci->books,sizeof(*ci->fullbooks));
ci->fullbooks=(codebook*) _ogg_calloc(ci->books,sizeof(*ci->fullbooks));
for(i=0;i<ci->books;i++) for(i=0;i<ci->books;i++)
vorbis_book_init_encode(ci->fullbooks+i,ci->book_param[i]); vorbis_book_init_encode(ci->fullbooks+i,ci->book_param[i]);
} }
b->psy=_ogg_calloc(ci->psys,sizeof(*b->psy));
b->psy=(vorbis_look_psy*)_ogg_calloc(ci->psys,sizeof(*b->psy));
for(i=0;i<ci->psys;i++){ for(i=0;i<ci->psys;i++){
_vp_psy_init(b->psy+i, _vp_psy_init(b->psy+i,
ci->psy_param[i], ci->psy_param[i],
@@ -236,7 +226,7 @@ static int _vds_shared_init(vorbis_dsp_state *v,vorbis_info *vi,int encp){
}else{ }else{
/* finish the codebooks */ /* finish the codebooks */
if(!ci->fullbooks){ if(!ci->fullbooks){
ci->fullbooks=_ogg_calloc(ci->books,sizeof(*ci->fullbooks));
ci->fullbooks=(codebook*) _ogg_calloc(ci->books,sizeof(*ci->fullbooks));
for(i=0;i<ci->books;i++){ for(i=0;i<ci->books;i++){
vorbis_book_init_decode(ci->fullbooks+i,ci->book_param[i]); vorbis_book_init_decode(ci->fullbooks+i,ci->book_param[i]);
/* decode codebooks are now standalone after init */ /* decode codebooks are now standalone after init */
@@ -249,12 +239,12 @@ static int _vds_shared_init(vorbis_dsp_state *v,vorbis_info *vi,int encp){
/* initialize the storage vectors. blocksize[1] is small for encode, /* initialize the storage vectors. blocksize[1] is small for encode,
but the correct size for decode */ but the correct size for decode */
v->pcm_storage=ci->blocksizes[1]; v->pcm_storage=ci->blocksizes[1];
v->pcm=_ogg_malloc(vi->channels*sizeof(*v->pcm));
v->pcmret=_ogg_malloc(vi->channels*sizeof(*v->pcmret));
v->pcm=(float**)_ogg_malloc(vi->channels*sizeof(*v->pcm));
v->pcmret=(float**)_ogg_malloc(vi->channels*sizeof(*v->pcmret));
{ {
int i; int i;
for(i=0;i<vi->channels;i++) for(i=0;i<vi->channels;i++)
v->pcm[i]=_ogg_calloc(v->pcm_storage,sizeof(*v->pcm[i]));
v->pcm[i]=(float*)_ogg_calloc(v->pcm_storage,sizeof(*v->pcm[i]));
} }
/* all 1 (large block) or 0 (small block) */ /* all 1 (large block) or 0 (small block) */
@@ -268,8 +258,8 @@ static int _vds_shared_init(vorbis_dsp_state *v,vorbis_info *vi,int encp){
v->pcm_current=v->centerW; v->pcm_current=v->centerW;
/* initialize all the backend lookups */ /* initialize all the backend lookups */
b->flr=_ogg_calloc(ci->floors,sizeof(*b->flr));
b->residue=_ogg_calloc(ci->residues,sizeof(*b->residue));
b->flr=(vorbis_look_floor**)_ogg_calloc(ci->floors,sizeof(*b->flr));
b->residue=(vorbis_look_residue**)_ogg_calloc(ci->residues,sizeof(*b->residue));
for(i=0;i<ci->floors;i++) for(i=0;i<ci->floors;i++)
b->flr[i]=_floor_P[ci->floor_type[i]]-> b->flr[i]=_floor_P[ci->floor_type[i]]->
@@ -287,11 +277,11 @@ int vorbis_analysis_init(vorbis_dsp_state *v,vorbis_info *vi){
private_state *b=NULL; private_state *b=NULL;
if(_vds_shared_init(v,vi,1))return 1; if(_vds_shared_init(v,vi,1))return 1;
b=v->backend_state;
b=(private_state*)v->backend_state;
b->psy_g_look=_vp_global_look(vi); b->psy_g_look=_vp_global_look(vi);
/* Initialize the envelope state storage */ /* Initialize the envelope state storage */
b->ve=_ogg_calloc(1,sizeof(*b->ve));
b->ve=(envelope_lookup*)_ogg_calloc(1,sizeof(*b->ve));
_ve_envelope_init(b->ve,vi); _ve_envelope_init(b->ve,vi);
vorbis_bitrate_init(vi,&b->bms); vorbis_bitrate_init(vi,&b->bms);
@@ -307,8 +297,8 @@ void vorbis_dsp_clear(vorbis_dsp_state *v){
int i; int i;
if(v){ if(v){
vorbis_info *vi=v->vi; vorbis_info *vi=v->vi;
codec_setup_info *ci=(vi?vi->codec_setup:NULL);
private_state *b=v->backend_state;
codec_setup_info *ci=(codec_setup_info*)(vi?vi->codec_setup:NULL);
private_state *b=(private_state*)v->backend_state;
if(b){ if(b){
@@ -318,12 +308,12 @@ void vorbis_dsp_clear(vorbis_dsp_state *v){
} }
if(b->transform[0]){ if(b->transform[0]){
mdct_clear(b->transform[0][0]);
mdct_clear((mdct_lookup*) b->transform[0][0]);
_ogg_free(b->transform[0][0]); _ogg_free(b->transform[0][0]);
_ogg_free(b->transform[0]); _ogg_free(b->transform[0]);
} }
if(b->transform[1]){ if(b->transform[1]){
mdct_clear(b->transform[1][0]);
mdct_clear((mdct_lookup*) b->transform[1][0]);
_ogg_free(b->transform[1][0]); _ogg_free(b->transform[1][0]);
_ogg_free(b->transform[1]); _ogg_free(b->transform[1]);
} }
@@ -376,7 +366,7 @@ void vorbis_dsp_clear(vorbis_dsp_state *v){
float **vorbis_analysis_buffer(vorbis_dsp_state *v, int vals){ float **vorbis_analysis_buffer(vorbis_dsp_state *v, int vals){
int i; int i;
vorbis_info *vi=v->vi; vorbis_info *vi=v->vi;
private_state *b=v->backend_state;
private_state *b=(private_state*)v->backend_state;
/* free header, header1, header2 */ /* free header, header1, header2 */
if(b->header)_ogg_free(b->header);b->header=NULL; if(b->header)_ogg_free(b->header);b->header=NULL;
@@ -390,7 +380,7 @@ float **vorbis_analysis_buffer(vorbis_dsp_state *v, int vals){
v->pcm_storage=v->pcm_current+vals*2; v->pcm_storage=v->pcm_current+vals*2;
for(i=0;i<vi->channels;i++){ for(i=0;i<vi->channels;i++){
v->pcm[i]=_ogg_realloc(v->pcm[i],v->pcm_storage*sizeof(*v->pcm[i]));
v->pcm[i]=(float*)_ogg_realloc(v->pcm[i],v->pcm_storage*sizeof(*v->pcm[i]));
} }
} }
@@ -403,8 +393,8 @@ float **vorbis_analysis_buffer(vorbis_dsp_state *v, int vals){
static void _preextrapolate_helper(vorbis_dsp_state *v){ static void _preextrapolate_helper(vorbis_dsp_state *v){
int i; int i;
int order=32; int order=32;
float *lpc=alloca(order*sizeof(*lpc));
float *work=alloca(v->pcm_current*sizeof(*work));
float *lpc=(float*)alloca(order*sizeof(*lpc));
float *work=(float*)alloca(v->pcm_current*sizeof(*work));
long j; long j;
v->preextrapolate=1; v->preextrapolate=1;
@@ -435,12 +425,12 @@ static void _preextrapolate_helper(vorbis_dsp_state *v){
int vorbis_analysis_wrote(vorbis_dsp_state *v, int vals){ int vorbis_analysis_wrote(vorbis_dsp_state *v, int vals){
vorbis_info *vi=v->vi; vorbis_info *vi=v->vi;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
if(vals<=0){ if(vals<=0){
int order=32; int order=32;
int i; int i;
float *lpc=alloca(order*sizeof(*lpc));
float *lpc=(float*) alloca(order*sizeof(*lpc));
/* if it wasn't done earlier (very short sample) */ /* if it wasn't done earlier (very short sample) */
if(!v->preextrapolate) if(!v->preextrapolate)
@@ -500,8 +490,8 @@ int vorbis_analysis_wrote(vorbis_dsp_state *v, int vals){
int vorbis_analysis_blockout(vorbis_dsp_state *v,vorbis_block *vb){ int vorbis_analysis_blockout(vorbis_dsp_state *v,vorbis_block *vb){
int i; int i;
vorbis_info *vi=v->vi; vorbis_info *vi=v->vi;
codec_setup_info *ci=vi->codec_setup;
private_state *b=v->backend_state;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
private_state *b=(private_state*)v->backend_state;
vorbis_look_psy_global *g=b->psy_g_look; vorbis_look_psy_global *g=b->psy_g_look;
long beginW=v->centerW-ci->blocksizes[v->W]/2,centerNext; long beginW=v->centerW-ci->blocksizes[v->W]/2,centerNext;
vorbis_block_internal *vbi=(vorbis_block_internal *)vb->internal; vorbis_block_internal *vbi=(vorbis_block_internal *)vb->internal;
@@ -593,11 +583,11 @@ int vorbis_analysis_blockout(vorbis_dsp_state *v,vorbis_block *vb){
g->ampmax=_vp_ampmax_decay(g->ampmax,v); g->ampmax=_vp_ampmax_decay(g->ampmax,v);
vbi->ampmax=g->ampmax; vbi->ampmax=g->ampmax;
vb->pcm=_vorbis_block_alloc(vb,sizeof(*vb->pcm)*vi->channels);
vbi->pcmdelay=_vorbis_block_alloc(vb,sizeof(*vbi->pcmdelay)*vi->channels);
vb->pcm=(float**)_vorbis_block_alloc(vb,sizeof(*vb->pcm)*vi->channels);
vbi->pcmdelay=(float**)_vorbis_block_alloc(vb,sizeof(*vbi->pcmdelay)*vi->channels);
for(i=0;i<vi->channels;i++){ for(i=0;i<vi->channels;i++){
vbi->pcmdelay[i]= vbi->pcmdelay[i]=
_vorbis_block_alloc(vb,(vb->pcmend+beginW)*sizeof(*vbi->pcmdelay[i]));
(float*) _vorbis_block_alloc(vb,(vb->pcmend+beginW)*sizeof(*vbi->pcmdelay[i]));
memcpy(vbi->pcmdelay[i],v->pcm[i],(vb->pcmend+beginW)*sizeof(*vbi->pcmdelay[i])); memcpy(vbi->pcmdelay[i],v->pcm[i],(vb->pcmend+beginW)*sizeof(*vbi->pcmdelay[i]));
vb->pcm[i]=vbi->pcmdelay[i]+beginW; vb->pcm[i]=vbi->pcmdelay[i]+beginW;
@@ -665,7 +655,7 @@ int vorbis_synthesis_restart(vorbis_dsp_state *v){
if(!v->backend_state)return -1; if(!v->backend_state)return -1;
if(!vi)return -1; if(!vi)return -1;
ci=vi->codec_setup;
ci=(codec_setup_info*) vi->codec_setup;
if(!ci)return -1; if(!ci)return -1;
hs=ci->halfrate_flag; hs=ci->halfrate_flag;
@@ -694,8 +684,8 @@ int vorbis_synthesis_init(vorbis_dsp_state *v,vorbis_info *vi){
int vorbis_synthesis_blockin(vorbis_dsp_state *v,vorbis_block *vb){ int vorbis_synthesis_blockin(vorbis_dsp_state *v,vorbis_block *vb){
vorbis_info *vi=v->vi; vorbis_info *vi=v->vi;
codec_setup_info *ci=vi->codec_setup;
private_state *b=v->backend_state;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
private_state *b=(private_state*)v->backend_state;
int hs=ci->halfrate_flag; int hs=ci->halfrate_flag;
int i,j; int i,j;
@@ -907,7 +897,7 @@ int vorbis_synthesis_read(vorbis_dsp_state *v,int n){
this implicit buffer data not normally decoded. */ this implicit buffer data not normally decoded. */
int vorbis_synthesis_lapout(vorbis_dsp_state *v,float ***pcm){ int vorbis_synthesis_lapout(vorbis_dsp_state *v,float ***pcm){
vorbis_info *vi=v->vi; vorbis_info *vi=v->vi;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info *)vi->codec_setup;
int hs=ci->halfrate_flag; int hs=ci->halfrate_flag;
int n=ci->blocksizes[v->W]>>(hs+1); int n=ci->blocksizes[v->W]>>(hs+1);
@@ -982,9 +972,9 @@ int vorbis_synthesis_lapout(vorbis_dsp_state *v,float ***pcm){
float *vorbis_window(vorbis_dsp_state *v,int W){ float *vorbis_window(vorbis_dsp_state *v,int W){
vorbis_info *vi=v->vi; vorbis_info *vi=v->vi;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*) vi->codec_setup;
int hs=ci->halfrate_flag; int hs=ci->halfrate_flag;
private_state *b=v->backend_state;
private_state *b=(private_state*)v->backend_state;
if(b->window[W]-1<0)return NULL; if(b->window[W]-1<0)return NULL;
return _vorbis_window_get(b->window[W]-hs); return _vorbis_window_get(b->window[W]-hs);


+ 8
- 15
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/codebook.c View File

@@ -57,10 +57,10 @@ int vorbis_staticbook_pack(const static_codebook *c,oggpack_buffer *opb){
oggpack_write(opb,c->lengthlist[0]-1,5); /* 1 to 32 */ oggpack_write(opb,c->lengthlist[0]-1,5); /* 1 to 32 */
for(i=1;i<c->entries;i++){ for(i=1;i<c->entries;i++){
long this=c->lengthlist[i];
long thisx=c->lengthlist[i];
long last=c->lengthlist[i-1]; long last=c->lengthlist[i-1];
if(this>last){
for(j=last;j<this;j++){
if(thisx>last){
for(j=last;j<thisx;j++){
oggpack_write(opb,i-count,_ilog(c->entries-count)); oggpack_write(opb,i-count,_ilog(c->entries-count));
count=i; count=i;
} }
@@ -167,7 +167,7 @@ int vorbis_staticbook_unpack(oggpack_buffer *opb,static_codebook *s){
switch((int)oggpack_read(opb,1)){ switch((int)oggpack_read(opb,1)){
case 0: case 0:
/* unordered */ /* unordered */
s->lengthlist=_ogg_malloc(sizeof(*s->lengthlist)*s->entries);
s->lengthlist=(long*)_ogg_malloc(sizeof(*s->lengthlist)*s->entries);
/* allocated but unused entries? */ /* allocated but unused entries? */
if(oggpack_read(opb,1)){ if(oggpack_read(opb,1)){
@@ -195,7 +195,7 @@ int vorbis_staticbook_unpack(oggpack_buffer *opb,static_codebook *s){
/* ordered */ /* ordered */
{ {
long length=oggpack_read(opb,5)+1; long length=oggpack_read(opb,5)+1;
s->lengthlist=_ogg_malloc(sizeof(*s->lengthlist)*s->entries);
s->lengthlist=(long*)_ogg_malloc(sizeof(*s->lengthlist)*s->entries);
for(i=0;i<s->entries;){ for(i=0;i<s->entries;){
long num=oggpack_read(opb,_ilog(s->entries-i)); long num=oggpack_read(opb,_ilog(s->entries-i));
@@ -237,7 +237,7 @@ int vorbis_staticbook_unpack(oggpack_buffer *opb,static_codebook *s){
} }
/* quantized values */ /* quantized values */
s->quantlist=_ogg_malloc(sizeof(*s->quantlist)*quantvals);
s->quantlist=(long*)_ogg_malloc(sizeof(*s->quantlist)*quantvals);
for(i=0;i<quantvals;i++) for(i=0;i<quantvals;i++)
s->quantlist[i]=oggpack_read(opb,s->q_quant); s->quantlist[i]=oggpack_read(opb,s->q_quant);
@@ -302,13 +302,6 @@ int vorbis_book_encodev(codebook *book,int best,float *a,oggpack_buffer *b){
be. The first-stage decode table catches most words so that be. The first-stage decode table catches most words so that
bitreverse is not in the main execution path. */ bitreverse is not in the main execution path. */
static ogg_uint32_t bitreverse(ogg_uint32_t x){
x= ((x>>16)&0x0000ffff) | ((x<<16)&0xffff0000);
x= ((x>> 8)&0x00ff00ff) | ((x<< 8)&0xff00ff00);
x= ((x>> 4)&0x0f0f0f0f) | ((x<< 4)&0xf0f0f0f0);
x= ((x>> 2)&0x33333333) | ((x<< 2)&0xcccccccc);
return((x>> 1)&0x55555555) | ((x<< 1)&0xaaaaaaaa);
}
STIN long decode_packed_entry_number(codebook *book, oggpack_buffer *b){ STIN long decode_packed_entry_number(codebook *book, oggpack_buffer *b){
int read=book->dec_maxlength; int read=book->dec_maxlength;
@@ -383,8 +376,8 @@ long vorbis_book_decode(codebook *book, oggpack_buffer *b){
/* returns 0 on OK or -1 on eof *************************************/ /* returns 0 on OK or -1 on eof *************************************/
long vorbis_book_decodevs_add(codebook *book,float *a,oggpack_buffer *b,int n){ long vorbis_book_decodevs_add(codebook *book,float *a,oggpack_buffer *b,int n){
int step=n/book->dim; int step=n/book->dim;
long *entry = alloca(sizeof(*entry)*step);
float **t = alloca(sizeof(*t)*step);
long *entry = (long*)alloca(sizeof(*entry)*step);
float **t = (float**)alloca(sizeof(*t)*step);
int i,j,o; int i,j,o;
for (i = 0; i < step; i++) { for (i = 0; i < step; i++) {


+ 20
- 0
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/codec_internal.h View File

@@ -58,6 +58,26 @@ typedef void vorbis_info_mapping;
#include "psy.h" #include "psy.h"
#include "bitrate.h" #include "bitrate.h"
static int ilog(unsigned int v){
int ret=0;
while(v){
ret++;
v>>=1;
}
return(ret);
}
static int ilog2(unsigned int v){
int ret=0;
if(v)--v;
while(v){
ret++;
v>>=1;
}
return(ret);
}
typedef struct private_state { typedef struct private_state {
/* local lookup storage */ /* local lookup storage */
envelope_lookup *ve; /* envelope lookup */ envelope_lookup *ve; /* envelope lookup */


+ 12
- 12
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/envelope.c View File

@@ -34,7 +34,7 @@
#include "misc.h" #include "misc.h"
void _ve_envelope_init(envelope_lookup *e,vorbis_info *vi){ void _ve_envelope_init(envelope_lookup *e,vorbis_info *vi){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
vorbis_info_psy_global *gi=&ci->psy_g_param; vorbis_info_psy_global *gi=&ci->psy_g_param;
int ch=vi->channels; int ch=vi->channels;
int i,j; int i,j;
@@ -45,7 +45,7 @@ void _ve_envelope_init(envelope_lookup *e,vorbis_info *vi){
e->ch=ch; e->ch=ch;
e->storage=128; e->storage=128;
e->cursor=ci->blocksizes[1]/2; e->cursor=ci->blocksizes[1]/2;
e->mdct_win=_ogg_calloc(n,sizeof(*e->mdct_win));
e->mdct_win=(float*)_ogg_calloc(n,sizeof(*e->mdct_win));
mdct_init(&e->mdct,n); mdct_init(&e->mdct,n);
for(i=0;i<n;i++){ for(i=0;i<n;i++){
@@ -64,7 +64,7 @@ void _ve_envelope_init(envelope_lookup *e,vorbis_info *vi){
for(j=0;j<VE_BANDS;j++){ for(j=0;j<VE_BANDS;j++){
n=e->band[j].end; n=e->band[j].end;
e->band[j].window=_ogg_malloc(n*sizeof(*e->band[0].window));
e->band[j].window=(float*)_ogg_malloc(n*sizeof(*e->band[0].window));
for(i=0;i<n;i++){ for(i=0;i<n;i++){
e->band[j].window[i]=sin((i+.5)/n*M_PI); e->band[j].window[i]=sin((i+.5)/n*M_PI);
e->band[j].total+=e->band[j].window[i]; e->band[j].total+=e->band[j].window[i];
@@ -72,8 +72,8 @@ void _ve_envelope_init(envelope_lookup *e,vorbis_info *vi){
e->band[j].total=1./e->band[j].total; e->band[j].total=1./e->band[j].total;
} }
e->filter=_ogg_calloc(VE_BANDS*ch,sizeof(*e->filter));
e->mark=_ogg_calloc(e->storage,sizeof(*e->mark));
e->filter=(envelope_filter_state*)_ogg_calloc(VE_BANDS*ch,sizeof(*e->filter));
e->mark=(int*)_ogg_calloc(e->storage,sizeof(*e->mark));
} }
@@ -107,7 +107,7 @@ static int _ve_amp(envelope_lookup *ve,
itself (for low power signals) */ itself (for low power signals) */
float minV=ve->minenergy; float minV=ve->minenergy;
float *vec=alloca(n*sizeof(*vec));
float *vec=(float*) alloca(n*sizeof(*vec));
/* stretch is used to gradually lengthen the number of windows /* stretch is used to gradually lengthen the number of windows
considered prevoius-to-potential-trigger */ considered prevoius-to-potential-trigger */
@@ -177,10 +177,10 @@ static int _ve_amp(envelope_lookup *ve,
/* convert amplitude to delta */ /* convert amplitude to delta */
{ {
int p,this=filters[j].ampptr;
int p,thisx=filters[j].ampptr;
float postmax,postmin,premax=-99999.f,premin=99999.f; float postmax,postmin,premax=-99999.f,premin=99999.f;
p=this;
p=thisx;
p--; p--;
if(p<0)p+=VE_AMP; if(p<0)p+=VE_AMP;
postmax=max(acc,filters[j].ampbuf[p]); postmax=max(acc,filters[j].ampbuf[p]);
@@ -197,7 +197,7 @@ static int _ve_amp(envelope_lookup *ve,
valmax=postmax-premax; valmax=postmax-premax;
/*filters[j].markers[pos]=valmax;*/ /*filters[j].markers[pos]=valmax;*/
filters[j].ampbuf[this]=acc;
filters[j].ampbuf[thisx]=acc;
filters[j].ampptr++; filters[j].ampptr++;
if(filters[j].ampptr>=VE_AMP)filters[j].ampptr=0; if(filters[j].ampptr>=VE_AMP)filters[j].ampptr=0;
} }
@@ -220,7 +220,7 @@ static ogg_int64_t totalshift=-1024;
long _ve_envelope_search(vorbis_dsp_state *v){ long _ve_envelope_search(vorbis_dsp_state *v){
vorbis_info *vi=v->vi; vorbis_info *vi=v->vi;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info *)vi->codec_setup;
vorbis_info_psy_global *gi=&ci->psy_g_param; vorbis_info_psy_global *gi=&ci->psy_g_param;
envelope_lookup *ve=((private_state *)(v->backend_state))->ve; envelope_lookup *ve=((private_state *)(v->backend_state))->ve;
long i,j; long i,j;
@@ -232,7 +232,7 @@ long _ve_envelope_search(vorbis_dsp_state *v){
/* make sure we have enough storage to match the PCM */ /* make sure we have enough storage to match the PCM */
if(last+VE_WIN+VE_POST>ve->storage){ if(last+VE_WIN+VE_POST>ve->storage){
ve->storage=last+VE_WIN+VE_POST; /* be sure */ ve->storage=last+VE_WIN+VE_POST; /* be sure */
ve->mark=_ogg_realloc(ve->mark,ve->storage*sizeof(*ve->mark));
ve->mark=(int*)_ogg_realloc(ve->mark,ve->storage*sizeof(*ve->mark));
} }
for(j=first;j<last;j++){ for(j=first;j<last;j++){
@@ -335,7 +335,7 @@ long _ve_envelope_search(vorbis_dsp_state *v){
int _ve_envelope_mark(vorbis_dsp_state *v){ int _ve_envelope_mark(vorbis_dsp_state *v){
envelope_lookup *ve=((private_state *)(v->backend_state))->ve; envelope_lookup *ve=((private_state *)(v->backend_state))->ve;
vorbis_info *vi=v->vi; vorbis_info *vi=v->vi;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
long centerW=v->centerW; long centerW=v->centerW;
long beginW=centerW-ci->blocksizes[v->W]/4; long beginW=centerW-ci->blocksizes[v->W]/4;
long endW=centerW+ci->blocksizes[v->W]/4; long endW=centerW+ci->blocksizes[v->W]/4;


+ 9
- 9
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/floor0.c View File

@@ -76,10 +76,10 @@ static void floor0_free_look(vorbis_look_floor *i){
} }
static vorbis_info_floor *floor0_unpack (vorbis_info *vi,oggpack_buffer *opb){ static vorbis_info_floor *floor0_unpack (vorbis_info *vi,oggpack_buffer *opb){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
int j; int j;
vorbis_info_floor0 *info=_ogg_malloc(sizeof(*info));
vorbis_info_floor0 *info=(vorbis_info_floor0*)_ogg_malloc(sizeof(*info));
info->order=oggpack_read(opb,8); info->order=oggpack_read(opb,8);
info->rate=oggpack_read(opb,16); info->rate=oggpack_read(opb,16);
info->barkmap=oggpack_read(opb,16); info->barkmap=oggpack_read(opb,16);
@@ -117,7 +117,7 @@ static void floor0_map_lazy_init(vorbis_block *vb,
if(!look->linearmap[vb->W]){ if(!look->linearmap[vb->W]){
vorbis_dsp_state *vd=vb->vd; vorbis_dsp_state *vd=vb->vd;
vorbis_info *vi=vd->vi; vorbis_info *vi=vd->vi;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
vorbis_info_floor0 *info=(vorbis_info_floor0 *)infoX; vorbis_info_floor0 *info=(vorbis_info_floor0 *)infoX;
int W=vb->W; int W=vb->W;
int n=ci->blocksizes[W]/2,j; int n=ci->blocksizes[W]/2,j;
@@ -133,7 +133,7 @@ static void floor0_map_lazy_init(vorbis_block *vb,
the encoder may do what it wishes in filling them. They're the encoder may do what it wishes in filling them. They're
necessary in some mapping combinations to keep the scale spacing necessary in some mapping combinations to keep the scale spacing
accurate */ accurate */
look->linearmap[W]=_ogg_malloc((n+1)*sizeof(**look->linearmap));
look->linearmap[W]=(int*)_ogg_malloc((n+1)*sizeof(**look->linearmap));
for(j=0;j<n;j++){ for(j=0;j<n;j++){
int val=floor( toBARK((info->rate/2.f)/n*j) int val=floor( toBARK((info->rate/2.f)/n*j)
*scale); /* bark numbers represent band edges */ *scale); /* bark numbers represent band edges */
@@ -147,13 +147,13 @@ static void floor0_map_lazy_init(vorbis_block *vb,
static vorbis_look_floor *floor0_look(vorbis_dsp_state *vd, static vorbis_look_floor *floor0_look(vorbis_dsp_state *vd,
vorbis_info_floor *i){ vorbis_info_floor *i){
vorbis_info_floor0 *info=(vorbis_info_floor0 *)i;
vorbis_look_floor0 *look=_ogg_calloc(1,sizeof(*look));
vorbis_info_floor0 *info=(vorbis_info_floor0*)i;
vorbis_look_floor0 *look=(vorbis_look_floor0*)_ogg_calloc(1,sizeof(*look));
look->m=info->order; look->m=info->order;
look->ln=info->barkmap; look->ln=info->barkmap;
look->vi=info; look->vi=info;
look->linearmap=_ogg_calloc(2,sizeof(*look->linearmap));
look->linearmap=(int**)_ogg_calloc(2,sizeof(*look->linearmap));
return look; return look;
} }
@@ -170,14 +170,14 @@ static void *floor0_inverse1(vorbis_block *vb,vorbis_look_floor *i){
int booknum=oggpack_read(&vb->opb,_ilog(info->numbooks)); int booknum=oggpack_read(&vb->opb,_ilog(info->numbooks));
if(booknum!=-1 && booknum<info->numbooks){ /* be paranoid */ if(booknum!=-1 && booknum<info->numbooks){ /* be paranoid */
codec_setup_info *ci=vb->vd->vi->codec_setup;
codec_setup_info *ci=(codec_setup_info *)vb->vd->vi->codec_setup;
codebook *b=ci->fullbooks+info->books[booknum]; codebook *b=ci->fullbooks+info->books[booknum];
float last=0.f; float last=0.f;
/* the additional b->dim is a guard against any possible stack /* the additional b->dim is a guard against any possible stack
smash; b->dim is provably more than we can overflow the smash; b->dim is provably more than we can overflow the
vector */ vector */
float *lsp=_vorbis_block_alloc(vb,sizeof(*lsp)*(look->m+b->dim+1));
float *lsp=(float*)_vorbis_block_alloc(vb,sizeof(*lsp)*(look->m+b->dim+1));
for(j=0;j<look->m;j+=b->dim) for(j=0;j<look->m;j+=b->dim)
if(vorbis_book_decodev_set(b,lsp+j,&vb->opb,b->dim)==-1)goto eop; if(vorbis_book_decodev_set(b,lsp+j,&vb->opb,b->dim)==-1)goto eop;


+ 28
- 44
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/floor1.c View File

@@ -87,25 +87,6 @@ static void floor1_free_look(vorbis_look_floor *i){
} }
} }
static int ilog(unsigned int v){
int ret=0;
while(v){
ret++;
v>>=1;
}
return(ret);
}
static int ilog2(unsigned int v){
int ret=0;
if(v)--v;
while(v){
ret++;
v>>=1;
}
return(ret);
}
static void floor1_pack (vorbis_info_floor *i,oggpack_buffer *opb){ static void floor1_pack (vorbis_info_floor *i,oggpack_buffer *opb){
vorbis_info_floor1 *info=(vorbis_info_floor1 *)i; vorbis_info_floor1 *info=(vorbis_info_floor1 *)i;
int j,k; int j,k;
@@ -144,10 +125,10 @@ static void floor1_pack (vorbis_info_floor *i,oggpack_buffer *opb){
static vorbis_info_floor *floor1_unpack (vorbis_info *vi,oggpack_buffer *opb){ static vorbis_info_floor *floor1_unpack (vorbis_info *vi,oggpack_buffer *opb){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
int j,k,count=0,maxclass=-1,rangebits; int j,k,count=0,maxclass=-1,rangebits;
vorbis_info_floor1 *info=_ogg_calloc(1,sizeof(*info));
vorbis_info_floor1 *info=(vorbis_info_floor1*)_ogg_calloc(1,sizeof(*info));
/* read partitions */ /* read partitions */
info->partitions=oggpack_read(opb,5); /* only 0 to 31 legal */ info->partitions=oggpack_read(opb,5); /* only 0 to 31 legal */
for(j=0;j<info->partitions;j++){ for(j=0;j<info->partitions;j++){
@@ -201,8 +182,8 @@ static vorbis_look_floor *floor1_look(vorbis_dsp_state *vd,
vorbis_info_floor *in){ vorbis_info_floor *in){
int *sortpointer[VIF_POSIT+2]; int *sortpointer[VIF_POSIT+2];
vorbis_info_floor1 *info=(vorbis_info_floor1 *)in;
vorbis_look_floor1 *look=_ogg_calloc(1,sizeof(*look));
vorbis_info_floor1 *info=(vorbis_info_floor1*)in;
vorbis_look_floor1 *look=(vorbis_look_floor1*)_ogg_calloc(1,sizeof(*look));
int i,j,n=0; int i,j,n=0;
look->vi=info; look->vi=info;
@@ -593,10 +574,11 @@ static int post_Y(int *A,int *B,int pos){
return (A[pos]+B[pos])>>1; return (A[pos]+B[pos])>>1;
} }
int *floor1_fit(vorbis_block *vb,vorbis_look_floor1 *look,
int *floor1_fit(vorbis_block *vb,void *look_,
const float *logmdct, /* in */ const float *logmdct, /* in */
const float *logmask){ const float *logmask){
long i,j; long i,j;
vorbis_look_floor1 *look = (vorbis_look_floor1*) look_;
vorbis_info_floor1 *info=look->vi; vorbis_info_floor1 *info=look->vi;
long n=look->n; long n=look->n;
long posts=look->posts; long posts=look->posts;
@@ -705,7 +687,7 @@ int *floor1_fit(vorbis_block *vb,vorbis_look_floor1 *look,
} }
} }
output=_vorbis_block_alloc(vb,sizeof(*output)*posts);
output=(int*)_vorbis_block_alloc(vb,sizeof(*output)*posts);
output[0]=post_Y(fit_valueA,fit_valueB,0); output[0]=post_Y(fit_valueA,fit_valueB,0);
output[1]=post_Y(fit_valueA,fit_valueB,1); output[1]=post_Y(fit_valueA,fit_valueB,1);
@@ -736,16 +718,17 @@ int *floor1_fit(vorbis_block *vb,vorbis_look_floor1 *look,
} }
int *floor1_interpolate_fit(vorbis_block *vb,vorbis_look_floor1 *look,
int *floor1_interpolate_fit(vorbis_block *vb,void *look_,
int *A,int *B, int *A,int *B,
int del){ int del){
long i; long i;
vorbis_look_floor1* look = (vorbis_look_floor1*) look_;
long posts=look->posts; long posts=look->posts;
int *output=NULL; int *output=NULL;
if(A && B){ if(A && B){
output=_vorbis_block_alloc(vb,sizeof(*output)*posts);
output=(int*)_vorbis_block_alloc(vb,sizeof(*output)*posts);
for(i=0;i<posts;i++){ for(i=0;i<posts;i++){
output[i]=((65536-del)*(A[i]&0x7fff)+del*(B[i]&0x7fff)+32768)>>16; output[i]=((65536-del)*(A[i]&0x7fff)+del*(B[i]&0x7fff)+32768)>>16;
@@ -758,13 +741,14 @@ int *floor1_interpolate_fit(vorbis_block *vb,vorbis_look_floor1 *look,
int floor1_encode(oggpack_buffer *opb,vorbis_block *vb, int floor1_encode(oggpack_buffer *opb,vorbis_block *vb,
vorbis_look_floor1 *look,
void*look_,
int *post,int *ilogmask){ int *post,int *ilogmask){
long i,j; long i,j;
vorbis_look_floor1 *look = (vorbis_look_floor1 *) look_;
vorbis_info_floor1 *info=look->vi; vorbis_info_floor1 *info=look->vi;
long posts=look->posts; long posts=look->posts;
codec_setup_info *ci=vb->vd->vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vb->vd->vi->codec_setup;
int out[VIF_POSIT+2]; int out[VIF_POSIT+2];
static_codebook **sbooks=ci->book_param; static_codebook **sbooks=ci->book_param;
codebook *books=ci->fullbooks; codebook *books=ci->fullbooks;
@@ -851,9 +835,9 @@ int floor1_encode(oggpack_buffer *opb,vorbis_block *vb,
/* partition by partition */ /* partition by partition */
for(i=0,j=2;i<info->partitions;i++){ for(i=0,j=2;i<info->partitions;i++){
int class=info->partitionclass[i];
int cdim=info->class_dim[class];
int csubbits=info->class_subs[class];
int classx=info->partitionclass[i];
int cdim=info->class_dim[classx];
int csubbits=info->class_subs[classx];
int csub=1<<csubbits; int csub=1<<csubbits;
int bookas[8]={0,0,0,0,0,0,0,0}; int bookas[8]={0,0,0,0,0,0,0,0};
int cval=0; int cval=0;
@@ -864,11 +848,11 @@ int floor1_encode(oggpack_buffer *opb,vorbis_block *vb,
if(csubbits){ if(csubbits){
int maxval[8]; int maxval[8];
for(k=0;k<csub;k++){ for(k=0;k<csub;k++){
int booknum=info->class_subbook[class][k];
int booknum=info->class_subbook[classx][k];
if(booknum<0){ if(booknum<0){
maxval[k]=1; maxval[k]=1;
}else{ }else{
maxval[k]=sbooks[info->class_subbook[class][k]]->entries;
maxval[k]=sbooks[info->class_subbook[classx][k]]->entries;
} }
} }
for(k=0;k<cdim;k++){ for(k=0;k<cdim;k++){
@@ -884,7 +868,7 @@ int floor1_encode(oggpack_buffer *opb,vorbis_block *vb,
} }
/* write it */ /* write it */
look->phrasebits+= look->phrasebits+=
vorbis_book_encode(books+info->class_book[class],cval,opb);
vorbis_book_encode(books+info->class_book[classx],cval,opb);
#ifdef TRAIN_FLOOR1 #ifdef TRAIN_FLOOR1
{ {
@@ -901,7 +885,7 @@ int floor1_encode(oggpack_buffer *opb,vorbis_block *vb,
/* write post values */ /* write post values */
for(k=0;k<cdim;k++){ for(k=0;k<cdim;k++){
int book=info->class_subbook[class][bookas[k]];
int book=info->class_subbook[classx][bookas[k]];
if(book>=0){ if(book>=0){
/* hack to allow training with 'bad' books */ /* hack to allow training with 'bad' books */
if(out[j+k]<(books+book)->entries) if(out[j+k]<(books+book)->entries)
@@ -961,35 +945,35 @@ int floor1_encode(oggpack_buffer *opb,vorbis_block *vb,
static void *floor1_inverse1(vorbis_block *vb,vorbis_look_floor *in){ static void *floor1_inverse1(vorbis_block *vb,vorbis_look_floor *in){
vorbis_look_floor1 *look=(vorbis_look_floor1 *)in; vorbis_look_floor1 *look=(vorbis_look_floor1 *)in;
vorbis_info_floor1 *info=look->vi; vorbis_info_floor1 *info=look->vi;
codec_setup_info *ci=vb->vd->vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vb->vd->vi->codec_setup;
int i,j,k; int i,j,k;
codebook *books=ci->fullbooks; codebook *books=ci->fullbooks;
/* unpack wrapped/predicted values from stream */ /* unpack wrapped/predicted values from stream */
if(oggpack_read(&vb->opb,1)==1){ if(oggpack_read(&vb->opb,1)==1){
int *fit_value=_vorbis_block_alloc(vb,(look->posts)*sizeof(*fit_value));
int *fit_value=(int*)_vorbis_block_alloc(vb,(look->posts)*sizeof(*fit_value));
fit_value[0]=oggpack_read(&vb->opb,ilog(look->quant_q-1)); fit_value[0]=oggpack_read(&vb->opb,ilog(look->quant_q-1));
fit_value[1]=oggpack_read(&vb->opb,ilog(look->quant_q-1)); fit_value[1]=oggpack_read(&vb->opb,ilog(look->quant_q-1));
/* partition by partition */ /* partition by partition */
for(i=0,j=2;i<info->partitions;i++){ for(i=0,j=2;i<info->partitions;i++){
int class=info->partitionclass[i];
int cdim=info->class_dim[class];
int csubbits=info->class_subs[class];
int classx=info->partitionclass[i];
int cdim=info->class_dim[classx];
int csubbits=info->class_subs[classx];
int csub=1<<csubbits; int csub=1<<csubbits;
int cval=0; int cval=0;
/* decode the partition's first stage cascade value */ /* decode the partition's first stage cascade value */
if(csubbits){ if(csubbits){
cval=vorbis_book_decode(books+info->class_book[class],&vb->opb);
cval=vorbis_book_decode(books+info->class_book[classx],&vb->opb);
if(cval==-1)goto eop; if(cval==-1)goto eop;
} }
for(k=0;k<cdim;k++){ for(k=0;k<cdim;k++){
int book=info->class_subbook[class][cval&(csub-1)];
int book=info->class_subbook[classx][cval&(csub-1)];
cval>>=csubbits; cval>>=csubbits;
if(book>=0){ if(book>=0){
if((fit_value[j+k]=vorbis_book_decode(books+book,&vb->opb))==-1) if((fit_value[j+k]=vorbis_book_decode(books+book,&vb->opb))==-1)
@@ -1049,7 +1033,7 @@ static int floor1_inverse2(vorbis_block *vb,vorbis_look_floor *in,void *memo,
vorbis_look_floor1 *look=(vorbis_look_floor1 *)in; vorbis_look_floor1 *look=(vorbis_look_floor1 *)in;
vorbis_info_floor1 *info=look->vi; vorbis_info_floor1 *info=look->vi;
codec_setup_info *ci=vb->vd->vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vb->vd->vi->codec_setup;
int n=ci->blocksizes[vb->W]/2; int n=ci->blocksizes[vb->W]/2;
int j; int j;


+ 23
- 33
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/info.c View File

@@ -34,16 +34,6 @@
#include "misc.h" #include "misc.h"
#include "os.h" #include "os.h"
/* helpers */
static int ilog2(unsigned int v){
int ret=0;
if(v)--v;
while(v){
ret++;
v>>=1;
}
return(ret);
}
static void _v_writestring(oggpack_buffer *o,char *s, int bytes){ static void _v_writestring(oggpack_buffer *o,char *s, int bytes){
@@ -63,19 +53,19 @@ void vorbis_comment_init(vorbis_comment *vc){
} }
void vorbis_comment_add(vorbis_comment *vc,char *comment){ void vorbis_comment_add(vorbis_comment *vc,char *comment){
vc->user_comments=_ogg_realloc(vc->user_comments,
vc->user_comments=(char**)_ogg_realloc(vc->user_comments,
(vc->comments+2)*sizeof(*vc->user_comments)); (vc->comments+2)*sizeof(*vc->user_comments));
vc->comment_lengths=_ogg_realloc(vc->comment_lengths,
vc->comment_lengths=(int*)_ogg_realloc(vc->comment_lengths,
(vc->comments+2)*sizeof(*vc->comment_lengths)); (vc->comments+2)*sizeof(*vc->comment_lengths));
vc->comment_lengths[vc->comments]=strlen(comment); vc->comment_lengths[vc->comments]=strlen(comment);
vc->user_comments[vc->comments]=_ogg_malloc(vc->comment_lengths[vc->comments]+1);
vc->user_comments[vc->comments]=(char*)_ogg_malloc(vc->comment_lengths[vc->comments]+1);
strcpy(vc->user_comments[vc->comments], comment); strcpy(vc->user_comments[vc->comments], comment);
vc->comments++; vc->comments++;
vc->user_comments[vc->comments]=NULL; vc->user_comments[vc->comments]=NULL;
} }
void vorbis_comment_add_tag(vorbis_comment *vc, char *tag, char *contents){ void vorbis_comment_add_tag(vorbis_comment *vc, char *tag, char *contents){
char *comment=alloca(strlen(tag)+strlen(contents)+2); /* +2 for = and \0 */
char *comment=(char*)alloca(strlen(tag)+strlen(contents)+2); /* +2 for = and \0 */
strcpy(comment, tag); strcpy(comment, tag);
strcat(comment, "="); strcat(comment, "=");
strcat(comment, contents); strcat(comment, contents);
@@ -98,7 +88,7 @@ char *vorbis_comment_query(vorbis_comment *vc, char *tag, int count){
long i; long i;
int found = 0; int found = 0;
int taglen = strlen(tag)+1; /* +1 for the = we append */ int taglen = strlen(tag)+1; /* +1 for the = we append */
char *fulltag = alloca(taglen+ 1);
char *fulltag = (char*)alloca(taglen+ 1);
strcpy(fulltag, tag); strcpy(fulltag, tag);
strcat(fulltag, "="); strcat(fulltag, "=");
@@ -118,7 +108,7 @@ char *vorbis_comment_query(vorbis_comment *vc, char *tag, int count){
int vorbis_comment_query_count(vorbis_comment *vc, char *tag){ int vorbis_comment_query_count(vorbis_comment *vc, char *tag){
int i,count=0; int i,count=0;
int taglen = strlen(tag)+1; /* +1 for the = we append */ int taglen = strlen(tag)+1; /* +1 for the = we append */
char *fulltag = alloca(taglen+1);
char *fulltag = (char*)alloca(taglen+1);
strcpy(fulltag,tag); strcpy(fulltag,tag);
strcat(fulltag, "="); strcat(fulltag, "=");
@@ -145,7 +135,7 @@ void vorbis_comment_clear(vorbis_comment *vc){
/* blocksize 0 is guaranteed to be short, 1 is guarantted to be long. /* blocksize 0 is guaranteed to be short, 1 is guarantted to be long.
They may be equal, but short will never ge greater than long */ They may be equal, but short will never ge greater than long */
int vorbis_info_blocksize(vorbis_info *vi,int zo){ int vorbis_info_blocksize(vorbis_info *vi,int zo){
codec_setup_info *ci = vi->codec_setup;
codec_setup_info *ci = (codec_setup_info*)vi->codec_setup;
return ci ? ci->blocksizes[zo] : -1; return ci ? ci->blocksizes[zo] : -1;
} }
@@ -156,7 +146,7 @@ void vorbis_info_init(vorbis_info *vi){
} }
void vorbis_info_clear(vorbis_info *vi){ void vorbis_info_clear(vorbis_info *vi){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
int i; int i;
if(ci){ if(ci){
@@ -196,7 +186,7 @@ void vorbis_info_clear(vorbis_info *vi){
/* Header packing/unpacking ********************************************/ /* Header packing/unpacking ********************************************/
static int _vorbis_unpack_info(vorbis_info *vi,oggpack_buffer *opb){ static int _vorbis_unpack_info(vorbis_info *vi,oggpack_buffer *opb){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
if(!ci)return(OV_EFAULT); if(!ci)return(OV_EFAULT);
vi->version=oggpack_read(opb,32); vi->version=oggpack_read(opb,32);
@@ -229,18 +219,18 @@ static int _vorbis_unpack_comment(vorbis_comment *vc,oggpack_buffer *opb){
int i; int i;
int vendorlen=oggpack_read(opb,32); int vendorlen=oggpack_read(opb,32);
if(vendorlen<0)goto err_out; if(vendorlen<0)goto err_out;
vc->vendor=_ogg_calloc(vendorlen+1,1);
vc->vendor=(char*)_ogg_calloc(vendorlen+1,1);
_v_readstring(opb,vc->vendor,vendorlen); _v_readstring(opb,vc->vendor,vendorlen);
vc->comments=oggpack_read(opb,32); vc->comments=oggpack_read(opb,32);
if(vc->comments<0)goto err_out; if(vc->comments<0)goto err_out;
vc->user_comments=_ogg_calloc(vc->comments+1,sizeof(*vc->user_comments));
vc->comment_lengths=_ogg_calloc(vc->comments+1, sizeof(*vc->comment_lengths));
vc->user_comments=(char**)_ogg_calloc(vc->comments+1,sizeof(*vc->user_comments));
vc->comment_lengths=(int*)_ogg_calloc(vc->comments+1, sizeof(*vc->comment_lengths));
for(i=0;i<vc->comments;i++){ for(i=0;i<vc->comments;i++){
int len=oggpack_read(opb,32); int len=oggpack_read(opb,32);
if(len<0)goto err_out; if(len<0)goto err_out;
vc->comment_lengths[i]=len; vc->comment_lengths[i]=len;
vc->user_comments[i]=_ogg_calloc(len+1,1);
vc->user_comments[i]=(char*)_ogg_calloc(len+1,1);
_v_readstring(opb,vc->user_comments[i],len); _v_readstring(opb,vc->user_comments[i],len);
} }
if(oggpack_read(opb,1)!=1)goto err_out; /* EOP check */ if(oggpack_read(opb,1)!=1)goto err_out; /* EOP check */
@@ -254,7 +244,7 @@ static int _vorbis_unpack_comment(vorbis_comment *vc,oggpack_buffer *opb){
/* all of the real encoding details are here. The modes, books, /* all of the real encoding details are here. The modes, books,
everything */ everything */
static int _vorbis_unpack_books(vorbis_info *vi,oggpack_buffer *opb){ static int _vorbis_unpack_books(vorbis_info *vi,oggpack_buffer *opb){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
int i; int i;
if(!ci)return(OV_EFAULT); if(!ci)return(OV_EFAULT);
@@ -262,7 +252,7 @@ static int _vorbis_unpack_books(vorbis_info *vi,oggpack_buffer *opb){
ci->books=oggpack_read(opb,8)+1; ci->books=oggpack_read(opb,8)+1;
/*ci->book_param=_ogg_calloc(ci->books,sizeof(*ci->book_param));*/ /*ci->book_param=_ogg_calloc(ci->books,sizeof(*ci->book_param));*/
for(i=0;i<ci->books;i++){ for(i=0;i<ci->books;i++){
ci->book_param[i]=_ogg_calloc(1,sizeof(*ci->book_param[i]));
ci->book_param[i]=(static_codebook*)_ogg_calloc(1,sizeof(*ci->book_param[i]));
if(vorbis_staticbook_unpack(opb,ci->book_param[i]))goto err_out; if(vorbis_staticbook_unpack(opb,ci->book_param[i]))goto err_out;
} }
@@ -312,7 +302,7 @@ static int _vorbis_unpack_books(vorbis_info *vi,oggpack_buffer *opb){
ci->modes=oggpack_read(opb,6)+1; ci->modes=oggpack_read(opb,6)+1;
/*vi->mode_param=_ogg_calloc(vi->modes,sizeof(void *));*/ /*vi->mode_param=_ogg_calloc(vi->modes,sizeof(void *));*/
for(i=0;i<ci->modes;i++){ for(i=0;i<ci->modes;i++){
ci->mode_param[i]=_ogg_calloc(1,sizeof(*ci->mode_param[i]));
ci->mode_param[i]=(vorbis_info_mode*)_ogg_calloc(1,sizeof(*ci->mode_param[i]));
ci->mode_param[i]->blockflag=oggpack_read(opb,1); ci->mode_param[i]->blockflag=oggpack_read(opb,1);
ci->mode_param[i]->windowtype=oggpack_read(opb,16); ci->mode_param[i]->windowtype=oggpack_read(opb,16);
ci->mode_param[i]->transformtype=oggpack_read(opb,16); ci->mode_param[i]->transformtype=oggpack_read(opb,16);
@@ -395,7 +385,7 @@ int vorbis_synthesis_headerin(vorbis_info *vi,vorbis_comment *vc,ogg_packet *op)
/* pack side **********************************************************/ /* pack side **********************************************************/
static int _vorbis_pack_info(oggpack_buffer *opb,vorbis_info *vi){ static int _vorbis_pack_info(oggpack_buffer *opb,vorbis_info *vi){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
if(!ci)return(OV_EFAULT); if(!ci)return(OV_EFAULT);
/* preamble */ /* preamble */
@@ -450,7 +440,7 @@ static int _vorbis_pack_comment(oggpack_buffer *opb,vorbis_comment *vc){
} }
static int _vorbis_pack_books(oggpack_buffer *opb,vorbis_info *vi){ static int _vorbis_pack_books(oggpack_buffer *opb,vorbis_info *vi){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
int i; int i;
if(!ci)return(OV_EFAULT); if(!ci)return(OV_EFAULT);
@@ -513,7 +503,7 @@ int vorbis_commentheader_out(vorbis_comment *vc,
oggpack_writeinit(&opb); oggpack_writeinit(&opb);
if(_vorbis_pack_comment(&opb,vc)) return OV_EIMPL; if(_vorbis_pack_comment(&opb,vc)) return OV_EIMPL;
op->packet = _ogg_malloc(oggpack_bytes(&opb));
op->packet = (unsigned char*) _ogg_malloc(oggpack_bytes(&opb));
memcpy(op->packet, opb.buffer, oggpack_bytes(&opb)); memcpy(op->packet, opb.buffer, oggpack_bytes(&opb));
op->bytes=oggpack_bytes(&opb); op->bytes=oggpack_bytes(&opb);
@@ -533,7 +523,7 @@ int vorbis_analysis_headerout(vorbis_dsp_state *v,
int ret=OV_EIMPL; int ret=OV_EIMPL;
vorbis_info *vi=v->vi; vorbis_info *vi=v->vi;
oggpack_buffer opb; oggpack_buffer opb;
private_state *b=v->backend_state;
private_state *b=(private_state*)v->backend_state;
if(!b){ if(!b){
ret=OV_EFAULT; ret=OV_EFAULT;
@@ -547,7 +537,7 @@ int vorbis_analysis_headerout(vorbis_dsp_state *v,
/* build the packet */ /* build the packet */
if(b->header)_ogg_free(b->header); if(b->header)_ogg_free(b->header);
b->header=_ogg_malloc(oggpack_bytes(&opb));
b->header=(unsigned char*) _ogg_malloc(oggpack_bytes(&opb));
memcpy(b->header,opb.buffer,oggpack_bytes(&opb)); memcpy(b->header,opb.buffer,oggpack_bytes(&opb));
op->packet=b->header; op->packet=b->header;
op->bytes=oggpack_bytes(&opb); op->bytes=oggpack_bytes(&opb);
@@ -562,7 +552,7 @@ int vorbis_analysis_headerout(vorbis_dsp_state *v,
if(_vorbis_pack_comment(&opb,vc))goto err_out; if(_vorbis_pack_comment(&opb,vc))goto err_out;
if(b->header1)_ogg_free(b->header1); if(b->header1)_ogg_free(b->header1);
b->header1=_ogg_malloc(oggpack_bytes(&opb));
b->header1=(unsigned char*) _ogg_malloc(oggpack_bytes(&opb));
memcpy(b->header1,opb.buffer,oggpack_bytes(&opb)); memcpy(b->header1,opb.buffer,oggpack_bytes(&opb));
op_comm->packet=b->header1; op_comm->packet=b->header1;
op_comm->bytes=oggpack_bytes(&opb); op_comm->bytes=oggpack_bytes(&opb);
@@ -577,7 +567,7 @@ int vorbis_analysis_headerout(vorbis_dsp_state *v,
if(_vorbis_pack_books(&opb,vi))goto err_out; if(_vorbis_pack_books(&opb,vi))goto err_out;
if(b->header2)_ogg_free(b->header2); if(b->header2)_ogg_free(b->header2);
b->header2=_ogg_malloc(oggpack_bytes(&opb));
b->header2=(unsigned char*) _ogg_malloc(oggpack_bytes(&opb));
memcpy(b->header2,opb.buffer,oggpack_bytes(&opb)); memcpy(b->header2,opb.buffer,oggpack_bytes(&opb));
op_code->packet=b->header2; op_code->packet=b->header2;
op_code->bytes=oggpack_bytes(&opb); op_code->bytes=oggpack_bytes(&opb);


+ 3
- 3
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/lpc.c View File

@@ -62,8 +62,8 @@ Carsten Bormann
Output: m lpc coefficients, excitation energy */ Output: m lpc coefficients, excitation energy */
float vorbis_lpc_from_data(float *data,float *lpci,int n,int m){ float vorbis_lpc_from_data(float *data,float *lpci,int n,int m){
double *aut=alloca(sizeof(*aut)*(m+1));
double *lpc=alloca(sizeof(*lpc)*(m));
double *aut=(double*)alloca(sizeof(*aut)*(m+1));
double *lpc=(double*)alloca(sizeof(*lpc)*(m));
double error; double error;
int i,j; int i,j;
@@ -126,7 +126,7 @@ void vorbis_lpc_predict(float *coeff,float *prime,int m,
long i,j,o,p; long i,j,o,p;
float y; float y;
float *work=alloca(sizeof(*work)*(m+n));
float *work=(float*)alloca(sizeof(*work)*(m+n));
if(!prime) if(!prime)
for(i=0;i<m;i++) for(i=0;i<m;i++)


+ 14
- 14
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/lsp.c View File

@@ -313,11 +313,11 @@ static int comp(const void *a,const void *b){
static int Laguerre_With_Deflation(float *a,int ord,float *r){ static int Laguerre_With_Deflation(float *a,int ord,float *r){
int i,m; int i,m;
double lastdelta=0.f; double lastdelta=0.f;
double *defl=alloca(sizeof(*defl)*(ord+1));
double *defl=(double*)alloca(sizeof(*defl)*(ord+1));
for(i=0;i<=ord;i++)defl[i]=a[i]; for(i=0;i<=ord;i++)defl[i]=a[i];
for(m=ord;m>0;m--){ for(m=ord;m>0;m--){
double new=0.f,delta;
double newx=0.f,delta;
/* iterate a root */ /* iterate a root */
while(1){ while(1){
@@ -325,9 +325,9 @@ static int Laguerre_With_Deflation(float *a,int ord,float *r){
/* eval the polynomial and its first two derivatives */ /* eval the polynomial and its first two derivatives */
for(i=m;i>0;i--){ for(i=m;i>0;i--){
ppp = new*ppp + pp;
pp = new*pp + p;
p = new*p + defl[i-1];
ppp = newx*ppp + pp;
pp = newx*pp + p;
p = newx*p + defl[i-1];
} }
/* Laguerre's method */ /* Laguerre's method */
@@ -344,20 +344,20 @@ static int Laguerre_With_Deflation(float *a,int ord,float *r){
} }
delta = m*p/denom; delta = m*p/denom;
new -= delta;
newx -= delta;
if(delta<0.f)delta*=-1; if(delta<0.f)delta*=-1;
if(fabs(delta/new)<10e-12)break;
if(fabs(delta/newx)<10e-12)break;
lastdelta=delta; lastdelta=delta;
} }
r[m-1]=new;
r[m-1]=newx;
/* forward deflation */ /* forward deflation */
for(i=m;i>0;i--) for(i=m;i>0;i--)
defl[i-1]+=new*defl[i];
defl[i-1]+=newx*defl[i];
defl++; defl++;
} }
@@ -369,7 +369,7 @@ static int Laguerre_With_Deflation(float *a,int ord,float *r){
static int Newton_Raphson(float *a,int ord,float *r){ static int Newton_Raphson(float *a,int ord,float *r){
int i, k, count=0; int i, k, count=0;
double error=1.f; double error=1.f;
double *root=alloca(ord*sizeof(*root));
double *root=(double*)alloca(ord*sizeof(*root));
for(i=0; i<ord;i++) root[i] = r[i]; for(i=0; i<ord;i++) root[i] = r[i];
@@ -408,10 +408,10 @@ static int Newton_Raphson(float *a,int ord,float *r){
int vorbis_lpc_to_lsp(float *lpc,float *lsp,int m){ int vorbis_lpc_to_lsp(float *lpc,float *lsp,int m){
int order2=(m+1)>>1; int order2=(m+1)>>1;
int g1_order,g2_order; int g1_order,g2_order;
float *g1=alloca(sizeof(*g1)*(order2+1));
float *g2=alloca(sizeof(*g2)*(order2+1));
float *g1r=alloca(sizeof(*g1r)*(order2+1));
float *g2r=alloca(sizeof(*g2r)*(order2+1));
float *g1=(float*)alloca(sizeof(*g1)*(order2+1));
float *g2=(float*)alloca(sizeof(*g2)*(order2+1));
float *g1r=(float*)alloca(sizeof(*g1r)*(order2+1));
float *g2r=(float*)alloca(sizeof(*g2r)*(order2+1));
int i; int i;
/* even and odd are slightly different base cases */ /* even and odd are slightly different base cases */


+ 32
- 42
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/mapping0.c View File

@@ -48,16 +48,6 @@ static void mapping0_free_info(vorbis_info_mapping *i){
} }
} }
static int ilog(unsigned int v){
int ret=0;
if(v)--v;
while(v){
ret++;
v>>=1;
}
return(ret);
}
static void mapping0_pack(vorbis_info *vi,vorbis_info_mapping *vm, static void mapping0_pack(vorbis_info *vi,vorbis_info_mapping *vm,
oggpack_buffer *opb){ oggpack_buffer *opb){
int i; int i;
@@ -104,8 +94,8 @@ static void mapping0_pack(vorbis_info *vi,vorbis_info_mapping *vm,
/* also responsible for range checking */ /* also responsible for range checking */
static vorbis_info_mapping *mapping0_unpack(vorbis_info *vi,oggpack_buffer *opb){ static vorbis_info_mapping *mapping0_unpack(vorbis_info *vi,oggpack_buffer *opb){
int i; int i;
vorbis_info_mapping0 *info=_ogg_calloc(1,sizeof(*info));
codec_setup_info *ci=vi->codec_setup;
vorbis_info_mapping0 *info=(vorbis_info_mapping0*)_ogg_calloc(1,sizeof(*info));
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
memset(info,0,sizeof(*info)); memset(info,0,sizeof(*info));
if(oggpack_read(opb,1)) if(oggpack_read(opb,1))
@@ -232,37 +222,37 @@ static float FLOOR1_fromdB_LOOKUP[256]={
#endif #endif
extern int *floor1_fit(vorbis_block *vb,vorbis_look_floor *look,
extern int *floor1_fit(vorbis_block *vb,void *look,
const float *logmdct, /* in */ const float *logmdct, /* in */
const float *logmask); const float *logmask);
extern int *floor1_interpolate_fit(vorbis_block *vb,vorbis_look_floor *look,
extern int *floor1_interpolate_fit(vorbis_block *vb,void *look,
int *A,int *B, int *A,int *B,
int del); int del);
extern int floor1_encode(oggpack_buffer *opb,vorbis_block *vb, extern int floor1_encode(oggpack_buffer *opb,vorbis_block *vb,
vorbis_look_floor *look,
void*look,
int *post,int *ilogmask); int *post,int *ilogmask);
static int mapping0_forward(vorbis_block *vb){ static int mapping0_forward(vorbis_block *vb){
vorbis_dsp_state *vd=vb->vd; vorbis_dsp_state *vd=vb->vd;
vorbis_info *vi=vd->vi; vorbis_info *vi=vd->vi;
codec_setup_info *ci=vi->codec_setup;
private_state *b=vb->vd->backend_state;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
private_state *b=(private_state*)vb->vd->backend_state;
vorbis_block_internal *vbi=(vorbis_block_internal *)vb->internal; vorbis_block_internal *vbi=(vorbis_block_internal *)vb->internal;
int n=vb->pcmend; int n=vb->pcmend;
int i,j,k; int i,j,k;
int *nonzero = alloca(sizeof(*nonzero)*vi->channels);
float **gmdct = _vorbis_block_alloc(vb,vi->channels*sizeof(*gmdct));
int **ilogmaskch= _vorbis_block_alloc(vb,vi->channels*sizeof(*ilogmaskch));
int ***floor_posts = _vorbis_block_alloc(vb,vi->channels*sizeof(*floor_posts));
int *nonzero = (int*) alloca(sizeof(*nonzero)*vi->channels);
float **gmdct = (float**) _vorbis_block_alloc(vb,vi->channels*sizeof(*gmdct));
int **ilogmaskch= (int**) _vorbis_block_alloc(vb,vi->channels*sizeof(*ilogmaskch));
int ***floor_posts = (int***) _vorbis_block_alloc(vb,vi->channels*sizeof(*floor_posts));
float global_ampmax=vbi->ampmax; float global_ampmax=vbi->ampmax;
float *local_ampmax=alloca(sizeof(*local_ampmax)*vi->channels);
float *local_ampmax=(float*)alloca(sizeof(*local_ampmax)*vi->channels);
int blocktype=vbi->blocktype; int blocktype=vbi->blocktype;
int modenumber=vb->W; int modenumber=vb->W;
vorbis_info_mapping0 *info=ci->map_param[modenumber];
vorbis_info_mapping0 *info=(vorbis_info_mapping0*)ci->map_param[modenumber];
vorbis_look_psy *psy_look= vorbis_look_psy *psy_look=
b->psy+blocktype+(vb->W?2:0); b->psy+blocktype+(vb->W?2:0);
@@ -275,7 +265,7 @@ static int mapping0_forward(vorbis_block *vb){
float *pcm =vb->pcm[i]; float *pcm =vb->pcm[i];
float *logfft =pcm; float *logfft =pcm;
gmdct[i]=_vorbis_block_alloc(vb,n/2*sizeof(**gmdct));
gmdct[i]=(float*)_vorbis_block_alloc(vb,n/2*sizeof(**gmdct));
scale_dB=todB(&scale) + .345; /* + .345 is a hack; the original scale_dB=todB(&scale) + .345; /* + .345 is a hack; the original
todB estimation used on IEEE 754 todB estimation used on IEEE 754
@@ -313,7 +303,7 @@ static int mapping0_forward(vorbis_block *vb){
/* transform the PCM data */ /* transform the PCM data */
/* only MDCT right now.... */ /* only MDCT right now.... */
mdct_forward(b->transform[vb->W][0],pcm,gmdct[i]);
mdct_forward((mdct_lookup*) b->transform[vb->W][0],pcm,gmdct[i]);
/* FFT yields more accurate tonal estimation (not phase sensitive) */ /* FFT yields more accurate tonal estimation (not phase sensitive) */
drft_forward(&b->fft_look[vb->W],pcm); drft_forward(&b->fft_look[vb->W],pcm);
@@ -368,8 +358,8 @@ static int mapping0_forward(vorbis_block *vb){
} }
{ {
float *noise = _vorbis_block_alloc(vb,n/2*sizeof(*noise));
float *tone = _vorbis_block_alloc(vb,n/2*sizeof(*tone));
float *noise = (float*) _vorbis_block_alloc(vb,n/2*sizeof(*noise));
float *tone = (float*) _vorbis_block_alloc(vb,n/2*sizeof(*tone));
for(i=0;i<vi->channels;i++){ for(i=0;i<vi->channels;i++){
/* the encoder setup assumes that all the modes used by any /* the encoder setup assumes that all the modes used by any
@@ -386,7 +376,7 @@ static int mapping0_forward(vorbis_block *vb){
vb->mode=modenumber; vb->mode=modenumber;
floor_posts[i]=_vorbis_block_alloc(vb,PACKETBLOBS*sizeof(**floor_posts));
floor_posts[i]=(int**) _vorbis_block_alloc(vb,PACKETBLOBS*sizeof(**floor_posts));
memset(floor_posts[i],0,sizeof(**floor_posts)*PACKETBLOBS); memset(floor_posts[i],0,sizeof(**floor_posts)*PACKETBLOBS);
for(j=0;j<n/2;j++) for(j=0;j<n/2;j++)
@@ -585,10 +575,10 @@ static int mapping0_forward(vorbis_block *vb){
/* iterate over the many masking curve fits we've created */ /* iterate over the many masking curve fits we've created */
{ {
float **res_bundle=alloca(sizeof(*res_bundle)*vi->channels);
float **couple_bundle=alloca(sizeof(*couple_bundle)*vi->channels);
int *zerobundle=alloca(sizeof(*zerobundle)*vi->channels);
int **sortindex=alloca(sizeof(*sortindex)*vi->channels);
float **res_bundle=(float**) alloca(sizeof(*res_bundle)*vi->channels);
float **couple_bundle=(float**) alloca(sizeof(*couple_bundle)*vi->channels);
int *zerobundle=(int*) alloca(sizeof(*zerobundle)*vi->channels);
int **sortindex=(int**) alloca(sizeof(*sortindex)*vi->channels);
float **mag_memo; float **mag_memo;
int **mag_sort; int **mag_sort;
@@ -614,7 +604,7 @@ static int mapping0_forward(vorbis_block *vb){
if(psy_look->vi->normal_channel_p){ if(psy_look->vi->normal_channel_p){
for(i=0;i<vi->channels;i++){ for(i=0;i<vi->channels;i++){
float *mdct =gmdct[i]; float *mdct =gmdct[i];
sortindex[i]=alloca(sizeof(**sortindex)*n/2);
sortindex[i]=(int*) alloca(sizeof(**sortindex)*n/2);
_vp_noise_normalize_sort(psy_look,mdct,sortindex[i]); _vp_noise_normalize_sort(psy_look,mdct,sortindex[i]);
} }
} }
@@ -641,7 +631,7 @@ static int mapping0_forward(vorbis_block *vb){
float *mdct =gmdct[i]; float *mdct =gmdct[i];
float *res =vb->pcm[i]; float *res =vb->pcm[i];
int *ilogmask=ilogmaskch[i]= int *ilogmask=ilogmaskch[i]=
_vorbis_block_alloc(vb,n/2*sizeof(**gmdct));
(int*) _vorbis_block_alloc(vb,n/2*sizeof(**gmdct));
nonzero[i]=floor1_encode(opb,vb,b->flr[info->floorsubmap[submap]], nonzero[i]=floor1_encode(opb,vb,b->flr[info->floorsubmap[submap]],
floor_posts[i][k], floor_posts[i][k],
@@ -713,7 +703,7 @@ static int mapping0_forward(vorbis_block *vb){
} }
classifications=_residue_P[ci->residue_type[resnum]]-> classifications=_residue_P[ci->residue_type[resnum]]->
class(vb,b->residue[resnum],couple_bundle,zerobundle,ch_in_bundle);
classx(vb,b->residue[resnum],couple_bundle,zerobundle,ch_in_bundle);
_residue_P[ci->residue_type[resnum]]-> _residue_P[ci->residue_type[resnum]]->
forward(opb,vb,b->residue[resnum], forward(opb,vb,b->residue[resnum],
@@ -735,18 +725,18 @@ static int mapping0_forward(vorbis_block *vb){
static int mapping0_inverse(vorbis_block *vb,vorbis_info_mapping *l){ static int mapping0_inverse(vorbis_block *vb,vorbis_info_mapping *l){
vorbis_dsp_state *vd=vb->vd; vorbis_dsp_state *vd=vb->vd;
vorbis_info *vi=vd->vi; vorbis_info *vi=vd->vi;
codec_setup_info *ci=vi->codec_setup;
private_state *b=vd->backend_state;
codec_setup_info *ci=(codec_setup_info*) vi->codec_setup;
private_state *b=(private_state*)vd->backend_state;
vorbis_info_mapping0 *info=(vorbis_info_mapping0 *)l; vorbis_info_mapping0 *info=(vorbis_info_mapping0 *)l;
int i,j; int i,j;
long n=vb->pcmend=ci->blocksizes[vb->W]; long n=vb->pcmend=ci->blocksizes[vb->W];
float **pcmbundle=alloca(sizeof(*pcmbundle)*vi->channels);
int *zerobundle=alloca(sizeof(*zerobundle)*vi->channels);
float **pcmbundle=(float**) alloca(sizeof(*pcmbundle)*vi->channels);
int *zerobundle=(int*) alloca(sizeof(*zerobundle)*vi->channels);
int *nonzero =alloca(sizeof(*nonzero)*vi->channels);
void **floormemo=alloca(sizeof(*floormemo)*vi->channels);
int *nonzero =(int*) alloca(sizeof(*nonzero)*vi->channels);
void **floormemo=(void**) alloca(sizeof(*floormemo)*vi->channels);
/* recover the spectral envelope; store it in the PCM vector for now */ /* recover the spectral envelope; store it in the PCM vector for now */
for(i=0;i<vi->channels;i++){ for(i=0;i<vi->channels;i++){
@@ -828,7 +818,7 @@ static int mapping0_inverse(vorbis_block *vb,vorbis_info_mapping *l){
/* only MDCT right now.... */ /* only MDCT right now.... */
for(i=0;i<vi->channels;i++){ for(i=0;i<vi->channels;i++){
float *pcm=vb->pcm[i]; float *pcm=vb->pcm[i];
mdct_backward(b->transform[vb->W][0],pcm,pcm);
mdct_backward((mdct_lookup*) b->transform[vb->W][0],pcm,pcm);
} }
/* all done! */ /* all done! */


+ 3
- 3
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/mdct.c View File

@@ -53,8 +53,8 @@
some window function algebra. */ some window function algebra. */
void mdct_init(mdct_lookup *lookup,int n){ void mdct_init(mdct_lookup *lookup,int n){
int *bitrev=_ogg_malloc(sizeof(*bitrev)*(n/4));
DATA_TYPE *T=_ogg_malloc(sizeof(*T)*(n+n/4));
int *bitrev=(int*) _ogg_malloc(sizeof(*bitrev)*(n/4));
DATA_TYPE *T=(DATA_TYPE*) _ogg_malloc(sizeof(*T)*(n+n/4));
int i; int i;
int n2=n>>1; int n2=n>>1;
@@ -498,7 +498,7 @@ void mdct_forward(mdct_lookup *init, DATA_TYPE *in, DATA_TYPE *out){
int n2=n>>1; int n2=n>>1;
int n4=n>>2; int n4=n>>2;
int n8=n>>3; int n8=n>>3;
DATA_TYPE *w=alloca(n*sizeof(*w)); /* forward needs working space */
DATA_TYPE *w=(DATA_TYPE*) alloca(n*sizeof(*w)); /* forward needs working space */
DATA_TYPE *w2=w+n2; DATA_TYPE *w2=w+n2;
/* rotate */ /* rotate */


+ 27
- 27
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/psy.c View File

@@ -37,9 +37,9 @@ static double stereo_threshholds[]={0.0, .5, 1.0, 1.5, 2.5, 4.5, 8.5, 16.5, 9e10
static double stereo_threshholds_limited[]={0.0, .5, 1.0, 1.5, 2.0, 2.5, 4.5, 8.5, 9e10}; static double stereo_threshholds_limited[]={0.0, .5, 1.0, 1.5, 2.0, 2.5, 4.5, 8.5, 9e10};
vorbis_look_psy_global *_vp_global_look(vorbis_info *vi){ vorbis_look_psy_global *_vp_global_look(vorbis_info *vi){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
vorbis_info_psy_global *gi=&ci->psy_g_param; vorbis_info_psy_global *gi=&ci->psy_g_param;
vorbis_look_psy_global *look=_ogg_calloc(1,sizeof(*look));
vorbis_look_psy_global *look=(vorbis_look_psy_global*)_ogg_calloc(1,sizeof(*look));
look->channels=vi->channels; look->channels=vi->channels;
@@ -92,9 +92,9 @@ static float ***setup_tone_curves(float curveatt_dB[P_BANDS],float binHz,int n,
float ath[EHMER_MAX]; float ath[EHMER_MAX];
float workc[P_BANDS][P_LEVELS][EHMER_MAX]; float workc[P_BANDS][P_LEVELS][EHMER_MAX];
float athc[P_LEVELS][EHMER_MAX]; float athc[P_LEVELS][EHMER_MAX];
float *brute_buffer=alloca(n*sizeof(*brute_buffer));
float *brute_buffer=(float*) alloca(n*sizeof(*brute_buffer));
float ***ret=_ogg_malloc(sizeof(*ret)*P_BANDS);
float ***ret=(float***) _ogg_malloc(sizeof(*ret)*P_BANDS);
memset(workc,0,sizeof(workc)); memset(workc,0,sizeof(workc));
@@ -161,7 +161,7 @@ static float ***setup_tone_curves(float curveatt_dB[P_BANDS],float binHz,int n,
for(i=0;i<P_BANDS;i++){ for(i=0;i<P_BANDS;i++){
int hi_curve,lo_curve,bin; int hi_curve,lo_curve,bin;
ret[i]=_ogg_malloc(sizeof(**ret)*P_LEVELS);
ret[i]=(float**)_ogg_malloc(sizeof(**ret)*P_LEVELS);
/* low frequency curves are measured with greater resolution than /* low frequency curves are measured with greater resolution than
the MDCT/FFT will actually give us; we want the curve applied the MDCT/FFT will actually give us; we want the curve applied
@@ -181,7 +181,7 @@ static float ***setup_tone_curves(float curveatt_dB[P_BANDS],float binHz,int n,
if(hi_curve>=P_BANDS)hi_curve=P_BANDS-1; if(hi_curve>=P_BANDS)hi_curve=P_BANDS-1;
for(m=0;m<P_LEVELS;m++){ for(m=0;m<P_LEVELS;m++){
ret[i][m]=_ogg_malloc(sizeof(***ret)*(EHMER_MAX+2));
ret[i][m]=(float*)_ogg_malloc(sizeof(***ret)*(EHMER_MAX+2));
for(j=0;j<n;j++)brute_buffer[j]=999.; for(j=0;j<n;j++)brute_buffer[j]=999.;
@@ -279,10 +279,10 @@ void _vp_psy_init(vorbis_look_psy *p,vorbis_info_psy *vi,
p->firstoc=toOC(.25f*rate*.5/n)*(1<<(p->shiftoc+1))-gi->eighth_octave_lines; p->firstoc=toOC(.25f*rate*.5/n)*(1<<(p->shiftoc+1))-gi->eighth_octave_lines;
maxoc=toOC((n+.25f)*rate*.5/n)*(1<<(p->shiftoc+1))+.5f; maxoc=toOC((n+.25f)*rate*.5/n)*(1<<(p->shiftoc+1))+.5f;
p->total_octave_lines=maxoc-p->firstoc+1; p->total_octave_lines=maxoc-p->firstoc+1;
p->ath=_ogg_malloc(n*sizeof(*p->ath));
p->ath=(float*)_ogg_malloc(n*sizeof(*p->ath));
p->octave=_ogg_malloc(n*sizeof(*p->octave));
p->bark=_ogg_malloc(n*sizeof(*p->bark));
p->octave=(long*)_ogg_malloc(n*sizeof(*p->octave));
p->bark=(long*)_ogg_malloc(n*sizeof(*p->bark));
p->vi=vi; p->vi=vi;
p->n=n; p->n=n;
p->rate=rate; p->rate=rate;
@@ -327,9 +327,9 @@ void _vp_psy_init(vorbis_look_psy *p,vorbis_info_psy *vi,
vi->tone_centerboost,vi->tone_decay); vi->tone_centerboost,vi->tone_decay);
/* set up rolling noise median */ /* set up rolling noise median */
p->noiseoffset=_ogg_malloc(P_NOISECURVES*sizeof(*p->noiseoffset));
p->noiseoffset=(float**)_ogg_malloc(P_NOISECURVES*sizeof(*p->noiseoffset));
for(i=0;i<P_NOISECURVES;i++) for(i=0;i<P_NOISECURVES;i++)
p->noiseoffset[i]=_ogg_malloc(n*sizeof(**p->noiseoffset));
p->noiseoffset[i]=(float*)_ogg_malloc(n*sizeof(**p->noiseoffset));
for(i=0;i<n;i++){ for(i=0;i<n;i++){
float halfoc=toOC((i+.5)*rate/(2.*n))*2.; float halfoc=toOC((i+.5)*rate/(2.*n))*2.;
@@ -448,8 +448,8 @@ static void seed_loop(vorbis_look_psy *p,
} }
static void seed_chase(float *seeds, int linesper, long n){ static void seed_chase(float *seeds, int linesper, long n){
long *posstack=alloca(n*sizeof(*posstack));
float *ampstack=alloca(n*sizeof(*ampstack));
long *posstack=(long*)alloca(n*sizeof(*posstack));
float *ampstack=(float*)alloca(n*sizeof(*ampstack));
long stack=0; long stack=0;
long pos=0; long pos=0;
long i; long i;
@@ -546,11 +546,11 @@ static void bark_noise_hybridmp(int n,const long *b,
const float offset, const float offset,
const int fixed){ const int fixed){
float *N=alloca(n*sizeof(*N));
float *X=alloca(n*sizeof(*N));
float *XX=alloca(n*sizeof(*N));
float *Y=alloca(n*sizeof(*N));
float *XY=alloca(n*sizeof(*N));
float *N=(float*) alloca(n*sizeof(*N));
float *X=(float*) alloca(n*sizeof(*N));
float *XX=(float*) alloca(n*sizeof(*N));
float *Y=(float*) alloca(n*sizeof(*N));
float *XY=(float*) alloca(n*sizeof(*N));
float tN, tX, tXX, tY, tXY; float tN, tX, tXX, tY, tXY;
int i; int i;
@@ -783,7 +783,7 @@ void _vp_noisemask(vorbis_look_psy *p,
float *logmask){ float *logmask){
int i,n=p->n; int i,n=p->n;
float *work=alloca(n*sizeof(*work));
float *work=(float*) alloca(n*sizeof(*work));
bark_noise_hybridmp(n,p->bark,logmdct,logmask, bark_noise_hybridmp(n,p->bark,logmdct,logmask,
140.,-1); 140.,-1);
@@ -834,7 +834,7 @@ void _vp_tonemask(vorbis_look_psy *p,
int i,n=p->n; int i,n=p->n;
float *seed=alloca(sizeof(*seed)*p->total_octave_lines);
float *seed=(float*) alloca(sizeof(*seed)*p->total_octave_lines);
float att=local_specmax+p->vi->ath_adjatt; float att=local_specmax+p->vi->ath_adjatt;
for(i=0;i<p->total_octave_lines;i++)seed[i]=NEGINF; for(i=0;i<p->total_octave_lines;i++)seed[i]=NEGINF;
@@ -911,7 +911,7 @@ void _vp_offset_and_mix(vorbis_look_psy *p,
float _vp_ampmax_decay(float amp,vorbis_dsp_state *vd){ float _vp_ampmax_decay(float amp,vorbis_dsp_state *vd){
vorbis_info *vi=vd->vi; vorbis_info *vi=vd->vi;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
vorbis_info_psy_global *gi=&ci->psy_g_param; vorbis_info_psy_global *gi=&ci->psy_g_param;
int n=ci->blocksizes[vd->W]/2; int n=ci->blocksizes[vd->W]/2;
@@ -1001,13 +1001,13 @@ float **_vp_quantize_couple_memo(vorbis_block *vb,
float **mdct){ float **mdct){
int i,j,n=p->n; int i,j,n=p->n;
float **ret=_vorbis_block_alloc(vb,vi->coupling_steps*sizeof(*ret));
float **ret=(float**) _vorbis_block_alloc(vb,vi->coupling_steps*sizeof(*ret));
int limit=g->coupling_pointlimit[p->vi->blockflag][PACKETBLOBS/2]; int limit=g->coupling_pointlimit[p->vi->blockflag][PACKETBLOBS/2];
for(i=0;i<vi->coupling_steps;i++){ for(i=0;i<vi->coupling_steps;i++){
float *mdctM=mdct[vi->coupling_mag[i]]; float *mdctM=mdct[vi->coupling_mag[i]];
float *mdctA=mdct[vi->coupling_ang[i]]; float *mdctA=mdct[vi->coupling_ang[i]];
ret[i]=_vorbis_block_alloc(vb,n*sizeof(**ret));
ret[i]=(float*) _vorbis_block_alloc(vb,n*sizeof(**ret));
for(j=0;j<limit;j++) for(j=0;j<limit;j++)
ret[i][j]=dipole_hypot(mdctM[j],mdctA[j]); ret[i][j]=dipole_hypot(mdctM[j],mdctA[j]);
for(;j<n;j++) for(;j<n;j++)
@@ -1032,12 +1032,12 @@ int **_vp_quantize_couple_sort(vorbis_block *vb,
if(p->vi->normal_point_p){ if(p->vi->normal_point_p){
int i,j,k,n=p->n; int i,j,k,n=p->n;
int **ret=_vorbis_block_alloc(vb,vi->coupling_steps*sizeof(*ret));
int **ret=(int**) _vorbis_block_alloc(vb,vi->coupling_steps*sizeof(*ret));
int partition=p->vi->normal_partition; int partition=p->vi->normal_partition;
float **work=alloca(sizeof(*work)*partition);
float **work=(float**) alloca(sizeof(*work)*partition);
for(i=0;i<vi->coupling_steps;i++){ for(i=0;i<vi->coupling_steps;i++){
ret[i]=_vorbis_block_alloc(vb,n*sizeof(**ret));
ret[i]=(int*) _vorbis_block_alloc(vb,n*sizeof(**ret));
for(j=0;j<n;j+=partition){ for(j=0;j<n;j+=partition){
for(k=0;k<partition;k++)work[k]=mags[i]+k+j; for(k=0;k<partition;k++)work[k]=mags[i]+k+j;
@@ -1055,7 +1055,7 @@ void _vp_noise_normalize_sort(vorbis_look_psy *p,
int i,j,n=p->n; int i,j,n=p->n;
vorbis_info_psy *vi=p->vi; vorbis_info_psy *vi=p->vi;
int partition=vi->normal_partition; int partition=vi->normal_partition;
float **work=alloca(sizeof(*work)*partition);
float **work=(float**) alloca(sizeof(*work)*partition);
int start=vi->normal_start; int start=vi->normal_start;
for(j=start;j<n;j+=partition){ for(j=start;j<n;j+=partition){


+ 20
- 29
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/res0.c View File

@@ -151,15 +151,6 @@ void res0_free_look(vorbis_look_residue *i){
} }
} }
static int ilog(unsigned int v){
int ret=0;
while(v){
ret++;
v>>=1;
}
return(ret);
}
static int icount(unsigned int v){ static int icount(unsigned int v){
int ret=0; int ret=0;
while(v){ while(v){
@@ -202,8 +193,8 @@ void res0_pack(vorbis_info_residue *vr,oggpack_buffer *opb){
/* vorbis_info is for range checking */ /* vorbis_info is for range checking */
vorbis_info_residue *res0_unpack(vorbis_info *vi,oggpack_buffer *opb){ vorbis_info_residue *res0_unpack(vorbis_info *vi,oggpack_buffer *opb){
int j,acc=0; int j,acc=0;
vorbis_info_residue0 *info=_ogg_calloc(1,sizeof(*info));
codec_setup_info *ci=vi->codec_setup;
vorbis_info_residue0 *info=(vorbis_info_residue0*) _ogg_calloc(1,sizeof(*info));
codec_setup_info *ci=(codec_setup_info*) vi->codec_setup;
info->begin=oggpack_read(opb,24); info->begin=oggpack_read(opb,24);
info->end=oggpack_read(opb,24); info->end=oggpack_read(opb,24);
@@ -235,8 +226,8 @@ vorbis_info_residue *res0_unpack(vorbis_info *vi,oggpack_buffer *opb){
vorbis_look_residue *res0_look(vorbis_dsp_state *vd, vorbis_look_residue *res0_look(vorbis_dsp_state *vd,
vorbis_info_residue *vr){ vorbis_info_residue *vr){
vorbis_info_residue0 *info=(vorbis_info_residue0 *)vr; vorbis_info_residue0 *info=(vorbis_info_residue0 *)vr;
vorbis_look_residue0 *look=_ogg_calloc(1,sizeof(*look));
codec_setup_info *ci=vd->vi->codec_setup;
vorbis_look_residue0 *look=(vorbis_look_residue0 *)_ogg_calloc(1,sizeof(*look));
codec_setup_info *ci=(codec_setup_info*)vd->vi->codec_setup;
int j,k,acc=0; int j,k,acc=0;
int dim; int dim;
@@ -248,13 +239,13 @@ vorbis_look_residue *res0_look(vorbis_dsp_state *vd,
look->phrasebook=ci->fullbooks+info->groupbook; look->phrasebook=ci->fullbooks+info->groupbook;
dim=look->phrasebook->dim; dim=look->phrasebook->dim;
look->partbooks=_ogg_calloc(look->parts,sizeof(*look->partbooks));
look->partbooks=(codebook***)_ogg_calloc(look->parts,sizeof(*look->partbooks));
for(j=0;j<look->parts;j++){ for(j=0;j<look->parts;j++){
int stages=ilog(info->secondstages[j]); int stages=ilog(info->secondstages[j]);
if(stages){ if(stages){
if(stages>maxstage)maxstage=stages; if(stages>maxstage)maxstage=stages;
look->partbooks[j]=_ogg_calloc(stages,sizeof(*look->partbooks[j]));
look->partbooks[j]=(codebook**) _ogg_calloc(stages,sizeof(*look->partbooks[j]));
for(k=0;k<stages;k++) for(k=0;k<stages;k++)
if(info->secondstages[j]&(1<<k)){ if(info->secondstages[j]&(1<<k)){
look->partbooks[j][k]=ci->fullbooks+info->booklist[acc++]; look->partbooks[j][k]=ci->fullbooks+info->booklist[acc++];
@@ -268,11 +259,11 @@ vorbis_look_residue *res0_look(vorbis_dsp_state *vd,
look->partvals=rint(pow((float)look->parts,(float)dim)); look->partvals=rint(pow((float)look->parts,(float)dim));
look->stages=maxstage; look->stages=maxstage;
look->decodemap=_ogg_malloc(look->partvals*sizeof(*look->decodemap));
look->decodemap=(int**)_ogg_malloc(look->partvals*sizeof(*look->decodemap));
for(j=0;j<look->partvals;j++){ for(j=0;j<look->partvals;j++){
long val=j; long val=j;
long mult=look->partvals/look->parts; long mult=look->partvals/look->parts;
look->decodemap[j]=_ogg_malloc(dim*sizeof(*look->decodemap[j]));
look->decodemap[j]=(int*)_ogg_malloc(dim*sizeof(*look->decodemap[j]));
for(k=0;k<dim;k++){ for(k=0;k<dim;k++){
long deco=val/mult; long deco=val/mult;
val-=deco*mult; val-=deco*mult;
@@ -325,13 +316,13 @@ static int local_book_besterror(codebook *book,float *a){
best=-1; best=-1;
for(i=0;i<book->entries;i++){ for(i=0;i<book->entries;i++){
if(c->lengthlist[i]>0){ if(c->lengthlist[i]>0){
float this=0.f;
float thisx=0.f;
for(j=0;j<dim;j++){ for(j=0;j<dim;j++){
float val=(e[j]-a[j]); float val=(e[j]-a[j]);
this+=val*val;
thisx+=val*val;
} }
if(best==-1 || this<bestf){
bestf=this;
if(best==-1 || thisx<bestf){
bestf=thisx;
best=i; best=i;
} }
} }
@@ -379,7 +370,7 @@ static long **_01class(vorbis_block *vb,vorbis_look_residue *vl,
int n=info->end-info->begin; int n=info->end-info->begin;
int partvals=n/samples_per_partition; int partvals=n/samples_per_partition;
long **partword=_vorbis_block_alloc(vb,ch*sizeof(*partword));
long **partword=(long**)_vorbis_block_alloc(vb,ch*sizeof(*partword));
float scale=100./samples_per_partition; float scale=100./samples_per_partition;
/* we find the partition type for each partition of each /* we find the partition type for each partition of each
@@ -387,7 +378,7 @@ static long **_01class(vorbis_block *vb,vorbis_look_residue *vl,
bit. For now, clarity */ bit. For now, clarity */
for(i=0;i<ch;i++){ for(i=0;i<ch;i++){
partword[i]=_vorbis_block_alloc(vb,n/samples_per_partition*sizeof(*partword[i]));
partword[i]=(long*)_vorbis_block_alloc(vb,n/samples_per_partition*sizeof(*partword[i]));
memset(partword[i],0,n/samples_per_partition*sizeof(*partword[i])); memset(partword[i],0,n/samples_per_partition*sizeof(*partword[i]));
} }
@@ -446,14 +437,14 @@ static long **_2class(vorbis_block *vb,vorbis_look_residue *vl,float **in,
int n=info->end-info->begin; int n=info->end-info->begin;
int partvals=n/samples_per_partition; int partvals=n/samples_per_partition;
long **partword=_vorbis_block_alloc(vb,sizeof(*partword));
long **partword=(long**)_vorbis_block_alloc(vb,sizeof(*partword));
#if defined(TRAIN_RES) || defined (TRAIN_RESAUX) #if defined(TRAIN_RES) || defined (TRAIN_RESAUX)
FILE *of; FILE *of;
char buffer[80]; char buffer[80];
#endif #endif
partword[0]=_vorbis_block_alloc(vb,n*ch/samples_per_partition*sizeof(*partword[0]));
partword[0]=(long*)_vorbis_block_alloc(vb,n*ch/samples_per_partition*sizeof(*partword[0]));
memset(partword[0],0,n*ch/samples_per_partition*sizeof(*partword[0])); memset(partword[0],0,n*ch/samples_per_partition*sizeof(*partword[0]));
for(i=0,l=info->begin/ch;i<partvals;i++){ for(i=0,l=info->begin/ch;i<partvals;i++){
@@ -620,10 +611,10 @@ static int _01inverse(vorbis_block *vb,vorbis_look_residue *vl,
int partvals=n/samples_per_partition; int partvals=n/samples_per_partition;
int partwords=(partvals+partitions_per_word-1)/partitions_per_word; int partwords=(partvals+partitions_per_word-1)/partitions_per_word;
int ***partword=alloca(ch*sizeof(*partword));
int ***partword=(int***)alloca(ch*sizeof(*partword));
for(j=0;j<ch;j++) for(j=0;j<ch;j++)
partword[j]=_vorbis_block_alloc(vb,partwords*sizeof(*partword[j]));
partword[j]=(int**)_vorbis_block_alloc(vb,partwords*sizeof(*partword[j]));
for(s=0;s<look->stages;s++){ for(s=0;s<look->stages;s++){
@@ -796,7 +787,7 @@ int res2_forward(oggpack_buffer *opb,
/* don't duplicate the code; use a working vector hack for now and /* don't duplicate the code; use a working vector hack for now and
reshape ourselves into a single channel res1 */ reshape ourselves into a single channel res1 */
/* ugly; reallocs for each coupling pass :-( */ /* ugly; reallocs for each coupling pass :-( */
float *work=_vorbis_block_alloc(vb,ch*n*sizeof(*work));
float *work=(float*)_vorbis_block_alloc(vb,ch*n*sizeof(*work));
for(i=0;i<ch;i++){ for(i=0;i<ch;i++){
float *pcm=in[i]; float *pcm=in[i];
if(nonzero[i])used++; if(nonzero[i])used++;
@@ -836,7 +827,7 @@ int res2_inverse(vorbis_block *vb,vorbis_look_residue *vl,
int partvals=n/samples_per_partition; int partvals=n/samples_per_partition;
int partwords=(partvals+partitions_per_word-1)/partitions_per_word; int partwords=(partvals+partitions_per_word-1)/partitions_per_word;
int **partword=_vorbis_block_alloc(vb,partwords*sizeof(*partword));
int **partword=(int**)_vorbis_block_alloc(vb,partwords*sizeof(*partword));
for(i=0;i<ch;i++)if(nonzero[i])break; for(i=0;i<ch;i++)if(nonzero[i])break;
if(i==ch)return(0); /* no nonzero vectors */ if(i==ch)return(0); /* no nonzero vectors */


+ 11
- 19
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/sharedbook.c View File

@@ -76,7 +76,7 @@ float _float32_unpack(long val){
ogg_uint32_t *_make_words(long *l,long n,long sparsecount){ ogg_uint32_t *_make_words(long *l,long n,long sparsecount){
long i,j,count=0; long i,j,count=0;
ogg_uint32_t marker[33]; ogg_uint32_t marker[33];
ogg_uint32_t *r=_ogg_malloc((sparsecount?sparsecount:n)*sizeof(*r));
ogg_uint32_t *r=(ogg_uint32_t*)_ogg_malloc((sparsecount?sparsecount:n)*sizeof(*r));
memset(marker,0,sizeof(marker)); memset(marker,0,sizeof(marker));
for(i=0;i<n;i++){ for(i=0;i<n;i++){
@@ -189,7 +189,7 @@ float *_book_unquantize(const static_codebook *b,int n,int *sparsemap){
int quantvals; int quantvals;
float mindel=_float32_unpack(b->q_min); float mindel=_float32_unpack(b->q_min);
float delta=_float32_unpack(b->q_delta); float delta=_float32_unpack(b->q_delta);
float *r=_ogg_calloc(n*b->dim,sizeof(*r));
float *r=(float*)_ogg_calloc(n*b->dim,sizeof(*r));
/* maptype 1 and 2 both use a quantized value vector, but /* maptype 1 and 2 both use a quantized value vector, but
different sizes */ different sizes */
@@ -304,14 +304,6 @@ int vorbis_book_init_encode(codebook *c,const static_codebook *s){
return(0); return(0);
} }
static ogg_uint32_t bitreverse(ogg_uint32_t x){
x= ((x>>16)&0x0000ffffUL) | ((x<<16)&0xffff0000UL);
x= ((x>> 8)&0x00ff00ffUL) | ((x<< 8)&0xff00ff00UL);
x= ((x>> 4)&0x0f0f0f0fUL) | ((x<< 4)&0xf0f0f0f0UL);
x= ((x>> 2)&0x33333333UL) | ((x<< 2)&0xccccccccUL);
return((x>> 1)&0x55555555UL) | ((x<< 1)&0xaaaaaaaaUL);
}
static int sort32a(const void *a,const void *b){ static int sort32a(const void *a,const void *b){
return ( **(ogg_uint32_t **)a>**(ogg_uint32_t **)b)- return ( **(ogg_uint32_t **)a>**(ogg_uint32_t **)b)-
( **(ogg_uint32_t **)a<**(ogg_uint32_t **)b); ( **(ogg_uint32_t **)a<**(ogg_uint32_t **)b);
@@ -345,7 +337,7 @@ int vorbis_book_init_decode(codebook *c,const static_codebook *s){
{ {
/* perform sort */ /* perform sort */
ogg_uint32_t *codes=_make_words(s->lengthlist,s->entries,c->used_entries); ogg_uint32_t *codes=_make_words(s->lengthlist,s->entries,c->used_entries);
ogg_uint32_t **codep=alloca(sizeof(*codep)*n);
ogg_uint32_t **codep=(ogg_uint32_t**)alloca(sizeof(*codep)*n);
if(codes==NULL)goto err_out; if(codes==NULL)goto err_out;
@@ -356,8 +348,8 @@ int vorbis_book_init_decode(codebook *c,const static_codebook *s){
qsort(codep,n,sizeof(*codep),sort32a); qsort(codep,n,sizeof(*codep),sort32a);
sortindex=alloca(n*sizeof(*sortindex));
c->codelist=_ogg_malloc(n*sizeof(*c->codelist));
sortindex=(int*)alloca(n*sizeof(*sortindex));
c->codelist=(ogg_uint32_t*)_ogg_malloc(n*sizeof(*c->codelist));
/* the index is a reverse index */ /* the index is a reverse index */
for(i=0;i<n;i++){ for(i=0;i<n;i++){
int position=codep[i]-codes; int position=codep[i]-codes;
@@ -370,13 +362,13 @@ int vorbis_book_init_decode(codebook *c,const static_codebook *s){
} }
c->valuelist=_book_unquantize(s,n,sortindex); c->valuelist=_book_unquantize(s,n,sortindex);
c->dec_index=_ogg_malloc(n*sizeof(*c->dec_index));
c->dec_index=(int*)_ogg_malloc(n*sizeof(*c->dec_index));
for(n=0,i=0;i<s->entries;i++) for(n=0,i=0;i<s->entries;i++)
if(s->lengthlist[i]>0) if(s->lengthlist[i]>0)
c->dec_index[sortindex[n++]]=i; c->dec_index[sortindex[n++]]=i;
c->dec_codelengths=_ogg_malloc(n*sizeof(*c->dec_codelengths));
c->dec_codelengths=(char*)_ogg_malloc(n*sizeof(*c->dec_codelengths));
for(n=0,i=0;i<s->entries;i++) for(n=0,i=0;i<s->entries;i++)
if(s->lengthlist[i]>0) if(s->lengthlist[i]>0)
c->dec_codelengths[sortindex[n++]]=s->lengthlist[i]; c->dec_codelengths[sortindex[n++]]=s->lengthlist[i];
@@ -386,7 +378,7 @@ int vorbis_book_init_decode(codebook *c,const static_codebook *s){
if(c->dec_firsttablen>8)c->dec_firsttablen=8; if(c->dec_firsttablen>8)c->dec_firsttablen=8;
tabn=1<<c->dec_firsttablen; tabn=1<<c->dec_firsttablen;
c->dec_firsttable=_ogg_calloc(tabn,sizeof(*c->dec_firsttable));
c->dec_firsttable=(ogg_uint32_t*)_ogg_calloc(tabn,sizeof(*c->dec_firsttable));
c->dec_maxlength=0; c->dec_maxlength=0;
for(i=0;i<n;i++){ for(i=0;i<n;i++){
@@ -558,9 +550,9 @@ int _best(codebook *book, float *a, int step){
float *e=book->valuelist; float *e=book->valuelist;
for(i=0;i<book->entries;i++){ for(i=0;i<book->entries;i++){
if(c->lengthlist[i]>0){ if(c->lengthlist[i]>0){
float this=_dist(dim,e,a,step);
if(besti==-1 || this<best){
best=this;
float thisx=_dist(dim,e,a,step);
if(besti==-1 || thisx<best){
best=thisx;
besti=i; besti=i;
} }
} }


+ 2
- 2
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/smallft.c View File

@@ -1244,8 +1244,8 @@ void drft_backward(drft_lookup *l,float *data){
void drft_init(drft_lookup *l,int n){ void drft_init(drft_lookup *l,int n){
l->n=n; l->n=n;
l->trigcache=_ogg_calloc(3*n,sizeof(*l->trigcache));
l->splitcache=_ogg_calloc(32,sizeof(*l->splitcache));
l->trigcache=(float*)_ogg_calloc(3*n,sizeof(*l->trigcache));
l->splitcache=(int*)_ogg_calloc(32,sizeof(*l->splitcache));
fdrffti(n, l->trigcache, l->splitcache); fdrffti(n, l->trigcache, l->splitcache);
} }


+ 9
- 9
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/synthesis.c View File

@@ -28,9 +28,9 @@
int vorbis_synthesis(vorbis_block *vb,ogg_packet *op){ int vorbis_synthesis(vorbis_block *vb,ogg_packet *op){
vorbis_dsp_state *vd=vb->vd; vorbis_dsp_state *vd=vb->vd;
private_state *b=vd->backend_state;
private_state *b=(private_state*)vd->backend_state;
vorbis_info *vi=vd->vi; vorbis_info *vi=vd->vi;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*) vi->codec_setup;
oggpack_buffer *opb=&vb->opb; oggpack_buffer *opb=&vb->opb;
int type,mode,i; int type,mode,i;
@@ -69,9 +69,9 @@ int vorbis_synthesis(vorbis_block *vb,ogg_packet *op){
/* alloc pcm passback storage */ /* alloc pcm passback storage */
vb->pcmend=ci->blocksizes[vb->W]; vb->pcmend=ci->blocksizes[vb->W];
vb->pcm=_vorbis_block_alloc(vb,sizeof(*vb->pcm)*vi->channels);
vb->pcm=(float**)_vorbis_block_alloc(vb,sizeof(*vb->pcm)*vi->channels);
for(i=0;i<vi->channels;i++) for(i=0;i<vi->channels;i++)
vb->pcm[i]=_vorbis_block_alloc(vb,vb->pcmend*sizeof(*vb->pcm[i]));
vb->pcm[i]=(float*)_vorbis_block_alloc(vb,vb->pcmend*sizeof(*vb->pcm[i]));
/* unpack_header enforces range checking */ /* unpack_header enforces range checking */
type=ci->map_type[ci->mode_param[mode]->mapping]; type=ci->map_type[ci->mode_param[mode]->mapping];
@@ -84,9 +84,9 @@ int vorbis_synthesis(vorbis_block *vb,ogg_packet *op){
Useful for sequential 'fast forward' */ Useful for sequential 'fast forward' */
int vorbis_synthesis_trackonly(vorbis_block *vb,ogg_packet *op){ int vorbis_synthesis_trackonly(vorbis_block *vb,ogg_packet *op){
vorbis_dsp_state *vd=vb->vd; vorbis_dsp_state *vd=vb->vd;
private_state *b=vd->backend_state;
private_state *b=(private_state*)vd->backend_state;
vorbis_info *vi=vd->vi; vorbis_info *vi=vd->vi;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
oggpack_buffer *opb=&vb->opb; oggpack_buffer *opb=&vb->opb;
int mode; int mode;
@@ -128,7 +128,7 @@ int vorbis_synthesis_trackonly(vorbis_block *vb,ogg_packet *op){
} }
long vorbis_packet_blocksize(vorbis_info *vi,ogg_packet *op){ long vorbis_packet_blocksize(vorbis_info *vi,ogg_packet *op){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
oggpack_buffer opb; oggpack_buffer opb;
int mode; int mode;
@@ -157,7 +157,7 @@ long vorbis_packet_blocksize(vorbis_info *vi,ogg_packet *op){
int vorbis_synthesis_halfrate(vorbis_info *vi,int flag){ int vorbis_synthesis_halfrate(vorbis_info *vi,int flag){
/* set / clear half-sample-rate mode */ /* set / clear half-sample-rate mode */
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
/* right now, our MDCT can't handle < 64 sample windows. */ /* right now, our MDCT can't handle < 64 sample windows. */
if(ci->blocksizes[0]<=64 && flag)return -1; if(ci->blocksizes[0]<=64 && flag)return -1;
@@ -166,7 +166,7 @@ int vorbis_synthesis_halfrate(vorbis_info *vi,int flag){
} }
int vorbis_synthesis_halfrate_p(vorbis_info *vi){ int vorbis_synthesis_halfrate_p(vorbis_info *vi){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
return ci->halfrate_flag; return ci->halfrate_flag;
} }


+ 26
- 26
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/vorbisenc.c View File

@@ -204,8 +204,8 @@ static void vorbis_encode_floor_setup(vorbis_info *vi,double s,int block,
vorbis_info_floor1 *in, vorbis_info_floor1 *in,
int *x){ int *x){
int i,k,is=s; int i,k,is=s;
vorbis_info_floor1 *f=_ogg_calloc(1,sizeof(*f));
codec_setup_info *ci=vi->codec_setup;
vorbis_info_floor1 *f=(vorbis_info_floor1*) _ogg_calloc(1,sizeof(*f));
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
memcpy(f,in+x[is],sizeof(*f)); memcpy(f,in+x[is],sizeof(*f));
/* fill in the lowpass field, even if it's temporary */ /* fill in the lowpass field, even if it's temporary */
@@ -244,7 +244,7 @@ static void vorbis_encode_global_psych_setup(vorbis_info *vi,double s,
double *x){ double *x){
int i,is=s; int i,is=s;
double ds=s-is; double ds=s-is;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
vorbis_info_psy_global *g=&ci->psy_g_param; vorbis_info_psy_global *g=&ci->psy_g_param;
memcpy(g,in+(int)x[is],sizeof(*g)); memcpy(g,in+(int)x[is],sizeof(*g));
@@ -272,7 +272,7 @@ static void vorbis_encode_global_stereo(vorbis_info *vi,
float s=hi->stereo_point_setting; float s=hi->stereo_point_setting;
int i,is=s; int i,is=s;
double ds=s-is; double ds=s-is;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
vorbis_info_psy_global *g=&ci->psy_g_param; vorbis_info_psy_global *g=&ci->psy_g_param;
if(p){ if(p){
@@ -320,7 +320,7 @@ static void vorbis_encode_psyset_setup(vorbis_info *vi,double s,
int *nn_partition, int *nn_partition,
double *nn_thresh, double *nn_thresh,
int block){ int block){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*) vi->codec_setup;
vorbis_info_psy *p=ci->psy_param[block]; vorbis_info_psy *p=ci->psy_param[block];
highlevel_encode_setup *hi=&ci->hi; highlevel_encode_setup *hi=&ci->hi;
int is=s; int is=s;
@@ -328,7 +328,7 @@ static void vorbis_encode_psyset_setup(vorbis_info *vi,double s,
if(block>=ci->psys) if(block>=ci->psys)
ci->psys=block+1; ci->psys=block+1;
if(!p){ if(!p){
p=_ogg_calloc(1,sizeof(*p));
p=(vorbis_info_psy*)_ogg_calloc(1,sizeof(*p));
ci->psy_param[block]=p; ci->psy_param[block]=p;
} }
@@ -352,7 +352,7 @@ static void vorbis_encode_tonemask_setup(vorbis_info *vi,double s,int block,
vp_adjblock *in){ vp_adjblock *in){
int i,is=s; int i,is=s;
double ds=s-is; double ds=s-is;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*) vi->codec_setup;
vorbis_info_psy *p=ci->psy_param[block]; vorbis_info_psy *p=ci->psy_param[block];
/* 0 and 2 are only used by bitmanagement, but there's no harm to always /* 0 and 2 are only used by bitmanagement, but there's no harm to always
@@ -375,7 +375,7 @@ static void vorbis_encode_compand_setup(vorbis_info *vi,double s,int block,
compandblock *in, double *x){ compandblock *in, double *x){
int i,is=s; int i,is=s;
double ds=s-is; double ds=s-is;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
vorbis_info_psy *p=ci->psy_param[block]; vorbis_info_psy *p=ci->psy_param[block];
ds=x[is]*(1.-ds)+x[is+1]*ds; ds=x[is]*(1.-ds)+x[is+1]*ds;
@@ -396,7 +396,7 @@ static void vorbis_encode_peak_setup(vorbis_info *vi,double s,int block,
int *suppress){ int *suppress){
int is=s; int is=s;
double ds=s-is; double ds=s-is;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
vorbis_info_psy *p=ci->psy_param[block]; vorbis_info_psy *p=ci->psy_param[block];
p->tone_abs_limit=suppress[is]*(1.-ds)+suppress[is+1]*ds; p->tone_abs_limit=suppress[is]*(1.-ds)+suppress[is+1]*ds;
@@ -411,7 +411,7 @@ static void vorbis_encode_noisebias_setup(vorbis_info *vi,double s,int block,
double userbias){ double userbias){
int i,is=s,j; int i,is=s,j;
double ds=s-is; double ds=s-is;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
vorbis_info_psy *p=ci->psy_param[block]; vorbis_info_psy *p=ci->psy_param[block];
p->noisemaxsupp=suppress[is]*(1.-ds)+suppress[is+1]*ds; p->noisemaxsupp=suppress[is]*(1.-ds)+suppress[is+1]*ds;
@@ -437,7 +437,7 @@ static void vorbis_encode_noisebias_setup(vorbis_info *vi,double s,int block,
} }
static void vorbis_encode_ath_setup(vorbis_info *vi,int block){ static void vorbis_encode_ath_setup(vorbis_info *vi,int block){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
vorbis_info_psy *p=ci->psy_param[block]; vorbis_info_psy *p=ci->psy_param[block];
p->ath_adjatt=ci->hi.ath_floating_dB; p->ath_adjatt=ci->hi.ath_floating_dB;
@@ -457,7 +457,7 @@ static int book_dup_or_new(codec_setup_info *ci,static_codebook *book){
static void vorbis_encode_blocksize_setup(vorbis_info *vi,double s, static void vorbis_encode_blocksize_setup(vorbis_info *vi,double s,
int *shortb,int *longb){ int *shortb,int *longb){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
int is=s; int is=s;
int blockshort=shortb[is]; int blockshort=shortb[is];
@@ -471,11 +471,11 @@ static void vorbis_encode_residue_setup(vorbis_info *vi,
int number, int block, int number, int block,
vorbis_residue_template *res){ vorbis_residue_template *res){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
int i,n; int i,n;
vorbis_info_residue0 *r=ci->residue_param[number]=
_ogg_malloc(sizeof(*r));
vorbis_info_residue0 *r=(vorbis_info_residue0*)(ci->residue_param[number]=
(vorbis_info_residue0*)_ogg_malloc(sizeof(*r)));
memcpy(r,res->res,sizeof(*r)); memcpy(r,res->res,sizeof(*r));
if(ci->residues<=number)ci->residues=number+1; if(ci->residues<=number)ci->residues=number+1;
@@ -543,7 +543,7 @@ static void vorbis_encode_residue_setup(vorbis_info *vi,
/* lowpass setup/pointlimit */ /* lowpass setup/pointlimit */
{ {
double freq=ci->hi.lowpass_kHz*1000.; double freq=ci->hi.lowpass_kHz*1000.;
vorbis_info_floor1 *f=ci->floor_param[block]; /* by convention */
vorbis_info_floor1 *f=(vorbis_info_floor1*)ci->floor_param[block]; /* by convention */
double nyq=vi->rate/2.; double nyq=vi->rate/2.;
long blocksize=ci->blocksizes[block]>>1; long blocksize=ci->blocksizes[block]>>1;
@@ -581,7 +581,7 @@ static void vorbis_encode_residue_setup(vorbis_info *vi,
static void vorbis_encode_map_n_res_setup(vorbis_info *vi,double s, static void vorbis_encode_map_n_res_setup(vorbis_info *vi,double s,
vorbis_mapping_template *maps){ vorbis_mapping_template *maps){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
int i,j,is=s,modes=2; int i,j,is=s,modes=2;
vorbis_info_mapping0 *map=maps[is].map; vorbis_info_mapping0 *map=maps[is].map;
vorbis_info_mode *mode=_mode_template; vorbis_info_mode *mode=_mode_template;
@@ -592,7 +592,7 @@ static void vorbis_encode_map_n_res_setup(vorbis_info *vi,double s,
for(i=0;i<modes;i++){ for(i=0;i<modes;i++){
ci->map_param[i]=_ogg_calloc(1,sizeof(*map)); ci->map_param[i]=_ogg_calloc(1,sizeof(*map));
ci->mode_param[i]=_ogg_calloc(1,sizeof(*mode));
ci->mode_param[i]=(vorbis_info_mode*)_ogg_calloc(1,sizeof(*mode));
memcpy(ci->mode_param[i],mode+i,sizeof(*_mode_template)); memcpy(ci->mode_param[i],mode+i,sizeof(*_mode_template));
if(i>=ci->modes)ci->modes=i+1; if(i>=ci->modes)ci->modes=i+1;
@@ -608,7 +608,7 @@ static void vorbis_encode_map_n_res_setup(vorbis_info *vi,double s,
} }
static double setting_to_approx_bitrate(vorbis_info *vi){ static double setting_to_approx_bitrate(vorbis_info *vi){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
highlevel_encode_setup *hi=&ci->hi; highlevel_encode_setup *hi=&ci->hi;
ve_setup_data_template *setup=(ve_setup_data_template *)hi->setup; ve_setup_data_template *setup=(ve_setup_data_template *)hi->setup;
int is=hi->base_setting; int is=hi->base_setting;
@@ -626,7 +626,7 @@ static void get_setup_template(vorbis_info *vi,
long ch,long srate, long ch,long srate,
double req,int q_or_bitrate){ double req,int q_or_bitrate){
int i=0,j; int i=0,j;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*) vi->codec_setup;
highlevel_encode_setup *hi=&ci->hi; highlevel_encode_setup *hi=&ci->hi;
if(q_or_bitrate)req/=ch; if(q_or_bitrate)req/=ch;
@@ -675,7 +675,7 @@ static void get_setup_template(vorbis_info *vi,
/* the final setup call */ /* the final setup call */
int vorbis_encode_setup_init(vorbis_info *vi){ int vorbis_encode_setup_init(vorbis_info *vi){
int i0=0,singleblock=0; int i0=0,singleblock=0;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*) vi->codec_setup;
ve_setup_data_template *setup=NULL; ve_setup_data_template *setup=NULL;
highlevel_encode_setup *hi=&ci->hi; highlevel_encode_setup *hi=&ci->hi;
@@ -861,9 +861,9 @@ static int vorbis_encode_setup_setting(vorbis_info *vi,
long channels, long channels,
long rate){ long rate){
int ret=0,i,is; int ret=0,i,is;
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
highlevel_encode_setup *hi=&ci->hi; highlevel_encode_setup *hi=&ci->hi;
ve_setup_data_template *setup=hi->setup;
ve_setup_data_template *setup=(ve_setup_data_template*) hi->setup;
double ds; double ds;
ret=vorbis_encode_toplevel_setup(vi,channels,rate); ret=vorbis_encode_toplevel_setup(vi,channels,rate);
@@ -906,7 +906,7 @@ int vorbis_encode_setup_vbr(vorbis_info *vi,
long channels, long channels,
long rate, long rate,
float quality){ float quality){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*) vi->codec_setup;
highlevel_encode_setup *hi=&ci->hi; highlevel_encode_setup *hi=&ci->hi;
quality+=.0000001; quality+=.0000001;
@@ -946,7 +946,7 @@ int vorbis_encode_setup_managed(vorbis_info *vi,
long nominal_bitrate, long nominal_bitrate,
long min_bitrate){ long min_bitrate){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
highlevel_encode_setup *hi=&ci->hi; highlevel_encode_setup *hi=&ci->hi;
double tnominal=nominal_bitrate; double tnominal=nominal_bitrate;
int ret=0; int ret=0;
@@ -1013,7 +1013,7 @@ int vorbis_encode_init(vorbis_info *vi,
int vorbis_encode_ctl(vorbis_info *vi,int number,void *arg){ int vorbis_encode_ctl(vorbis_info *vi,int number,void *arg){
if(vi){ if(vi){
codec_setup_info *ci=vi->codec_setup;
codec_setup_info *ci=(codec_setup_info*)vi->codec_setup;
highlevel_encode_setup *hi=&ci->hi; highlevel_encode_setup *hi=&ci->hi;
int setp=(number&0xf); /* a read request has a low nibble of 0 */ int setp=(number&0xf); /* a read request has a low nibble of 0 */


+ 14
- 14
src/juce_appframework/audio/audio_file_formats/oggvorbis/libvorbis-1.1.2/lib/vorbisfile.c View File

@@ -213,8 +213,8 @@ static int _bisect_forward_serialno(OggVorbis_File *vf,
if(searched>=end || ret<0){ if(searched>=end || ret<0){
vf->links=m+1; vf->links=m+1;
vf->offsets=_ogg_malloc((vf->links+1)*sizeof(*vf->offsets));
vf->serialnos=_ogg_malloc(vf->links*sizeof(*vf->serialnos));
vf->offsets=(ogg_int64_t*)_ogg_malloc((vf->links+1)*sizeof(*vf->offsets));
vf->serialnos=(long*)_ogg_malloc(vf->links*sizeof(*vf->serialnos));
vf->offsets[m+1]=searched; vf->offsets[m+1]=searched;
}else{ }else{
ret=_bisect_forward_serialno(vf,next,vf->offset, ret=_bisect_forward_serialno(vf,next,vf->offset,
@@ -297,10 +297,10 @@ static void _prefetch_all_headers(OggVorbis_File *vf, ogg_int64_t dataoffset){
int i; int i;
ogg_int64_t ret; ogg_int64_t ret;
vf->vi=_ogg_realloc(vf->vi,vf->links*sizeof(*vf->vi));
vf->vc=_ogg_realloc(vf->vc,vf->links*sizeof(*vf->vc));
vf->dataoffsets=_ogg_malloc(vf->links*sizeof(*vf->dataoffsets));
vf->pcmlengths=_ogg_malloc(vf->links*2*sizeof(*vf->pcmlengths));
vf->vi=(vorbis_info*) _ogg_realloc(vf->vi,vf->links*sizeof(*vf->vi));
vf->vc=(vorbis_comment*) _ogg_realloc(vf->vc,vf->links*sizeof(*vf->vc));
vf->dataoffsets=(ogg_int64_t*) _ogg_malloc(vf->links*sizeof(*vf->dataoffsets));
vf->pcmlengths=(ogg_int64_t*) _ogg_malloc(vf->links*2*sizeof(*vf->pcmlengths));
for(i=0;i<vf->links;i++){ for(i=0;i<vf->links;i++){
if(i==0){ if(i==0){
@@ -661,8 +661,8 @@ static int _ov_open1(void *f,OggVorbis_File *vf,char *initial,
/* No seeking yet; Set up a 'single' (current) logical bitstream /* No seeking yet; Set up a 'single' (current) logical bitstream
entry for partial open */ entry for partial open */
vf->links=1; vf->links=1;
vf->vi=_ogg_calloc(vf->links,sizeof(*vf->vi));
vf->vc=_ogg_calloc(vf->links,sizeof(*vf->vc));
vf->vi=(vorbis_info*) _ogg_calloc(vf->links,sizeof(*vf->vi));
vf->vc=(vorbis_comment*) _ogg_calloc(vf->links,sizeof(*vf->vc));
ogg_stream_init(&vf->os,-1); /* fill in the serialno later */ ogg_stream_init(&vf->os,-1); /* fill in the serialno later */
/* Try to fetch the headers, maintaining all the storage */ /* Try to fetch the headers, maintaining all the storage */
@@ -1841,14 +1841,14 @@ int ov_crosslap(OggVorbis_File *vf1, OggVorbis_File *vf2){
hs1=ov_halfrate_p(vf1); hs1=ov_halfrate_p(vf1);
hs2=ov_halfrate_p(vf2); hs2=ov_halfrate_p(vf2);
lappcm=alloca(sizeof(*lappcm)*vi1->channels);
lappcm=(float**) alloca(sizeof(*lappcm)*vi1->channels);
n1=vorbis_info_blocksize(vi1,0)>>(1+hs1); n1=vorbis_info_blocksize(vi1,0)>>(1+hs1);
n2=vorbis_info_blocksize(vi2,0)>>(1+hs2); n2=vorbis_info_blocksize(vi2,0)>>(1+hs2);
w1=vorbis_window(&vf1->vd,0); w1=vorbis_window(&vf1->vd,0);
w2=vorbis_window(&vf2->vd,0); w2=vorbis_window(&vf2->vd,0);
for(i=0;i<vi1->channels;i++) for(i=0;i<vi1->channels;i++)
lappcm[i]=alloca(sizeof(**lappcm)*n1);
lappcm[i]=(float*) alloca(sizeof(**lappcm)*n1);
_ov_getlap(vf1,vi1,&vf1->vd,lappcm,n1); _ov_getlap(vf1,vi1,&vf1->vd,lappcm,n1);
@@ -1888,9 +1888,9 @@ static int _ov_64_seek_lap(OggVorbis_File *vf,ogg_int64_t pos,
from this link gets dumped, this from this link gets dumped, this
window array continues to exist */ window array continues to exist */
lappcm=alloca(sizeof(*lappcm)*ch1);
lappcm=(float**) alloca(sizeof(*lappcm)*ch1);
for(i=0;i<ch1;i++) for(i=0;i<ch1;i++)
lappcm[i]=alloca(sizeof(**lappcm)*n1);
lappcm[i]=(float*) alloca(sizeof(**lappcm)*n1);
_ov_getlap(vf,vi,&vf->vd,lappcm,n1); _ov_getlap(vf,vi,&vf->vd,lappcm,n1);
/* have lapping data; seek and prime the buffer */ /* have lapping data; seek and prime the buffer */
@@ -1949,9 +1949,9 @@ static int _ov_d_seek_lap(OggVorbis_File *vf,double pos,
from this link gets dumped, this from this link gets dumped, this
window array continues to exist */ window array continues to exist */
lappcm=alloca(sizeof(*lappcm)*ch1);
lappcm=(float**) alloca(sizeof(*lappcm)*ch1);
for(i=0;i<ch1;i++) for(i=0;i<ch1;i++)
lappcm[i]=alloca(sizeof(**lappcm)*n1);
lappcm[i]=(float*) alloca(sizeof(**lappcm)*n1);
_ov_getlap(vf,vi,&vf->vd,lappcm,n1); _ov_getlap(vf,vi,&vf->vd,lappcm,n1);
/* have lapping data; seek and prime the buffer */ /* have lapping data; seek and prime the buffer */


+ 10
- 0
src/juce_appframework/audio/audio_file_formats/oggvorbis/ogg.h View File

@@ -41,6 +41,16 @@ typedef struct {
long body_len; long body_len;
} ogg_page; } ogg_page;
static ogg_uint32_t bitreverse(ogg_uint32_t x){
x= ((x>>16)&0x0000ffffUL) | ((x<<16)&0xffff0000UL);
x= ((x>> 8)&0x00ff00ffUL) | ((x<< 8)&0xff00ff00UL);
x= ((x>> 4)&0x0f0f0f0fUL) | ((x<< 4)&0xf0f0f0f0UL);
x= ((x>> 2)&0x33333333UL) | ((x<< 2)&0xccccccccUL);
return((x>> 1)&0x55555555UL) | ((x<< 1)&0xaaaaaaaaUL);
}
/* ogg_stream_state contains the current encode/decode state of a logical /* ogg_stream_state contains the current encode/decode state of a logical
Ogg bitstream **********************************************************/ Ogg bitstream **********************************************************/


+ 2
- 0
src/juce_appframework/audio/plugins/formats/juce_AudioUnitPluginFormat.cpp View File

@@ -1287,4 +1287,6 @@ const FileSearchPath AudioUnitPluginFormat::getDefaultLocationsToSearch()
END_JUCE_NAMESPACE END_JUCE_NAMESPACE
#undef log
#endif #endif

+ 2
- 0
src/juce_appframework/audio/plugins/formats/juce_VSTPluginFormat.cpp View File

@@ -3011,4 +3011,6 @@ const FileSearchPath VSTPluginFormat::getDefaultLocationsToSearch()
END_JUCE_NAMESPACE END_JUCE_NAMESPACE
#undef log
#endif #endif

+ 8
- 8
src/juce_appframework/events/juce_MultiTimer.cpp View File

@@ -42,8 +42,8 @@ BEGIN_JUCE_NAMESPACE
class InternalMultiTimerCallback : public Timer class InternalMultiTimerCallback : public Timer
{ {
public: public:
InternalMultiTimerCallback (const int id_, MultiTimer& owner_)
: id (id_),
InternalMultiTimerCallback (const int timerId_, MultiTimer& owner_)
: timerId (timerId_),
owner (owner_) owner (owner_)
{ {
} }
@@ -54,10 +54,10 @@ public:
void timerCallback() void timerCallback()
{ {
owner.timerCallback (id);
owner.timerCallback (timerId);
} }
const int id;
const int timerId;
private: private:
MultiTimer& owner; MultiTimer& owner;
@@ -91,7 +91,7 @@ void MultiTimer::startTimer (const int timerId, const int intervalInMilliseconds
{ {
InternalMultiTimerCallback* const t = (InternalMultiTimerCallback*) timers.getUnchecked(i); InternalMultiTimerCallback* const t = (InternalMultiTimerCallback*) timers.getUnchecked(i);
if (t->id == timerId)
if (t->timerId == timerId)
{ {
t->startTimer (intervalInMilliseconds); t->startTimer (intervalInMilliseconds);
return; return;
@@ -111,7 +111,7 @@ void MultiTimer::stopTimer (const int timerId) throw()
{ {
InternalMultiTimerCallback* const t = (InternalMultiTimerCallback*) timers.getUnchecked(i); InternalMultiTimerCallback* const t = (InternalMultiTimerCallback*) timers.getUnchecked(i);
if (t->id == timerId)
if (t->timerId == timerId)
t->stopTimer(); t->stopTimer();
} }
} }
@@ -123,7 +123,7 @@ bool MultiTimer::isTimerRunning (const int timerId) const throw()
for (int i = timers.size(); --i >= 0;) for (int i = timers.size(); --i >= 0;)
{ {
const InternalMultiTimerCallback* const t = (InternalMultiTimerCallback*) timers.getUnchecked(i); const InternalMultiTimerCallback* const t = (InternalMultiTimerCallback*) timers.getUnchecked(i);
if (t->id == timerId)
if (t->timerId == timerId)
return t->isTimerRunning(); return t->isTimerRunning();
} }
@@ -137,7 +137,7 @@ int MultiTimer::getTimerInterval (const int timerId) const throw()
for (int i = timers.size(); --i >= 0;) for (int i = timers.size(); --i >= 0;)
{ {
const InternalMultiTimerCallback* const t = (InternalMultiTimerCallback*) timers.getUnchecked(i); const InternalMultiTimerCallback* const t = (InternalMultiTimerCallback*) timers.getUnchecked(i);
if (t->id == timerId)
if (t->timerId == timerId)
return t->getTimerInterval(); return t->getTimerInterval();
} }


+ 13
- 12
src/juce_appframework/gui/components/controls/juce_ComboBox.cpp View File

@@ -114,7 +114,7 @@ void ComboBox::addItem (const String& newItemText,
separatorPending = false; separatorPending = false;
ItemInfo* const item = new ItemInfo(); ItemInfo* const item = new ItemInfo();
item->id = 0;
item->itemId = 0;
item->isEnabled = false; item->isEnabled = false;
item->isHeading = false; item->isHeading = false;
items.add (item); items.add (item);
@@ -122,7 +122,7 @@ void ComboBox::addItem (const String& newItemText,
ItemInfo* const item = new ItemInfo(); ItemInfo* const item = new ItemInfo();
item->name = newItemText; item->name = newItemText;
item->id = newItemId;
item->itemId = newItemId;
item->isEnabled = true; item->isEnabled = true;
item->isHeading = false; item->isHeading = false;
items.add (item); items.add (item);
@@ -146,7 +146,7 @@ void ComboBox::addSectionHeading (const String& headingName) throw()
separatorPending = false; separatorPending = false;
ItemInfo* const item = new ItemInfo(); ItemInfo* const item = new ItemInfo();
item->id = 0;
item->itemId = 0;
item->isEnabled = false; item->isEnabled = false;
item->isHeading = false; item->isHeading = false;
items.add (item); items.add (item);
@@ -154,7 +154,7 @@ void ComboBox::addSectionHeading (const String& headingName) throw()
ItemInfo* const item = new ItemInfo(); ItemInfo* const item = new ItemInfo();
item->name = headingName; item->name = headingName;
item->id = 0;
item->itemId = 0;
item->isEnabled = true; item->isEnabled = true;
item->isHeading = true; item->isHeading = true;
items.add (item); items.add (item);
@@ -191,14 +191,14 @@ void ComboBox::clear (const bool dontSendChangeMessage)
} }
//============================================================================== //==============================================================================
ComboBox::ItemInfo* ComboBox::getItemForId (const int id) const throw()
ComboBox::ItemInfo* ComboBox::getItemForId (const int itemId) const throw()
{ {
jassert (id != 0);
jassert (itemId != 0);
if (id != 0)
if (itemId != 0)
{ {
for (int i = items.size(); --i >= 0;) for (int i = items.size(); --i >= 0;)
if (items.getUnchecked(i)->id == id)
if (items.getUnchecked(i)->itemId == itemId)
return items.getUnchecked(i); return items.getUnchecked(i);
} }
@@ -252,7 +252,7 @@ int ComboBox::getItemId (const int index) const throw()
{ {
ItemInfo* const item = getItemForIndex (index); ItemInfo* const item = getItemForIndex (index);
return (item != 0) ? item->id : 0;
return (item != 0) ? item->itemId : 0;
} }
@@ -310,7 +310,7 @@ int ComboBox::getSelectedId() const throw()
const ItemInfo* const item = getItemForIndex (currentIndex); const ItemInfo* const item = getItemForIndex (currentIndex);
return (item != 0 && getText() == item->name) return (item != 0 && getText() == item->name)
? item->id
? item->itemId
: 0; : 0;
} }
@@ -352,7 +352,7 @@ void ComboBox::setText (const String& newText,
if (item->isRealItem() if (item->isRealItem()
&& item->name == newText) && item->name == newText)
{ {
setSelectedId (item->id, dontSendChangeMessage);
setSelectedId (item->itemId, dontSendChangeMessage);
return; return;
} }
} }
@@ -555,7 +555,8 @@ void ComboBox::showPopup()
else if (item->isHeading) else if (item->isHeading)
menu.addSectionHeader (item->name); menu.addSectionHeader (item->name);
else else
menu.addItem (item->id, item->name, item->isEnabled, item->id == currentId);
menu.addItem (item->itemId, item->name,
item->isEnabled, item->itemId == currentId);
} }
if (items.size() == 0) if (items.size() == 0)


+ 2
- 2
src/juce_appframework/gui/components/controls/juce_ComboBox.h View File

@@ -371,7 +371,7 @@ private:
struct ItemInfo struct ItemInfo
{ {
String name; String name;
int id;
int itemId;
bool isEnabled : 1, isHeading : 1; bool isEnabled : 1, isHeading : 1;
bool isSeparator() const throw(); bool isSeparator() const throw();
@@ -389,7 +389,7 @@ private:
void showPopup(); void showPopup();
ItemInfo* getItemForId (const int id) const throw();
ItemInfo* getItemForId (const int itemId) const throw();
ItemInfo* getItemForIndex (const int index) const throw(); ItemInfo* getItemForIndex (const int index) const throw();
ComboBox (const ComboBox&); ComboBox (const ComboBox&);


+ 5
- 5
src/juce_appframework/gui/components/controls/juce_TableHeaderComponent.cpp View File

@@ -230,7 +230,7 @@ void TableHeaderComponent::setColumnWidth (const int columnId, const int newWidt
} }
//============================================================================== //==============================================================================
int TableHeaderComponent::getIndexOfColumnId (const int id, const bool onlyCountVisibleColumns) const throw()
int TableHeaderComponent::getIndexOfColumnId (const int columnId, const bool onlyCountVisibleColumns) const throw()
{ {
int n = 0; int n = 0;
@@ -238,7 +238,7 @@ int TableHeaderComponent::getIndexOfColumnId (const int id, const bool onlyCount
{ {
if ((! onlyCountVisibleColumns) || columns.getUnchecked(i)->isVisible()) if ((! onlyCountVisibleColumns) || columns.getUnchecked(i)->isVisible())
{ {
if (columns.getUnchecked(i)->id == id)
if (columns.getUnchecked(i)->id == columnId)
return n; return n;
++n; ++n;
@@ -474,15 +474,15 @@ void TableHeaderComponent::restoreFromString (const String& storedVersion)
{ {
forEachXmlChildElement (*storedXml, col) forEachXmlChildElement (*storedXml, col)
{ {
const int id = col->getIntAttribute (T("id"));
const int tabId = col->getIntAttribute (T("id"));
ColumnInfo* const ci = getInfoForId (id);
ColumnInfo* const ci = getInfoForId (tabId);
if (ci != 0) if (ci != 0)
{ {
columns.move (columns.indexOf (ci), index); columns.move (columns.indexOf (ci), index);
ci->width = col->getIntAttribute (T("width")); ci->width = col->getIntAttribute (T("width"));
setColumnVisible (id, col->getBoolAttribute (T("visible")));
setColumnVisible (tabId, col->getBoolAttribute (T("visible")));
} }
++index; ++index;


+ 2
- 2
src/juce_appframework/gui/components/controls/juce_TableHeaderComponent.h View File

@@ -261,7 +261,7 @@ public:
If onlyCountVisibleColumns is true, this will return the index amoungst the visible columns; If onlyCountVisibleColumns is true, this will return the index amoungst the visible columns;
otherwise it'll return the index amongst all the columns, including any hidden ones. otherwise it'll return the index amongst all the columns, including any hidden ones.
*/ */
int getIndexOfColumnId (const int id, const bool onlyCountVisibleColumns) const throw();
int getIndexOfColumnId (const int columnId, const bool onlyCountVisibleColumns) const throw();
/** Returns the ID of the column at a given index. /** Returns the ID of the column at a given index.
@@ -418,7 +418,7 @@ private:
int columnIdBeingResized, columnIdBeingDragged, initialColumnWidth; int columnIdBeingResized, columnIdBeingDragged, initialColumnWidth;
int columnIdUnderMouse, draggingColumnOffset, draggingColumnOriginalIndex, lastDeliberateWidth; int columnIdUnderMouse, draggingColumnOffset, draggingColumnOriginalIndex, lastDeliberateWidth;
ColumnInfo* getInfoForId (const int id) const throw();
ColumnInfo* getInfoForId (const int columnId) const throw();
int visibleIndexToTotalIndex (const int visibleIndex) const throw(); int visibleIndexToTotalIndex (const int visibleIndex) const throw();
void sendColumnsChanged(); void sendColumnsChanged();
void handleAsyncUpdate(); void handleAsyncUpdate();


+ 1
- 1
src/juce_appframework/gui/components/controls/juce_Toolbar.cpp View File

@@ -45,7 +45,7 @@ BEGIN_JUCE_NAMESPACE
#include "juce_ComboBox.h" #include "juce_ComboBox.h"
#include "../buttons/juce_TextButton.h" #include "../buttons/juce_TextButton.h"
const tchar* const toolbarDragDescriptor = T("_toolbarItem_"); // also in ToolbarItemComponent.cpp
const tchar* const Toolbar::toolbarDragDescriptor = T("_toolbarItem_");
//============================================================================== //==============================================================================


+ 3
- 0
src/juce_appframework/gui/components/controls/juce_Toolbar.h View File

@@ -305,6 +305,9 @@ private:
ToolbarItemStyle toolbarStyle; ToolbarItemStyle toolbarStyle;
ComponentAnimator animator; ComponentAnimator animator;
friend class ItemDragAndDropOverlayComponent;
static const tchar* const toolbarDragDescriptor;
void addItemInternal (ToolbarItemFactory& factory, const int itemId, const int insertIndex); void addItemInternal (ToolbarItemFactory& factory, const int itemId, const int insertIndex);
ToolbarItemComponent* getNextActiveComponent (int index, const int delta) const; ToolbarItemComponent* getNextActiveComponent (int index, const int delta) const;


+ 1
- 3
src/juce_appframework/gui/components/controls/juce_ToolbarItemComponent.cpp View File

@@ -40,8 +40,6 @@ BEGIN_JUCE_NAMESPACE
#include "../lookandfeel/juce_LookAndFeel.h" #include "../lookandfeel/juce_LookAndFeel.h"
#include "../layout/juce_StretchableObjectResizer.h" #include "../layout/juce_StretchableObjectResizer.h"
const tchar* const toolbarDragDescriptor = T("_toolbarItem_"); // also in Toolbar.cpp
//============================================================================== //==============================================================================
ToolbarItemFactory::ToolbarItemFactory() ToolbarItemFactory::ToolbarItemFactory()
@@ -104,7 +102,7 @@ public:
if (dnd != 0) if (dnd != 0)
{ {
dnd->startDragging (toolbarDragDescriptor, getParentComponent(), 0, true);
dnd->startDragging (Toolbar::toolbarDragDescriptor, getParentComponent(), 0, true);
ToolbarItemComponent* const tc = dynamic_cast <ToolbarItemComponent*> (getParentComponent()); ToolbarItemComponent* const tc = dynamic_cast <ToolbarItemComponent*> (getParentComponent());


+ 5
- 3
src/juce_appframework/gui/components/filebrowser/juce_DirectoryContentsList.cpp View File

@@ -37,10 +37,12 @@ BEGIN_JUCE_NAMESPACE
#include "../../graphics/imaging/juce_ImageCache.h" #include "../../graphics/imaging/juce_ImageCache.h"
void* juce_findFileStart (const String& directory, const String& wildCard, String& firstResultFile, void* juce_findFileStart (const String& directory, const String& wildCard, String& firstResultFile,
bool* isDirectory, bool* isHidden, int64* fileSize, Time* modTime, Time* creationTime, bool* isReadOnly);
bool* isDirectory, bool* isHidden, int64* fileSize, Time* modTime,
Time* creationTime, bool* isReadOnly) throw();
bool juce_findFileNext (void* handle, String& resultFile, bool juce_findFileNext (void* handle, String& resultFile,
bool* isDirectory, bool* isHidden, int64* fileSize, Time* modTime, Time* creationTime, bool* isReadOnly);
void juce_findFileClose (void* handle);
bool* isDirectory, bool* isHidden, int64* fileSize,
Time* modTime, Time* creationTime, bool* isReadOnly) throw();
void juce_findFileClose (void* handle) throw();
//============================================================================== //==============================================================================


+ 1
- 3
src/juce_appframework/gui/components/juce_Component.cpp View File

@@ -104,8 +104,6 @@ static bool isUnboundedMouseModeOn = false;
static bool isCursorVisibleUntilOffscreen; static bool isCursorVisibleUntilOffscreen;
//============================================================================== //==============================================================================
const int juce_windowIsSemiTransparentFlag = (1 << 31); // duplicated in native windowing code
#define checkMessageManagerIsLocked jassert (MessageManager::getInstance()->currentThreadHasLockedMessageManager()); #define checkMessageManagerIsLocked jassert (MessageManager::getInstance()->currentThreadHasLockedMessageManager());
static uint32 nextComponentUID = 0; static uint32 nextComponentUID = 0;
@@ -439,7 +437,7 @@ void Component::addToDesktop (int styleWanted, void* nativeWindowToAttachTo)
checkMessageManagerIsLocked checkMessageManagerIsLocked
if (! isOpaque()) if (! isOpaque())
styleWanted |= juce_windowIsSemiTransparentFlag;
styleWanted |= ComponentPeer::windowIsSemiTransparent;
int currentStyleFlags = 0; int currentStyleFlags = 0;


+ 6
- 6
src/juce_appframework/gui/components/juce_Desktop.cpp View File

@@ -43,7 +43,7 @@ extern void juce_updateMultiMonitorInfo (Array <Rectangle>& monitorCoords,
//============================================================================== //==============================================================================
static Desktop* instance = 0;
static Desktop* juce_desktopInstance = 0;
Desktop::Desktop() throw() Desktop::Desktop() throw()
: mouseListeners (2), : mouseListeners (2),
@@ -58,8 +58,8 @@ Desktop::Desktop() throw()
Desktop::~Desktop() throw() Desktop::~Desktop() throw()
{ {
jassert (instance == this);
instance = 0;
jassert (juce_desktopInstance == this);
juce_desktopInstance = 0;
// doh! If you don't delete all your windows before exiting, you're going to // doh! If you don't delete all your windows before exiting, you're going to
// be leaking memory! // be leaking memory!
@@ -68,10 +68,10 @@ Desktop::~Desktop() throw()
Desktop& JUCE_CALLTYPE Desktop::getInstance() throw() Desktop& JUCE_CALLTYPE Desktop::getInstance() throw()
{ {
if (instance == 0)
instance = new Desktop();
if (juce_desktopInstance == 0)
juce_desktopInstance = new Desktop();
return *instance;
return *juce_desktopInstance;
} }
//============================================================================== //==============================================================================


+ 82
- 82
src/juce_appframework/gui/components/special/juce_QuickTimeMovieComponent.cpp View File

@@ -438,8 +438,8 @@ QuickTimeMovieComponent::~QuickTimeMovieComponent()
activeQTWindows.removeValue ((void*) this); activeQTWindows.removeValue ((void*) this);
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
delete id;
QTMovieCompInternal* const i = (QTMovieCompInternal*) internal;
delete i;
if (activeQTWindows.size() == 0 && isQTAvailable) if (activeQTWindows.size() == 0 && isQTAvailable)
{ {
@@ -480,15 +480,15 @@ bool QuickTimeMovieComponent::loadMovie (InputStream* movieStream,
controllerVisible = controllerVisible_; controllerVisible = controllerVisible_;
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
GrafPtr savedPort; GrafPtr savedPort;
GetPort (&savedPort); GetPort (&savedPort);
bool result = false; bool result = false;
if (juce_OpenQuickTimeMovieFromStream (movieStream, id->movie, id->dataHandle))
if (juce_OpenQuickTimeMovieFromStream (movieStream, qmci->movie, qmci->dataHandle))
{ {
id->controller = 0;
qmci->controller = 0;
void* window = getWindowHandle(); void* window = getWindowHandle();
@@ -497,8 +497,8 @@ bool QuickTimeMovieComponent::loadMovie (InputStream* movieStream,
assignMovieToWindow(); assignMovieToWindow();
SetMovieActive (id->movie, true);
SetMovieProgressProc (id->movie, (MovieProgressUPP) -1, 0);
SetMovieActive (qmci->movie, true);
SetMovieProgressProc (qmci->movie, (MovieProgressUPP) -1, 0);
startTimer (1000 / 50); // this needs to be quite a high frequency for smooth playback startTimer (1000 / 50); // this needs to be quite a high frequency for smooth playback
result = true; result = true;
@@ -515,21 +515,21 @@ void QuickTimeMovieComponent::closeMovie()
{ {
stop(); stop();
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
if (id->controller != 0)
if (qmci->controller != 0)
{ {
DisposeMovieController (id->controller);
id->controller = 0;
DisposeMovieController (qmci->controller);
qmci->controller = 0;
} }
if (id->movie != 0)
if (qmci->movie != 0)
{ {
DisposeMovie (id->movie);
id->movie = 0;
DisposeMovie (qmci->movie);
qmci->movie = 0;
} }
id->clearHandle();
qmci->clearHandle();
stopTimer(); stopTimer();
movieFile = File::nonexistent; movieFile = File::nonexistent;
@@ -537,8 +537,8 @@ void QuickTimeMovieComponent::closeMovie()
bool QuickTimeMovieComponent::isMovieOpen() const bool QuickTimeMovieComponent::isMovieOpen() const
{ {
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
return id->movie != 0 && id->controller != 0;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
return qmci->movie != 0 && qmci->controller != 0;
} }
const File QuickTimeMovieComponent::getCurrentMovieFile() const const File QuickTimeMovieComponent::getCurrentMovieFile() const
@@ -561,11 +561,11 @@ void QuickTimeMovieComponent::assignMovieToWindow()
reentrant = true; reentrant = true;
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
if (id->controller != 0)
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
if (qmci->controller != 0)
{ {
DisposeMovieController (id->controller);
id->controller = 0;
DisposeMovieController (qmci->controller);
qmci->controller = 0;
} }
controllerAssignedToWindow = false; controllerAssignedToWindow = false;
@@ -578,7 +578,7 @@ void QuickTimeMovieComponent::assignMovieToWindow()
GrafPtr savedPort; GrafPtr savedPort;
GetPort (&savedPort); GetPort (&savedPort);
SetMovieGWorld (id->movie, (CGrafPtr) port, 0);
SetMovieGWorld (qmci->movie, (CGrafPtr) port, 0);
MacSetPort (port); MacSetPort (port);
Rect r; Rect r;
@@ -586,25 +586,25 @@ void QuickTimeMovieComponent::assignMovieToWindow()
r.left = 0; r.left = 0;
r.right = (short) jmax (1, getWidth()); r.right = (short) jmax (1, getWidth());
r.bottom = (short) jmax (1, getHeight()); r.bottom = (short) jmax (1, getHeight());
SetMovieBox (id->movie, &r);
SetMovieBox (qmci->movie, &r);
// create the movie controller // create the movie controller
id->controller = NewMovieController (id->movie, &r,
controllerVisible ? mcTopLeftMovie
: mcNotVisible);
qmci->controller = NewMovieController (qmci->movie, &r,
controllerVisible ? mcTopLeftMovie
: mcNotVisible);
if (id->controller != 0)
if (qmci->controller != 0)
{ {
MCEnableEditing (id->controller, true);
MCEnableEditing (qmci->controller, true);
MCDoAction (id->controller, mcActionSetUseBadge, (void*) false);
MCDoAction (id->controller, mcActionSetLoopIsPalindrome, (void*) false);
MCDoAction (qmci->controller, mcActionSetUseBadge, (void*) false);
MCDoAction (qmci->controller, mcActionSetLoopIsPalindrome, (void*) false);
setLooping (looping); setLooping (looping);
MCDoAction (id->controller, mcActionSetFlags,
MCDoAction (qmci->controller, mcActionSetFlags,
(void*) (pointer_sized_int) (mcFlagSuppressMovieFrame | (controllerVisible ? 0 : (mcFlagSuppressStepButtons | mcFlagSuppressSpeakerButton)))); (void*) (pointer_sized_int) (mcFlagSuppressMovieFrame | (controllerVisible ? 0 : (mcFlagSuppressStepButtons | mcFlagSuppressSpeakerButton))));
MCSetControllerBoundsRect (id->controller, &r);
MCSetControllerBoundsRect (qmci->controller, &r);
controllerAssignedToWindow = true; controllerAssignedToWindow = true;
@@ -615,7 +615,7 @@ void QuickTimeMovieComponent::assignMovieToWindow()
} }
else else
{ {
SetMovieGWorld (id->movie, 0, 0);
SetMovieGWorld (qmci->movie, 0, 0);
} }
reentrant = false; reentrant = false;
@@ -623,41 +623,41 @@ void QuickTimeMovieComponent::assignMovieToWindow()
void QuickTimeMovieComponent::play() void QuickTimeMovieComponent::play()
{ {
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
if (id->movie != 0)
StartMovie (id->movie);
if (qmci->movie != 0)
StartMovie (qmci->movie);
} }
void QuickTimeMovieComponent::stop() void QuickTimeMovieComponent::stop()
{ {
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
if (id->movie != 0)
StopMovie (id->movie);
if (qmci->movie != 0)
StopMovie (qmci->movie);
} }
bool QuickTimeMovieComponent::isPlaying() const bool QuickTimeMovieComponent::isPlaying() const
{ {
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
return id->movie != 0 && GetMovieRate (id->movie) != 0;
return qmci->movie != 0 && GetMovieRate (qmci->movie) != 0;
} }
void QuickTimeMovieComponent::setPosition (const double seconds) void QuickTimeMovieComponent::setPosition (const double seconds)
{ {
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
if (id->controller != 0)
if (qmci->controller != 0)
{ {
TimeRecord time; TimeRecord time;
time.base = GetMovieTimeBase (id->movie);
time.base = GetMovieTimeBase (qmci->movie);
time.scale = 100000; time.scale = 100000;
const uint64 t = (uint64) (100000.0 * seconds); const uint64 t = (uint64) (100000.0 * seconds);
time.value.lo = (UInt32) (t & 0xffffffff); time.value.lo = (UInt32) (t & 0xffffffff);
time.value.hi = (UInt32) (t >> 32); time.value.hi = (UInt32) (t >> 32);
SetMovieTime (id->movie, &time);
SetMovieTime (qmci->movie, &time);
timerCallback(); // to call MCIdle timerCallback(); // to call MCIdle
} }
else else
@@ -668,12 +668,12 @@ void QuickTimeMovieComponent::setPosition (const double seconds)
double QuickTimeMovieComponent::getPosition() const double QuickTimeMovieComponent::getPosition() const
{ {
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
if (id->movie != 0)
if (qmci->movie != 0)
{ {
TimeRecord time; TimeRecord time;
GetMovieTime (id->movie, &time);
GetMovieTime (qmci->movie, &time);
return ((int64) (((uint64) time.value.hi << 32) | (uint64) time.value.lo)) return ((int64) (((uint64) time.value.hi << 32) | (uint64) time.value.lo))
/ (double) time.scale; / (double) time.scale;
@@ -684,29 +684,29 @@ double QuickTimeMovieComponent::getPosition() const
void QuickTimeMovieComponent::setSpeed (const float newSpeed) void QuickTimeMovieComponent::setSpeed (const float newSpeed)
{ {
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
if (id->movie != 0)
SetMovieRate (id->movie, (Fixed) (newSpeed * (Fixed) 0x00010000L));
if (qmci->movie != 0)
SetMovieRate (qmci->movie, (Fixed) (newSpeed * (Fixed) 0x00010000L));
} }
double QuickTimeMovieComponent::getMovieDuration() const double QuickTimeMovieComponent::getMovieDuration() const
{ {
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
if (id->movie != 0)
return GetMovieDuration (id->movie) / (double) GetMovieTimeScale (id->movie);
if (qmci->movie != 0)
return GetMovieDuration (qmci->movie) / (double) GetMovieTimeScale (qmci->movie);
return 0.0; return 0.0;
} }
void QuickTimeMovieComponent::setLooping (const bool shouldLoop) void QuickTimeMovieComponent::setLooping (const bool shouldLoop)
{ {
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
looping = shouldLoop; looping = shouldLoop;
if (id->controller != 0)
MCDoAction (id->controller, mcActionSetLooping, (void*) shouldLoop);
if (qmci->controller != 0)
MCDoAction (qmci->controller, mcActionSetLooping, (void*) shouldLoop);
} }
bool QuickTimeMovieComponent::isLooping() const bool QuickTimeMovieComponent::isLooping() const
@@ -716,18 +716,18 @@ bool QuickTimeMovieComponent::isLooping() const
void QuickTimeMovieComponent::setMovieVolume (const float newVolume) void QuickTimeMovieComponent::setMovieVolume (const float newVolume)
{ {
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
if (id->movie != 0)
SetMovieVolume (id->movie, jlimit ((short) 0, (short) 0x100, (short) (newVolume * 0x0100)));
if (qmci->movie != 0)
SetMovieVolume (qmci->movie, jlimit ((short) 0, (short) 0x100, (short) (newVolume * 0x0100)));
} }
float QuickTimeMovieComponent::getMovieVolume() const float QuickTimeMovieComponent::getMovieVolume() const
{ {
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
if (id->movie != 0)
return jmax (0.0f, GetMovieVolume (id->movie) / (float) 0x0100);
if (qmci->movie != 0)
return jmax (0.0f, GetMovieVolume (qmci->movie) / (float) 0x0100);
return 0.0f; return 0.0f;
} }
@@ -737,12 +737,12 @@ void QuickTimeMovieComponent::getMovieNormalSize (int& width, int& height) const
width = 0; width = 0;
height = 0; height = 0;
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
if (id->movie != 0)
if (qmci->movie != 0)
{ {
Rect r; Rect r;
GetMovieNaturalBoundsRect (id->movie, &r);
GetMovieNaturalBoundsRect (qmci->movie, &r);
width = r.right - r.left; width = r.right - r.left;
height = r.bottom - r.top; height = r.bottom - r.top;
} }
@@ -750,9 +750,9 @@ void QuickTimeMovieComponent::getMovieNormalSize (int& width, int& height) const
void QuickTimeMovieComponent::paint (Graphics& g) void QuickTimeMovieComponent::paint (Graphics& g)
{ {
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
if (id->movie == 0 || id->controller == 0)
if (qmci->movie == 0 || qmci->controller == 0)
{ {
g.fillAll (Colours::black); g.fillAll (Colours::black);
return; return;
@@ -762,7 +762,7 @@ void QuickTimeMovieComponent::paint (Graphics& g)
GetPort (&savedPort); GetPort (&savedPort);
MacSetPort (getPortForWindow (getWindowHandle())); MacSetPort (getPortForWindow (getWindowHandle()));
MCDraw (id->controller, (WindowRef) getWindowHandle());
MCDraw (qmci->controller, (WindowRef) getWindowHandle());
MacSetPort (savedPort); MacSetPort (savedPort);
@@ -793,9 +793,9 @@ void QuickTimeMovieComponent::moved()
void QuickTimeMovieComponent::resized() void QuickTimeMovieComponent::resized()
{ {
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
if (id->controller != 0 && isShowing())
if (qmci->controller != 0 && isShowing())
{ {
checkWindowAssociation(); checkWindowAssociation();
@@ -806,7 +806,7 @@ void QuickTimeMovieComponent::resized()
GrafPtr savedPort; GrafPtr savedPort;
GetPort (&savedPort); GetPort (&savedPort);
SetMovieGWorld (id->movie, (CGrafPtr) port, 0);
SetMovieGWorld (qmci->movie, (CGrafPtr) port, 0);
MacSetPort (port); MacSetPort (port);
lastPositionApplied = getMoviePos (this); lastPositionApplied = getMoviePos (this);
@@ -817,10 +817,10 @@ void QuickTimeMovieComponent::resized()
r.right = (short) lastPositionApplied.getRight(); r.right = (short) lastPositionApplied.getRight();
r.bottom = (short) lastPositionApplied.getBottom(); r.bottom = (short) lastPositionApplied.getBottom();
if (MCGetVisible (id->controller))
MCSetControllerBoundsRect (id->controller, &r);
if (MCGetVisible (qmci->controller))
MCSetControllerBoundsRect (qmci->controller, &r);
else else
SetMovieBox (id->movie, &r);
SetMovieBox (qmci->movie, &r);
if (! isPlaying()) if (! isPlaying())
timerCallback(); timerCallback();
@@ -840,14 +840,14 @@ void QuickTimeMovieComponent::visibilityChanged()
void QuickTimeMovieComponent::timerCallback() void QuickTimeMovieComponent::timerCallback()
{ {
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
if (id->controller != 0)
if (qmci->controller != 0)
{ {
if (isTimerRunning()) if (isTimerRunning())
startTimer (getTimerInterval()); startTimer (getTimerInterval());
MCIdle (id->controller);
MCIdle (qmci->controller);
if (lastPositionApplied != getMoviePos (this)) if (lastPositionApplied != getMoviePos (this))
resized(); resized();
@@ -873,9 +873,9 @@ void QuickTimeMovieComponent::parentHierarchyChanged()
void QuickTimeMovieComponent::handleMCEvent (void* ev) void QuickTimeMovieComponent::handleMCEvent (void* ev)
{ {
QTMovieCompInternal* const id = (QTMovieCompInternal*) internal;
QTMovieCompInternal* const qmci = (QTMovieCompInternal*) internal;
if (id->controller != 0 && isShowing())
if (qmci->controller != 0 && isShowing())
{ {
MacClickEventData* data = (MacClickEventData*) ev; MacClickEventData* data = (MacClickEventData*) ev;
@@ -883,14 +883,14 @@ void QuickTimeMovieComponent::handleMCEvent (void* ev)
data->where.v -= getTopLevelComponent()->getScreenY(); data->where.v -= getTopLevelComponent()->getScreenY();
Boolean b = false; Boolean b = false;
MCPtInController (id->controller, data->where, &b);
MCPtInController (qmci->controller, data->where, &b);
if (b) if (b)
{ {
const int oldTimeBeforeWaitCursor = MessageManager::getInstance()->getTimeBeforeShowingWaitCursor(); const int oldTimeBeforeWaitCursor = MessageManager::getInstance()->getTimeBeforeShowingWaitCursor();
MessageManager::getInstance()->setTimeBeforeShowingWaitCursor (0); MessageManager::getInstance()->setTimeBeforeShowingWaitCursor (0);
MCClick (id->controller,
MCClick (qmci->controller,
(WindowRef) getWindowHandle(), (WindowRef) getWindowHandle(),
data->where, data->where,
data->when, data->when,


+ 3
- 1
src/juce_appframework/gui/components/windows/juce_ComponentPeer.h View File

@@ -78,9 +78,11 @@ public:
close button on it. */ close button on it. */
windowHasDropShadow = (1 << 8), /**< Indicates that the window should have a drop-shadow (this may windowHasDropShadow = (1 << 8), /**< Indicates that the window should have a drop-shadow (this may
not be possible on all platforms). */ not be possible on all platforms). */
windowRepaintedExplictly = (1 << 9) /**< Not intended for public use - this tells a window not to
windowRepaintedExplictly = (1 << 9), /**< Not intended for public use - this tells a window not to
do its own repainting, but only to repaint when the do its own repainting, but only to repaint when the
performAnyPendingRepaintsNow() method is called. */ performAnyPendingRepaintsNow() method is called. */
windowIsSemiTransparent = (1 << 31) /**< Not intended for public use - makes a window transparent. */
}; };
//============================================================================== //==============================================================================


+ 2
- 4
src/juce_appframework/gui/components/windows/juce_TopLevelWindow.cpp View File

@@ -266,8 +266,6 @@ void TopLevelWindow::recreateDesktopWindow()
} }
} }
const int juce_windowIsSemiTransparentFlag = (1 << 31); // duplicated in native windowing code
void TopLevelWindow::addToDesktop (int windowStyleFlags, void* nativeWindowToAttachTo) void TopLevelWindow::addToDesktop (int windowStyleFlags, void* nativeWindowToAttachTo)
{ {
/* It's not recommended to change the desktop window flags directly for a TopLevelWindow, /* It's not recommended to change the desktop window flags directly for a TopLevelWindow,
@@ -279,8 +277,8 @@ void TopLevelWindow::addToDesktop (int windowStyleFlags, void* nativeWindowToAtt
method, then add or remove whatever flags are necessary from this value before returning it. method, then add or remove whatever flags are necessary from this value before returning it.
*/ */
jassert ((windowStyleFlags & ~juce_windowIsSemiTransparentFlag)
== (getDesktopWindowStyleFlags() & ~juce_windowIsSemiTransparentFlag));
jassert ((windowStyleFlags & ~ComponentPeer::windowIsSemiTransparent)
== (getDesktopWindowStyleFlags() & ~ComponentPeer::windowIsSemiTransparent));
Component::addToDesktop (windowStyleFlags, nativeWindowToAttachTo); Component::addToDesktop (windowStyleFlags, nativeWindowToAttachTo);


+ 1
- 0
src/juce_appframework/gui/graphics/contexts/juce_Graphics.cpp View File

@@ -46,6 +46,7 @@ static const Graphics::ResamplingQuality defaultQuality = Graphics::mediumResamp
#define MINIMUM_COORD -0x3fffffff #define MINIMUM_COORD -0x3fffffff
#define MAXIMUM_COORD 0x3fffffff #define MAXIMUM_COORD 0x3fffffff
#undef ASSERT_COORDS_ARE_SENSIBLE_NUMBERS
#define ASSERT_COORDS_ARE_SENSIBLE_NUMBERS(x, y, w, h) \ #define ASSERT_COORDS_ARE_SENSIBLE_NUMBERS(x, y, w, h) \
jassert ((int) x >= MINIMUM_COORD \ jassert ((int) x >= MINIMUM_COORD \
&& (int) x <= MAXIMUM_COORD \ && (int) x <= MAXIMUM_COORD \


+ 1
- 0
src/juce_appframework/gui/graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp View File

@@ -52,6 +52,7 @@ BEGIN_JUCE_NAMESPACE
#define MINIMUM_COORD -0x3fffffff #define MINIMUM_COORD -0x3fffffff
#define MAXIMUM_COORD 0x3fffffff #define MAXIMUM_COORD 0x3fffffff
#undef ASSERT_COORDS_ARE_SENSIBLE_NUMBERS
#define ASSERT_COORDS_ARE_SENSIBLE_NUMBERS(x, y, w, h) \ #define ASSERT_COORDS_ARE_SENSIBLE_NUMBERS(x, y, w, h) \
jassert ((int) x >= MINIMUM_COORD \ jassert ((int) x >= MINIMUM_COORD \
&& (int) x <= MAXIMUM_COORD \ && (int) x <= MAXIMUM_COORD \


+ 5
- 5
src/juce_appframework/gui/graphics/geometry/juce_Path.cpp View File

@@ -43,11 +43,11 @@ BEGIN_JUCE_NAMESPACE
jassert (x == x && y == y); jassert (x == x && y == y);
//============================================================================== //==============================================================================
static const float lineMarker = 100001.0f;
static const float moveMarker = 100002.0f;
static const float quadMarker = 100003.0f;
static const float cubicMarker = 100004.0f;
static const float closeSubPathMarker = 100005.0f;
const float Path::lineMarker = 100001.0f;
const float Path::moveMarker = 100002.0f;
const float Path::quadMarker = 100003.0f;
const float Path::cubicMarker = 100004.0f;
const float Path::closeSubPathMarker = 100005.0f;
static const int defaultGranularity = 32; static const int defaultGranularity = 32;


+ 6
- 0
src/juce_appframework/gui/graphics/geometry/juce_Path.h View File

@@ -619,6 +619,12 @@ private:
int numElements; int numElements;
float pathXMin, pathXMax, pathYMin, pathYMax; float pathXMin, pathXMax, pathYMin, pathYMax;
bool useNonZeroWinding; bool useNonZeroWinding;
static const float lineMarker;
static const float moveMarker;
static const float quadMarker;
static const float cubicMarker;
static const float closeSubPathMarker;
}; };
#endif // __JUCE_PATH_JUCEHEADER__ #endif // __JUCE_PATH_JUCEHEADER__

+ 20
- 28
src/juce_appframework/gui/graphics/geometry/juce_PathIterator.cpp View File

@@ -40,14 +40,6 @@ BEGIN_JUCE_NAMESPACE
#pragma optimize ("t", on) #pragma optimize ("t", on)
#endif #endif
//==============================================================================
static const float lineMarker = 100001.0f;
static const float moveMarker = 100002.0f;
static const float quadMarker = 100003.0f;
static const float cubicMarker = 100004.0f;
static const float closePathMarker = 100005.0f;
//============================================================================== //==============================================================================
PathFlatteningIterator::PathFlatteningIterator (const Path& path_, PathFlatteningIterator::PathFlatteningIterator (const Path& path_,
const AffineTransform& transform_, const AffineTransform& transform_,
@@ -98,7 +90,7 @@ bool PathFlatteningIterator::next() throw()
{ {
type = points [index++]; type = points [index++];
if (type != closePathMarker)
if (type != Path::closeSubPathMarker)
{ {
x2 = points [index++]; x2 = points [index++];
y2 = points [index++]; y2 = points [index++];
@@ -106,7 +98,7 @@ bool PathFlatteningIterator::next() throw()
if (! isIdentityTransform) if (! isIdentityTransform)
transform.transformPoint (x2, y2); transform.transformPoint (x2, y2);
if (type == quadMarker)
if (type == Path::quadMarker)
{ {
x3 = points [index++]; x3 = points [index++];
y3 = points [index++]; y3 = points [index++];
@@ -114,7 +106,7 @@ bool PathFlatteningIterator::next() throw()
if (! isIdentityTransform) if (! isIdentityTransform)
transform.transformPoint (x3, y3); transform.transformPoint (x3, y3);
} }
else if (type == cubicMarker)
else if (type == Path::cubicMarker)
{ {
x3 = points [index++]; x3 = points [index++];
y3 = points [index++]; y3 = points [index++];
@@ -134,17 +126,17 @@ bool PathFlatteningIterator::next() throw()
{ {
type = *--stackPos; type = *--stackPos;
if (type != closePathMarker)
if (type != Path::closeSubPathMarker)
{ {
x2 = *--stackPos; x2 = *--stackPos;
y2 = *--stackPos; y2 = *--stackPos;
if (type == quadMarker)
if (type == Path::quadMarker)
{ {
x3 = *--stackPos; x3 = *--stackPos;
y3 = *--stackPos; y3 = *--stackPos;
} }
else if (type == cubicMarker)
else if (type == Path::cubicMarker)
{ {
x3 = *--stackPos; x3 = *--stackPos;
y3 = *--stackPos; y3 = *--stackPos;
@@ -154,19 +146,19 @@ bool PathFlatteningIterator::next() throw()
} }
} }
if (type == lineMarker)
if (type == Path::lineMarker)
{ {
++subPathIndex; ++subPathIndex;
closesSubPath = (stackPos == stackBase) closesSubPath = (stackPos == stackBase)
&& (index < path.numElements) && (index < path.numElements)
&& (points [index] == closePathMarker)
&& (points [index] == Path::closeSubPathMarker)
&& x2 == subPathCloseX && x2 == subPathCloseX
&& y2 == subPathCloseY; && y2 == subPathCloseY;
return true; return true;
} }
else if (type == quadMarker)
else if (type == Path::quadMarker)
{ {
const int offset = (int) (stackPos - stackBase); const int offset = (int) (stackPos - stackBase);
@@ -195,28 +187,28 @@ bool PathFlatteningIterator::next() throw()
*stackPos++ = x3; *stackPos++ = x3;
*stackPos++ = m2y; *stackPos++ = m2y;
*stackPos++ = m2x; *stackPos++ = m2x;
*stackPos++ = quadMarker;
*stackPos++ = Path::quadMarker;
*stackPos++ = m3y; *stackPos++ = m3y;
*stackPos++ = m3x; *stackPos++ = m3x;
*stackPos++ = m1y; *stackPos++ = m1y;
*stackPos++ = m1x; *stackPos++ = m1x;
*stackPos++ = quadMarker;
*stackPos++ = Path::quadMarker;
} }
else else
{ {
*stackPos++ = y3; *stackPos++ = y3;
*stackPos++ = x3; *stackPos++ = x3;
*stackPos++ = lineMarker;
*stackPos++ = Path::lineMarker;
*stackPos++ = m3y; *stackPos++ = m3y;
*stackPos++ = m3x; *stackPos++ = m3x;
*stackPos++ = lineMarker;
*stackPos++ = Path::lineMarker;
} }
jassert (stackPos < stackBase + stackSize); jassert (stackPos < stackBase + stackSize);
} }
else if (type == cubicMarker)
else if (type == Path::cubicMarker)
{ {
const int offset = (int) (stackPos - stackBase); const int offset = (int) (stackPos - stackBase);
@@ -254,7 +246,7 @@ bool PathFlatteningIterator::next() throw()
*stackPos++ = m3x; *stackPos++ = m3x;
*stackPos++ = m5y; *stackPos++ = m5y;
*stackPos++ = m5x; *stackPos++ = m5x;
*stackPos++ = cubicMarker;
*stackPos++ = Path::cubicMarker;
*stackPos++ = (m4y + m5y) * 0.5f; *stackPos++ = (m4y + m5y) * 0.5f;
*stackPos++ = (m4x + m5x) * 0.5f; *stackPos++ = (m4x + m5x) * 0.5f;
@@ -262,24 +254,24 @@ bool PathFlatteningIterator::next() throw()
*stackPos++ = m4x; *stackPos++ = m4x;
*stackPos++ = m1y; *stackPos++ = m1y;
*stackPos++ = m1x; *stackPos++ = m1x;
*stackPos++ = cubicMarker;
*stackPos++ = Path::cubicMarker;
} }
else else
{ {
*stackPos++ = y4; *stackPos++ = y4;
*stackPos++ = x4; *stackPos++ = x4;
*stackPos++ = lineMarker;
*stackPos++ = Path::lineMarker;
*stackPos++ = m5y; *stackPos++ = m5y;
*stackPos++ = m5x; *stackPos++ = m5x;
*stackPos++ = lineMarker;
*stackPos++ = Path::lineMarker;
*stackPos++ = m4y; *stackPos++ = m4y;
*stackPos++ = m4x; *stackPos++ = m4x;
*stackPos++ = lineMarker;
*stackPos++ = Path::lineMarker;
} }
} }
else if (type == closePathMarker)
else if (type == Path::closeSubPathMarker)
{ {
if (x2 != subPathCloseX || y2 != subPathCloseY) if (x2 != subPathCloseX || y2 != subPathCloseY)
{ {


+ 5
- 0
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jchuff.h View File

@@ -16,6 +16,9 @@
* Hence the magnitude should always fit in 10 or 14 bits respectively. * Hence the magnitude should always fit in 10 or 14 bits respectively.
*/ */
#ifndef _jchuff_h_
#define _jchuff_h_
#if BITS_IN_JSAMPLE == 8 #if BITS_IN_JSAMPLE == 8
#define MAX_COEF_BITS 10 #define MAX_COEF_BITS 10
#else #else
@@ -45,3 +48,5 @@ EXTERN(void) jpeg_make_c_derived_tbl
/* Generate an optimal table definition given the specified counts */ /* Generate an optimal table definition given the specified counts */
EXTERN(void) jpeg_gen_optimal_table EXTERN(void) jpeg_gen_optimal_table
JPP((j_compress_ptr cinfo, JHUFF_TBL * htbl, long freq[])); JPP((j_compress_ptr cinfo, JHUFF_TBL * htbl, long freq[]));
#endif

+ 0
- 67
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jcmarker.c View File

@@ -13,73 +13,6 @@
#include "jpeglib.h" #include "jpeglib.h"
typedef enum { /* JPEG marker codes */
M_SOF0 = 0xc0,
M_SOF1 = 0xc1,
M_SOF2 = 0xc2,
M_SOF3 = 0xc3,
M_SOF5 = 0xc5,
M_SOF6 = 0xc6,
M_SOF7 = 0xc7,
M_JPG = 0xc8,
M_SOF9 = 0xc9,
M_SOF10 = 0xca,
M_SOF11 = 0xcb,
M_SOF13 = 0xcd,
M_SOF14 = 0xce,
M_SOF15 = 0xcf,
M_DHT = 0xc4,
M_DAC = 0xcc,
M_RST0 = 0xd0,
M_RST1 = 0xd1,
M_RST2 = 0xd2,
M_RST3 = 0xd3,
M_RST4 = 0xd4,
M_RST5 = 0xd5,
M_RST6 = 0xd6,
M_RST7 = 0xd7,
M_SOI = 0xd8,
M_EOI = 0xd9,
M_SOS = 0xda,
M_DQT = 0xdb,
M_DNL = 0xdc,
M_DRI = 0xdd,
M_DHP = 0xde,
M_EXP = 0xdf,
M_APP0 = 0xe0,
M_APP1 = 0xe1,
M_APP2 = 0xe2,
M_APP3 = 0xe3,
M_APP4 = 0xe4,
M_APP5 = 0xe5,
M_APP6 = 0xe6,
M_APP7 = 0xe7,
M_APP8 = 0xe8,
M_APP9 = 0xe9,
M_APP10 = 0xea,
M_APP11 = 0xeb,
M_APP12 = 0xec,
M_APP13 = 0xed,
M_APP14 = 0xee,
M_APP15 = 0xef,
M_JPG0 = 0xf0,
M_JPG13 = 0xfd,
M_COM = 0xfe,
M_TEM = 0x01,
M_ERROR = 0x100
} JPEG_MARKER;
/* Private state */ /* Private state */


+ 19
- 19
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jcphuff.c View File

@@ -198,11 +198,11 @@ start_pass_phuff (j_compress_ptr cinfo, boolean gather_statistics)
#define emit_byte(entropy,val) \ #define emit_byte(entropy,val) \
{ *(entropy)->next_output_byte++ = (JOCTET) (val); \ { *(entropy)->next_output_byte++ = (JOCTET) (val); \
if (--(entropy)->free_in_buffer == 0) \ if (--(entropy)->free_in_buffer == 0) \
dump_buffer(entropy); }
dump_buffer_p(entropy); }
LOCAL(void) LOCAL(void)
dump_buffer (phuff_entropy_ptr entropy)
dump_buffer_p (phuff_entropy_ptr entropy)
/* Empty the output buffer; we do not support suspension in this module. */ /* Empty the output buffer; we do not support suspension in this module. */
{ {
struct jpeg_destination_mgr * dest = entropy->cinfo->dest; struct jpeg_destination_mgr * dest = entropy->cinfo->dest;
@@ -225,7 +225,7 @@ dump_buffer (phuff_entropy_ptr entropy)
INLINE INLINE
LOCAL(void) LOCAL(void)
emit_bits (phuff_entropy_ptr entropy, unsigned int code, int size)
emit_bits_p (phuff_entropy_ptr entropy, unsigned int code, int size)
/* Emit some bits, unless we are in gather mode */ /* Emit some bits, unless we are in gather mode */
{ {
/* This routine is heavily used, so it's worth coding tightly. */ /* This routine is heavily used, so it's worth coding tightly. */
@@ -264,9 +264,9 @@ emit_bits (phuff_entropy_ptr entropy, unsigned int code, int size)
LOCAL(void) LOCAL(void)
flush_bits (phuff_entropy_ptr entropy)
flush_bits_p (phuff_entropy_ptr entropy)
{ {
emit_bits(entropy, 0x7F, 7); /* fill any partial byte with ones */
emit_bits_p(entropy, 0x7F, 7); /* fill any partial byte with ones */
entropy->put_buffer = 0; /* and reset bit-buffer to empty */ entropy->put_buffer = 0; /* and reset bit-buffer to empty */
entropy->put_bits = 0; entropy->put_bits = 0;
} }
@@ -284,7 +284,7 @@ emit_symbol (phuff_entropy_ptr entropy, int tbl_no, int symbol)
entropy->count_ptrs[tbl_no][symbol]++; entropy->count_ptrs[tbl_no][symbol]++;
else { else {
c_derived_tbl * tbl = entropy->derived_tbls[tbl_no]; c_derived_tbl * tbl = entropy->derived_tbls[tbl_no];
emit_bits(entropy, tbl->ehufco[symbol], tbl->ehufsi[symbol]);
emit_bits_p(entropy, tbl->ehufco[symbol], tbl->ehufsi[symbol]);
} }
} }
@@ -301,7 +301,7 @@ emit_buffered_bits (phuff_entropy_ptr entropy, char * bufstart,
return; /* no real work */ return; /* no real work */
while (nbits > 0) { while (nbits > 0) {
emit_bits(entropy, (unsigned int) (*bufstart), 1);
emit_bits_p(entropy, (unsigned int) (*bufstart), 1);
bufstart++; bufstart++;
nbits--; nbits--;
} }
@@ -328,7 +328,7 @@ emit_eobrun (phuff_entropy_ptr entropy)
emit_symbol(entropy, entropy->ac_tbl_no, nbits << 4); emit_symbol(entropy, entropy->ac_tbl_no, nbits << 4);
if (nbits) if (nbits)
emit_bits(entropy, entropy->EOBRUN, nbits);
emit_bits_p(entropy, entropy->EOBRUN, nbits);
entropy->EOBRUN = 0; entropy->EOBRUN = 0;
@@ -344,14 +344,14 @@ emit_eobrun (phuff_entropy_ptr entropy)
*/ */
LOCAL(void) LOCAL(void)
emit_restart (phuff_entropy_ptr entropy, int restart_num)
emit_restart_p (phuff_entropy_ptr entropy, int restart_num)
{ {
int ci; int ci;
emit_eobrun(entropy); emit_eobrun(entropy);
if (! entropy->gather_statistics) { if (! entropy->gather_statistics) {
flush_bits(entropy);
flush_bits_p(entropy);
emit_byte(entropy, 0xFF); emit_byte(entropy, 0xFF);
emit_byte(entropy, JPEG_RST0 + restart_num); emit_byte(entropy, JPEG_RST0 + restart_num);
} }
@@ -391,7 +391,7 @@ encode_mcu_DC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
/* Emit restart marker if needed */ /* Emit restart marker if needed */
if (cinfo->restart_interval) if (cinfo->restart_interval)
if (entropy->restarts_to_go == 0) if (entropy->restarts_to_go == 0)
emit_restart(entropy, entropy->next_restart_num);
emit_restart_p(entropy, entropy->next_restart_num);
/* Encode the MCU data blocks */ /* Encode the MCU data blocks */
for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) { for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) {
@@ -435,7 +435,7 @@ encode_mcu_DC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
/* Emit that number of bits of the value, if positive, */ /* Emit that number of bits of the value, if positive, */
/* or the complement of its magnitude, if negative. */ /* or the complement of its magnitude, if negative. */
if (nbits) /* emit_bits rejects calls with size 0 */ if (nbits) /* emit_bits rejects calls with size 0 */
emit_bits(entropy, (unsigned int) temp2, nbits);
emit_bits_p(entropy, (unsigned int) temp2, nbits);
} }
cinfo->dest->next_output_byte = entropy->next_output_byte; cinfo->dest->next_output_byte = entropy->next_output_byte;
@@ -477,7 +477,7 @@ encode_mcu_AC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
/* Emit restart marker if needed */ /* Emit restart marker if needed */
if (cinfo->restart_interval) if (cinfo->restart_interval)
if (entropy->restarts_to_go == 0) if (entropy->restarts_to_go == 0)
emit_restart(entropy, entropy->next_restart_num);
emit_restart_p(entropy, entropy->next_restart_num);
/* Encode the MCU data block */ /* Encode the MCU data block */
block = MCU_data[0]; block = MCU_data[0];
@@ -533,7 +533,7 @@ encode_mcu_AC_first (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
/* Emit that number of bits of the value, if positive, */ /* Emit that number of bits of the value, if positive, */
/* or the complement of its magnitude, if negative. */ /* or the complement of its magnitude, if negative. */
emit_bits(entropy, (unsigned int) temp2, nbits);
emit_bits_p(entropy, (unsigned int) temp2, nbits);
r = 0; /* reset zero run length */ r = 0; /* reset zero run length */
} }
@@ -582,7 +582,7 @@ encode_mcu_DC_refine (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
/* Emit restart marker if needed */ /* Emit restart marker if needed */
if (cinfo->restart_interval) if (cinfo->restart_interval)
if (entropy->restarts_to_go == 0) if (entropy->restarts_to_go == 0)
emit_restart(entropy, entropy->next_restart_num);
emit_restart_p(entropy, entropy->next_restart_num);
/* Encode the MCU data blocks */ /* Encode the MCU data blocks */
for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) { for (blkn = 0; blkn < cinfo->blocks_in_MCU; blkn++) {
@@ -590,7 +590,7 @@ encode_mcu_DC_refine (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
/* We simply emit the Al'th bit of the DC coefficient value. */ /* We simply emit the Al'th bit of the DC coefficient value. */
temp = (*block)[0]; temp = (*block)[0];
emit_bits(entropy, (unsigned int) (temp >> Al), 1);
emit_bits_p(entropy, (unsigned int) (temp >> Al), 1);
} }
cinfo->dest->next_output_byte = entropy->next_output_byte; cinfo->dest->next_output_byte = entropy->next_output_byte;
@@ -634,7 +634,7 @@ encode_mcu_AC_refine (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
/* Emit restart marker if needed */ /* Emit restart marker if needed */
if (cinfo->restart_interval) if (cinfo->restart_interval)
if (entropy->restarts_to_go == 0) if (entropy->restarts_to_go == 0)
emit_restart(entropy, entropy->next_restart_num);
emit_restart_p(entropy, entropy->next_restart_num);
/* Encode the MCU data block */ /* Encode the MCU data block */
block = MCU_data[0]; block = MCU_data[0];
@@ -701,7 +701,7 @@ encode_mcu_AC_refine (j_compress_ptr cinfo, JBLOCKROW *MCU_data)
/* Emit output bit for newly-nonzero coef */ /* Emit output bit for newly-nonzero coef */
temp = ((*block)[jpeg_natural_order[k]] < 0) ? 0 : 1; temp = ((*block)[jpeg_natural_order[k]] < 0) ? 0 : 1;
emit_bits(entropy, (unsigned int) temp, 1);
emit_bits_p(entropy, (unsigned int) temp, 1);
/* Emit buffered correction bits that must be associated with this code */ /* Emit buffered correction bits that must be associated with this code */
emit_buffered_bits(entropy, BR_buffer, BR); emit_buffered_bits(entropy, BR_buffer, BR);
@@ -752,7 +752,7 @@ finish_pass_phuff (j_compress_ptr cinfo)
/* Flush out any buffered data */ /* Flush out any buffered data */
emit_eobrun(entropy); emit_eobrun(entropy);
flush_bits(entropy);
flush_bits_p(entropy);
cinfo->dest->next_output_byte = entropy->next_output_byte; cinfo->dest->next_output_byte = entropy->next_output_byte;
cinfo->dest->free_in_buffer = entropy->free_in_buffer; cinfo->dest->free_in_buffer = entropy->free_in_buffer;


+ 15
- 15
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jctrans.c View File

@@ -218,16 +218,16 @@ typedef struct {
/* Workspace for constructing dummy blocks at right/bottom edges. */ /* Workspace for constructing dummy blocks at right/bottom edges. */
JBLOCKROW dummy_buffer[C_MAX_BLOCKS_IN_MCU]; JBLOCKROW dummy_buffer[C_MAX_BLOCKS_IN_MCU];
} my_coef_controller;
} my_coef_controller2;
typedef my_coef_controller * my_coef_ptr;
typedef my_coef_controller2 * my_coef_ptr2;
LOCAL(void) LOCAL(void)
start_iMCU_row (j_compress_ptr cinfo)
start_iMCU_row2 (j_compress_ptr cinfo)
/* Reset within-iMCU-row counters for a new row */ /* Reset within-iMCU-row counters for a new row */
{ {
my_coef_ptr coef = (my_coef_ptr) cinfo->coef;
my_coef_ptr2 coef = (my_coef_ptr2) cinfo->coef;
/* In an interleaved scan, an MCU row is the same as an iMCU row. /* In an interleaved scan, an MCU row is the same as an iMCU row.
* In a noninterleaved scan, an iMCU row has v_samp_factor MCU rows. * In a noninterleaved scan, an iMCU row has v_samp_factor MCU rows.
@@ -252,15 +252,15 @@ start_iMCU_row (j_compress_ptr cinfo)
*/ */
METHODDEF(void) METHODDEF(void)
start_pass_coef (j_compress_ptr cinfo, J_BUF_MODE pass_mode)
start_pass_coef2 (j_compress_ptr cinfo, J_BUF_MODE pass_mode)
{ {
my_coef_ptr coef = (my_coef_ptr) cinfo->coef;
my_coef_ptr2 coef = (my_coef_ptr2) cinfo->coef;
if (pass_mode != JBUF_CRANK_DEST) if (pass_mode != JBUF_CRANK_DEST)
ERREXIT(cinfo, JERR_BAD_BUFFER_MODE); ERREXIT(cinfo, JERR_BAD_BUFFER_MODE);
coef->iMCU_row_num = 0; coef->iMCU_row_num = 0;
start_iMCU_row(cinfo);
start_iMCU_row2(cinfo);
} }
@@ -275,9 +275,9 @@ start_pass_coef (j_compress_ptr cinfo, J_BUF_MODE pass_mode)
*/ */
METHODDEF(boolean) METHODDEF(boolean)
compress_output (j_compress_ptr cinfo, JSAMPIMAGE input_buf)
compress_output2 (j_compress_ptr cinfo, JSAMPIMAGE input_buf)
{ {
my_coef_ptr coef = (my_coef_ptr) cinfo->coef;
my_coef_ptr2 coef = (my_coef_ptr2) cinfo->coef;
JDIMENSION MCU_col_num; /* index of current MCU within row */ JDIMENSION MCU_col_num; /* index of current MCU within row */
JDIMENSION last_MCU_col = cinfo->MCUs_per_row - 1; JDIMENSION last_MCU_col = cinfo->MCUs_per_row - 1;
JDIMENSION last_iMCU_row = cinfo->total_iMCU_rows - 1; JDIMENSION last_iMCU_row = cinfo->total_iMCU_rows - 1;
@@ -346,7 +346,7 @@ compress_output (j_compress_ptr cinfo, JSAMPIMAGE input_buf)
} }
/* Completed the iMCU row, advance counters for next one */ /* Completed the iMCU row, advance counters for next one */
coef->iMCU_row_num++; coef->iMCU_row_num++;
start_iMCU_row(cinfo);
start_iMCU_row2(cinfo);
return TRUE; return TRUE;
} }
@@ -363,16 +363,16 @@ LOCAL(void)
transencode_coef_controller (j_compress_ptr cinfo, transencode_coef_controller (j_compress_ptr cinfo,
jvirt_barray_ptr * coef_arrays) jvirt_barray_ptr * coef_arrays)
{ {
my_coef_ptr coef;
my_coef_ptr2 coef;
JBLOCKROW buffer; JBLOCKROW buffer;
int i; int i;
coef = (my_coef_ptr)
coef = (my_coef_ptr2)
(*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
SIZEOF(my_coef_controller));
SIZEOF(my_coef_controller2));
cinfo->coef = (struct jpeg_c_coef_controller *) coef; cinfo->coef = (struct jpeg_c_coef_controller *) coef;
coef->pub.start_pass = start_pass_coef;
coef->pub.compress_data = compress_output;
coef->pub.start_pass = start_pass_coef2;
coef->pub.compress_data = compress_output2;
/* Save pointer to virtual arrays */ /* Save pointer to virtual arrays */
coef->whole_image = coef_arrays; coef->whole_image = coef_arrays;


+ 16
- 16
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdcoefct.c View File

@@ -57,9 +57,9 @@ typedef struct {
int * coef_bits_latch; int * coef_bits_latch;
#define SAVED_COEFS 6 /* we save coef_bits[0..5] */ #define SAVED_COEFS 6 /* we save coef_bits[0..5] */
#endif #endif
} my_coef_controller;
} my_coef_controller3;
typedef my_coef_controller * my_coef_ptr;
typedef my_coef_controller3 * my_coef_ptr3;
/* Forward declarations */ /* Forward declarations */
METHODDEF(int) decompress_onepass METHODDEF(int) decompress_onepass
@@ -76,10 +76,10 @@ METHODDEF(int) decompress_smooth_data
LOCAL(void) LOCAL(void)
start_iMCU_row (j_decompress_ptr cinfo)
start_iMCU_row3 (j_decompress_ptr cinfo)
/* Reset within-iMCU-row counters for a new row (input side) */ /* Reset within-iMCU-row counters for a new row (input side) */
{ {
my_coef_ptr coef = (my_coef_ptr) cinfo->coef;
my_coef_ptr3 coef = (my_coef_ptr3) cinfo->coef;
/* In an interleaved scan, an MCU row is the same as an iMCU row. /* In an interleaved scan, an MCU row is the same as an iMCU row.
* In a noninterleaved scan, an iMCU row has v_samp_factor MCU rows. * In a noninterleaved scan, an iMCU row has v_samp_factor MCU rows.
@@ -107,7 +107,7 @@ METHODDEF(void)
start_input_pass (j_decompress_ptr cinfo) start_input_pass (j_decompress_ptr cinfo)
{ {
cinfo->input_iMCU_row = 0; cinfo->input_iMCU_row = 0;
start_iMCU_row(cinfo);
start_iMCU_row3(cinfo);
} }
@@ -119,7 +119,7 @@ METHODDEF(void)
start_output_pass (j_decompress_ptr cinfo) start_output_pass (j_decompress_ptr cinfo)
{ {
#ifdef BLOCK_SMOOTHING_SUPPORTED #ifdef BLOCK_SMOOTHING_SUPPORTED
my_coef_ptr coef = (my_coef_ptr) cinfo->coef;
my_coef_ptr3 coef = (my_coef_ptr3) cinfo->coef;
/* If multipass, check to see whether to use block smoothing on this pass */ /* If multipass, check to see whether to use block smoothing on this pass */
if (coef->pub.coef_arrays != NULL) { if (coef->pub.coef_arrays != NULL) {
@@ -146,7 +146,7 @@ start_output_pass (j_decompress_ptr cinfo)
METHODDEF(int) METHODDEF(int)
decompress_onepass (j_decompress_ptr cinfo, JSAMPIMAGE output_buf) decompress_onepass (j_decompress_ptr cinfo, JSAMPIMAGE output_buf)
{ {
my_coef_ptr coef = (my_coef_ptr) cinfo->coef;
my_coef_ptr3 coef = (my_coef_ptr3) cinfo->coef;
JDIMENSION MCU_col_num; /* index of current MCU within row */ JDIMENSION MCU_col_num; /* index of current MCU within row */
JDIMENSION last_MCU_col = cinfo->MCUs_per_row - 1; JDIMENSION last_MCU_col = cinfo->MCUs_per_row - 1;
JDIMENSION last_iMCU_row = cinfo->total_iMCU_rows - 1; JDIMENSION last_iMCU_row = cinfo->total_iMCU_rows - 1;
@@ -211,7 +211,7 @@ decompress_onepass (j_decompress_ptr cinfo, JSAMPIMAGE output_buf)
/* Completed the iMCU row, advance counters for next one */ /* Completed the iMCU row, advance counters for next one */
cinfo->output_iMCU_row++; cinfo->output_iMCU_row++;
if (++(cinfo->input_iMCU_row) < cinfo->total_iMCU_rows) { if (++(cinfo->input_iMCU_row) < cinfo->total_iMCU_rows) {
start_iMCU_row(cinfo);
start_iMCU_row3(cinfo);
return JPEG_ROW_COMPLETED; return JPEG_ROW_COMPLETED;
} }
/* Completed the scan */ /* Completed the scan */
@@ -243,7 +243,7 @@ dummy_consume_data (j_decompress_ptr cinfo)
METHODDEF(int) METHODDEF(int)
consume_data (j_decompress_ptr cinfo) consume_data (j_decompress_ptr cinfo)
{ {
my_coef_ptr coef = (my_coef_ptr) cinfo->coef;
my_coef_ptr3 coef = (my_coef_ptr3) cinfo->coef;
JDIMENSION MCU_col_num; /* index of current MCU within row */ JDIMENSION MCU_col_num; /* index of current MCU within row */
int blkn, ci, xindex, yindex, yoffset; int blkn, ci, xindex, yindex, yoffset;
JDIMENSION start_col; JDIMENSION start_col;
@@ -294,7 +294,7 @@ consume_data (j_decompress_ptr cinfo)
} }
/* Completed the iMCU row, advance counters for next one */ /* Completed the iMCU row, advance counters for next one */
if (++(cinfo->input_iMCU_row) < cinfo->total_iMCU_rows) { if (++(cinfo->input_iMCU_row) < cinfo->total_iMCU_rows) {
start_iMCU_row(cinfo);
start_iMCU_row3(cinfo);
return JPEG_ROW_COMPLETED; return JPEG_ROW_COMPLETED;
} }
/* Completed the scan */ /* Completed the scan */
@@ -314,7 +314,7 @@ consume_data (j_decompress_ptr cinfo)
METHODDEF(int) METHODDEF(int)
decompress_data (j_decompress_ptr cinfo, JSAMPIMAGE output_buf) decompress_data (j_decompress_ptr cinfo, JSAMPIMAGE output_buf)
{ {
my_coef_ptr coef = (my_coef_ptr) cinfo->coef;
my_coef_ptr3 coef = (my_coef_ptr3) cinfo->coef;
JDIMENSION last_iMCU_row = cinfo->total_iMCU_rows - 1; JDIMENSION last_iMCU_row = cinfo->total_iMCU_rows - 1;
JDIMENSION block_num; JDIMENSION block_num;
int ci, block_row, block_rows; int ci, block_row, block_rows;
@@ -404,7 +404,7 @@ decompress_data (j_decompress_ptr cinfo, JSAMPIMAGE output_buf)
LOCAL(boolean) LOCAL(boolean)
smoothing_ok (j_decompress_ptr cinfo) smoothing_ok (j_decompress_ptr cinfo)
{ {
my_coef_ptr coef = (my_coef_ptr) cinfo->coef;
my_coef_ptr3 coef = (my_coef_ptr3) cinfo->coef;
boolean smoothing_useful = FALSE; boolean smoothing_useful = FALSE;
int ci, coefi; int ci, coefi;
jpeg_component_info *compptr; jpeg_component_info *compptr;
@@ -460,7 +460,7 @@ smoothing_ok (j_decompress_ptr cinfo)
METHODDEF(int) METHODDEF(int)
decompress_smooth_data (j_decompress_ptr cinfo, JSAMPIMAGE output_buf) decompress_smooth_data (j_decompress_ptr cinfo, JSAMPIMAGE output_buf)
{ {
my_coef_ptr coef = (my_coef_ptr) cinfo->coef;
my_coef_ptr3 coef = (my_coef_ptr3) cinfo->coef;
JDIMENSION last_iMCU_row = cinfo->total_iMCU_rows - 1; JDIMENSION last_iMCU_row = cinfo->total_iMCU_rows - 1;
JDIMENSION block_num, last_block_column; JDIMENSION block_num, last_block_column;
int ci, block_row, block_rows, access_rows; int ci, block_row, block_rows, access_rows;
@@ -675,11 +675,11 @@ decompress_smooth_data (j_decompress_ptr cinfo, JSAMPIMAGE output_buf)
GLOBAL(void) GLOBAL(void)
jinit_d_coef_controller (j_decompress_ptr cinfo, boolean need_full_buffer) jinit_d_coef_controller (j_decompress_ptr cinfo, boolean need_full_buffer)
{ {
my_coef_ptr coef;
my_coef_ptr3 coef;
coef = (my_coef_ptr)
coef = (my_coef_ptr3)
(*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
SIZEOF(my_coef_controller));
SIZEOF(my_coef_controller3));
cinfo->coef = (struct jpeg_d_coef_controller *) coef; cinfo->coef = (struct jpeg_d_coef_controller *) coef;
coef->pub.start_input_pass = start_input_pass; coef->pub.start_input_pass = start_input_pass;
coef->pub.start_output_pass = start_output_pass; coef->pub.start_output_pass = start_output_pass;


+ 14
- 14
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdcolor.c View File

@@ -23,9 +23,9 @@ typedef struct {
int * Cb_b_tab; /* => table for Cb to B conversion */ int * Cb_b_tab; /* => table for Cb to B conversion */
INT32 * Cr_g_tab; /* => table for Cr to G conversion */ INT32 * Cr_g_tab; /* => table for Cr to G conversion */
INT32 * Cb_g_tab; /* => table for Cb to G conversion */ INT32 * Cb_g_tab; /* => table for Cb to G conversion */
} my_color_deconverter;
} my_color_deconverter2;
typedef my_color_deconverter * my_cconvert_ptr;
typedef my_color_deconverter2 * my_cconvert_ptr2;
/**************** YCbCr -> RGB conversion: most common case **************/ /**************** YCbCr -> RGB conversion: most common case **************/
@@ -69,7 +69,7 @@ typedef my_color_deconverter * my_cconvert_ptr;
LOCAL(void) LOCAL(void)
build_ycc_rgb_table (j_decompress_ptr cinfo) build_ycc_rgb_table (j_decompress_ptr cinfo)
{ {
my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert;
my_cconvert_ptr2 cconvert = (my_cconvert_ptr2) cinfo->cconvert;
int i; int i;
INT32 x; INT32 x;
SHIFT_TEMPS SHIFT_TEMPS
@@ -121,7 +121,7 @@ ycc_rgb_convert (j_decompress_ptr cinfo,
JSAMPIMAGE input_buf, JDIMENSION input_row, JSAMPIMAGE input_buf, JDIMENSION input_row,
JSAMPARRAY output_buf, int num_rows) JSAMPARRAY output_buf, int num_rows)
{ {
my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert;
my_cconvert_ptr2 cconvert = (my_cconvert_ptr2) cinfo->cconvert;
register int y, cb, cr; register int y, cb, cr;
register JSAMPROW outptr; register JSAMPROW outptr;
register JSAMPROW inptr0, inptr1, inptr2; register JSAMPROW inptr0, inptr1, inptr2;
@@ -166,7 +166,7 @@ ycc_rgb_convert (j_decompress_ptr cinfo,
*/ */
METHODDEF(void) METHODDEF(void)
null_convert (j_decompress_ptr cinfo,
null_convert2 (j_decompress_ptr cinfo,
JSAMPIMAGE input_buf, JDIMENSION input_row, JSAMPIMAGE input_buf, JDIMENSION input_row,
JSAMPARRAY output_buf, int num_rows) JSAMPARRAY output_buf, int num_rows)
{ {
@@ -198,7 +198,7 @@ null_convert (j_decompress_ptr cinfo,
*/ */
METHODDEF(void) METHODDEF(void)
grayscale_convert (j_decompress_ptr cinfo,
grayscale_convert2 (j_decompress_ptr cinfo,
JSAMPIMAGE input_buf, JDIMENSION input_row, JSAMPIMAGE input_buf, JDIMENSION input_row,
JSAMPARRAY output_buf, int num_rows) JSAMPARRAY output_buf, int num_rows)
{ {
@@ -246,7 +246,7 @@ ycck_cmyk_convert (j_decompress_ptr cinfo,
JSAMPIMAGE input_buf, JDIMENSION input_row, JSAMPIMAGE input_buf, JDIMENSION input_row,
JSAMPARRAY output_buf, int num_rows) JSAMPARRAY output_buf, int num_rows)
{ {
my_cconvert_ptr cconvert = (my_cconvert_ptr) cinfo->cconvert;
my_cconvert_ptr2 cconvert = (my_cconvert_ptr2) cinfo->cconvert;
register int y, cb, cr; register int y, cb, cr;
register JSAMPROW outptr; register JSAMPROW outptr;
register JSAMPROW inptr0, inptr1, inptr2, inptr3; register JSAMPROW inptr0, inptr1, inptr2, inptr3;
@@ -303,12 +303,12 @@ start_pass_dcolor (j_decompress_ptr cinfo)
GLOBAL(void) GLOBAL(void)
jinit_color_deconverter (j_decompress_ptr cinfo) jinit_color_deconverter (j_decompress_ptr cinfo)
{ {
my_cconvert_ptr cconvert;
my_cconvert_ptr2 cconvert;
int ci; int ci;
cconvert = (my_cconvert_ptr)
cconvert = (my_cconvert_ptr2)
(*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
SIZEOF(my_color_deconverter));
SIZEOF(my_color_deconverter2));
cinfo->cconvert = (struct jpeg_color_deconverter *) cconvert; cinfo->cconvert = (struct jpeg_color_deconverter *) cconvert;
cconvert->pub.start_pass = start_pass_dcolor; cconvert->pub.start_pass = start_pass_dcolor;
@@ -347,7 +347,7 @@ jinit_color_deconverter (j_decompress_ptr cinfo)
cinfo->out_color_components = 1; cinfo->out_color_components = 1;
if (cinfo->jpeg_color_space == JCS_GRAYSCALE || if (cinfo->jpeg_color_space == JCS_GRAYSCALE ||
cinfo->jpeg_color_space == JCS_YCbCr) { cinfo->jpeg_color_space == JCS_YCbCr) {
cconvert->pub.color_convert = grayscale_convert;
cconvert->pub.color_convert = grayscale_convert2;
/* For color->grayscale conversion, only the Y (0) component is needed */ /* For color->grayscale conversion, only the Y (0) component is needed */
for (ci = 1; ci < cinfo->num_components; ci++) for (ci = 1; ci < cinfo->num_components; ci++)
cinfo->comp_info[ci].component_needed = FALSE; cinfo->comp_info[ci].component_needed = FALSE;
@@ -363,7 +363,7 @@ jinit_color_deconverter (j_decompress_ptr cinfo)
} else if (cinfo->jpeg_color_space == JCS_GRAYSCALE) { } else if (cinfo->jpeg_color_space == JCS_GRAYSCALE) {
cconvert->pub.color_convert = gray_rgb_convert; cconvert->pub.color_convert = gray_rgb_convert;
} else if (cinfo->jpeg_color_space == JCS_RGB && RGB_PIXELSIZE == 3) { } else if (cinfo->jpeg_color_space == JCS_RGB && RGB_PIXELSIZE == 3) {
cconvert->pub.color_convert = null_convert;
cconvert->pub.color_convert = null_convert2;
} else } else
ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL); ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
break; break;
@@ -374,7 +374,7 @@ jinit_color_deconverter (j_decompress_ptr cinfo)
cconvert->pub.color_convert = ycck_cmyk_convert; cconvert->pub.color_convert = ycck_cmyk_convert;
build_ycc_rgb_table(cinfo); build_ycc_rgb_table(cinfo);
} else if (cinfo->jpeg_color_space == JCS_CMYK) { } else if (cinfo->jpeg_color_space == JCS_CMYK) {
cconvert->pub.color_convert = null_convert;
cconvert->pub.color_convert = null_convert2;
} else } else
ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL); ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
break; break;
@@ -383,7 +383,7 @@ jinit_color_deconverter (j_decompress_ptr cinfo)
/* Permit null conversion to same output space */ /* Permit null conversion to same output space */
if (cinfo->out_color_space == cinfo->jpeg_color_space) { if (cinfo->out_color_space == cinfo->jpeg_color_space) {
cinfo->out_color_components = cinfo->num_components; cinfo->out_color_components = cinfo->num_components;
cconvert->pub.color_convert = null_convert;
cconvert->pub.color_convert = null_convert2;
} else /* unsupported non-null conversion */ } else /* unsupported non-null conversion */
ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL); ERREXIT(cinfo, JERR_CONVERSION_NOTIMPL);
break; break;


+ 6
- 0
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdct.h View File

@@ -26,6 +26,9 @@
* Quantization of the output coefficients is done by jcdctmgr.c. * Quantization of the output coefficients is done by jcdctmgr.c.
*/ */
#ifndef __jdct_h__
#define __jdct_h__
#if BITS_IN_JSAMPLE == 8 #if BITS_IN_JSAMPLE == 8
typedef int DCTELEM; /* 16 or 32 bits is fine */ typedef int DCTELEM; /* 16 or 32 bits is fine */
#else #else
@@ -174,3 +177,6 @@ EXTERN(void) jpeg_idct_1x1
#ifndef MULTIPLY16V16 /* default definition */ #ifndef MULTIPLY16V16 /* default definition */
#define MULTIPLY16V16(var1,var2) ((var1) * (var2)) #define MULTIPLY16V16(var1,var2) ((var1) * (var2))
#endif #endif
#endif

+ 11
- 37
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdhuff.c View File

@@ -29,7 +29,7 @@
typedef struct { typedef struct {
int last_dc_val[MAX_COMPS_IN_SCAN]; /* last DC coef for each component */ int last_dc_val[MAX_COMPS_IN_SCAN]; /* last DC coef for each component */
} savable_state;
} savable_state2;
/* This macro is to work around compilers with missing or broken /* This macro is to work around compilers with missing or broken
* structure assignment. You'll need to fix this code if you have * structure assignment. You'll need to fix this code if you have
@@ -56,7 +56,7 @@ typedef struct {
* In case of suspension, we exit WITHOUT updating them. * In case of suspension, we exit WITHOUT updating them.
*/ */
bitread_perm_state bitstate; /* Bit buffer at start of MCU */ bitread_perm_state bitstate; /* Bit buffer at start of MCU */
savable_state saved; /* Other state at start of MCU */
savable_state2 saved; /* Other state at start of MCU */
/* These fields are NOT loaded into local working state. */ /* These fields are NOT loaded into local working state. */
unsigned int restarts_to_go; /* MCUs left in this restart interval */ unsigned int restarts_to_go; /* MCUs left in this restart interval */
@@ -73,9 +73,9 @@ typedef struct {
/* Whether we care about the DC and AC coefficient values for each block */ /* Whether we care about the DC and AC coefficient values for each block */
boolean dc_needed[D_MAX_BLOCKS_IN_MCU]; boolean dc_needed[D_MAX_BLOCKS_IN_MCU];
boolean ac_needed[D_MAX_BLOCKS_IN_MCU]; boolean ac_needed[D_MAX_BLOCKS_IN_MCU];
} huff_entropy_decoder;
} huff_entropy_decoder2;
typedef huff_entropy_decoder * huff_entropy_ptr;
typedef huff_entropy_decoder2 * huff_entropy_ptr2;
/* /*
@@ -85,7 +85,7 @@ typedef huff_entropy_decoder * huff_entropy_ptr;
METHODDEF(void) METHODDEF(void)
start_pass_huff_decoder (j_decompress_ptr cinfo) start_pass_huff_decoder (j_decompress_ptr cinfo)
{ {
huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy;
huff_entropy_ptr2 entropy = (huff_entropy_ptr2) cinfo->entropy;
int ci, blkn, dctbl, actbl; int ci, blkn, dctbl, actbl;
jpeg_component_info * compptr; jpeg_component_info * compptr;
@@ -433,32 +433,6 @@ jpeg_huff_decode (bitread_working_state * state,
} }
/*
* Figure F.12: extend sign bit.
* On some machines, a shift and add will be faster than a table lookup.
*/
#ifdef AVOID_TABLES
#define HUFF_EXTEND(x,s) ((x) < (1<<((s)-1)) ? (x) + (((-1)<<(s)) + 1) : (x))
#else
#define HUFF_EXTEND(x,s) ((x) < extend_test[s] ? (x) + extend_offset[s] : (x))
static const int extend_test[16] = /* entry n is 2**(n-1) */
{ 0, 0x0001, 0x0002, 0x0004, 0x0008, 0x0010, 0x0020, 0x0040, 0x0080,
0x0100, 0x0200, 0x0400, 0x0800, 0x1000, 0x2000, 0x4000 };
static const int extend_offset[16] = /* entry n is (-1 << n) + 1 */
{ 0, ((-1)<<1) + 1, ((-1)<<2) + 1, ((-1)<<3) + 1, ((-1)<<4) + 1,
((-1)<<5) + 1, ((-1)<<6) + 1, ((-1)<<7) + 1, ((-1)<<8) + 1,
((-1)<<9) + 1, ((-1)<<10) + 1, ((-1)<<11) + 1, ((-1)<<12) + 1,
((-1)<<13) + 1, ((-1)<<14) + 1, ((-1)<<15) + 1 };
#endif /* AVOID_TABLES */
/* /*
* Check for a restart marker & resynchronize decoder. * Check for a restart marker & resynchronize decoder.
* Returns FALSE if must suspend. * Returns FALSE if must suspend.
@@ -467,7 +441,7 @@ static const int extend_offset[16] = /* entry n is (-1 << n) + 1 */
LOCAL(boolean) LOCAL(boolean)
process_restart (j_decompress_ptr cinfo) process_restart (j_decompress_ptr cinfo)
{ {
huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy;
huff_entropy_ptr2 entropy = (huff_entropy_ptr2) cinfo->entropy;
int ci; int ci;
/* Throw away any unused bits remaining in bit buffer; */ /* Throw away any unused bits remaining in bit buffer; */
@@ -516,10 +490,10 @@ process_restart (j_decompress_ptr cinfo)
METHODDEF(boolean) METHODDEF(boolean)
decode_mcu (j_decompress_ptr cinfo, JBLOCKROW *MCU_data) decode_mcu (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
{ {
huff_entropy_ptr entropy = (huff_entropy_ptr) cinfo->entropy;
huff_entropy_ptr2 entropy = (huff_entropy_ptr2) cinfo->entropy;
int blkn; int blkn;
BITREAD_STATE_VARS; BITREAD_STATE_VARS;
savable_state state;
savable_state2 state;
/* Process restart marker if needed; may have to suspend */ /* Process restart marker if needed; may have to suspend */
if (cinfo->restart_interval) { if (cinfo->restart_interval) {
@@ -634,12 +608,12 @@ decode_mcu (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
GLOBAL(void) GLOBAL(void)
jinit_huff_decoder (j_decompress_ptr cinfo) jinit_huff_decoder (j_decompress_ptr cinfo)
{ {
huff_entropy_ptr entropy;
huff_entropy_ptr2 entropy;
int i; int i;
entropy = (huff_entropy_ptr)
entropy = (huff_entropy_ptr2)
(*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
SIZEOF(huff_entropy_decoder));
SIZEOF(huff_entropy_decoder2));
cinfo->entropy = (struct jpeg_entropy_decoder *) entropy; cinfo->entropy = (struct jpeg_entropy_decoder *) entropy;
entropy->pub.start_pass = start_pass_huff_decoder; entropy->pub.start_pass = start_pass_huff_decoder;
entropy->pub.decode_mcu = decode_mcu; entropy->pub.decode_mcu = decode_mcu;


+ 5
- 0
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdhuff.h View File

@@ -12,6 +12,9 @@
/* Short forms of external names for systems with brain-damaged linkers. */ /* Short forms of external names for systems with brain-damaged linkers. */
#ifndef __jdhuff_h__
#define __jdhuff_h__
#ifdef NEED_SHORT_EXTERNAL_NAMES #ifdef NEED_SHORT_EXTERNAL_NAMES
#define jpeg_make_d_derived_tbl jMkDDerived #define jpeg_make_d_derived_tbl jMkDDerived
#define jpeg_fill_bit_buffer jFilBitBuf #define jpeg_fill_bit_buffer jFilBitBuf
@@ -199,3 +202,5 @@ slowlabel: \
EXTERN(int) jpeg_huff_decode EXTERN(int) jpeg_huff_decode
JPP((bitread_working_state * state, register bit_buf_type get_buffer, JPP((bitread_working_state * state, register bit_buf_type get_buffer,
register int bits_left, d_derived_tbl * htbl, int min_bits)); register int bits_left, d_derived_tbl * htbl, int min_bits));
#endif

+ 7
- 7
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdinput.c View File

@@ -36,7 +36,7 @@ METHODDEF(int) consume_markers JPP((j_decompress_ptr cinfo));
*/ */
LOCAL(void) LOCAL(void)
initial_setup (j_decompress_ptr cinfo)
initial_setup2 (j_decompress_ptr cinfo)
/* Called once, when first SOS marker is reached */ /* Called once, when first SOS marker is reached */
{ {
int ci; int ci;
@@ -118,7 +118,7 @@ initial_setup (j_decompress_ptr cinfo)
LOCAL(void) LOCAL(void)
per_scan_setup (j_decompress_ptr cinfo)
per_scan_setup2 (j_decompress_ptr cinfo)
/* Do computations that are needed before processing a JPEG scan */ /* Do computations that are needed before processing a JPEG scan */
/* cinfo->comps_in_scan and cinfo->cur_comp_info[] were set from SOS marker */ /* cinfo->comps_in_scan and cinfo->cur_comp_info[] were set from SOS marker */
{ {
@@ -251,9 +251,9 @@ latch_quant_tables (j_decompress_ptr cinfo)
*/ */
METHODDEF(void) METHODDEF(void)
start_input_pass (j_decompress_ptr cinfo)
start_input_pass2 (j_decompress_ptr cinfo)
{ {
per_scan_setup(cinfo);
per_scan_setup2(cinfo);
latch_quant_tables(cinfo); latch_quant_tables(cinfo);
(*cinfo->entropy->start_pass) (cinfo); (*cinfo->entropy->start_pass) (cinfo);
(*cinfo->coef->start_input_pass) (cinfo); (*cinfo->coef->start_input_pass) (cinfo);
@@ -298,7 +298,7 @@ consume_markers (j_decompress_ptr cinfo)
switch (val) { switch (val) {
case JPEG_REACHED_SOS: /* Found SOS */ case JPEG_REACHED_SOS: /* Found SOS */
if (inputctl->inheaders) { /* 1st SOS */ if (inputctl->inheaders) { /* 1st SOS */
initial_setup(cinfo);
initial_setup2(cinfo);
inputctl->inheaders = FALSE; inputctl->inheaders = FALSE;
/* Note: start_input_pass must be called by jdmaster.c /* Note: start_input_pass must be called by jdmaster.c
* before any more input can be consumed. jdapimin.c is * before any more input can be consumed. jdapimin.c is
@@ -307,7 +307,7 @@ consume_markers (j_decompress_ptr cinfo)
} else { /* 2nd or later SOS marker */ } else { /* 2nd or later SOS marker */
if (! inputctl->pub.has_multiple_scans) if (! inputctl->pub.has_multiple_scans)
ERREXIT(cinfo, JERR_EOI_EXPECTED); /* Oops, I wasn't expecting this! */ ERREXIT(cinfo, JERR_EOI_EXPECTED); /* Oops, I wasn't expecting this! */
start_input_pass(cinfo);
start_input_pass2(cinfo);
} }
break; break;
case JPEG_REACHED_EOI: /* Found EOI */ case JPEG_REACHED_EOI: /* Found EOI */
@@ -370,7 +370,7 @@ jinit_input_controller (j_decompress_ptr cinfo)
/* Initialize method pointers */ /* Initialize method pointers */
inputctl->pub.consume_input = consume_markers; inputctl->pub.consume_input = consume_markers;
inputctl->pub.reset_input_controller = reset_input_controller; inputctl->pub.reset_input_controller = reset_input_controller;
inputctl->pub.start_input_pass = start_input_pass;
inputctl->pub.start_input_pass = start_input_pass2;
inputctl->pub.finish_input_pass = finish_input_pass; inputctl->pub.finish_input_pass = finish_input_pass;
/* Initialize state: can't use reset_input_controller since we don't /* Initialize state: can't use reset_input_controller since we don't
* want to try to reset other modules yet. * want to try to reset other modules yet.


+ 17
- 17
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdmainct.c View File

@@ -129,9 +129,9 @@ typedef struct {
int context_state; /* process_data state machine status */ int context_state; /* process_data state machine status */
JDIMENSION rowgroups_avail; /* row groups available to postprocessor */ JDIMENSION rowgroups_avail; /* row groups available to postprocessor */
JDIMENSION iMCU_row_ctr; /* counts iMCU rows to detect image top/bot */ JDIMENSION iMCU_row_ctr; /* counts iMCU rows to detect image top/bot */
} my_main_controller;
} my_main_controller4;
typedef my_main_controller * my_main_ptr;
typedef my_main_controller4 * my_main_ptr4;
/* context_state values: */ /* context_state values: */
#define CTX_PREPARE_FOR_IMCU 0 /* need to prepare for MCU row */ #define CTX_PREPARE_FOR_IMCU 0 /* need to prepare for MCU row */
@@ -140,7 +140,7 @@ typedef my_main_controller * my_main_ptr;
/* Forward declarations */ /* Forward declarations */
METHODDEF(void) process_data_simple_main
METHODDEF(void) process_data_simple_main2
JPP((j_decompress_ptr cinfo, JSAMPARRAY output_buf, JPP((j_decompress_ptr cinfo, JSAMPARRAY output_buf,
JDIMENSION *out_row_ctr, JDIMENSION out_rows_avail)); JDIMENSION *out_row_ctr, JDIMENSION out_rows_avail));
METHODDEF(void) process_data_context_main METHODDEF(void) process_data_context_main
@@ -159,7 +159,7 @@ alloc_funny_pointers (j_decompress_ptr cinfo)
* This is done only once, not once per pass. * This is done only once, not once per pass.
*/ */
{ {
my_main_ptr main_ = (my_main_ptr) cinfo->main;
my_main_ptr4 main_ = (my_main_ptr4) cinfo->main;
int ci, rgroup; int ci, rgroup;
int M = cinfo->min_DCT_scaled_size; int M = cinfo->min_DCT_scaled_size;
jpeg_component_info *compptr; jpeg_component_info *compptr;
@@ -200,7 +200,7 @@ make_funny_pointers (j_decompress_ptr cinfo)
* This will be repeated at the beginning of each pass. * This will be repeated at the beginning of each pass.
*/ */
{ {
my_main_ptr main_ = (my_main_ptr) cinfo->main;
my_main_ptr4 main_ = (my_main_ptr4) cinfo->main;
int ci, i, rgroup; int ci, i, rgroup;
int M = cinfo->min_DCT_scaled_size; int M = cinfo->min_DCT_scaled_size;
jpeg_component_info *compptr; jpeg_component_info *compptr;
@@ -240,7 +240,7 @@ set_wraparound_pointers (j_decompress_ptr cinfo)
* This changes the pointer list state from top-of-image to the normal state. * This changes the pointer list state from top-of-image to the normal state.
*/ */
{ {
my_main_ptr main_ = (my_main_ptr) cinfo->main;
my_main_ptr4 main_ = (my_main_ptr4) cinfo->main;
int ci, i, rgroup; int ci, i, rgroup;
int M = cinfo->min_DCT_scaled_size; int M = cinfo->min_DCT_scaled_size;
jpeg_component_info *compptr; jpeg_component_info *compptr;
@@ -269,7 +269,7 @@ set_bottom_pointers (j_decompress_ptr cinfo)
* Also sets rowgroups_avail to indicate number of nondummy row groups in row. * Also sets rowgroups_avail to indicate number of nondummy row groups in row.
*/ */
{ {
my_main_ptr main_ = (my_main_ptr) cinfo->main;
my_main_ptr4 main_ = (my_main_ptr4) cinfo->main;
int ci, i, rgroup, iMCUheight, rows_left; int ci, i, rgroup, iMCUheight, rows_left;
jpeg_component_info *compptr; jpeg_component_info *compptr;
JSAMPARRAY xbuf; JSAMPARRAY xbuf;
@@ -304,9 +304,9 @@ set_bottom_pointers (j_decompress_ptr cinfo)
*/ */
METHODDEF(void) METHODDEF(void)
start_pass_main (j_decompress_ptr cinfo, J_BUF_MODE pass_mode)
start_pass_main2 (j_decompress_ptr cinfo, J_BUF_MODE pass_mode)
{ {
my_main_ptr main_ = (my_main_ptr) cinfo->main;
my_main_ptr4 main_ = (my_main_ptr4) cinfo->main;
switch (pass_mode) { switch (pass_mode) {
case JBUF_PASS_THRU: case JBUF_PASS_THRU:
@@ -318,7 +318,7 @@ start_pass_main (j_decompress_ptr cinfo, J_BUF_MODE pass_mode)
main_->iMCU_row_ctr = 0; main_->iMCU_row_ctr = 0;
} else { } else {
/* Simple case with no context needed */ /* Simple case with no context needed */
main_->pub.process_data = process_data_simple_main;
main_->pub.process_data = process_data_simple_main2;
} }
main_->buffer_full = FALSE; /* Mark buffer empty */ main_->buffer_full = FALSE; /* Mark buffer empty */
main_->rowgroup_ctr = 0; main_->rowgroup_ctr = 0;
@@ -342,11 +342,11 @@ start_pass_main (j_decompress_ptr cinfo, J_BUF_MODE pass_mode)
*/ */
METHODDEF(void) METHODDEF(void)
process_data_simple_main (j_decompress_ptr cinfo,
process_data_simple_main2 (j_decompress_ptr cinfo,
JSAMPARRAY output_buf, JDIMENSION *out_row_ctr, JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
JDIMENSION out_rows_avail) JDIMENSION out_rows_avail)
{ {
my_main_ptr main_ = (my_main_ptr) cinfo->main;
my_main_ptr4 main_ = (my_main_ptr4) cinfo->main;
JDIMENSION rowgroups_avail; JDIMENSION rowgroups_avail;
/* Read input data if we haven't filled the main buffer yet */ /* Read input data if we haven't filled the main buffer yet */
@@ -386,7 +386,7 @@ process_data_context_main (j_decompress_ptr cinfo,
JSAMPARRAY output_buf, JDIMENSION *out_row_ctr, JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
JDIMENSION out_rows_avail) JDIMENSION out_rows_avail)
{ {
my_main_ptr main_ = (my_main_ptr) cinfo->main;
my_main_ptr4 main_ = (my_main_ptr4) cinfo->main;
/* Read input data if we haven't filled the main buffer yet */ /* Read input data if we haven't filled the main buffer yet */
if (! main_->buffer_full) { if (! main_->buffer_full) {
@@ -475,15 +475,15 @@ process_data_crank_post (j_decompress_ptr cinfo,
GLOBAL(void) GLOBAL(void)
jinit_d_main_controller (j_decompress_ptr cinfo, boolean need_full_buffer) jinit_d_main_controller (j_decompress_ptr cinfo, boolean need_full_buffer)
{ {
my_main_ptr main_;
my_main_ptr4 main_;
int ci, rgroup, ngroups; int ci, rgroup, ngroups;
jpeg_component_info *compptr; jpeg_component_info *compptr;
main_ = (my_main_ptr)
main_ = (my_main_ptr4)
(*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
SIZEOF(my_main_controller));
SIZEOF(my_main_controller4));
cinfo->main = (struct jpeg_d_main_controller *) main_; cinfo->main = (struct jpeg_d_main_controller *) main_;
main_->pub.start_pass = start_pass_main;
main_->pub.start_pass = start_pass_main2;
if (need_full_buffer) /* shouldn't happen */ if (need_full_buffer) /* shouldn't happen */
ERREXIT(cinfo, JERR_BAD_BUFFER_MODE); ERREXIT(cinfo, JERR_BAD_BUFFER_MODE);


+ 9
- 77
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdmarker.c View File

@@ -17,74 +17,6 @@
#include "jpeglib.h" #include "jpeglib.h"
typedef enum { /* JPEG marker codes */
M_SOF0 = 0xc0,
M_SOF1 = 0xc1,
M_SOF2 = 0xc2,
M_SOF3 = 0xc3,
M_SOF5 = 0xc5,
M_SOF6 = 0xc6,
M_SOF7 = 0xc7,
M_JPG = 0xc8,
M_SOF9 = 0xc9,
M_SOF10 = 0xca,
M_SOF11 = 0xcb,
M_SOF13 = 0xcd,
M_SOF14 = 0xce,
M_SOF15 = 0xcf,
M_DHT = 0xc4,
M_DAC = 0xcc,
M_RST0 = 0xd0,
M_RST1 = 0xd1,
M_RST2 = 0xd2,
M_RST3 = 0xd3,
M_RST4 = 0xd4,
M_RST5 = 0xd5,
M_RST6 = 0xd6,
M_RST7 = 0xd7,
M_SOI = 0xd8,
M_EOI = 0xd9,
M_SOS = 0xda,
M_DQT = 0xdb,
M_DNL = 0xdc,
M_DRI = 0xdd,
M_DHP = 0xde,
M_EXP = 0xdf,
M_APP0 = 0xe0,
M_APP1 = 0xe1,
M_APP2 = 0xe2,
M_APP3 = 0xe3,
M_APP4 = 0xe4,
M_APP5 = 0xe5,
M_APP6 = 0xe6,
M_APP7 = 0xe7,
M_APP8 = 0xe8,
M_APP9 = 0xe9,
M_APP10 = 0xea,
M_APP11 = 0xeb,
M_APP12 = 0xec,
M_APP13 = 0xed,
M_APP14 = 0xee,
M_APP15 = 0xef,
M_JPG0 = 0xf0,
M_JPG13 = 0xfd,
M_COM = 0xfe,
M_TEM = 0x01,
M_ERROR = 0x100
} JPEG_MARKER;
/* Private state */ /* Private state */
typedef struct { typedef struct {
@@ -104,7 +36,7 @@ typedef struct {
/* Note: cur_marker is not linked into marker_list until it's all read. */ /* Note: cur_marker is not linked into marker_list until it's all read. */
} my_marker_reader; } my_marker_reader;
typedef my_marker_reader * my_marker_ptr;
typedef my_marker_reader * my_marker_ptr2;
/* /*
@@ -739,7 +671,7 @@ METHODDEF(boolean)
save_marker (j_decompress_ptr cinfo) save_marker (j_decompress_ptr cinfo)
/* Save an APPn or COM marker into the marker list */ /* Save an APPn or COM marker into the marker list */
{ {
my_marker_ptr marker = (my_marker_ptr) cinfo->marker;
my_marker_ptr2 marker = (my_marker_ptr2) cinfo->marker;
jpeg_saved_marker_ptr cur_marker = marker->cur_marker; jpeg_saved_marker_ptr cur_marker = marker->cur_marker;
unsigned int bytes_read, data_length; unsigned int bytes_read, data_length;
JOCTET FAR * data; JOCTET FAR * data;
@@ -1055,13 +987,13 @@ read_markers (j_decompress_ptr cinfo)
case M_APP13: case M_APP13:
case M_APP14: case M_APP14:
case M_APP15: case M_APP15:
if (! (*((my_marker_ptr) cinfo->marker)->process_APPn[
if (! (*((my_marker_ptr2) cinfo->marker)->process_APPn[
cinfo->unread_marker - (int) M_APP0]) (cinfo)) cinfo->unread_marker - (int) M_APP0]) (cinfo))
return JPEG_SUSPENDED; return JPEG_SUSPENDED;
break; break;
case M_COM: case M_COM:
if (! (*((my_marker_ptr) cinfo->marker)->process_COM) (cinfo))
if (! (*((my_marker_ptr2) cinfo->marker)->process_COM) (cinfo))
return JPEG_SUSPENDED; return JPEG_SUSPENDED;
break; break;
@@ -1241,7 +1173,7 @@ jpeg_resync_to_restart (j_decompress_ptr cinfo, int desired)
METHODDEF(void) METHODDEF(void)
reset_marker_reader (j_decompress_ptr cinfo) reset_marker_reader (j_decompress_ptr cinfo)
{ {
my_marker_ptr marker = (my_marker_ptr) cinfo->marker;
my_marker_ptr2 marker = (my_marker_ptr2) cinfo->marker;
cinfo->comp_info = NULL; /* until allocated by get_sof */ cinfo->comp_info = NULL; /* until allocated by get_sof */
cinfo->input_scan_number = 0; /* no SOS seen yet */ cinfo->input_scan_number = 0; /* no SOS seen yet */
@@ -1261,11 +1193,11 @@ reset_marker_reader (j_decompress_ptr cinfo)
GLOBAL(void) GLOBAL(void)
jinit_marker_reader (j_decompress_ptr cinfo) jinit_marker_reader (j_decompress_ptr cinfo)
{ {
my_marker_ptr marker;
my_marker_ptr2 marker;
int i; int i;
/* Create subobject in permanent pool */ /* Create subobject in permanent pool */
marker = (my_marker_ptr)
marker = (my_marker_ptr2)
(*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_PERMANENT, (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_PERMANENT,
SIZEOF(my_marker_reader)); SIZEOF(my_marker_reader));
cinfo->marker = (struct jpeg_marker_reader *) marker; cinfo->marker = (struct jpeg_marker_reader *) marker;
@@ -1300,7 +1232,7 @@ GLOBAL(void)
jpeg_save_markers (j_decompress_ptr cinfo, int marker_code, jpeg_save_markers (j_decompress_ptr cinfo, int marker_code,
unsigned int length_limit) unsigned int length_limit)
{ {
my_marker_ptr marker = (my_marker_ptr) cinfo->marker;
my_marker_ptr2 marker = (my_marker_ptr2) cinfo->marker;
long maxlength; long maxlength;
jpeg_marker_parser_method processor; jpeg_marker_parser_method processor;
@@ -1349,7 +1281,7 @@ GLOBAL(void)
jpeg_set_marker_processor (j_decompress_ptr cinfo, int marker_code, jpeg_set_marker_processor (j_decompress_ptr cinfo, int marker_code,
jpeg_marker_parser_method routine) jpeg_marker_parser_method routine)
{ {
my_marker_ptr marker = (my_marker_ptr) cinfo->marker;
my_marker_ptr2 marker = (my_marker_ptr2) cinfo->marker;
if (marker_code == (int) M_COM) if (marker_code == (int) M_COM)
marker->process_COM = routine; marker->process_COM = routine;


+ 7
- 7
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdmaster.c View File

@@ -32,7 +32,7 @@ typedef struct {
struct jpeg_color_quantizer * quantizer_2pass; struct jpeg_color_quantizer * quantizer_2pass;
} my_decomp_master; } my_decomp_master;
typedef my_decomp_master * my_master_ptr;
typedef my_decomp_master * my_master_ptr6;
/* /*
@@ -287,7 +287,7 @@ prepare_range_limit_table (j_decompress_ptr cinfo)
LOCAL(void) LOCAL(void)
master_selection (j_decompress_ptr cinfo) master_selection (j_decompress_ptr cinfo)
{ {
my_master_ptr master = (my_master_ptr) cinfo->master;
my_master_ptr6 master = (my_master_ptr6) cinfo->master;
boolean use_c_buffer; boolean use_c_buffer;
long samplesperrow; long samplesperrow;
JDIMENSION jd_samplesperrow; JDIMENSION jd_samplesperrow;
@@ -437,7 +437,7 @@ master_selection (j_decompress_ptr cinfo)
METHODDEF(void) METHODDEF(void)
prepare_for_output_pass (j_decompress_ptr cinfo) prepare_for_output_pass (j_decompress_ptr cinfo)
{ {
my_master_ptr master = (my_master_ptr) cinfo->master;
my_master_ptr6 master = (my_master_ptr6) cinfo->master;
if (master->pub.is_dummy_pass) { if (master->pub.is_dummy_pass) {
#ifdef QUANT_2PASS_SUPPORTED #ifdef QUANT_2PASS_SUPPORTED
@@ -497,7 +497,7 @@ prepare_for_output_pass (j_decompress_ptr cinfo)
METHODDEF(void) METHODDEF(void)
finish_output_pass (j_decompress_ptr cinfo) finish_output_pass (j_decompress_ptr cinfo)
{ {
my_master_ptr master = (my_master_ptr) cinfo->master;
my_master_ptr6 master = (my_master_ptr6) cinfo->master;
if (cinfo->quantize_colors) if (cinfo->quantize_colors)
(*cinfo->cquantize->finish_pass) (cinfo); (*cinfo->cquantize->finish_pass) (cinfo);
@@ -514,7 +514,7 @@ finish_output_pass (j_decompress_ptr cinfo)
GLOBAL(void) GLOBAL(void)
jpeg_new_colormap (j_decompress_ptr cinfo) jpeg_new_colormap (j_decompress_ptr cinfo)
{ {
my_master_ptr master = (my_master_ptr) cinfo->master;
my_master_ptr6 master = (my_master_ptr6) cinfo->master;
/* Prevent application from calling me at wrong times */ /* Prevent application from calling me at wrong times */
if (cinfo->global_state != DSTATE_BUFIMAGE) if (cinfo->global_state != DSTATE_BUFIMAGE)
@@ -542,9 +542,9 @@ jpeg_new_colormap (j_decompress_ptr cinfo)
GLOBAL(void) GLOBAL(void)
jinit_master_decompress (j_decompress_ptr cinfo) jinit_master_decompress (j_decompress_ptr cinfo)
{ {
my_master_ptr master;
my_master_ptr6 master;
master = (my_master_ptr)
master = (my_master_ptr6)
(*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
SIZEOF(my_decomp_master)); SIZEOF(my_decomp_master));
cinfo->master = (struct jpeg_decomp_master *) master; cinfo->master = (struct jpeg_decomp_master *) master;


+ 2
- 2
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdmerge.c View File

@@ -80,7 +80,7 @@ typedef my_upsampler * my_upsample_ptr;
*/ */
LOCAL(void) LOCAL(void)
build_ycc_rgb_table (j_decompress_ptr cinfo)
build_ycc_rgb_table2 (j_decompress_ptr cinfo)
{ {
my_upsample_ptr upsample = (my_upsample_ptr) cinfo->upsample; my_upsample_ptr upsample = (my_upsample_ptr) cinfo->upsample;
int i; int i;
@@ -394,7 +394,7 @@ jinit_merged_upsampler (j_decompress_ptr cinfo)
upsample->spare_row = NULL; upsample->spare_row = NULL;
} }
build_ycc_rgb_table(cinfo);
build_ycc_rgb_table2(cinfo);
} }
#endif /* UPSAMPLE_MERGING_SUPPORTED */ #endif /* UPSAMPLE_MERGING_SUPPORTED */

+ 17
- 43
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdphuff.c View File

@@ -32,7 +32,7 @@
typedef struct { typedef struct {
unsigned int EOBRUN; /* remaining EOBs in EOBRUN */ unsigned int EOBRUN; /* remaining EOBs in EOBRUN */
int last_dc_val[MAX_COMPS_IN_SCAN]; /* last DC coef for each component */ int last_dc_val[MAX_COMPS_IN_SCAN]; /* last DC coef for each component */
} savable_state;
} savable_state3;
/* This macro is to work around compilers with missing or broken /* This macro is to work around compilers with missing or broken
* structure assignment. You'll need to fix this code if you have * structure assignment. You'll need to fix this code if you have
@@ -60,7 +60,7 @@ typedef struct {
* In case of suspension, we exit WITHOUT updating them. * In case of suspension, we exit WITHOUT updating them.
*/ */
bitread_perm_state bitstate; /* Bit buffer at start of MCU */ bitread_perm_state bitstate; /* Bit buffer at start of MCU */
savable_state saved; /* Other state at start of MCU */
savable_state3 saved; /* Other state at start of MCU */
/* These fields are NOT loaded into local working state. */ /* These fields are NOT loaded into local working state. */
unsigned int restarts_to_go; /* MCUs left in this restart interval */ unsigned int restarts_to_go; /* MCUs left in this restart interval */
@@ -71,7 +71,7 @@ typedef struct {
d_derived_tbl * ac_derived_tbl; /* active table during an AC scan */ d_derived_tbl * ac_derived_tbl; /* active table during an AC scan */
} phuff_entropy_decoder; } phuff_entropy_decoder;
typedef phuff_entropy_decoder * phuff_entropy_ptr;
typedef phuff_entropy_decoder * phuff_entropy_ptr2;
/* Forward declarations */ /* Forward declarations */
METHODDEF(boolean) decode_mcu_DC_first JPP((j_decompress_ptr cinfo, METHODDEF(boolean) decode_mcu_DC_first JPP((j_decompress_ptr cinfo,
@@ -91,7 +91,7 @@ METHODDEF(boolean) decode_mcu_AC_refine JPP((j_decompress_ptr cinfo,
METHODDEF(void) METHODDEF(void)
start_pass_phuff_decoder (j_decompress_ptr cinfo) start_pass_phuff_decoder (j_decompress_ptr cinfo)
{ {
phuff_entropy_ptr entropy = (phuff_entropy_ptr) cinfo->entropy;
phuff_entropy_ptr2 entropy = (phuff_entropy_ptr2) cinfo->entropy;
boolean is_DC_band, bad; boolean is_DC_band, bad;
int ci, coefi, tbl; int ci, coefi, tbl;
int *coef_bit_ptr; int *coef_bit_ptr;
@@ -193,41 +193,15 @@ start_pass_phuff_decoder (j_decompress_ptr cinfo)
} }
/*
* Figure F.12: extend sign bit.
* On some machines, a shift and add will be faster than a table lookup.
*/
#ifdef AVOID_TABLES
#define HUFF_EXTEND(x,s) ((x) < (1<<((s)-1)) ? (x) + (((-1)<<(s)) + 1) : (x))
#else
#define HUFF_EXTEND(x,s) ((x) < extend_test[s] ? (x) + extend_offset[s] : (x))
static const int extend_test[16] = /* entry n is 2**(n-1) */
{ 0, 0x0001, 0x0002, 0x0004, 0x0008, 0x0010, 0x0020, 0x0040, 0x0080,
0x0100, 0x0200, 0x0400, 0x0800, 0x1000, 0x2000, 0x4000 };
static const int extend_offset[16] = /* entry n is (-1 << n) + 1 */
{ 0, ((-1)<<1) + 1, ((-1)<<2) + 1, ((-1)<<3) + 1, ((-1)<<4) + 1,
((-1)<<5) + 1, ((-1)<<6) + 1, ((-1)<<7) + 1, ((-1)<<8) + 1,
((-1)<<9) + 1, ((-1)<<10) + 1, ((-1)<<11) + 1, ((-1)<<12) + 1,
((-1)<<13) + 1, ((-1)<<14) + 1, ((-1)<<15) + 1 };
#endif /* AVOID_TABLES */
/* /*
* Check for a restart marker & resynchronize decoder. * Check for a restart marker & resynchronize decoder.
* Returns FALSE if must suspend. * Returns FALSE if must suspend.
*/ */
LOCAL(boolean) LOCAL(boolean)
process_restart (j_decompress_ptr cinfo)
process_restartp (j_decompress_ptr cinfo)
{ {
phuff_entropy_ptr entropy = (phuff_entropy_ptr) cinfo->entropy;
phuff_entropy_ptr2 entropy = (phuff_entropy_ptr2) cinfo->entropy;
int ci; int ci;
/* Throw away any unused bits remaining in bit buffer; */ /* Throw away any unused bits remaining in bit buffer; */
@@ -285,20 +259,20 @@ process_restart (j_decompress_ptr cinfo)
METHODDEF(boolean) METHODDEF(boolean)
decode_mcu_DC_first (j_decompress_ptr cinfo, JBLOCKROW *MCU_data) decode_mcu_DC_first (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
{ {
phuff_entropy_ptr entropy = (phuff_entropy_ptr) cinfo->entropy;
phuff_entropy_ptr2 entropy = (phuff_entropy_ptr2) cinfo->entropy;
int Al = cinfo->Al; int Al = cinfo->Al;
register int s, r; register int s, r;
int blkn, ci; int blkn, ci;
JBLOCKROW block; JBLOCKROW block;
BITREAD_STATE_VARS; BITREAD_STATE_VARS;
savable_state state;
savable_state3 state;
d_derived_tbl * tbl; d_derived_tbl * tbl;
jpeg_component_info * compptr; jpeg_component_info * compptr;
/* Process restart marker if needed; may have to suspend */ /* Process restart marker if needed; may have to suspend */
if (cinfo->restart_interval) { if (cinfo->restart_interval) {
if (entropy->restarts_to_go == 0) if (entropy->restarts_to_go == 0)
if (! process_restart(cinfo))
if (! process_restartp(cinfo))
return FALSE; return FALSE;
} }
@@ -356,7 +330,7 @@ decode_mcu_DC_first (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
METHODDEF(boolean) METHODDEF(boolean)
decode_mcu_AC_first (j_decompress_ptr cinfo, JBLOCKROW *MCU_data) decode_mcu_AC_first (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
{ {
phuff_entropy_ptr entropy = (phuff_entropy_ptr) cinfo->entropy;
phuff_entropy_ptr2 entropy = (phuff_entropy_ptr2) cinfo->entropy;
int Se = cinfo->Se; int Se = cinfo->Se;
int Al = cinfo->Al; int Al = cinfo->Al;
register int s, k, r; register int s, k, r;
@@ -368,7 +342,7 @@ decode_mcu_AC_first (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
/* Process restart marker if needed; may have to suspend */ /* Process restart marker if needed; may have to suspend */
if (cinfo->restart_interval) { if (cinfo->restart_interval) {
if (entropy->restarts_to_go == 0) if (entropy->restarts_to_go == 0)
if (! process_restart(cinfo))
if (! process_restartp(cinfo))
return FALSE; return FALSE;
} }
@@ -441,7 +415,7 @@ decode_mcu_AC_first (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
METHODDEF(boolean) METHODDEF(boolean)
decode_mcu_DC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data) decode_mcu_DC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
{ {
phuff_entropy_ptr entropy = (phuff_entropy_ptr) cinfo->entropy;
phuff_entropy_ptr2 entropy = (phuff_entropy_ptr2) cinfo->entropy;
int p1 = 1 << cinfo->Al; /* 1 in the bit position being coded */ int p1 = 1 << cinfo->Al; /* 1 in the bit position being coded */
int blkn; int blkn;
JBLOCKROW block; JBLOCKROW block;
@@ -450,7 +424,7 @@ decode_mcu_DC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
/* Process restart marker if needed; may have to suspend */ /* Process restart marker if needed; may have to suspend */
if (cinfo->restart_interval) { if (cinfo->restart_interval) {
if (entropy->restarts_to_go == 0) if (entropy->restarts_to_go == 0)
if (! process_restart(cinfo))
if (! process_restartp(cinfo))
return FALSE; return FALSE;
} }
@@ -490,7 +464,7 @@ decode_mcu_DC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
METHODDEF(boolean) METHODDEF(boolean)
decode_mcu_AC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data) decode_mcu_AC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
{ {
phuff_entropy_ptr entropy = (phuff_entropy_ptr) cinfo->entropy;
phuff_entropy_ptr2 entropy = (phuff_entropy_ptr2) cinfo->entropy;
int Se = cinfo->Se; int Se = cinfo->Se;
int p1 = 1 << cinfo->Al; /* 1 in the bit position being coded */ int p1 = 1 << cinfo->Al; /* 1 in the bit position being coded */
int m1 = (-1) << cinfo->Al; /* -1 in the bit position being coded */ int m1 = (-1) << cinfo->Al; /* -1 in the bit position being coded */
@@ -506,7 +480,7 @@ decode_mcu_AC_refine (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
/* Process restart marker if needed; may have to suspend */ /* Process restart marker if needed; may have to suspend */
if (cinfo->restart_interval) { if (cinfo->restart_interval) {
if (entropy->restarts_to_go == 0) if (entropy->restarts_to_go == 0)
if (! process_restart(cinfo))
if (! process_restartp(cinfo))
return FALSE; return FALSE;
} }
@@ -640,11 +614,11 @@ undoit:
GLOBAL(void) GLOBAL(void)
jinit_phuff_decoder (j_decompress_ptr cinfo) jinit_phuff_decoder (j_decompress_ptr cinfo)
{ {
phuff_entropy_ptr entropy;
phuff_entropy_ptr2 entropy;
int *coef_bit_ptr; int *coef_bit_ptr;
int ci, i; int ci, i;
entropy = (phuff_entropy_ptr)
entropy = (phuff_entropy_ptr2)
(*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
SIZEOF(phuff_entropy_decoder)); SIZEOF(phuff_entropy_decoder));
cinfo->entropy = (struct jpeg_entropy_decoder *) entropy; cinfo->entropy = (struct jpeg_entropy_decoder *) entropy;


+ 8
- 8
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jdsample.c View File

@@ -56,9 +56,9 @@ typedef struct {
*/ */
UINT8 h_expand[MAX_COMPONENTS]; UINT8 h_expand[MAX_COMPONENTS];
UINT8 v_expand[MAX_COMPONENTS]; UINT8 v_expand[MAX_COMPONENTS];
} my_upsampler;
} my_upsampler2;
typedef my_upsampler * my_upsample_ptr;
typedef my_upsampler2 * my_upsample_ptr2;
/* /*
@@ -68,7 +68,7 @@ typedef my_upsampler * my_upsample_ptr;
METHODDEF(void) METHODDEF(void)
start_pass_upsample (j_decompress_ptr cinfo) start_pass_upsample (j_decompress_ptr cinfo)
{ {
my_upsample_ptr upsample = (my_upsample_ptr) cinfo->upsample;
my_upsample_ptr2 upsample = (my_upsample_ptr2) cinfo->upsample;
/* Mark the conversion buffer empty */ /* Mark the conversion buffer empty */
upsample->next_row_out = cinfo->max_v_samp_factor; upsample->next_row_out = cinfo->max_v_samp_factor;
@@ -92,7 +92,7 @@ sep_upsample (j_decompress_ptr cinfo,
JSAMPARRAY output_buf, JDIMENSION *out_row_ctr, JSAMPARRAY output_buf, JDIMENSION *out_row_ctr,
JDIMENSION out_rows_avail) JDIMENSION out_rows_avail)
{ {
my_upsample_ptr upsample = (my_upsample_ptr) cinfo->upsample;
my_upsample_ptr2 upsample = (my_upsample_ptr2) cinfo->upsample;
int ci; int ci;
jpeg_component_info * compptr; jpeg_component_info * compptr;
JDIMENSION num_rows; JDIMENSION num_rows;
@@ -189,7 +189,7 @@ METHODDEF(void)
int_upsample (j_decompress_ptr cinfo, jpeg_component_info * compptr, int_upsample (j_decompress_ptr cinfo, jpeg_component_info * compptr,
JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr) JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr)
{ {
my_upsample_ptr upsample = (my_upsample_ptr) cinfo->upsample;
my_upsample_ptr2 upsample = (my_upsample_ptr2) cinfo->upsample;
JSAMPARRAY output_data = *output_data_ptr; JSAMPARRAY output_data = *output_data_ptr;
register JSAMPROW inptr, outptr; register JSAMPROW inptr, outptr;
register JSAMPLE invalue; register JSAMPLE invalue;
@@ -398,15 +398,15 @@ h2v2_fancy_upsample (j_decompress_ptr cinfo, jpeg_component_info * compptr,
GLOBAL(void) GLOBAL(void)
jinit_upsampler (j_decompress_ptr cinfo) jinit_upsampler (j_decompress_ptr cinfo)
{ {
my_upsample_ptr upsample;
my_upsample_ptr2 upsample;
int ci; int ci;
jpeg_component_info * compptr; jpeg_component_info * compptr;
boolean need_buffer, do_fancy; boolean need_buffer, do_fancy;
int h_in_group, v_in_group, h_out_group, v_out_group; int h_in_group, v_in_group, h_out_group, v_out_group;
upsample = (my_upsample_ptr)
upsample = (my_upsample_ptr2)
(*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
SIZEOF(my_upsampler));
SIZEOF(my_upsampler2));
cinfo->upsample = (struct jpeg_upsampler *) upsample; cinfo->upsample = (struct jpeg_upsampler *) upsample;
upsample->pub.start_pass = start_pass_upsample; upsample->pub.start_pass = start_pass_upsample;
upsample->pub.upsample = sep_upsample; upsample->pub.upsample = sep_upsample;


+ 101
- 0
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jinclude.h View File

@@ -17,6 +17,9 @@
/* Include auto-config file to find out which system include files we need. */ /* Include auto-config file to find out which system include files we need. */
#ifndef __jinclude_h__
#define __jinclude_h__
#include "jconfig.h" /* auto configuration options */ #include "jconfig.h" /* auto configuration options */
#define JCONFIG_INCLUDED /* so that jpeglib.h doesn't do it again */ #define JCONFIG_INCLUDED /* so that jpeglib.h doesn't do it again */
@@ -89,3 +92,101 @@
((size_t) fread((void *) (buf), (size_t) 1, (size_t) (sizeofbuf), (file))) ((size_t) fread((void *) (buf), (size_t) 1, (size_t) (sizeofbuf), (file)))
#define JFWRITE(file,buf,sizeofbuf) \ #define JFWRITE(file,buf,sizeofbuf) \
((size_t) fwrite((const void *) (buf), (size_t) 1, (size_t) (sizeofbuf), (file))) ((size_t) fwrite((const void *) (buf), (size_t) 1, (size_t) (sizeofbuf), (file)))
typedef enum { /* JPEG marker codes */
M_SOF0 = 0xc0,
M_SOF1 = 0xc1,
M_SOF2 = 0xc2,
M_SOF3 = 0xc3,
M_SOF5 = 0xc5,
M_SOF6 = 0xc6,
M_SOF7 = 0xc7,
M_JPG = 0xc8,
M_SOF9 = 0xc9,
M_SOF10 = 0xca,
M_SOF11 = 0xcb,
M_SOF13 = 0xcd,
M_SOF14 = 0xce,
M_SOF15 = 0xcf,
M_DHT = 0xc4,
M_DAC = 0xcc,
M_RST0 = 0xd0,
M_RST1 = 0xd1,
M_RST2 = 0xd2,
M_RST3 = 0xd3,
M_RST4 = 0xd4,
M_RST5 = 0xd5,
M_RST6 = 0xd6,
M_RST7 = 0xd7,
M_SOI = 0xd8,
M_EOI = 0xd9,
M_SOS = 0xda,
M_DQT = 0xdb,
M_DNL = 0xdc,
M_DRI = 0xdd,
M_DHP = 0xde,
M_EXP = 0xdf,
M_APP0 = 0xe0,
M_APP1 = 0xe1,
M_APP2 = 0xe2,
M_APP3 = 0xe3,
M_APP4 = 0xe4,
M_APP5 = 0xe5,
M_APP6 = 0xe6,
M_APP7 = 0xe7,
M_APP8 = 0xe8,
M_APP9 = 0xe9,
M_APP10 = 0xea,
M_APP11 = 0xeb,
M_APP12 = 0xec,
M_APP13 = 0xed,
M_APP14 = 0xee,
M_APP15 = 0xef,
M_JPG0 = 0xf0,
M_JPG13 = 0xfd,
M_COM = 0xfe,
M_TEM = 0x01,
M_ERROR = 0x100
} JPEG_MARKER;
/*
* Figure F.12: extend sign bit.
* On some machines, a shift and add will be faster than a table lookup.
*/
#ifdef AVOID_TABLES
#define HUFF_EXTEND(x,s) ((x) < (1<<((s)-1)) ? (x) + (((-1)<<(s)) + 1) : (x))
#else
#define HUFF_EXTEND(x,s) ((x) < extend_test[s] ? (x) + extend_offset[s] : (x))
static const int extend_test[16] = /* entry n is 2**(n-1) */
{ 0, 0x0001, 0x0002, 0x0004, 0x0008, 0x0010, 0x0020, 0x0040, 0x0080,
0x0100, 0x0200, 0x0400, 0x0800, 0x1000, 0x2000, 0x4000 };
static const int extend_offset[16] = /* entry n is (-1 << n) + 1 */
{ 0, ((-1)<<1) + 1, ((-1)<<2) + 1, ((-1)<<3) + 1, ((-1)<<4) + 1,
((-1)<<5) + 1, ((-1)<<6) + 1, ((-1)<<7) + 1, ((-1)<<8) + 1,
((-1)<<9) + 1, ((-1)<<10) + 1, ((-1)<<11) + 1, ((-1)<<12) + 1,
((-1)<<13) + 1, ((-1)<<14) + 1, ((-1)<<15) + 1 };
#endif /* AVOID_TABLES */
#endif

+ 1
- 1
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jmemnobs.c View File

@@ -84,7 +84,7 @@ jpeg_mem_available (j_common_ptr cinfo, long min_bytes_needed,
*/ */
GLOBAL(void) GLOBAL(void)
jpeg_open_backing_store (j_common_ptr cinfo, backing_store_ptr info,
jpeg_open_backing_store (j_common_ptr cinfo, struct backing_store_struct *info,
long total_bytes_needed) long total_bytes_needed)
{ {
ERREXIT(cinfo, JERR_NO_BACKING_STORE); ERREXIT(cinfo, JERR_NO_BACKING_STORE);


+ 10
- 5
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jmemsys.h View File

@@ -18,6 +18,8 @@
* and USE_MAC_MEMMGR. * and USE_MAC_MEMMGR.
*/ */
#ifndef __jmemsys_h__
#define __jmemsys_h__
/* Short forms of external names for systems with brain-damaged linkers. */ /* Short forms of external names for systems with brain-damaged linkers. */
@@ -134,20 +136,20 @@ typedef union {
#endif /* USE_MAC_MEMMGR */ #endif /* USE_MAC_MEMMGR */
typedef struct backing_store_struct * backing_store_ptr;
//typedef struct backing_store_struct * backing_store_ptr;
typedef struct backing_store_struct { typedef struct backing_store_struct {
/* Methods for reading/writing/closing this backing-store object */ /* Methods for reading/writing/closing this backing-store object */
JMETHOD(void, read_backing_store, (j_common_ptr cinfo, JMETHOD(void, read_backing_store, (j_common_ptr cinfo,
backing_store_ptr info,
struct backing_store_struct *info,
void FAR * buffer_address, void FAR * buffer_address,
long file_offset, long byte_count)); long file_offset, long byte_count));
JMETHOD(void, write_backing_store, (j_common_ptr cinfo, JMETHOD(void, write_backing_store, (j_common_ptr cinfo,
backing_store_ptr info,
struct backing_store_struct *info,
void FAR * buffer_address, void FAR * buffer_address,
long file_offset, long byte_count)); long file_offset, long byte_count));
JMETHOD(void, close_backing_store, (j_common_ptr cinfo, JMETHOD(void, close_backing_store, (j_common_ptr cinfo,
backing_store_ptr info));
struct backing_store_struct *info));
/* Private fields for system-dependent backing-store management */ /* Private fields for system-dependent backing-store management */
#ifdef USE_MSDOS_MEMMGR #ifdef USE_MSDOS_MEMMGR
@@ -178,7 +180,7 @@ typedef struct backing_store_struct {
*/ */
EXTERN(void) jpeg_open_backing_store JPP((j_common_ptr cinfo, EXTERN(void) jpeg_open_backing_store JPP((j_common_ptr cinfo,
backing_store_ptr info,
struct backing_store_struct *info,
long total_bytes_needed)); long total_bytes_needed));
@@ -196,3 +198,6 @@ EXTERN(void) jpeg_open_backing_store JPP((j_common_ptr cinfo,
EXTERN(long) jpeg_mem_init JPP((j_common_ptr cinfo)); EXTERN(long) jpeg_mem_init JPP((j_common_ptr cinfo));
EXTERN(void) jpeg_mem_term JPP((j_common_ptr cinfo)); EXTERN(void) jpeg_mem_term JPP((j_common_ptr cinfo));
#endif

+ 15
- 15
src/juce_appframework/gui/graphics/imaging/image_file_formats/jpglib/jquant2.c View File

@@ -206,9 +206,9 @@ typedef struct {
FSERRPTR fserrors; /* accumulated errors */ FSERRPTR fserrors; /* accumulated errors */
boolean on_odd_row; /* flag to remember which row we are on */ boolean on_odd_row; /* flag to remember which row we are on */
int * error_limiter; /* table for clamping the applied error */ int * error_limiter; /* table for clamping the applied error */
} my_cquantizer;
} my_cquantizer2;
typedef my_cquantizer * my_cquantize_ptr;
typedef my_cquantizer2 * my_cquantize_ptr2;
/* /*
@@ -224,7 +224,7 @@ METHODDEF(void)
prescan_quantize (j_decompress_ptr cinfo, JSAMPARRAY input_buf, prescan_quantize (j_decompress_ptr cinfo, JSAMPARRAY input_buf,
JSAMPARRAY output_buf, int num_rows) JSAMPARRAY output_buf, int num_rows)
{ {
my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
my_cquantize_ptr2 cquantize = (my_cquantize_ptr2) cinfo->cquantize;
register JSAMPROW ptr; register JSAMPROW ptr;
register histptr histp; register histptr histp;
register hist3d histogram = cquantize->histogram; register hist3d histogram = cquantize->histogram;
@@ -314,7 +314,7 @@ update_box (j_decompress_ptr cinfo, boxptr boxp)
/* Shrink the min/max bounds of a box to enclose only nonzero elements, */ /* Shrink the min/max bounds of a box to enclose only nonzero elements, */
/* and recompute its volume and population */ /* and recompute its volume and population */
{ {
my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
my_cquantize_ptr2 cquantize = (my_cquantize_ptr2) cinfo->cquantize;
hist3d histogram = cquantize->histogram; hist3d histogram = cquantize->histogram;
histptr histp; histptr histp;
int c0,c1,c2; int c0,c1,c2;
@@ -501,7 +501,7 @@ compute_color (j_decompress_ptr cinfo, boxptr boxp, int icolor)
{ {
/* Current algorithm: mean weighted by pixels (not colors) */ /* Current algorithm: mean weighted by pixels (not colors) */
/* Note it is important to get the rounding correct! */ /* Note it is important to get the rounding correct! */
my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
my_cquantize_ptr2 cquantize = (my_cquantize_ptr2) cinfo->cquantize;
hist3d histogram = cquantize->histogram; hist3d histogram = cquantize->histogram;
histptr histp; histptr histp;
int c0,c1,c2; int c0,c1,c2;
@@ -857,7 +857,7 @@ fill_inverse_cmap (j_decompress_ptr cinfo, int c0, int c1, int c2)
/* histogram cell c0/c1/c2. (Only that one cell MUST be filled, but */ /* histogram cell c0/c1/c2. (Only that one cell MUST be filled, but */
/* we can fill as many others as we wish.) */ /* we can fill as many others as we wish.) */
{ {
my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
my_cquantize_ptr2 cquantize = (my_cquantize_ptr2) cinfo->cquantize;
hist3d histogram = cquantize->histogram; hist3d histogram = cquantize->histogram;
int minc0, minc1, minc2; /* lower left corner of update box */ int minc0, minc1, minc2; /* lower left corner of update box */
int ic0, ic1, ic2; int ic0, ic1, ic2;
@@ -916,7 +916,7 @@ pass2_no_dither (j_decompress_ptr cinfo,
JSAMPARRAY input_buf, JSAMPARRAY output_buf, int num_rows) JSAMPARRAY input_buf, JSAMPARRAY output_buf, int num_rows)
/* This version performs no dithering */ /* This version performs no dithering */
{ {
my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
my_cquantize_ptr2 cquantize = (my_cquantize_ptr2) cinfo->cquantize;
hist3d histogram = cquantize->histogram; hist3d histogram = cquantize->histogram;
register JSAMPROW inptr, outptr; register JSAMPROW inptr, outptr;
register histptr cachep; register histptr cachep;
@@ -950,7 +950,7 @@ pass2_fs_dither (j_decompress_ptr cinfo,
JSAMPARRAY input_buf, JSAMPARRAY output_buf, int num_rows) JSAMPARRAY input_buf, JSAMPARRAY output_buf, int num_rows)
/* This version performs Floyd-Steinberg dithering */ /* This version performs Floyd-Steinberg dithering */
{ {
my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
my_cquantize_ptr2 cquantize = (my_cquantize_ptr2) cinfo->cquantize;
hist3d histogram = cquantize->histogram; hist3d histogram = cquantize->histogram;
register LOCFSERROR cur0, cur1, cur2; /* current error or pixel value */ register LOCFSERROR cur0, cur1, cur2; /* current error or pixel value */
LOCFSERROR belowerr0, belowerr1, belowerr2; /* error for pixel below cur */ LOCFSERROR belowerr0, belowerr1, belowerr2; /* error for pixel below cur */
@@ -1108,7 +1108,7 @@ LOCAL(void)
init_error_limit (j_decompress_ptr cinfo) init_error_limit (j_decompress_ptr cinfo)
/* Allocate and fill in the error_limiter table */ /* Allocate and fill in the error_limiter table */
{ {
my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
my_cquantize_ptr2 cquantize = (my_cquantize_ptr2) cinfo->cquantize;
int * table; int * table;
int in, out; int in, out;
@@ -1142,7 +1142,7 @@ init_error_limit (j_decompress_ptr cinfo)
METHODDEF(void) METHODDEF(void)
finish_pass1 (j_decompress_ptr cinfo) finish_pass1 (j_decompress_ptr cinfo)
{ {
my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
my_cquantize_ptr2 cquantize = (my_cquantize_ptr2) cinfo->cquantize;
/* Select the representative colors and fill in cinfo->colormap */ /* Select the representative colors and fill in cinfo->colormap */
cinfo->colormap = cquantize->sv_colormap; cinfo->colormap = cquantize->sv_colormap;
@@ -1166,7 +1166,7 @@ finish_pass2 (j_decompress_ptr cinfo)
METHODDEF(void) METHODDEF(void)
start_pass_2_quant (j_decompress_ptr cinfo, boolean is_pre_scan) start_pass_2_quant (j_decompress_ptr cinfo, boolean is_pre_scan)
{ {
my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
my_cquantize_ptr2 cquantize = (my_cquantize_ptr2) cinfo->cquantize;
hist3d histogram = cquantize->histogram; hist3d histogram = cquantize->histogram;
int i; int i;
@@ -1229,7 +1229,7 @@ start_pass_2_quant (j_decompress_ptr cinfo, boolean is_pre_scan)
METHODDEF(void) METHODDEF(void)
new_color_map_2_quant (j_decompress_ptr cinfo) new_color_map_2_quant (j_decompress_ptr cinfo)
{ {
my_cquantize_ptr cquantize = (my_cquantize_ptr) cinfo->cquantize;
my_cquantize_ptr2 cquantize = (my_cquantize_ptr2) cinfo->cquantize;
/* Reset the inverse color map */ /* Reset the inverse color map */
cquantize->needs_zeroed = TRUE; cquantize->needs_zeroed = TRUE;
@@ -1243,12 +1243,12 @@ new_color_map_2_quant (j_decompress_ptr cinfo)
GLOBAL(void) GLOBAL(void)
jinit_2pass_quantizer (j_decompress_ptr cinfo) jinit_2pass_quantizer (j_decompress_ptr cinfo)
{ {
my_cquantize_ptr cquantize;
my_cquantize_ptr2 cquantize;
int i; int i;
cquantize = (my_cquantize_ptr)
cquantize = (my_cquantize_ptr2)
(*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE, (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_IMAGE,
SIZEOF(my_cquantizer));
SIZEOF(my_cquantizer2));
cinfo->cquantize = (struct jpeg_color_quantizer *) cquantize; cinfo->cquantize = (struct jpeg_color_quantizer *) cquantize;
cquantize->pub.start_pass = start_pass_2_quant; cquantize->pub.start_pass = start_pass_2_quant;
cquantize->pub.new_color_map = new_color_map_2_quant; cquantize->pub.new_color_map = new_color_map_2_quant;


+ 1
- 1
src/juce_appframework/gui/graphics/imaging/image_file_formats/pnglib/pngconf.h View File

@@ -1249,7 +1249,7 @@ typedef double FAR * FAR * png_doublepp;
/* Pointers to pointers to pointers; i.e., pointer to array */ /* Pointers to pointers to pointers; i.e., pointer to array */
typedef char FAR * FAR * FAR * png_charppp; typedef char FAR * FAR * FAR * png_charppp;
#if defined(PNG_1_0_X) || defined(PNG_1_2_X)
#if 0
/* SPC - Is this stuff deprecated? */ /* SPC - Is this stuff deprecated? */
/* It'll be removed as of libpng-1.3.0 - GR-P */ /* It'll be removed as of libpng-1.3.0 - GR-P */
/* libpng typedefs for types in zlib. If zlib changes /* libpng typedefs for types in zlib. If zlib changes


+ 3
- 0
src/juce_appframework/gui/graphics/imaging/image_file_formats/pnglib/pngpread.c View File

@@ -791,7 +791,10 @@ png_process_IDAT_data(png_structp png_ptr, png_bytep buffer,
png_ptr->row_number == png_ptr->num_rows)) png_ptr->row_number == png_ptr->num_rows))
{ {
if (png_ptr->zstream.avail_in) if (png_ptr->zstream.avail_in)
{
png_warning(png_ptr, "Too much data in IDAT chunks"); png_warning(png_ptr, "Too much data in IDAT chunks");
}
png_ptr->flags |= PNG_FLAG_ZLIB_FINISHED; png_ptr->flags |= PNG_FLAG_ZLIB_FINISHED;
break; break;
} }


+ 5
- 3
src/juce_core/io/files/juce_DirectoryIterator.cpp View File

@@ -37,10 +37,12 @@ BEGIN_JUCE_NAMESPACE
#include "juce_DirectoryIterator.h" #include "juce_DirectoryIterator.h"
void* juce_findFileStart (const String& directory, const String& wildCard, String& firstResultFile, void* juce_findFileStart (const String& directory, const String& wildCard, String& firstResultFile,
bool* isDirectory, bool* isHidden, int64* fileSize, Time* modTime, Time* creationTime, bool* isReadOnly);
bool* isDirectory, bool* isHidden, int64* fileSize,
Time* modTime, Time* creationTime, bool* isReadOnly) throw();
bool juce_findFileNext (void* handle, String& resultFile, bool juce_findFileNext (void* handle, String& resultFile,
bool* isDirectory, bool* isHidden, int64* fileSize, Time* modTime, Time* creationTime, bool* isReadOnly);
void juce_findFileClose (void* handle);
bool* isDirectory, bool* isHidden, int64* fileSize,
Time* modTime, Time* creationTime, bool* isReadOnly) throw();
void juce_findFileClose (void* handle) throw();
//============================================================================== //==============================================================================


+ 5
- 3
src/juce_core/io/files/juce_File.cpp View File

@@ -55,7 +55,7 @@ BEGIN_JUCE_NAMESPACE
//============================================================================== //==============================================================================
void* juce_fileOpen (const String& path, bool forWriting) throw(); void* juce_fileOpen (const String& path, bool forWriting) throw();
void juce_fileClose (void* handle) throw(); void juce_fileClose (void* handle) throw();
int juce_fileWrite (void* handle, void* buffer, int size) throw();
int juce_fileWrite (void* handle, const void* buffer, int size) throw();
int64 juce_fileGetPosition (void* handle) throw(); int64 juce_fileGetPosition (void* handle) throw();
int64 juce_fileSetPosition (void* handle, int64 pos) throw(); int64 juce_fileSetPosition (void* handle, int64 pos) throw();
void juce_fileFlush (void* handle) throw(); void juce_fileFlush (void* handle) throw();
@@ -86,11 +86,13 @@ const String juce_getVolumeLabel (const String& filenameOnVolume, int& volumeSer
// juce_firstResultFile gets the name of the file (not the whole pathname) and // juce_firstResultFile gets the name of the file (not the whole pathname) and
// the other pointers, if non-null, are set based on the properties of the file. // the other pointers, if non-null, are set based on the properties of the file.
void* juce_findFileStart (const String& directory, const String& wildCard, String& firstResultFile, void* juce_findFileStart (const String& directory, const String& wildCard, String& firstResultFile,
bool* isDirectory, bool* isHidden, int64* fileSize, Time* modTime, Time* creationTime, bool* isReadOnly) throw();
bool* isDirectory, bool* isHidden, int64* fileSize, Time* modTime,
Time* creationTime, bool* isReadOnly) throw();
// returns false when no more files are found // returns false when no more files are found
bool juce_findFileNext (void* handle, String& resultFile, bool juce_findFileNext (void* handle, String& resultFile,
bool* isDirectory, bool* isHidden, int64* fileSize, Time* modTime, Time* creationTime, bool* isReadOnly) throw();
bool* isDirectory, bool* isHidden, int64* fileSize,
Time* modTime, Time* creationTime, bool* isReadOnly) throw();
void juce_findFileClose (void* handle) throw(); void juce_findFileClose (void* handle) throw();


+ 1
- 1
src/juce_core/io/network/juce_URL.cpp View File

@@ -516,7 +516,7 @@ const String URL::addEscapeChars (const String& s)
//============================================================================== //==============================================================================
extern bool juce_launchFile (const String& fileName, extern bool juce_launchFile (const String& fileName,
const String& parameters);
const String& parameters) throw();
bool URL::launchInDefaultBrowser() const bool URL::launchInDefaultBrowser() const
{ {


+ 2
- 8
src/juce_core/io/streams/zlib/adler32.c View File

@@ -54,10 +54,7 @@
#endif #endif
/* ========================================================================= */ /* ========================================================================= */
uLong ZEXPORT adler32(adler, buf, len)
uLong adler;
const Bytef *buf;
uInt len;
uLong ZEXPORT adler32(uLong adler, const Bytef *buf, uInt len)
{ {
unsigned long sum2; unsigned long sum2;
unsigned n; unsigned n;
@@ -125,10 +122,7 @@ uLong ZEXPORT adler32(adler, buf, len)
} }
/* ========================================================================= */ /* ========================================================================= */
uLong ZEXPORT adler32_combine(adler1, adler2, len2)
uLong adler1;
uLong adler2;
z_off_t len2;
uLong ZEXPORT adler32_combine(uLong adler1, uLong adler2, z_off_t len2)
{ {
unsigned long sum1; unsigned long sum1;
unsigned long sum2; unsigned long sum2;


+ 4
- 13
src/juce_core/io/streams/zlib/compress.c View File

@@ -19,12 +19,8 @@
memory, Z_BUF_ERROR if there was not enough room in the output buffer, memory, Z_BUF_ERROR if there was not enough room in the output buffer,
Z_STREAM_ERROR if the level parameter is invalid. Z_STREAM_ERROR if the level parameter is invalid.
*/ */
int ZEXPORT compress2 (dest, destLen, source, sourceLen, level)
Bytef *dest;
uLongf *destLen;
const Bytef *source;
uLong sourceLen;
int level;
int ZEXPORT compress2 (Bytef *dest, uLongf *destLen, const Bytef *source,
uLong sourceLen, int level)
{ {
z_stream stream; z_stream stream;
int err; int err;
@@ -59,11 +55,7 @@ int ZEXPORT compress2 (dest, destLen, source, sourceLen, level)
/* =========================================================================== /* ===========================================================================
*/ */
int ZEXPORT compress (dest, destLen, source, sourceLen)
Bytef *dest;
uLongf *destLen;
const Bytef *source;
uLong sourceLen;
int ZEXPORT compress (Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen)
{ {
return compress2(dest, destLen, source, sourceLen, Z_DEFAULT_COMPRESSION); return compress2(dest, destLen, source, sourceLen, Z_DEFAULT_COMPRESSION);
} }
@@ -72,8 +64,7 @@ int ZEXPORT compress (dest, destLen, source, sourceLen)
If the default memLevel or windowBits for deflateInit() is changed, then If the default memLevel or windowBits for deflateInit() is changed, then
this function needs to be updated. this function needs to be updated.
*/ */
uLong ZEXPORT compressBound (sourceLen)
uLong sourceLen;
uLong ZEXPORT compressBound (uLong sourceLen)
{ {
return sourceLen + (sourceLen >> 12) + (sourceLen >> 14) + 11; return sourceLen + (sourceLen >> 12) + (sourceLen >> 14) + 11;
} }

+ 6
- 22
src/juce_core/io/streams/zlib/crc32.c View File

@@ -216,10 +216,7 @@ const unsigned long FAR * ZEXPORT get_crc_table()
#define DO8 DO1; DO1; DO1; DO1; DO1; DO1; DO1; DO1 #define DO8 DO1; DO1; DO1; DO1; DO1; DO1; DO1; DO1
/* ========================================================================= */ /* ========================================================================= */
unsigned long ZEXPORT crc32(crc, buf, len)
unsigned long crc;
const unsigned char FAR *buf;
unsigned len;
unsigned long ZEXPORT crc32 (unsigned long crc, const unsigned char FAR *buf, unsigned len)
{ {
if (buf == Z_NULL) return 0UL; if (buf == Z_NULL) return 0UL;
@@ -259,10 +256,7 @@ unsigned long ZEXPORT crc32(crc, buf, len)
#define DOLIT32 DOLIT4; DOLIT4; DOLIT4; DOLIT4; DOLIT4; DOLIT4; DOLIT4; DOLIT4 #define DOLIT32 DOLIT4; DOLIT4; DOLIT4; DOLIT4; DOLIT4; DOLIT4; DOLIT4; DOLIT4
/* ========================================================================= */ /* ========================================================================= */
local unsigned long crc32_little(crc, buf, len)
unsigned long crc;
const unsigned char FAR *buf;
unsigned len;
local unsigned long crc32_little(unsigned long crc, const unsigned char FAR *buf, unsigned len)
{ {
register u4 c; register u4 c;
register const u4 FAR *buf4; register const u4 FAR *buf4;
@@ -299,10 +293,7 @@ local unsigned long crc32_little(crc, buf, len)
#define DOBIG32 DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4 #define DOBIG32 DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4; DOBIG4
/* ========================================================================= */ /* ========================================================================= */
local unsigned long crc32_big(crc, buf, len)
unsigned long crc;
const unsigned char FAR *buf;
unsigned len;
local unsigned long crc32_big (unsigned long crc, const unsigned char FAR *buf, unsigned len)
{ {
register u4 c; register u4 c;
register const u4 FAR *buf4; register const u4 FAR *buf4;
@@ -339,9 +330,7 @@ local unsigned long crc32_big(crc, buf, len)
#define GF2_DIM 32 /* dimension of GF(2) vectors (length of CRC) */ #define GF2_DIM 32 /* dimension of GF(2) vectors (length of CRC) */
/* ========================================================================= */ /* ========================================================================= */
local unsigned long gf2_matrix_times(mat, vec)
unsigned long *mat;
unsigned long vec;
local unsigned long gf2_matrix_times (unsigned long *mat, unsigned long vec)
{ {
unsigned long sum; unsigned long sum;
@@ -356,9 +345,7 @@ local unsigned long gf2_matrix_times(mat, vec)
} }
/* ========================================================================= */ /* ========================================================================= */
local void gf2_matrix_square(square, mat)
unsigned long *square;
unsigned long *mat;
local void gf2_matrix_square (unsigned long *square, unsigned long *mat)
{ {
int n; int n;
@@ -367,10 +354,7 @@ local void gf2_matrix_square(square, mat)
} }
/* ========================================================================= */ /* ========================================================================= */
uLong ZEXPORT crc32_combine(crc1, crc2, len2)
uLong crc1;
uLong crc2;
z_off_t len2;
uLong ZEXPORT crc32_combine (uLong crc1, uLong crc2, z_off_t len2)
{ {
int n; int n;
unsigned long row; unsigned long row;


+ 23
- 81
src/juce_core/io/streams/zlib/deflate.c View File

@@ -201,11 +201,7 @@ struct static_tree_desc_s {int dummy;}; /* for buggy compilers */
zmemzero((Bytef *)s->head, (unsigned)(s->hash_size-1)*sizeof(*s->head)); zmemzero((Bytef *)s->head, (unsigned)(s->hash_size-1)*sizeof(*s->head));
/* ========================================================================= */ /* ========================================================================= */
int ZEXPORT deflateInit_(strm, level, version, stream_size)
z_streamp strm;
int level;
const char *version;
int stream_size;
int ZEXPORT deflateInit_(z_streamp strm, int level, const char *version, int stream_size)
{ {
return deflateInit2_(strm, level, Z_DEFLATED, MAX_WBITS, DEF_MEM_LEVEL, return deflateInit2_(strm, level, Z_DEFLATED, MAX_WBITS, DEF_MEM_LEVEL,
Z_DEFAULT_STRATEGY, version, stream_size); Z_DEFAULT_STRATEGY, version, stream_size);
@@ -213,16 +209,7 @@ int ZEXPORT deflateInit_(strm, level, version, stream_size)
} }
/* ========================================================================= */ /* ========================================================================= */
int ZEXPORT deflateInit2_(strm, level, method, windowBits, memLevel, strategy,
version, stream_size)
z_streamp strm;
int level;
int method;
int windowBits;
int memLevel;
int strategy;
const char *version;
int stream_size;
int ZEXPORT deflateInit2_ (z_streamp strm, int level, int method, int windowBits, int memLevel, int strategy, const char *version, int stream_size)
{ {
deflate_state *s; deflate_state *s;
int wrap = 1; int wrap = 1;
@@ -312,10 +299,7 @@ int ZEXPORT deflateInit2_(strm, level, method, windowBits, memLevel, strategy,
} }
/* ========================================================================= */ /* ========================================================================= */
int ZEXPORT deflateSetDictionary (strm, dictionary, dictLength)
z_streamp strm;
const Bytef *dictionary;
uInt dictLength;
int ZEXPORT deflateSetDictionary (z_streamp strm, const Bytef *dictionary, uInt dictLength)
{ {
deflate_state *s; deflate_state *s;
uInt length = dictLength; uInt length = dictLength;
@@ -354,8 +338,7 @@ int ZEXPORT deflateSetDictionary (strm, dictionary, dictLength)
} }
/* ========================================================================= */ /* ========================================================================= */
int ZEXPORT deflateReset (strm)
z_streamp strm;
int ZEXPORT deflateReset (z_streamp strm)
{ {
deflate_state *s; deflate_state *s;
@@ -390,9 +373,7 @@ int ZEXPORT deflateReset (strm)
} }
/* ========================================================================= */ /* ========================================================================= */
int ZEXPORT deflateSetHeader (strm, head)
z_streamp strm;
gz_headerp head;
int ZEXPORT deflateSetHeader (z_streamp strm, gz_headerp head)
{ {
if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR; if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
if (strm->state->wrap != 2) return Z_STREAM_ERROR; if (strm->state->wrap != 2) return Z_STREAM_ERROR;
@@ -401,10 +382,7 @@ int ZEXPORT deflateSetHeader (strm, head)
} }
/* ========================================================================= */ /* ========================================================================= */
int ZEXPORT deflatePrime (strm, bits, value)
z_streamp strm;
int bits;
int value;
int ZEXPORT deflatePrime (z_streamp strm, int bits, int value)
{ {
if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR; if (strm == Z_NULL || strm->state == Z_NULL) return Z_STREAM_ERROR;
strm->state->bi_valid = bits; strm->state->bi_valid = bits;
@@ -413,10 +391,7 @@ int ZEXPORT deflatePrime (strm, bits, value)
} }
/* ========================================================================= */ /* ========================================================================= */
int ZEXPORT deflateParams(strm, level, strategy)
z_streamp strm;
int level;
int strategy;
int ZEXPORT deflateParams (z_streamp strm, int level, int strategy)
{ {
deflate_state *s; deflate_state *s;
compress_func func; compress_func func;
@@ -451,12 +426,7 @@ int ZEXPORT deflateParams(strm, level, strategy)
} }
/* ========================================================================= */ /* ========================================================================= */
int ZEXPORT deflateTune(strm, good_length, max_lazy, nice_length, max_chain)
z_streamp strm;
int good_length;
int max_lazy;
int nice_length;
int max_chain;
int ZEXPORT deflateTune (z_streamp strm, int good_length, int max_lazy, int nice_length, int max_chain)
{ {
deflate_state *s; deflate_state *s;
@@ -486,9 +456,7 @@ int ZEXPORT deflateTune(strm, good_length, max_lazy, nice_length, max_chain)
* But even the conservative upper bound of about 14% expansion does not * But even the conservative upper bound of about 14% expansion does not
* seem onerous for output buffer allocation. * seem onerous for output buffer allocation.
*/ */
uLong ZEXPORT deflateBound(strm, sourceLen)
z_streamp strm;
uLong sourceLen;
uLong ZEXPORT deflateBound (z_streamp strm, uLong sourceLen)
{ {
deflate_state *s; deflate_state *s;
uLong destLen; uLong destLen;
@@ -515,9 +483,7 @@ uLong ZEXPORT deflateBound(strm, sourceLen)
* IN assertion: the stream state is correct and there is enough room in * IN assertion: the stream state is correct and there is enough room in
* pending_buf. * pending_buf.
*/ */
local void putShortMSB (s, b)
deflate_state *s;
uInt b;
local void putShortMSB (deflate_state *s, uInt b)
{ {
put_byte(s, (Byte)(b >> 8)); put_byte(s, (Byte)(b >> 8));
put_byte(s, (Byte)(b & 0xff)); put_byte(s, (Byte)(b & 0xff));
@@ -529,8 +495,7 @@ local void putShortMSB (s, b)
* to avoid allocating a large strm->next_out buffer and copying into it. * to avoid allocating a large strm->next_out buffer and copying into it.
* (See also read_buf()). * (See also read_buf()).
*/ */
local void flush_pending(strm)
z_streamp strm;
local void flush_pending (z_streamp strm)
{ {
unsigned len = strm->state->pending; unsigned len = strm->state->pending;
@@ -549,9 +514,7 @@ local void flush_pending(strm)
} }
/* ========================================================================= */ /* ========================================================================= */
int ZEXPORT deflate (strm, flush)
z_streamp strm;
int flush;
int ZEXPORT deflate (z_streamp strm, int flush)
{ {
int old_flush; /* value of flush param for previous deflate call */ int old_flush; /* value of flush param for previous deflate call */
deflate_state *s; deflate_state *s;
@@ -856,8 +819,7 @@ int ZEXPORT deflate (strm, flush)
} }
/* ========================================================================= */ /* ========================================================================= */
int ZEXPORT deflateEnd (strm)
z_streamp strm;
int ZEXPORT deflateEnd (z_streamp strm)
{ {
int status; int status;
@@ -891,9 +853,7 @@ int ZEXPORT deflateEnd (strm)
* To simplify the source, this is not supported for 16-bit MSDOS (which * To simplify the source, this is not supported for 16-bit MSDOS (which
* doesn't have enough memory anyway to duplicate compression states). * doesn't have enough memory anyway to duplicate compression states).
*/ */
int ZEXPORT deflateCopy (dest, source)
z_streamp dest;
z_streamp source;
int ZEXPORT deflateCopy (z_streamp dest, z_streamp source)
{ {
#ifdef MAXSEG_64K #ifdef MAXSEG_64K
return Z_STREAM_ERROR; return Z_STREAM_ERROR;
@@ -953,10 +913,7 @@ int ZEXPORT deflateCopy (dest, source)
* allocating a large strm->next_in buffer and copying from it. * allocating a large strm->next_in buffer and copying from it.
* (See also flush_pending()). * (See also flush_pending()).
*/ */
local int read_buf(strm, buf, size)
z_streamp strm;
Bytef *buf;
unsigned size;
local int read_buf (z_streamp strm, Bytef *buf, unsigned size)
{ {
unsigned len = strm->avail_in; unsigned len = strm->avail_in;
@@ -983,8 +940,7 @@ local int read_buf(strm, buf, size)
/* =========================================================================== /* ===========================================================================
* Initialize the "longest match" routines for a new zlib stream * Initialize the "longest match" routines for a new zlib stream
*/ */
local void lm_init (s)
deflate_state *s;
local void lm_init (deflate_state *s)
{ {
s->window_size = (ulg)2L*s->w_size; s->window_size = (ulg)2L*s->w_size;
@@ -1024,9 +980,7 @@ local void lm_init (s)
/* For 80x86 and 680x0, an optimized version will be provided in match.asm or /* For 80x86 and 680x0, an optimized version will be provided in match.asm or
* match.S. The code will be functionally equivalent. * match.S. The code will be functionally equivalent.
*/ */
local uInt longest_match(s, cur_match)
deflate_state *s;
IPos cur_match; /* current match */
local uInt longest_match(deflate_state *s, IPos cur_match)
{ {
unsigned chain_length = s->max_chain_length;/* max hash chain length */ unsigned chain_length = s->max_chain_length;/* max hash chain length */
register Bytef *scan = s->window + s->strstart; /* current string */ register Bytef *scan = s->window + s->strstart; /* current string */
@@ -1172,9 +1126,7 @@ local uInt longest_match(s, cur_match)
/* --------------------------------------------------------------------------- /* ---------------------------------------------------------------------------
* Optimized version for level == 1 or strategy == Z_RLE only * Optimized version for level == 1 or strategy == Z_RLE only
*/ */
local uInt longest_match_fast(s, cur_match)
deflate_state *s;
IPos cur_match; /* current match */
local uInt longest_match_fast (deflate_state *s, IPos cur_match)
{ {
register Bytef *scan = s->window + s->strstart; /* current string */ register Bytef *scan = s->window + s->strstart; /* current string */
register Bytef *match; /* matched string */ register Bytef *match; /* matched string */
@@ -1229,10 +1181,7 @@ local uInt longest_match_fast(s, cur_match)
/* =========================================================================== /* ===========================================================================
* Check that the match at match_start is indeed a match. * Check that the match at match_start is indeed a match.
*/ */
local void check_match(s, start, match, length)
deflate_state *s;
IPos start, match;
int length;
local void check_match(deflate_state *s, IPos start, IPos match, int length)
{ {
/* check that the match is indeed a match */ /* check that the match is indeed a match */
if (zmemcmp(s->window + match, if (zmemcmp(s->window + match,
@@ -1263,8 +1212,7 @@ local void check_match(s, start, match, length)
* performed for at least two bytes (required for the zip translate_eol * performed for at least two bytes (required for the zip translate_eol
* option -- not supported here). * option -- not supported here).
*/ */
local void fill_window(s)
deflate_state *s;
local void fill_window (deflate_state *s)
{ {
register unsigned n, m; register unsigned n, m;
register Posf *p; register Posf *p;
@@ -1387,9 +1335,7 @@ local void fill_window(s)
* NOTE: this function should be optimized to avoid extra copying from * NOTE: this function should be optimized to avoid extra copying from
* window to pending_buf. * window to pending_buf.
*/ */
local block_state deflate_stored(s, flush)
deflate_state *s;
int flush;
local block_state deflate_stored(deflate_state *s, int flush)
{ {
/* Stored blocks are limited to 0xffff bytes, pending_buf is limited /* Stored blocks are limited to 0xffff bytes, pending_buf is limited
* to pending_buf_size, and each stored block has a 5 byte header: * to pending_buf_size, and each stored block has a 5 byte header:
@@ -1445,9 +1391,7 @@ local block_state deflate_stored(s, flush)
* new strings in the dictionary only for unmatched strings or for short * new strings in the dictionary only for unmatched strings or for short
* matches. It is used only for the fast compression options. * matches. It is used only for the fast compression options.
*/ */
local block_state deflate_fast(s, flush)
deflate_state *s;
int flush;
local block_state deflate_fast(deflate_state *s, int flush)
{ {
IPos hash_head = NIL; /* head of the hash chain */ IPos hash_head = NIL; /* head of the hash chain */
int bflush; /* set if current block must be flushed */ int bflush; /* set if current block must be flushed */
@@ -1551,9 +1495,7 @@ local block_state deflate_fast(s, flush)
* evaluation for matches: a match is finally adopted only if there is * evaluation for matches: a match is finally adopted only if there is
* no better match at the next window position. * no better match at the next window position.
*/ */
local block_state deflate_slow(s, flush)
deflate_state *s;
int flush;
local block_state deflate_slow(deflate_state *s, int flush)
{ {
IPos hash_head = NIL; /* head of hash chain */ IPos hash_head = NIL; /* head of hash chain */
int bflush; /* set if current block must be flushed */ int bflush; /* set if current block must be flushed */


+ 2
- 0
src/juce_core/io/streams/zlib/deflate.h View File

@@ -23,6 +23,8 @@
# define GZIP # define GZIP
#endif #endif
#define NO_DUMMY_DECL
/* =========================================================================== /* ===========================================================================
* Internal compression state. * Internal compression state.
*/ */


Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save