+libvorbis 1.2.3 (2009-07-09) -- "Xiph.Org libVorbis I 20090709"
+
+ * correct a vorbisfile bug that prevented proper playback of
+ Vorbis files where all audio in a logical stream is in a
+ single page
+ * Additional decode setup hardening against malicious streams
+ * Add 'OV_EXCLUDE_STATIC_CALLBACKS' define for developers who
+ wish to avoid avoid unused symbol warnings from the static
+ callbacks defined in vorbisfile.h
+
libvorbis 1.2.2 (2009-06-24) -- "Xiph.Org libVorbis I 20090624"
* define VENDOR and ENCODER strings
dnl ------------------------------------------------
-AC_INIT([libvorbis],[1.2.2],[vorbis-dev@xiph.org])
+AC_INIT([libvorbis],[1.2.3],[vorbis-dev@xiph.org])
AC_CONFIG_SRCDIR([lib/mdct.c])
dnl - interfaces removed -> AGE = 0
V_LIB_CURRENT=4
-V_LIB_REVISION=2
+V_LIB_REVISION=3
V_LIB_AGE=4
+
VF_LIB_CURRENT=6
-VF_LIB_REVISION=1
+VF_LIB_REVISION=2
VF_LIB_AGE=3
+
VE_LIB_CURRENT=2
-VE_LIB_REVISION=5
+VE_LIB_REVISION=6
VE_LIB_AGE=0
+
AC_SUBST(V_LIB_CURRENT)
AC_SUBST(V_LIB_REVISION)
AC_SUBST(V_LIB_AGE)
int i;
#ifdef _WIN32 /* We need to set stdin to binary mode. Damn windows. */
- /* Beware the evil ifdef. We avoid these where we can, but this one we
+ /* Beware the evil ifdef. We avoid these where we can, but this one we
cannot. Don't add any more, you'll probably go to hell if you do. */
_setmode( _fileno( stdin ), _O_BINARY );
#endif
printf("Could not open input as an OggVorbis file.\n\n");
exit(1);
}
-
+
/* print details about each logical bitstream in the input */
if(ov_seekable(&ov)){
printf("Input bitstream contained %ld logical bitstream section(s).\n",
* GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
* IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
* *
- * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009 *
* by the Xiph.Org Foundation http://www.xiph.org/ *
* *
********************************************************************
stream of packets */
ogg_page og; /* one Ogg bitstream page. Vorbis packets are inside */
ogg_packet op; /* one raw packet of data for decode */
-
+
vorbis_info vi; /* struct that stores all the static vorbis bitstream
settings */
vorbis_comment vc; /* struct that stores all the bitstream user comments */
vorbis_dsp_state vd; /* central working state for the packet->PCM decoder */
vorbis_block vb; /* local working space for packet->PCM decode */
-
+
char *buffer;
int bytes;
#ifdef _WIN32 /* We need to set stdin/stdout to binary mode. Damn windows. */
- /* Beware the evil ifdef. We avoid these where we can, but this one we
+ /* Beware the evil ifdef. We avoid these where we can, but this one we
cannot. Don't add any more, you'll probably go to hell if you do. */
_setmode( _fileno( stdin ), _O_BINARY );
_setmode( _fileno( stdout ), _O_BINARY );
long (*tell_func) (void *datasource);
} ov_callbacks;
+#ifndef OV_EXCLUDE_STATIC_CALLBACKS
+
/* a few sets of convenient callbacks, especially for use under
* Windows where ov_open_callbacks() should always be used instead of
* ov_open() to avoid problems with incompatable crt.o version linking
* we're using (the same one as the main application).
*/
-#ifndef OV_EXCLUDE_STATIC_CALLBACKS
-
static ov_callbacks OV_CALLBACKS_DEFAULT = {
(size_t (*)(void *, size_t, size_t, void *)) fread,
(int (*)(void *, ogg_int64_t, int)) _ov_header_fseek_wrap,
#include "misc.h"
#include "os.h"
-#define GENERAL_VENDOR_STRING "Xiph.Org libVorbis 1.2.3pre"
-#define ENCODE_VENDOR_STRING "Xiph.Org libVorbis I 20090707"
+#define GENERAL_VENDOR_STRING "Xiph.Org libVorbis 1.2.3"
+#define ENCODE_VENDOR_STRING "Xiph.Org libVorbis I 20090709"
/* helpers */
static int ilog2(unsigned int v){
#include <math.h>
#include "vorbis/codec.h"
+
+/* we don't need or want the static callback symbols here */
+#define OV_EXCLUDE_STATIC_CALLBACKS
#include "vorbis/vorbisfile.h"
#include "os.h"
<key>CFBundleExecutable</key>
<string>Vorbis</string>
<key>CFBundleGetInfoString</key>
- <string>Vorbis framework 1.2.2, Copyright © 1994-2009 Xiph.Org Foundation</string>
+ <string>Vorbis framework 1.2.3, Copyright © 1994-2009 Xiph.Org Foundation</string>
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
- <string>1.2.2</string>
+ <string>1.2.3</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
- <string>1.2.2</string>
+ <string>1.2.3</string>
<key>NSHumanReadableCopyright</key>
- <string>Vorbis framework 1.2.2, Copyright © 1994-2009 Xiph.Org Foundation</string>
+ <string>Vorbis framework 1.2.3, Copyright © 1994-2009 Xiph.Org Foundation</string>
<key>CSResourcesFileMapped</key>
<true/>
</dict>