tizen 2.4 release accepted/tizen_2.4_mobile tizen_2.4 accepted/tizen/2.4/mobile/20151029.025509 submit/tizen_2.4/20151028.065451 tizen_2.4_mobile_release
authorjk7744.park <jk7744.park@samsung.com>
Sat, 24 Oct 2015 08:26:42 +0000 (17:26 +0900)
committerjk7744.park <jk7744.park@samsung.com>
Sat, 24 Oct 2015 08:26:42 +0000 (17:26 +0900)
14 files changed:
.gitignore [new file with mode: 0644]
COPYING
Xv.h
XvMC.h
XvMCproto.h
Xvproto.h
autogen.sh
configure.ac
packaging/videoproto.changes [new file with mode: 0644]
packaging/videoproto.manifest [new file with mode: 0644]
packaging/xorg-x11-proto-video.spec
videoproto.pc.in
vldXvMC.h
xv-protocol-v2.txt

diff --git a/.gitignore b/.gitignore
new file mode 100644 (file)
index 0000000..d342ae6
--- /dev/null
@@ -0,0 +1,78 @@
+#
+#              X.Org module default exclusion patterns
+#              The next section if for module specific patterns
+#
+#      Do not edit the following section
+#      GNU Build System (Autotools)
+aclocal.m4
+autom4te.cache/
+autoscan.log
+ChangeLog
+compile
+config.guess
+config.h
+config.h.in
+config.log
+config-ml.in
+config.py
+config.status
+config.status.lineno
+config.sub
+configure
+configure.scan
+depcomp
+.deps/
+INSTALL
+install-sh
+.libs/
+libtool
+libtool.m4
+ltmain.sh
+lt~obsolete.m4
+ltoptions.m4
+ltsugar.m4
+ltversion.m4
+Makefile
+Makefile.in
+mdate-sh
+missing
+mkinstalldirs
+*.pc
+py-compile
+stamp-h?
+symlink-tree
+texinfo.tex
+ylwrap
+
+#      Do not edit the following section
+#      Edit Compile Debug Document Distribute
+*~
+*.[0-9]
+*.[0-9]x
+*.bak
+*.bin
+core
+*.dll
+*.exe
+*-ISO*.bdf
+*-JIS*.bdf
+*-KOI8*.bdf
+*.kld
+*.ko
+*.ko.cmd
+*.lai
+*.l[oa]
+*.[oa]
+*.obj
+*.patch
+*.so
+*.pcf.gz
+*.pdb
+*.tar.bz2
+*.tar.gz
+#
+#              Add & Override patterns for videoproto 
+#
+#              Edit the following section as needed
+# For example, !report.pc overrides *.pc. See 'man gitignore'
+# 
diff --git a/COPYING b/COPYING
index cfa79e7..28dd80b 100644 (file)
--- a/COPYING
+++ b/COPYING
@@ -3,13 +3,13 @@ and the Massachusetts Institute of Technology, Cambridge, Massachusetts.
 
                         All Rights Reserved
 
-Permission to use, copy, modify, and distribute this software and its 
-documentation for any purpose and without fee is hereby granted, 
+Permission to use, copy, modify, and distribute this software and its
+documentation for any purpose and without fee is hereby granted,
 provided that the above copyright notice appear in all copies and that
-both that copyright notice and this permission notice appear in 
+both that copyright notice and this permission notice appear in
 supporting documentation, and that the names of Digital or MIT not be
 used in advertising or publicity pertaining to distribution of the
-software without specific, written prior permission.  
+software without specific, written prior permission.
 
 DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
 ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
diff --git a/Xv.h b/Xv.h
index 985653c..ef3f786 100644 (file)
--- a/Xv.h
+++ b/Xv.h
@@ -4,13 +4,13 @@ and the Massachusetts Institute of Technology, Cambridge, Massachusetts.
 
                         All Rights Reserved
 
-Permission to use, copy, modify, and distribute this software and its 
-documentation for any purpose and without fee is hereby granted, 
+Permission to use, copy, modify, and distribute this software and its
+documentation for any purpose and without fee is hereby granted,
 provided that the above copyright notice appear in all copies and that
-both that copyright notice and this permission notice appear in 
+both that copyright notice and this permission notice appear in
 supporting documentation, and that the names of Digital or MIT not be
 used in advertising or publicity pertaining to distribution of the
-software without specific, written prior permission.  
+software without specific, written prior permission.
 
 DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
 ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
@@ -25,11 +25,11 @@ SOFTWARE.
 #ifndef XV_H
 #define XV_H
 /*
-** File: 
+** File:
 **
 **   Xv.h --- Xv shared library and server header file
 **
-** Author: 
+** Author:
 **
 **   David Carver (Digital Workstation Engineering/Project Athena)
 **
diff --git a/XvMC.h b/XvMC.h
index 2690be8..47cc6db 100644 (file)
--- a/XvMC.h
+++ b/XvMC.h
@@ -42,7 +42,7 @@
 #define XVMC_PREDICTION_FIELD           0x01
 #define XVMC_PREDICTION_FRAME           0x02
 #define XVMC_PREDICTION_DUAL_PRIME      0x03
-#define XVMC_PREDICTION_16x8            0x02 
+#define XVMC_PREDICTION_16x8            0x02
 #define XVMC_PREDICTION_4MV             0x04
 
 #define XVMC_SELECT_FIRST_FORWARD       0x01
 typedef struct {
    int surface_type_id;
    int chroma_format;
-   unsigned short max_width;       
-   unsigned short max_height;   
+   unsigned short max_width;
+   unsigned short max_height;
    unsigned short subpicture_max_width;
    unsigned short subpicture_max_height;
-   int mc_type;         
+   int mc_type;
    int flags;
 } XvMCSurfaceInfo;
 
@@ -118,7 +118,7 @@ typedef struct {
    unsigned short x;
    unsigned short y;
    unsigned char macroblock_type;
-   unsigned char motion_type;   
+   unsigned char motion_type;
    unsigned char motion_vertical_field_select;
    unsigned char dct_type;
    short PMV[2][2][2];
index 8e80f17..43ec688 100644 (file)
@@ -89,7 +89,7 @@ typedef struct {
   BYTE type;  /* X_Reply */
   BYTE padb1;
   CARD16 sequenceNumber B16;
-  CARD32 length B32;  
+  CARD32 length B32;
   CARD16 width_actual B16;
   CARD16 height_actual B16;
   CARD32 flags_return B32;
@@ -121,7 +121,7 @@ typedef struct {
   BYTE type;  /* X_Reply */
   BYTE padb1;
   CARD16 sequenceNumber B16;
-  CARD32 length B32;  
+  CARD32 length B32;
   CARD32 padl2 B32;
   CARD32 padl3 B32;
   CARD32 padl4 B32;
@@ -156,7 +156,7 @@ typedef struct {
   BYTE type;  /* X_Reply */
   BYTE padb1;
   CARD16 sequenceNumber B16;
-  CARD32 length B32; 
+  CARD32 length B32;
   CARD16 width_actual B16;
   CARD16 height_actual B16;
   CARD16 num_palette_entries B16;
@@ -213,8 +213,8 @@ typedef struct {
   BYTE type;  /* X_Reply */
   BYTE padb1;
   CARD16 sequenceNumber B16;
-  CARD32 length B32; 
-  CARD32 major B32; 
+  CARD32 length B32;
+  CARD32 major B32;
   CARD32 minor B32;
   CARD32 patchLevel B32;
   CARD32 nameLen B32;
index b6b56cf..94bd9cc 100644 (file)
--- a/Xvproto.h
+++ b/Xvproto.h
@@ -4,13 +4,13 @@ and the Massachusetts Institute of Technology, Cambridge, Massachusetts.
 
                         All Rights Reserved
 
-Permission to use, copy, modify, and distribute this software and its 
-documentation for any purpose and without fee is hereby granted, 
+Permission to use, copy, modify, and distribute this software and its
+documentation for any purpose and without fee is hereby granted,
 provided that the above copyright notice appear in all copies and that
-both that copyright notice and this permission notice appear in 
+both that copyright notice and this permission notice appear in
 supporting documentation, and that the names of Digital or MIT not be
 used in advertising or publicity pertaining to distribution of the
-software without specific, written prior permission.  
+software without specific, written prior permission.
 
 DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
 ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
@@ -25,11 +25,11 @@ SOFTWARE.
 #ifndef XVPROTO_H
 #define XVPROTO_H
 /*
-** File: 
+** File:
 **
 **   Xvproto.h --- Xv protocol header file
 **
-** Author: 
+** Author:
 **
 **   David Carver (Digital Workstation Engineering/Project Athena)
 **
@@ -84,8 +84,8 @@ typedef struct {
   XvEncodingID encoding B32;
   CARD16 name_size B16;
   CARD16 width B16, height B16;
-  xvRational rate;
   CARD16 pad B16;
+  xvRational rate;
 } xvEncodingInfo;
 #define sz_xvEncodingInfo (12 + sz_xvRational)
 
@@ -125,7 +125,7 @@ typedef struct {
   CARD16 pad6 B16;
   CARD32 y_sample_bits B32;
   CARD32 u_sample_bits B32;
-  CARD32 v_sample_bits B32;   
+  CARD32 v_sample_bits B32;
   CARD32 horz_y_period B32;
   CARD32 horz_u_period B32;
   CARD32 horz_v_period B32;
@@ -459,7 +459,7 @@ typedef struct _QueryEncodingsReply {
   CARD16 sequenceNumber B16;
   CARD32 length B32;
   CARD16 num_encodings B16;
-  CARD32 padl3 B32;
+  CARD16 padl3 B16;
   CARD32 padl4 B32;
   CARD32 padl5 B32;
   CARD32 padl6 B32;
@@ -516,7 +516,7 @@ typedef struct {
   BYTE padb1;
   CARD16 sequenceNumber B16;
   CARD32 length B32;  /* 0 */
-  CARD32 num_attributes B32; 
+  CARD32 num_attributes B32;
   CARD32 text_size B32;
   CARD32 padl5 B32;
   CARD32 padl6 B32;
@@ -530,7 +530,7 @@ typedef struct {
   BYTE padb1;
   CARD16 sequenceNumber B16;
   CARD32 length B32;
-  CARD32 num_formats B32; 
+  CARD32 num_formats B32;
   CARD32 padl4 B32;
   CARD32 padl5 B32;
   CARD32 padl6 B32;
@@ -543,8 +543,8 @@ typedef struct {
   BYTE type;  /* X_Reply */
   BYTE padb1;
   CARD16 sequenceNumber B16;
-  CARD32 length B32; 
-  CARD32 num_planes B32; 
+  CARD32 length B32;
+  CARD32 num_planes B32;
   CARD32 data_size B32;
   CARD16 width B16;
   CARD16 height B16;
index 904cd67..fc34bd5 100755 (executable)
@@ -9,4 +9,6 @@ cd $srcdir
 autoreconf -v --install || exit 1
 cd $ORIGDIR || exit $?
 
-$srcdir/configure --enable-maintainer-mode "$@"
+if test -z "$NOCONFIGURE"; then
+    $srcdir/configure "$@"
+fi
index c016740..cc0c203 100755 (executable)
@@ -1,7 +1,14 @@
+dnl
+dnl Process this file with autoconf to create configure.
+
+# Initialize Autoconf
 AC_PREREQ([2.60])
-AC_INIT([VideoProto], [2.3.1], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
+AC_INIT([VideoProto], [2.3.2],
+        [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
+AC_CONFIG_SRCDIR([Makefile.am])
+
+# Initialize Automake
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
-AM_MAINTAINER_MODE
 
 # Require xorg-macros: XORG_DEFAULT_OPTIONS
 m4_ifndef([XORG_MACROS_VERSION],
diff --git a/packaging/videoproto.changes b/packaging/videoproto.changes
new file mode 100644 (file)
index 0000000..3252c1c
--- /dev/null
@@ -0,0 +1,3 @@
+* Sat May 11 2013 Anas Nashif <anas.nashif@intel.com> submit/tizen/20130509.184802@fbedddb
+- Set license using %license
+
diff --git a/packaging/videoproto.manifest b/packaging/videoproto.manifest
new file mode 100644 (file)
index 0000000..017d22d
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+ <request>
+    <domain name="_"/>
+ </request>
+</manifest>
index 2d34ae9..5ef3e36 100644 (file)
@@ -1,7 +1,7 @@
 Name:     xorg-x11-proto-video
 Summary:  X.Org X11 Protocol videoproto
-Version:  2.3.1
-Release:  2
+Version:  2.3.2
+Release:  1
 Group:    Development/System
 License:  MIT
 URL:      http://www.x.org
@@ -45,4 +45,3 @@ rm -rf %{buildroot}
 %defattr(-,root,root,-)
 %{_includedir}/X11/extensions/*.h
 %{_datadir}/pkgconfig/*.pc
-
index 5840540..4aa7516 100644 (file)
@@ -2,7 +2,7 @@ prefix=@prefix@
 exec_prefix=@exec_prefix@
 libdir=@libdir@
 includedir=@includedir@
+
 Name: VideoProto
 Description: Video extension headers
 Version: @PACKAGE_VERSION@
index 5c66ceb..fbd251e 100755 (executable)
--- a/vldXvMC.h
+++ b/vldXvMC.h
@@ -20,7 +20,7 @@
  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
  * DEALINGS IN THE SOFTWARE.
- * 
+ *
  * Author: Thomas Hellström, 2004.
  */
 
@@ -31,7 +31,7 @@
 #include <X11/Xlib.h>
 #include <X11/extensions/XvMC.h>
 
-/* 
+/*
  * New "Motion compensation type".
  */
 
@@ -74,7 +74,7 @@
 /*
  * Which of two mappings between quantiser_scale_code
  * and quantiser_scale shall apply.
- */ 
+ */
 
 #define XVMC_Q_SCALE_TYPE         0x00000400
 
 #define XVMC_INTRA_VLC_FORMAT     0x00000800
 
 /*
- * Also XVMC_SECOND_FIELD should be set in flags if active. 
- */ 
+ * Also XVMC_SECOND_FIELD should be set in flags if active.
+ */
 
 #define XVMC_I_PICTURE 1
 #define XVMC_P_PICTURE 2
 #define XVMC_B_PICTURE 3
 
 typedef struct _XvMCMpegControl{
-    unsigned 
+    unsigned
         BVMV_range,        /* Backward vertical motion vector range */
        BHMV_range,        /* Backward horizontal motion vector range */
        FVMV_range,        /* Forward vertical motion vector range */
        FHMV_range,        /* Forward horizontal motion vector range */
-       picture_structure, /* XVMC_TOP_FIELD, XVMC_BOTTOM_FIELD, 
+       picture_structure, /* XVMC_TOP_FIELD, XVMC_BOTTOM_FIELD,
                            *  XVMC_FRAME_PICTURE
                            */
        intra_dc_precision, /* 0x00 - 0x03 corresponds to 8 to 11 bits prec. */
@@ -126,13 +126,13 @@ extern Status XvMCBeginSurface(Display *display,
 
 /*
  * The quantizer matrix structure. This should be filled in by the user and
- * uploaded whenever a change is needed. The lib initializes with 
+ * uploaded whenever a change is needed. The lib initializes with
  * default matrices and will automatically load the hardware with new matrices
  * on decoder context switches. To load data, set the corresponding load flag
  * to true and fill in the values. The VIA MPEG2 engine only uses the
- * intra_quantiser_matrix and the non_intra_quantiser_matrix. 
+ * intra_quantiser_matrix and the non_intra_quantiser_matrix.
  */
-    
+
 typedef struct _XvMCQMatrix {
     int load_intra_quantiser_matrix;
     int load_non_intra_quantiser_matrix;
@@ -145,7 +145,7 @@ typedef struct _XvMCQMatrix {
 } XvMCQMatrix;
 
 /*
- * Upload a XvMCQMatrix structure to the clientlib. 
+ * Upload a XvMCQMatrix structure to the clientlib.
  * The hardware will start using it the next XvMCBeginSurface.
  */
 
@@ -154,21 +154,21 @@ extern Status XvMCLoadQMatrix(Display *display, XvMCContext *context,
 
 
 /*
- * Put a slice to the decoder. The hardware will start processing it 
+ * Put a slice to the decoder. The hardware will start processing it
  * immediately.
  */
 
-extern Status XvMCPutSlice(Display *display,XvMCContext *context, 
+extern Status XvMCPutSlice(Display *display,XvMCContext *context,
                           char *slice, int nBytes);
 /*
- * Put a slice without the slice start code to the decoder. 
- * The hardware will start processing it 
- * immediately. This function is for client optimization. 
+ * Put a slice without the slice start code to the decoder.
+ * The hardware will start processing it
+ * immediately. This function is for client optimization.
  * XvMCPutSlice(display,context,slice,nBytes) is equivalent to
  * XvMCPutSlice2(display,context,slice+4,nBytes-4,slice[3]);
  */
 
-extern Status XvMCPutSlice2(Display *display,XvMCContext *context, 
+extern Status XvMCPutSlice2(Display *display,XvMCContext *context,
                           char *slice, int nBytes, int sliceCode);
 
 #endif
index 31e2013..d018184 100755 (executable)
@@ -41,8 +41,8 @@
 
 
 
-  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
-  Copyright 1991 by Digital Equipment Corporation, Maynard, Massachusetts, 
+  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+  Copyright 1991 by Digital Equipment Corporation, Maynard, Massachusetts,
   and the Massachusetts Institute of Technology, Cambridge, Massachusetts.
 
                         All Rights Reserved
   advertising or publicity pertaining to distribution of the software
   without specific, written prior permission.
 
-  DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING 
-  ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL 
-  DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR 
-  ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER 
-  IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING 
-  OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.  
+  DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
+  ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+  DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
+  ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER
+  IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
+  OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
   - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 
 \f
 
   Preface
   -------
-  
+
     The following is an outline for an X video extension protocol.  It
     is preliminary and subject to change.  My goal in writing this was
     to fix some the shortcomings of existing overly simplistic
     extensions while avoiding pitfalls in an overly complex extension.
-  
+
     Your feedback is desired, and since the major design directions
     have been stable for some time, feel free to hammer on the details
     of the protocol.
     with several groups, including
 
       Project Athena's Visual Computing Group
-      The MIT X Consortium 
+      The MIT X Consortium
       The MIT Media Lab's Interactive Cinema Group
-      
-  
+
+
   \f
   Changes
   -------
 
   Introduction
   ------------
-  
+
     Video technology is moving very quickly.  Standards for processing
     high resolution video are currently a hot topic of discussion
     internationally, and it will soon be possible to process video
     does not attempt to address issues of digital video.  Its purpose
     is to provide a mechanism for support of current and near term
     interactive video technology.
-    
+
     It is somewhat ironic that Xv contains nothing particularly
     innovative.  It takes a minimalistic approach, and without a doubt
     it could have been defined years ago, and with several revisions.
     So, the life expectancy of Xv is not long.  Nevertheless, it may
     undergo further revision and experimentation that will help our
     progress towards digital video systems.
-  
+
     One premise of the Xv extension is that the X server is not alone.
     A separate video server is often used to manage other aspects of
     video processing, though the partition between what the X server
     does and what a video server does is a matter of great debate.
 
-  
+
   Model
   -----
-  
+
     This extension models video monitor capabilities in the X Window
     System.  Some advanced monitors support the simultaneous display
     of multiple video signals (into separate windows), and that is
     prepresented here through the ability to display video from
     multiple video input adaptors into X drawables.
-  
+
     Some monitors support multiple video encodings (mostly for
     internationalization purposes) either through switches or
     automatic detection, thus each video adaptor specifies the set of
     encodings it supports.
-  
+
     The requests to display video from an adaptor into a drawable are
     modeled after the core PutImage request, though extended to
     support scaling and source clipping.
-  
+
     Video output is also supported and is symmetric with the video
     input function, though fewer GC components are used.
-  
-  
+
+
   Mechanism
   ---------
-  
+
     The Xv extension does the following:
-  
+
       --  lists available video adaptors
       --  identifies the number of ports each adaptor supports
       --  describes what drawable formats each adaptor supports
       --  grabs and ungrabs ports
       --  sets and gets port attributes
       --  delivers event notification
-  
+
 \f
-  
+
   Adaptors
   --------
-  
+
     A display may have multiple video input and output adaptors.  An
     adaptor may support multiple simultaneously active ports, and in
     some cases the number of ports has no fixed limit.
-  
+
     An input port receives encoded video data and converts it to a
     stream of data used to update a drawable.  An output port samples
     data from a drawable and produces a stream of encoded video data.
-  
+
     The ADAPTORINFO structure is used to describe a video adaptor.
-    
+
     ADAPTORINFO:
        [base-id: PORT
          num-ports: CARD16
          type: SETofADAPTORTYPE
          formats: LISTofFORMAT
          name: STRING]
-  
+
     ADAPTORTYPE: {Input, Output}
 
     FORMAT:
        [depth: CARD8
         visual: VISUALID]
-  
+
     The base-id field specifies the XID of the first port of the
     adaptor.  The `num-ports' field specifies how many ports the
     adaptor supports.  The ports of the adaptor have XIDs in the range
     necessarily imply that simultaneous operation is supported.
 
 \f
-  
+
   Errors
   ------
-  
+
     Port
-  
+
     A Port error is returned if any request names a PORT that does not
     exist.
 
-  
+
     Encoding
-  
+
     An Encoding error is returned if any request names an ENCODINGID
     that does not exist.
 
 
 \f
-  
+
   Query Requests
   -------------------
 
     The QueryExtension request returns the extension version and
     revision numbers.
 
-  
+
     QueryAdaptors
       win: WINDOW
     ==>
       adaptors: LISTofADAPTORINFO
-  
+
     The QueryAdaptors request returns the video adaptor information for
     the screen of the specified window.
-  
+
     Errors: {Window}
 
 
-    QueryEncodings    
+    QueryEncodings
       port: PORT
     ==>
       encodings: LISTofENCODINGINFO
         name: STRING
         width, height: CARD16
         rate: FRACTION]
-  
+
     The `encoding' field identifies an encoding supported by a port.
     Its value is unique for a screen.  Width and height specify the
     size of the video image and rate specifies the rate at which
     fields of image information are encoded.
-  
+
     An encoding is identified by a string that names the encoding.
     Encoding naming conventions need to be established (i.e.,
     something along the lines of font naming, but simpler)
-  
+
     FRACTION
           [numerator, denominator: INT32]
-  
+
     The FRACTION structure is used to specify a fractional number.
 
     Errors: {Port}
 
 \f
-  
+
   Put Video Requests
   ------------------
-  
+
     PutVideo
       port: PORT
       drawable: DRAWABLE
       vid-w, vid-h: CARD16
       drw-x, drw-y: INT16
       drw-w, drw-h: CARD16
-  
+
     The PutVideo request writes video into a drawable.  The position
     and size of the source rectangle is specified by vid-x, vid-y,
     vid-w, and vid-h.  The position and size of the destination
     rectangle is specified by drw-x, drw-y, drw-w, drw-h.
-  
+
     Video data is clipped to the bounds of the video encoding, scaled
     to the requested drawable region size (or the closest size
     supported), and clipped to the bounds of the drawable.
     HardError is generated for the drawable.
 
     GC components: subwindow-mode, clip-x-origin, clip-y-origin, clip-mask.
-  
+
     Errors: {Match, Value, GContext, Port, Alloc}
-  
-  
+
+
     PutStill
       port: PORT
       drawable: DRAWABLE
       vid-w, vid-h: CARD16
       drw-x, drw-y: INT16
       drw-w, drw-h: CARD16
-  
+
     The PutStill request writes a single frame of video into a
     drawable.  The position and size of the source rectangle is
     specified by vid-x, vid-y, vid-w, and vid-h.  The position and
     size of the destination rectangle is specified by drw-x, drw-y,
     drw-w, drw-h.
-  
+
     Video data is clipped to the bounds of the video encoding, scaled
     to the requested drawable region size (or the closest size
     supported) and clipped to the bounds of the drawable.
     drawable.
 
     GC components: subwindow-mode, clip-x-origin, clip-y-origin, clip-mask.
-  
+
     Errors: {Match, Value, GContext, Port, Alloc}
-  
+
   \f
-  
+
   Get Video Requests
   ------------------
-  
+
     GetVideo
       port: PORT
       drawable: DRAWABLE
       vid-w, vid-h: CARD16
       drw-x, drw-y: INT16
       drw-w, drw-h: CARD16
-  
+
     The GetVideo request outputs video from a drawable.  The position
     and size of the destination rectangle is specified by vid-x,
     vid-y, vid-w, and vid-h.  The position and size of the source
     rectangle is specified by drw-x, drw-y, drw-w, and drw-h.
-  
+
     Drawable data is clipped to the bounds of the drawable, scaled to
     the requested video region size (or the closest size supported)
     and clipped to the bounds of the video encoding.  The contents of
 
     GC components: subwindow-mode, clip-x-origin, clip-y-origin,
     clip-mask.
-  
+
     Errors: {Match, Value, GContext, Port, Alloc}
-  
-  
+
+
     GetStill
       port: PORT
       drawable: DRAWABLE
       vid-w, vid-h: CARD16
       drw-x, drw-y: INT16
       drw-w, drw-h: CARD16
-  
+
     The GetStill request outputs video from a drawable.  The position
     and size of the destination rectangle is specified by vid-x,
     vid-y, vid-w, and vid-h.  The position and size of the source
     rectangle is specified by drw-x, drw-y, drw-w, and drw-h.
-  
+
     Drawable data is clipped to the bounds of the drawable, scaled to
     the requested video region size (or the closest size supported)
     and clipped to the bounds of the video encoding.  The contents of
 
     GC components: subwindow-mode, clip-x-origin, clip-y-origin,
     clip-mask.
-  
+
     Errors: {Match, Value, GContext, Port, Alloc}
-  
-  
+
+
   \f
-  
+
   Grab Requests
   -------------
-  
+
     GrabPort
-      port: PORT    
+      port: PORT
       timestamp: {TIMESTAMP, CurrentTime}
     ==>
       status: {Success, AlreadyGrabbed, InvalidTime}
-  
+
     The GrabPort request grabs a port.  While a port is grabbed, only
     video requests from the grabbing client are permitted.
-  
+
     If timestamp specifies a time older than the current port time, a
     status of InvalidTime is returned.  If the port is already grabbed
     by another client, a status of AlreadyGrabbed is returned.
     Otherwise a status of Success is returned. The port time is
     updated when the following requests are processed: GrabPort,
     UngrabPort, PutVideo, PutStill, GetVideo, GetStill
-  
+
     If the port is actively processing video for another client, the
     video is preempted, and an VideoNotify event with detail Preempted
     is generated for its drawable.
 
     Errors: {Port}
-  
-  
+
+
     UngrabPort
-      port: PORT    
+      port: PORT
       timestamp: {TIMESTAMP, CurrentTime}
-  
+
     The UngrabPort request ungrabs a port.  If timestamp specifies a
     time before the last connection request time of this port, the
     request is ignored.
-  
+
     Errors: {Port}
-  
+
 \f
 
   Other Requests
   --------------
-  
+
     StopVideo
       port: PORT
       drawable: DRAWABLE
-  
+
     The StopVideo request stops active video for the specified port
     and drawable.  If the port isn't processing video, or if it is
     processing video in a different drawable, the request is ignored.
     When video is stopped a VideoNotify event with detail Stopped is
     generated for the associated drawable.
 
-    Errors: {Drawable, Port}  
+    Errors: {Drawable, Port}
+
 
-  
     SelectVideoNotify
       drawable: DRAWABLE
       onoff: BOOL
-  
+
     The SelectVideoNotify request enables or disables VideoNotify
     event delivery to the requesting client.  VideoNotify events are
     generated when video starts and stops.
     SelectPortNotify
       port: PORT
       onoff: BOOL
-  
+
     The SelectPortNotify request enables or disables PortNotify event
     delivery to the requesting client.  PortNotify events are
     generated when port attributes are changed using SetPortAttribute.
 
     Errors: {Port}
 
-  
+
     QueryBestSize
       port: PORT
       motion: BOOL
       drw-w, drw-h: CARD16
     ==>
       actual-width, actual-height: CARD16
-  
+
     The QueryBestSize request returns, for the given source size and
     desired destination size, the closest destination size that the
     port adaptor supports.  The returned size will be equal
 
     The retuned size is also chosen to maintain the requested aspect ratio
     if possible.
-  
+
     Errors: {Port}
-  
+
 \f
-    
+
     SetPortAttribute
       port: PORT
       attribute: ATOM
       value: INT32
-  
+
     The SetPortAttribute request sets the value of a port attribute.
     The port attribute is identified by the attribute atom.  The
     following strings are guaranteed to generate valid atoms using the
     InternAtom request.
 
-    String                Type          
+    String                Type
     -----------------------------------------------------------------
-  
+
     "XV_ENCODING"         ENCODINGID
-    "XV_HUE"             [-1000..1000] 
-    "XV_SATURATION"       [-1000..1000] 
-    "XV_BRIGHTNESS"       [-1000..1000] 
+    "XV_HUE"             [-1000..1000]
+    "XV_SATURATION"       [-1000..1000]
+    "XV_BRIGHTNESS"       [-1000..1000]
     "XV_CONTRAST"         [-1000..1000]
-  
+
 
     If the given attribute doesn't match an attribute supported by the
     port adaptor a Match error is generated.  The supplied encoding
     notification using SelectPortNotify.
 
     Errors: {Port, Match, Value}
-  
-  
+
+
     GetPortAttribute
       port: PORT
       attribute: ATOM
     ==>
-      value: INT32  
-        
+      value: INT32
+
 
     The GetPortAttribute request returns the current value of the
     attribute identified by the given atom.  If the given atom
 
   Events
   ------
-  
+
     VideoNotify
       drawable: DRAWABLE
       port: PORT
 
     A Preempted reason is generated when video is stopped by a
     conflicting request.
-  
+
     A HardError reason is generated when the video port cannot
     initiate or continue processing a video request because of an
     underlying transmission or reception error.
-  
+
 
     PortNotify
       port: PORT
       attribute: ATOM
       value: INT32
       time: TIMESTAMP
-  
+
     The PortNotify event is generated when a SetPortAttribute request
     is processed.  The event is delivered to all clients that have
     performed a SelectPortNotify request for the port.  The event