[xiph-commits] r9007 - in branches/theora-mmx: . debian doc doc/python doc/spec examples include include/theora lib symbian win32 win32/experimental/encoderwin win32/experimental/splayer win32/experimental/splayer/SDL-1.2.5 win32/experimental/splayer/SDL-1.2.5/include win32/experimental/splayer/portaudio win32/experimental/splayer/portaudio/pa_common win32/experimental/splayer/portaudio/pa_win_wmme win32/experimental/splayer/portaudio/pablio win32/experimental/transcoder win32/experimental/transcoder/avi2vp3 win32/experimental/wincompat

j at motherfish-iii.xiph.org j at motherfish-iii.xiph.org
Wed Mar 2 05:04:11 PST 2005


Author: j
Date: 2005-03-02 05:02:26 -0800 (Wed, 02 Mar 2005)
New Revision: 9007

Added:
   branches/theora-mmx/doc/draft-kerr-avt-theora-rtp-00.txt
   branches/theora-mmx/doc/draft-kerr-avt-theora-rtp-00.xml
Modified:
   branches/theora-mmx/
   branches/theora-mmx/CHANGES
   branches/theora-mmx/COPYING
   branches/theora-mmx/LICENSE
   branches/theora-mmx/Makefile.am
   branches/theora-mmx/README
   branches/theora-mmx/acinclude.m4
   branches/theora-mmx/autogen.sh
   branches/theora-mmx/configure.ac
   branches/theora-mmx/debian/Makefile.am
   branches/theora-mmx/debian/changelog
   branches/theora-mmx/debian/control
   branches/theora-mmx/debian/copyright
   branches/theora-mmx/debian/libtheora-dev.install
   branches/theora-mmx/debian/libtheora0.install
   branches/theora-mmx/debian/rules
   branches/theora-mmx/doc/Doxyfile.in
   branches/theora-mmx/doc/Makefile.am
   branches/theora-mmx/doc/color.html
   branches/theora-mmx/doc/python/Makefile.am
   branches/theora-mmx/doc/python/spec.txt
   branches/theora-mmx/doc/python/spec2html.py
   branches/theora-mmx/doc/python/txt2html.py
   branches/theora-mmx/doc/python/txt2py.py
   branches/theora-mmx/doc/spec/Makefile
   branches/theora-mmx/doc/spec/spec.tex
   branches/theora-mmx/doc/spec/vp3huff.c
   branches/theora-mmx/doc/vp3-format.txt
   branches/theora-mmx/examples/Makefile.am
   branches/theora-mmx/examples/README_SPLAYER
   branches/theora-mmx/examples/dump_video.c
   branches/theora-mmx/examples/encoder_example.c
   branches/theora-mmx/examples/getopt.c
   branches/theora-mmx/examples/getopt.h
   branches/theora-mmx/examples/getopt1.c
   branches/theora-mmx/examples/player_example.c
   branches/theora-mmx/examples/splayer.c
   branches/theora-mmx/include/Makefile.am
   branches/theora-mmx/include/theora/Makefile.am
   branches/theora-mmx/include/theora/theora.h
   branches/theora-mmx/lib/Makefile.am
   branches/theora-mmx/lib/block_inline.h
   branches/theora-mmx/lib/blockmap.c
   branches/theora-mmx/lib/comment.c
   branches/theora-mmx/lib/compglobals.c
   branches/theora-mmx/lib/dct.c
   branches/theora-mmx/lib/dct_decode.c
   branches/theora-mmx/lib/dct_encode.c
   branches/theora-mmx/lib/decode.c
   branches/theora-mmx/lib/encode.c
   branches/theora-mmx/lib/encoder_disabled.c
   branches/theora-mmx/lib/encoder_internal.h
   branches/theora-mmx/lib/encoder_lookup.h
   branches/theora-mmx/lib/encoder_toplevel.c
   branches/theora-mmx/lib/frarray.c
   branches/theora-mmx/lib/frinit.c
   branches/theora-mmx/lib/huffman.c
   branches/theora-mmx/lib/huffman.h
   branches/theora-mmx/lib/hufftables.h
   branches/theora-mmx/lib/idct.c
   branches/theora-mmx/lib/mcomp.c
   branches/theora-mmx/lib/misc_common.c
   branches/theora-mmx/lib/pb.c
   branches/theora-mmx/lib/pp.c
   branches/theora-mmx/lib/pp.h
   branches/theora-mmx/lib/quant.c
   branches/theora-mmx/lib/quant_lookup.h
   branches/theora-mmx/lib/reconstruct.c
   branches/theora-mmx/lib/scan.c
   branches/theora-mmx/lib/toplevel.c
   branches/theora-mmx/lib/toplevel.h
   branches/theora-mmx/lib/toplevel_lookup.h
   branches/theora-mmx/libtheora.spec.in
   branches/theora-mmx/symbian/bld.inf
   branches/theora-mmx/symbian/config.h
   branches/theora-mmx/symbian/theora.mmp
   branches/theora-mmx/theora-uninstalled.pc.in
   branches/theora-mmx/theora.pc.in
   branches/theora-mmx/win32/experimental/encoderwin/ReadMe.txt
   branches/theora-mmx/win32/experimental/splayer/ReadMe.txt
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/README-SDL.txt
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_active.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_audio.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_byteorder.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_cdrom.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_copying.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_endian.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_error.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_events.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_getenv.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_joystick.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_keyboard.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_keysym.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_main.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_mouse.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_mutex.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_name.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_opengl.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_quit.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_rwops.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_syswm.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_thread.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_timer.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_types.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_version.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_video.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/begin_code.h
   branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/close_code.h
   branches/theora-mmx/win32/experimental/splayer/portaudio/LICENSE.txt
   branches/theora-mmx/win32/experimental/splayer/portaudio/README.txt
   branches/theora-mmx/win32/experimental/splayer/portaudio/pa_common/pa_convert.c
   branches/theora-mmx/win32/experimental/splayer/portaudio/pa_common/pa_host.h
   branches/theora-mmx/win32/experimental/splayer/portaudio/pa_common/pa_lib.c
   branches/theora-mmx/win32/experimental/splayer/portaudio/pa_common/pa_trace.c
   branches/theora-mmx/win32/experimental/splayer/portaudio/pa_common/pa_trace.h
   branches/theora-mmx/win32/experimental/splayer/portaudio/pa_common/portaudio.h
   branches/theora-mmx/win32/experimental/splayer/portaudio/pa_win_wmme/pa_win_wmme.c
   branches/theora-mmx/win32/experimental/splayer/portaudio/pablio/README.txt
   branches/theora-mmx/win32/experimental/splayer/portaudio/pablio/pablio.c
   branches/theora-mmx/win32/experimental/splayer/portaudio/pablio/pablio.h
   branches/theora-mmx/win32/experimental/splayer/portaudio/pablio/ringbuffer.c
   branches/theora-mmx/win32/experimental/splayer/portaudio/pablio/ringbuffer.h
   branches/theora-mmx/win32/experimental/transcoder/avi2vp3/avi2vp3.c
   branches/theora-mmx/win32/experimental/transcoder/avi2vp3/avilib.c
   branches/theora-mmx/win32/experimental/transcoder/avi2vp3/avilib.h
   branches/theora-mmx/win32/experimental/transcoder/readme.txt
   branches/theora-mmx/win32/experimental/transcoder/transcoder_example.c
   branches/theora-mmx/win32/experimental/wincompat/README.txt
   branches/theora-mmx/win32/experimental/wincompat/getopt.c
   branches/theora-mmx/win32/experimental/wincompat/getopt.h
   branches/theora-mmx/win32/experimental/wincompat/getopt_long.c
   branches/theora-mmx/win32/experimental/wincompat/unistd.h
   branches/theora-mmx/win32/theora_static.dsp
Log:
Merge changes from trunk to 'theora-mmx'


Property changes on: branches/theora-mmx
___________________________________________________________________
Name: branch-point
   - 8427
   + 9006


Property changes on: branches/theora-mmx/CHANGES
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/COPYING
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/LICENSE
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/Makefile.am
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/README
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/acinclude.m4
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/autogen.sh
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/configure.ac
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/debian/Makefile.am
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/debian/changelog
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/debian/control
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/debian/copyright
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/debian/libtheora-dev.install
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/debian/libtheora0.install
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/debian/rules
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/doc/Doxyfile.in
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/doc/Makefile.am
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/doc/color.html
___________________________________________________________________
Name: svn:eol-style
   + native

Copied: branches/theora-mmx/doc/draft-kerr-avt-theora-rtp-00.txt (from rev 9006, trunk/theora/doc/draft-kerr-avt-theora-rtp-00.txt)

Copied: branches/theora-mmx/doc/draft-kerr-avt-theora-rtp-00.xml (from rev 9006, trunk/theora/doc/draft-kerr-avt-theora-rtp-00.xml)


Property changes on: branches/theora-mmx/doc/python/Makefile.am
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/doc/python/spec.txt
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/doc/python/spec2html.py
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/doc/python/txt2html.py
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/doc/python/txt2py.py
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: branches/theora-mmx/doc/spec/Makefile
===================================================================
--- branches/theora-mmx/doc/spec/Makefile	2005-03-02 11:58:29 UTC (rev 9006)
+++ branches/theora-mmx/doc/spec/Makefile	2005-03-02 13:02:26 UTC (rev 9007)
@@ -18,7 +18,7 @@
 FIG_PDFS = $(FIG_SRCS:.fig=.pdf)
 
 # add any native-pdf figures here
-FIG_OJBS = $(FIG_PDFS)
+FIG_OBJS = $(FIG_PDFS)
 
 Theora_I_spec.pdf : spec.pdf
 	$(MV) $< $@

Modified: branches/theora-mmx/doc/spec/spec.tex
===================================================================
--- branches/theora-mmx/doc/spec/spec.tex	2005-03-02 11:58:29 UTC (rev 9006)
+++ branches/theora-mmx/doc/spec/spec.tex	2005-03-02 13:02:26 UTC (rev 9007)
@@ -2111,8 +2111,10 @@
  within a frame, defined as the ratio of the physical width of a pixel to its
  physical height.
 This is given by the ratio $\bitvar{PARN}:\bitvar{PARD}$.
-Either of these fields MAY be zero, in which case the pixel aspect ratio
- defaults to $1:1$.
+If either of these fields are zero, this indicates that pixel aspect ratio
+ information was not available to the encoder.
+In this case it MAY be specified by the application via an external means, or
+ a default value of $1:1$ MAY be used.
 \item
 Read an 8-bit unsigned integer as \bitvar{CS}.
 This is a value from an enumerated list of the available color spaces, given in
@@ -5128,10 +5130,10 @@
 \begin{tabular}{lc}\toprule
 \locvar{\ti}  & \locvar{HG} \\\midrule
 $0$           & $0$ \\
-$1\ldots 4$   & $1$ \\
-$5\ldots 13$  & $2$ \\
-$14\ldots 26$ & $3$ \\
-$27\ldots 63$ & $4$ \\
+$1\ldots 5$   & $1$ \\
+$6\ldots 14$  & $2$ \\
+$15\ldots 27$ & $3$ \\
+$28\ldots 63$ & $4$ \\
 \bottomrule\end{tabular}
 \end{center}
 \caption{Huffman Table Groups}
@@ -6178,16 +6180,16 @@
  (\locvar{C6}*\bitvar{Y}[6]>>16)$.
 \item
 Assign $\locvar{T}[4]$ the value $(\locvar{C7}*\bitvar{Y}[1]>>16)-
- (\locvar{S7}*\bitvar{X}[7]>>16)$.
+ (\locvar{S7}*\bitvar{Y}[7]>>16)$.
 \item
 Assign $\locvar{T}[5]$ the value $(\locvar{C3}*\bitvar{Y}[5]>>16)-
- (\locvar{S3}*\bitvar{X}[3]>>16)$.
+ (\locvar{S3}*\bitvar{Y}[3]>>16)$.
 \item
 Assign $\locvar{T}[6]$ the value $(\locvar{S3}*\bitvar{Y}[5]>>16)+
- (\locvar{C3}*\bitvar{X}[3]>>16)$.
+ (\locvar{C3}*\bitvar{Y}[3]>>16)$.
 \item
 Assign $\locvar{T}[7]$ the value $(\locvar{S7}*\bitvar{Y}[1]>>16)+
- (\locvar{C7}*\bitvar{X}[7]>>16)$.
+ (\locvar{C7}*\bitvar{Y}[7]>>16)$.
 \item
 Assign \locvar{R} the value $\locvar{T}[4]+\locvar{T}[5]$.
 \item
@@ -6451,14 +6453,14 @@
 The column of numbers on the left represents the unpermuted input, and the
  column on the right the permuted output DCT coefficients.
 
-An offset is also added before right-shifting the output of the
- multiplications, to effect rounding with ties rounded towards positive
- infinity.
-This increases the complexity of the transform to 16 multiplications and
- 42 additions and subtractions.
+A proper division by $2^{16}$ is done after the multiplications instead of a
+ shift in the forward transform.
+This can be implemented quickly by adding an offset of $\hex{FFFF}$ if the
+ number is negative, and then shifting as before.
+This slightly increases the computational complexity of the transform.
 Unlike the inverse DCT, 16 bit registers and a $16\times16\rightarrow32$ bit
  multiply are sufficient to avoid any overflow, so long as the input is in the
- range $-6270\ldots 6270$, which is more than sufficient.
+ range $-6270\ldots 6270$, which is larger than required.
 
 \begin{enumerate}
 \item
@@ -6493,9 +6495,9 @@
 Assign \locvar{R} the value $\locvar{T}[6]-\locvar{T}[5]$.
 \item
 Assign $\locvar{T}[6]$ the value
- $(\locvar{C4}*(\locvar{T}[6]+\locvar{T}[5])+\hex{8000})>>16$.
+ $(\locvar{C4}*(\locvar{T}[6]+\locvar{T}[5]))//16$.
 \item
-Assign $\locvar{T}[5]$ the value $(\locvar{C4}*\locvar{R}+\hex{8000})>>16$.
+Assign $\locvar{T}[5]$ the value $(\locvar{C4}*\locvar{R})//16$.
 \item
 Assign \locvar{R} the value $\locvar{T}[4]+\locvar{T}[5]$.
 \item
@@ -6510,34 +6512,34 @@
 Assign $\locvar{T}[7]$ the value \locvar{R}.
 \item
 Assign $\bitvar{Y}[0]$ the value
- $(\locvar{C4}*(\locvar{T}[0]+\locvar{T}[1])+\hex{8000})>>16$.
+ $(\locvar{C4}*(\locvar{T}[0]+\locvar{T}[1]))//16$.
 \item
 Assign $\bitvar{Y}[4]$ the value
- $(\locvar{C4}*(\locvar{T}[0]-\locvar{T}[1])+\hex{8000})>>16$.
+ $(\locvar{C4}*(\locvar{T}[0]-\locvar{T}[1]))//16$.
 \item
 Assign $\bitvar{Y}[2]$ the value
- $((\locvar{S6}*\locvar{T}[3]+\hex{8000})>>16)+
- ((\locvar{C6}*\locvar{T}[2]+\hex{8000})>>16)$.
+ $((\locvar{S6}*\locvar{T}[3])//16)+
+ ((\locvar{C6}*\locvar{T}[2])//16)$.
 \item
 Assign $\bitvar{Y}[6]$ the value
- $((\locvar{C6}*\locvar{T}[3]+\hex{8000})>>16)-
- ((\locvar{S6}*\locvar{T}[2]+\hex{8000})>>16)$.
+ $((\locvar{C6}*\locvar{T}[3])//16)-
+ ((\locvar{S6}*\locvar{T}[2])//16)$.
 \item
 Assign $\bitvar{Y}[1]$ the value
- $((\locvar{S7}*\locvar{T}[7]+\hex{8000})>>16)+
- ((\locvar{C7}*\locvar{T}[4]+\hex{8000})>>16)$.
+ $((\locvar{S7}*\locvar{T}[7])//16)+
+ ((\locvar{C7}*\locvar{T}[4])//16)$.
 \item
 Assign $\bitvar{Y}[5]$ the value
- $((\locvar{S3}*\locvar{T}[6]+\hex{8000})>>16)+
- ((\locvar{C3}*\locvar{T}[5]+\hex{8000})>>16)$.
+ $((\locvar{S3}*\locvar{T}[6])//16)+
+ ((\locvar{C3}*\locvar{T}[5])//16)$.
 \item
 Assign $\bitvar{Y}[3]$ the value
- $((\locvar{C3}*\locvar{T}[6]+\hex{8000})>>16)-
- ((\locvar{S3}*\locvar{T}[5]+\hex{8000})>>16)$.
+ $((\locvar{C3}*\locvar{T}[6])//16)-
+ ((\locvar{S3}*\locvar{T}[5])//16)$.
 \item
 Assign $\bitvar{Y}[7]$ the value
- $((\locvar{C7}*\locvar{T}[7]+\hex{8000})>>16)-
- ((\locvar{S7}*\locvar{T}[4]+\hex{8000})>>16)$.
+ $((\locvar{C7}*\locvar{T}[7])//16)-
+ ((\locvar{S7}*\locvar{T}[4])//16)$.
 \end{enumerate}
 
 \subsection{The Complete Reconstruction Algorithm}


Property changes on: branches/theora-mmx/doc/spec/vp3huff.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/doc/vp3-format.txt
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/examples/Makefile.am
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/examples/README_SPLAYER
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/examples/dump_video.c
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: branches/theora-mmx/examples/encoder_example.c
===================================================================
--- branches/theora-mmx/examples/encoder_example.c	2005-03-02 11:58:29 UTC (rev 9006)
+++ branches/theora-mmx/examples/encoder_example.c	2005-03-02 13:02:26 UTC (rev 9007)
@@ -41,7 +41,8 @@
 #include "vorbis/vorbisenc.h"
 
 #ifdef _WIN32
-/*supply missing headers and functions to Win32. going to hell, I know*/
+/* supply missing headers and functions to Win32 */
+
 #include <fcntl.h>
 
 static double rint(double x)
@@ -199,7 +200,7 @@
             exit(1);
           }
 
-           /* read past extra header bytes */
+          /* read past extra header bytes */
           while(extra_hdr_bytes){
             int read_size = (extra_hdr_bytes > sizeof(buffer)) ?
              sizeof(buffer) : extra_hdr_bytes;
@@ -270,7 +271,7 @@
         exit(1);
       }
 
-      /*update fps and aspect ratio globals if not specified in the command line*/
+      /* update fps and aspect ratio globals if not specified in the command line */
       if (video_hzn==-1) video_hzn = tmp_video_hzn;
       if (video_hzd==-1) video_hzd = tmp_video_hzd;
       if (video_an==-1) video_an = tmp_video_an;
@@ -622,8 +623,15 @@
 
   /* yayness.  Set up Ogg output stream */
   srand(time(NULL));
-  ogg_stream_init(&vo,rand());
-  ogg_stream_init(&to,rand()); /* oops, add one ot the above */
+  {
+    /* need two inequal serial numbers */
+    int serial1, serial2;
+    serial1 = rand();
+    serial2 = rand();
+    if (serial1 == serial2) serial2++;
+    ogg_stream_init(&to,serial1);
+    ogg_stream_init(&vo,serial2);
+  }
 
   /* Set up Theora encoder */
   if(!video){
@@ -652,6 +660,7 @@
   ti.aspect_numerator=video_an;
   ti.aspect_denominator=video_ad;
   ti.colorspace=OC_CS_UNSPECIFIED;
+  ti.pixelformat=OC_PF_420;
   ti.target_bitrate=video_r;
   ti.quality=video_q;
 


Property changes on: branches/theora-mmx/examples/encoder_example.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/examples/getopt.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/examples/getopt.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/examples/getopt1.c
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: branches/theora-mmx/examples/player_example.c
===================================================================
--- branches/theora-mmx/examples/player_example.c	2005-03-02 11:58:29 UTC (rev 9006)
+++ branches/theora-mmx/examples/player_example.c	2005-03-02 13:02:26 UTC (rev 9007)
@@ -552,9 +552,18 @@
   /* and now we have it all.  initialize decoders */
   if(theora_p){
     theora_decode_init(&td,&ti);
-    printf("Ogg logical stream %x is Theora %dx%d %.02f fps video\n",
+    printf("Ogg logical stream %x is Theora %dx%d %.02f fps",
            (unsigned int)to.serialno,ti.width,ti.height, 
            (double)ti.fps_numerator/ti.fps_denominator);
+    switch(ti.pixelformat){
+      case OC_PF_420: printf(" 4:2:0 video\n"); break;
+      case OC_PF_422: printf(" 4:2:2 video\n"); break;
+      case OC_PF_444: printf(" 4:4:4 video\n"); break;
+      case OC_PF_RSVD:
+      default:
+	printf(" video\n  (UNKNOWN Chroma sampling!)\n");
+	break;
+    }
     if(ti.width!=ti.frame_width || ti.height!=ti.frame_height)
       printf("  Frame content is %dx%d with offset (%d,%d).\n",
            ti.frame_width, ti.frame_height, ti.offset_x, ti.offset_y);


Property changes on: branches/theora-mmx/examples/player_example.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/examples/splayer.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/include/Makefile.am
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/include/theora/Makefile.am
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: branches/theora-mmx/include/theora/theora.h
===================================================================
--- branches/theora-mmx/include/theora/theora.h	2005-03-02 11:58:29 UTC (rev 9006)
+++ branches/theora-mmx/include/theora/theora.h	2005-03-02 13:02:26 UTC (rev 9007)
@@ -54,7 +54,7 @@
  * configurations. For theora the width and height of the largest plane
  * must be a multiple of 16. The actual meaningful picture size and 
  * offset are stored in the theora_info structure; frames returned by
- * the decoder my been to be cropped for display. 
+ * the decoder may need to be cropped for display. 
  * All samples are 8 bits.
  */
 typedef struct {
@@ -78,9 +78,24 @@
   OC_CS_UNSPECIFIED,	/**< the colorspace is unknown or unspecified */
   OC_CS_ITU_REC_470M,	/**< best option for 'NTSC' content */
   OC_CS_ITU_REC_470BG,	/**< best option for 'PAL' content */
+  OC_CS_NSPACES		/* mark the end of the defined colorspaces */
 } theora_colorspace;
 
 /**
+ * A Chroma subsampling
+ *
+ * These enumerate the available chroma subsampling options supported
+ * by the theora format. See Section 4.4 of the specification for
+ * exact definitions.
+ */
+typedef enum {
+  OC_PF_420,	/**< Chroma subsampling by 2 in each direction (4:2:0) */
+  OC_PF_RSVD,	/**< reserved value */
+  OC_PF_422,	/**< Horizonatal chroma subsampling by 2 (4:2:2) */
+  OC_PF_444,	/**< No chroma subsampling at all (4:4:4) */
+} theora_pixelformat;
+
+/**
  * Theora bitstream info.
  * Contains the basic playback parameters for a stream,
  * corresponds to the initial 'info' header packet.
@@ -135,6 +150,8 @@
   ogg_int32_t   noise_sensitivity;
   ogg_int32_t   sharpness;
 
+  theora_pixelformat pixelformat;
+
 } theora_info;
 
 /** Codec internal state and context.


Property changes on: branches/theora-mmx/include/theora/theora.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/Makefile.am
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/block_inline.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/blockmap.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/comment.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/compglobals.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/dct.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/dct_decode.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/dct_encode.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/decode.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/encode.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/encoder_disabled.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/encoder_internal.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/encoder_lookup.h
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: branches/theora-mmx/lib/encoder_toplevel.c
===================================================================
--- branches/theora-mmx/lib/encoder_toplevel.c	2005-03-02 11:58:29 UTC (rev 9006)
+++ branches/theora-mmx/lib/encoder_toplevel.c	2005-03-02 13:02:26 UTC (rev 9007)
@@ -1067,8 +1067,10 @@
 
   oggpackB_write(cpi->oggbuffer,cpi->pb.keyframe_granule_shift,5);
 
-  oggpackB_write(cpi->oggbuffer,0,5); /* spare config bits */
+  oggpackB_write(cpi->oggbuffer,cpi->pb.info.pixelformat,2);
 
+  oggpackB_write(cpi->oggbuffer,0,3); /* spare config bits */
+
 #ifndef LIBOGG2
   op->packet=oggpackB_get_buffer(cpi->oggbuffer);
 #else


Property changes on: branches/theora-mmx/lib/encoder_toplevel.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/frarray.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/frinit.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/huffman.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/huffman.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/hufftables.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/idct.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/mcomp.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/misc_common.c
___________________________________________________________________
Name: svn:executable
   - *
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/pb.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/pp.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/pp.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/quant.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/quant_lookup.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/reconstruct.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/scan.c
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: branches/theora-mmx/lib/toplevel.c
===================================================================
--- branches/theora-mmx/lib/toplevel.c	2005-03-02 11:58:29 UTC (rev 9006)
+++ branches/theora-mmx/lib/toplevel.c	2005-03-02 13:02:26 UTC (rev 9007)
@@ -144,13 +144,16 @@
   theora_read(opb,24,&ret);
   ci->target_bitrate=ret;
   theora_read(opb,6,&ret);
-  ci->quality=ret=ret;
+  ci->quality=ret;
 
   theora_read(opb,5,&ret);
   ci->keyframe_frequency_force=1<<ret;
 
+  theora_read(opb,2,&ret);
+  ci->pixelformat=ret;
+
   /* spare configuration bits */
-  if ( theora_read(opb,5,&ret) == -1 )
+  if ( theora_read(opb,3,&ret) == -1 )
     return (OC_BADHEADER);
 
   return(0);
@@ -293,6 +296,7 @@
   dsp_static_init ();
 
   ci=(codec_setup_info *)c->codec_setup;
+  memset(th, 0, sizeof(*th));
   th->internal_decode=pbi=_ogg_calloc(1,sizeof(*pbi));
 
   InitPBInstance(pbi);


Property changes on: branches/theora-mmx/lib/toplevel.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/toplevel.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/lib/toplevel_lookup.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/libtheora.spec.in
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: branches/theora-mmx/symbian/bld.inf
===================================================================
--- branches/theora-mmx/symbian/bld.inf	2005-03-02 11:58:29 UTC (rev 9006)
+++ branches/theora-mmx/symbian/bld.inf	2005-03-02 13:02:26 UTC (rev 9007)
@@ -1,35 +1,35 @@
-/*
-   Copyright (C) 2003 Commonwealth Scientific and Industrial Research
-   Organisation (CSIRO) Australia
-
-   Redistribution and use in source and binary forms, with or without
-   modification, are permitted provided that the following conditions
-   are met:
-
-   - Redistributions of source code must retain the above copyright
-   notice, this list of conditions and the following disclaimer.
-
-   - Redistributions in binary form must reproduce the above copyright
-   notice, this list of conditions and the following disclaimer in the
-   documentation and/or other materials provided with the distribution.
-
-   - Neither the name of CSIRO Australia nor the names of its
-   contributors may be used to endorse or promote products derived from
-   this software without specific prior written permission.
-
-   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-   ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-   PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE ORGANISATION OR
-   CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-   EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-   PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-   PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-PRJ_MMPFILES
-
-theora.mmp
+/*
+   Copyright (C) 2003 Commonwealth Scientific and Industrial Research
+   Organisation (CSIRO) Australia
+
+   Redistribution and use in source and binary forms, with or without
+   modification, are permitted provided that the following conditions
+   are met:
+
+   - Redistributions of source code must retain the above copyright
+   notice, this list of conditions and the following disclaimer.
+
+   - Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+
+   - Neither the name of CSIRO Australia nor the names of its
+   contributors may be used to endorse or promote products derived from
+   this software without specific prior written permission.
+
+   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+   ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+   PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE ORGANISATION OR
+   CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+   EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+   PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+   PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+PRJ_MMPFILES
+
+theora.mmp


Property changes on: branches/theora-mmx/symbian/bld.inf
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: branches/theora-mmx/symbian/config.h
===================================================================
--- branches/theora-mmx/symbian/config.h	2005-03-02 11:58:29 UTC (rev 9006)
+++ branches/theora-mmx/symbian/config.h	2005-03-02 13:02:26 UTC (rev 9007)
@@ -1,57 +1,57 @@
-/*
-   Copyright (C) 2003 Commonwealth Scientific and Industrial Research
-   Organisation (CSIRO) Australia
-
-   Redistribution and use in source and binary forms, with or without
-   modification, are permitted provided that the following conditions
-   are met:
-
-   - Redistributions of source code must retain the above copyright
-   notice, this list of conditions and the following disclaimer.
-
-   - Redistributions in binary form must reproduce the above copyright
-   notice, this list of conditions and the following disclaimer in the
-   documentation and/or other materials provided with the distribution.
-
-   - Neither the name of CSIRO Australia nor the names of its
-   contributors may be used to endorse or promote products derived from
-   this software without specific prior written permission.
-
-   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-   ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-   PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE ORGANISATION OR
-   CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-   EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-   PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-   PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-#ifndef CONFIG_H
-#define CONFIG_H
-
-/* Do not build encoding support */
-
-#define THEORA_SUPPORT_ENCODE 0
-
-/* Do not build floating point code */
-
-#define THEORA_SUPPORT_FLOAT 0
-
-#ifdef __WINS__
-
-/* Disable some warnings */
-
-#pragma warning(disable: 4100) /* unreferenced formal parameter */
-//#pragma warning(disable: 4121) /* alignment of a member was sensitive to packing */
-#pragma warning(disable: 4244) /* conversion from '...' to '...', possible loss of data */
-#pragma warning(disable: 4505) /* unreferenced local function has been removed */
-#pragma warning(disable: 4701) /* local variable may be be used without having been initialized */
-#pragma warning(disable: 4761) /* integral size mismatch in argument: conversion supplied */
-
-#endif
-
-#endif /* ! CONFIG_H */
+/*
+   Copyright (C) 2003 Commonwealth Scientific and Industrial Research
+   Organisation (CSIRO) Australia
+
+   Redistribution and use in source and binary forms, with or without
+   modification, are permitted provided that the following conditions
+   are met:
+
+   - Redistributions of source code must retain the above copyright
+   notice, this list of conditions and the following disclaimer.
+
+   - Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+
+   - Neither the name of CSIRO Australia nor the names of its
+   contributors may be used to endorse or promote products derived from
+   this software without specific prior written permission.
+
+   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+   ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+   PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE ORGANISATION OR
+   CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+   EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+   PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+   PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+#ifndef CONFIG_H
+#define CONFIG_H
+
+/* Do not build encoding support */
+
+#define THEORA_SUPPORT_ENCODE 0
+
+/* Do not build floating point code */
+
+#define THEORA_SUPPORT_FLOAT 0
+
+#ifdef __WINS__
+
+/* Disable some warnings */
+
+#pragma warning(disable: 4100) /* unreferenced formal parameter */
+//#pragma warning(disable: 4121) /* alignment of a member was sensitive to packing */
+#pragma warning(disable: 4244) /* conversion from '...' to '...', possible loss of data */
+#pragma warning(disable: 4505) /* unreferenced local function has been removed */
+#pragma warning(disable: 4701) /* local variable may be be used without having been initialized */
+#pragma warning(disable: 4761) /* integral size mismatch in argument: conversion supplied */
+
+#endif
+
+#endif /* ! CONFIG_H */


Property changes on: branches/theora-mmx/symbian/config.h
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: branches/theora-mmx/symbian/theora.mmp
===================================================================
--- branches/theora-mmx/symbian/theora.mmp	2005-03-02 11:58:29 UTC (rev 9006)
+++ branches/theora-mmx/symbian/theora.mmp	2005-03-02 13:02:26 UTC (rev 9007)
@@ -1,41 +1,41 @@
-/*
-   Copyright (C) 2003 Commonwealth Scientific and Industrial Research
-   Organisation (CSIRO) Australia
-
-   Redistribution and use in source and binary forms, with or without
-   modification, are permitted provided that the following conditions
-   are met:
-
-   - Redistributions of source code must retain the above copyright
-   notice, this list of conditions and the following disclaimer.
-
-   - Redistributions in binary form must reproduce the above copyright
-   notice, this list of conditions and the following disclaimer in the
-   documentation and/or other materials provided with the distribution.
-
-   - Neither the name of CSIRO Australia nor the names of its
-   contributors may be used to endorse or promote products derived from
-   this software without specific prior written permission.
-
-   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-   ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-   PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE ORGANISATION OR
-   CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-   EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-   PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-   PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-TARGET        theora.lib
-TARGETTYPE    lib
-UID           0
-MACRO         HAVE_CONFIG_H
-SOURCEPATH    ..\lib
-SOURCE        blockmap.c comment.c dct.c dct_decode.c decode.c frarray.c frinit.c huffman.c
-SOURCE        idct.c mcomp.c misc_common.c pb.c pp.c quant.c reconstruct.c scan.c toplevel.c encoder_disabled.c
-USERINCLUDE   .
-SYSTEMINCLUDE \epoc32\include \epoc32\include\libc ..\include ..\..\ogg\include ..\..\ogg\symbian
+/*
+   Copyright (C) 2003 Commonwealth Scientific and Industrial Research
+   Organisation (CSIRO) Australia
+
+   Redistribution and use in source and binary forms, with or without
+   modification, are permitted provided that the following conditions
+   are met:
+
+   - Redistributions of source code must retain the above copyright
+   notice, this list of conditions and the following disclaimer.
+
+   - Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+
+   - Neither the name of CSIRO Australia nor the names of its
+   contributors may be used to endorse or promote products derived from
+   this software without specific prior written permission.
+
+   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+   ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+   PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE ORGANISATION OR
+   CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+   EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+   PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+   PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+TARGET        theora.lib
+TARGETTYPE    lib
+UID           0
+MACRO         HAVE_CONFIG_H
+SOURCEPATH    ..\lib
+SOURCE        blockmap.c comment.c dct.c dct_decode.c decode.c frarray.c frinit.c huffman.c
+SOURCE        idct.c mcomp.c misc_common.c pb.c pp.c quant.c reconstruct.c scan.c toplevel.c encoder_disabled.c
+USERINCLUDE   .
+SYSTEMINCLUDE \epoc32\include \epoc32\include\libc ..\include ..\..\ogg\include ..\..\ogg\symbian


Property changes on: branches/theora-mmx/symbian/theora.mmp
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/theora-uninstalled.pc.in
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/theora.pc.in
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/encoderwin/ReadMe.txt
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/ReadMe.txt
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/README-SDL.txt
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_active.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_audio.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_byteorder.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_cdrom.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_copying.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_endian.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_error.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_events.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_getenv.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_joystick.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_keyboard.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_keysym.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_main.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_mouse.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_mutex.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_name.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_opengl.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_quit.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_rwops.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_syswm.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_thread.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_timer.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_types.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_version.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/SDL_video.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/begin_code.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/SDL-1.2.5/include/close_code.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/portaudio/LICENSE.txt
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/portaudio/README.txt
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/portaudio/pa_common/pa_convert.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/portaudio/pa_common/pa_host.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/portaudio/pa_common/pa_lib.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/portaudio/pa_common/pa_trace.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/portaudio/pa_common/pa_trace.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/portaudio/pa_common/portaudio.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/portaudio/pa_win_wmme/pa_win_wmme.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/portaudio/pablio/README.txt
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/portaudio/pablio/pablio.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/portaudio/pablio/pablio.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/portaudio/pablio/ringbuffer.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/splayer/portaudio/pablio/ringbuffer.h
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: branches/theora-mmx/win32/experimental/transcoder/avi2vp3/avi2vp3.c
===================================================================
--- branches/theora-mmx/win32/experimental/transcoder/avi2vp3/avi2vp3.c	2005-03-02 11:58:29 UTC (rev 9006)
+++ branches/theora-mmx/win32/experimental/transcoder/avi2vp3/avi2vp3.c	2005-03-02 13:02:26 UTC (rev 9007)
@@ -16,15 +16,16 @@
 
     FILE * f = fopen("outfile.vp3", "wb");
     
-    char * buffer = malloc(32768);
+    char * buffer;
     int olength;
     int length;
     avi_t *avifile;
+    int chunksize;    
     int frame;
     int frames;
     int keyframegap = 0;
     int maxkeyframegap = 0;
-    
+
     DWORD initialticks;
     
     int framew = 0;
@@ -37,6 +38,12 @@
     framew = AVI_video_width(avifile);
     frameh = AVI_video_height(avifile);
     framerate = AVI_frame_rate(avifile);
+    chunksize = AVI_max_video_chunk(avifile);
+    /* avilib only reports the max video chunk size if the file has an
+       idx table. We fall back to an arbitrary limit otherwise. Better
+       would be just to handle the chunks dynamically */
+    if (chunksize <= 0) chunksize = 131072;
+    buffer = malloc(chunksize);
     printf("Frames(%d) Video(%dx%d) %3.2f fps\n",frames,framew, frameh,framerate);
     printf("Video Compressor: %s", AVI_video_compressor(avifile));
     fps_denominator = 1000000.0F;


Property changes on: branches/theora-mmx/win32/experimental/transcoder/avi2vp3/avi2vp3.c
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: branches/theora-mmx/win32/experimental/transcoder/avi2vp3/avilib.c
===================================================================
--- branches/theora-mmx/win32/experimental/transcoder/avi2vp3/avilib.c	2005-03-02 11:58:29 UTC (rev 9006)
+++ branches/theora-mmx/win32/experimental/transcoder/avi2vp3/avilib.c	2005-03-02 13:02:26 UTC (rev 9007)
@@ -44,6 +44,12 @@
 #define VERSION "0.00"
 #endif
 
+#ifndef O_BINARY
+/* win32 wants a binary flag to open(); this sets it to null
+   on platforms that don't have it. */
+#define O_BINARY 0
+#endif
+
 /*******************************************************************
  *                                                                 *
  *    Utilities for writing an AVI File                            *
@@ -229,7 +235,7 @@
   /* mask = umask (0);
    umask (mask);*/
 
-   AVI->fdes = open(filename, O_RDWR|O_CREAT, (S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH) &~ mask);
+   AVI->fdes = open(filename, O_RDWR|O_CREAT|O_BINARY, 0644 &~ mask);
    if (AVI->fdes < 0)
    {
       AVI_errno = AVI_ERR_OPEN;
@@ -1076,7 +1082,7 @@
   
   /* Open the file */
   
-  AVI->fdes = open(filename,O_RDONLY);
+  AVI->fdes = open(filename,O_RDONLY|O_BINARY);
   if(AVI->fdes < 0)
     {
       AVI_errno = AVI_ERR_OPEN;


Property changes on: branches/theora-mmx/win32/experimental/transcoder/avi2vp3/avilib.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/transcoder/avi2vp3/avilib.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/transcoder/readme.txt
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/transcoder/transcoder_example.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/wincompat/README.txt
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/wincompat/getopt.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/wincompat/getopt.h
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/wincompat/getopt_long.c
___________________________________________________________________
Name: svn:eol-style
   + native


Property changes on: branches/theora-mmx/win32/experimental/wincompat/unistd.h
___________________________________________________________________
Name: svn:eol-style
   + native

Modified: branches/theora-mmx/win32/theora_static.dsp
===================================================================
--- branches/theora-mmx/win32/theora_static.dsp	2005-03-02 11:58:29 UTC (rev 9006)
+++ branches/theora-mmx/win32/theora_static.dsp	2005-03-02 13:02:26 UTC (rev 9007)
@@ -113,6 +113,10 @@
 # End Source File
 # Begin Source File
 
+SOURCE=..\lib\encoder_toplevel.c
+# End Source File
+# Begin Source File
+
 SOURCE=..\lib\frarray.c
 # End Source File
 # Begin Source File



More information about the commits mailing list