Hello community, here is the log from the commit of package xvinfo for openSUSE:Factory checked in at 2013-02-26 16:24:46 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/xvinfo (Old) and /work/SRC/openSUSE:Factory/.xvinfo.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xvinfo", Maintainer is "" Changes: -------- --- /work/SRC/openSUSE:Factory/xvinfo/xvinfo.changes 2012-05-08 12:08:32.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.xvinfo.new/xvinfo.changes 2013-02-26 16:24:47.000000000 +0100 @@ -1,0 +2,14 @@ +Mon Feb 25 19:05:24 UTC 2013 - [email protected] + +- Update to version 1.1.2: + + Add -version option. + + Add explicit braces to clarify which if the else goes with. + + Convert from haphazard indenting to X.Org common style. + + Add _X_NORETURN to PrintUsage to clear gcc/clang warnings. + + config: + - Add missing AC_CONFIG_SRCDIR. + - Replace deprecated AM_CONFIG_HEADER with AC_CONFIG_HEADERS. + - Move man pages into their own directory. + man: remove trailing spaces and tabs. + +------------------------------------------------------------------- Old: ---- xvinfo-1.1.1.tar.bz2 New: ---- xvinfo-1.1.2.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xvinfo.spec ++++++ --- /var/tmp/diff_new_pack.Jvercn/_old 2013-02-26 16:24:51.000000000 +0100 +++ /var/tmp/diff_new_pack.Jvercn/_new 2013-02-26 16:24:51.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package xvinfo # -# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -15,13 +15,14 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # + Name: xvinfo -Version: 1.1.1 +Version: 1.1.2 Release: 0 -License: MIT Summary: Utility to print X-Video extension adaptor information -Url: http://xorg.freedesktop.org/ +License: MIT Group: System/X11/Utilities +Url: http://xorg.freedesktop.org/ Source0: http://xorg.freedesktop.org/releases/individual/app/%{name}-%{version}.tar.bz2 BuildRequires: pkg-config BuildRequires: pkgconfig(x11) ++++++ xvinfo-1.1.1.tar.bz2 -> xvinfo-1.1.2.tar.bz2 ++++++ ++++ 10519 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xvinfo-1.1.1/ChangeLog new/xvinfo-1.1.2/ChangeLog --- old/xvinfo-1.1.1/ChangeLog 2010-11-06 16:59:49.000000000 +0100 +++ new/xvinfo-1.1.2/ChangeLog 2013-02-11 01:44:36.000000000 +0100 @@ -1,3 +1,90 @@ +commit 6114ecae7d7aa0bed41d01d360b193f27a500942 +Author: Alan Coopersmith <[email protected]> +Date: Sun Feb 10 16:44:06 2013 -0800 + + xvinfo 1.1.2 + + Signed-off-by: Alan Coopersmith <[email protected]> + +commit 4f5b605fc1339a9f0a12dca89863cb553e8af6cc +Author: Alan Coopersmith <[email protected]> +Date: Sun Jan 13 14:46:23 2013 -0800 + + Add -version option + + Signed-off-by: Alan Coopersmith <[email protected]> + +commit a7db7b1385ece9c10ad1d7c13d9c842b52a39002 +Author: Alan Coopersmith <[email protected]> +Date: Sun Jan 13 14:39:54 2013 -0800 + + add explicit braces to clarify which if the else goes with + + Suggested by clang: + + xvinfo.c:125:25: warning: add explicit braces to avoid dangling else + [-Wdangling-else] + else + ^ + + Signed-off-by: Alan Coopersmith <[email protected]> + +commit 8afa791dd265d64f425ff7f3c32a16c291e3bb7b +Author: Alan Coopersmith <[email protected]> +Date: Sun Jan 13 14:32:30 2013 -0800 + + Convert from haphazard indenting to X.Org common style + + Signed-off-by: Alan Coopersmith <[email protected]> + +commit 68e388a32b1be09b73eee18c8720efd1c08fdfe8 +Author: Alan Coopersmith <[email protected]> +Date: Sun Jan 13 14:29:28 2013 -0800 + + Add _X_NORETURN to PrintUsage to clear gcc/clang warnings + + Signed-off-by: Alan Coopersmith <[email protected]> + +commit 34828bc984579fd77136d5d0a559d1a887bac420 +Author: Alan Coopersmith <[email protected]> +Date: Sun Jan 13 14:26:50 2013 -0800 + + config: Add missing AC_CONFIG_SRCDIR + + Regroup AC statements under the Autoconf initialization section. + Regroup AM statements under the Automake initialization section. + + Signed-off-by: Alan Coopersmith <[email protected]> + +commit c472d2d7f72113ebf6fc9bbb756e77c9394021c6 +Author: Gaetan Nadon <[email protected]> +Date: Wed Jan 19 10:06:57 2011 -0500 + + config: move man pages into their own directory + + Use services provided by XORG_MANPAGE_SECTIONS. + Use standard Makefile for man pages. + + Signed-off-by: Gaetan Nadon <[email protected]> + +commit 50774db732019e6b9e706e9ce5a0f16bbbe9a772 +Author: Gaetan Nadon <[email protected]> +Date: Thu Jan 13 11:15:48 2011 -0500 + + man: remove trailing spaces and tabs + + Using s/[ \t]*$// + + Signed-off-by: Gaetan Nadon <[email protected]> + +commit 0567372fc6c55a4151131c41c4ba719aa0170e26 +Author: Gaetan Nadon <[email protected]> +Date: Wed Jan 12 16:28:02 2011 -0500 + + config: replace deprecated AM_CONFIG_HEADER with AC_CONFIG_HEADERS + + This silences an Autoconf warning + commit 2abf1e4cbff8b67f836dd4102dcc0a179d98a142 Author: Alan Coopersmith <[email protected]> Date: Sat Nov 6 08:59:31 2010 -0700 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xvinfo-1.1.1/Makefile.am new/xvinfo-1.1.2/Makefile.am --- old/xvinfo-1.1.1/Makefile.am 2010-09-27 03:25:44.000000000 +0200 +++ new/xvinfo-1.1.2/Makefile.am 2013-02-11 01:44:09.000000000 +0100 @@ -19,6 +19,7 @@ # TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR # PERFORMANCE OF THIS SOFTWARE. +SUBDIRS = man bin_PROGRAMS = xvinfo AM_CFLAGS = $(CWARNFLAGS) $(XVINFO_CFLAGS) @@ -27,17 +28,7 @@ xvinfo_SOURCES = \ xvinfo.c -appman_PRE = \ - xvinfo.man - - -appmandir = $(APP_MAN_DIR) - -appman_DATA = $(appman_PRE:man=@APP_MAN_SUFFIX@) - -EXTRA_DIST = $(appman_PRE) MAINTAINERCLEANFILES = ChangeLog INSTALL -CLEANFILES = $(appman_DATA) .PHONY: ChangeLog INSTALL @@ -49,8 +40,4 @@ dist-hook: ChangeLog INSTALL -SUFFIXES = .$(APP_MAN_SUFFIX) .man -# String replacements in MAN_SUBSTS now come from xorg-macros.m4 via configure -.man.$(APP_MAN_SUFFIX): - $(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xvinfo-1.1.1/configure.ac new/xvinfo-1.1.2/configure.ac --- old/xvinfo-1.1.1/configure.ac 2010-11-06 16:58:59.000000000 +0100 +++ new/xvinfo-1.1.2/configure.ac 2013-02-11 01:44:09.000000000 +0100 @@ -21,9 +21,14 @@ dnl dnl Process this file with autoconf to create configure. +# Initialize Autoconf AC_PREREQ([2.60]) -AC_INIT([xvinfo], [1.1.1], +AC_INIT([xvinfo], [1.1.2], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [xvinfo]) +AC_CONFIG_SRCDIR([Makefile.am]) +AC_CONFIG_HEADERS([config.h]) + +# Initialize Automake AM_INIT_AUTOMAKE([foreign dist-bzip2]) AM_MAINTAINER_MODE @@ -31,12 +36,12 @@ m4_ifndef([XORG_MACROS_VERSION], [m4_fatal([must install xorg-macros 1.8 or later before running autoconf/autogen])]) XORG_MACROS_VERSION(1.8) - -AM_CONFIG_HEADER(config.h) - XORG_DEFAULT_OPTIONS # Checks for pkg-config packages -PKG_CHECK_MODULES(XVINFO, xv x11) +PKG_CHECK_MODULES(XVINFO, [xv x11 xproto >= 7.0.17]) -AC_OUTPUT([Makefile]) +AC_CONFIG_FILES([ + Makefile + man/Makefile]) +AC_OUTPUT diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xvinfo-1.1.1/man/Makefile.am new/xvinfo-1.1.2/man/Makefile.am --- old/xvinfo-1.1.1/man/Makefile.am 1970-01-01 01:00:00.000000000 +0100 +++ new/xvinfo-1.1.2/man/Makefile.am 2013-02-11 01:44:09.000000000 +0100 @@ -0,0 +1,12 @@ + +appmandir = $(APP_MAN_DIR) +appman_PRE = xvinfo.man +appman_DATA = $(appman_PRE:man=$(APP_MAN_SUFFIX)) + +EXTRA_DIST = $(appman_PRE) +CLEANFILES = $(appman_DATA) +SUFFIXES = .$(APP_MAN_SUFFIX) .man + +# String replacements in MAN_SUBSTS now come from xorg-macros.m4 via configure +.man.$(APP_MAN_SUFFIX): + $(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xvinfo-1.1.1/man/xvinfo.man new/xvinfo-1.1.2/man/xvinfo.man --- old/xvinfo-1.1.1/man/xvinfo.man 1970-01-01 01:00:00.000000000 +0100 +++ new/xvinfo-1.1.2/man/xvinfo.man 2013-02-11 01:44:09.000000000 +0100 @@ -0,0 +1,33 @@ +.TH xvinfo __appmansuffix__ __vendorversion__ +.SH NAME +xvinfo - Print out X-Video extension adaptor information +.SH SYNOPSIS +.B "xvinfo" +[-display \fIdisplayname\fP] +.SH DESCRIPTION +.PP +.B xvinfo +prints out the capabilities of any video adaptors associated +with the display that are accessible through the X-Video extension. +.SH OPTIONS +.PP +.TP 8 +.B "-display \fIdisplay\fP" +This argument allows you to specify the server to query; see \fIX(__miscmansuffix__)\fP. +.TP 8 +.B "-short" +Output less details, to reduce the amount of text. +.TP 8 +.B "-version" +Output program version, then exit. +.SH ENVIRONMENT +.PP +.TP 8 +.B DISPLAY +This variable may be used to specify the server to query. + +.SH SEE ALSO +X(__miscmansuffix__), xdpyinfo(__appmansuffix__), xwininfo(__appmansuffix__), +xdriinfo(__appmansuffix__), glxinfo(__appmansuffix__), xprop(__appmansuffix__) +.SH AUTHORS +Mark Vojkovich diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xvinfo-1.1.1/xvinfo.c new/xvinfo-1.1.2/xvinfo.c --- old/xvinfo-1.1.1/xvinfo.c 2010-10-07 05:38:37.000000000 +0200 +++ new/xvinfo-1.1.2/xvinfo.c 2013-02-11 01:44:09.000000000 +0100 @@ -1,3 +1,7 @@ +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + #include <X11/X.h> #include <X11/Xlib.h> #include <X11/extensions/Xvlib.h> @@ -6,18 +10,19 @@ #include <string.h> #include <ctype.h> -static void +static void _X_NORETURN PrintUsage(void) { - fprintf(stderr, "Usage: xvinfo [-display host:dpy] [-short]\n"); - exit(0); + fprintf(stderr, "Usage: xvinfo [-display host:dpy] [-short] [-version]\n"); + exit(0); } -int main(int argc, char *argv[]) +int +main(int argc, char *argv[]) { Display *dpy; - unsigned int ver, rev, eventB, reqB, errorB; - int i, j, k, n; + unsigned int ver, rev, eventB, reqB, errorB; + int i, j, k, n; unsigned int nencode, nadaptors; int nscreens, nattr, numImages; XvAdaptorInfo *ainfo; @@ -25,262 +30,273 @@ XvEncodingInfo *encodings; XvFormat *format; XvImageFormatValues *formats; - char * disname = NULL; + char *disname = NULL; char shortmode = 0; - if((argc > 4)) - PrintUsage(); + if ((argc > 4)) + PrintUsage(); - if(argc != 1) { - for ( i = 1; i < argc; i ++ ) { - if(! strcmp(argv[i], "-display")) { - disname = argv[i + 1]; - i ++; - } else if(! strcmp(argv[i], "-short") ) - shortmode = 1; - else { - PrintUsage(); - } - } + if (argc != 1) { + for (i = 1; i < argc; i++) { + if (!strcmp(argv[i], "-display")) { + disname = argv[i + 1]; + i++; + } + else if (!strcmp(argv[i], "-short")) + shortmode = 1; + else if (!strcmp(argv[i], "-version")) { + printf("%s\n", PACKAGE_STRING); + exit(0); + } + else { + PrintUsage(); + } + } } - - if(!(dpy = XOpenDisplay(disname))) - { - fprintf(stderr, "xvinfo: Unable to open display %s\n", - (disname != NULL) ? disname : XDisplayName(NULL)); - exit(-1); + if (!(dpy = XOpenDisplay(disname))) { + fprintf(stderr, "xvinfo: Unable to open display %s\n", + (disname != NULL) ? disname : XDisplayName(NULL)); + exit(-1); } - if((Success != XvQueryExtension(dpy, &ver, &rev, &reqB, &eventB, &errorB))) - { - fprintf(stderr, "xvinfo: No X-Video Extension on %s\n", - (disname != NULL) ? disname : XDisplayName(NULL)); - exit(0); - } - else - { - fprintf(stdout, "X-Video Extension version %i.%i\n", ver, rev); + if ((Success != XvQueryExtension(dpy, &ver, &rev, &reqB, &eventB, &errorB))) { + fprintf(stderr, "xvinfo: No X-Video Extension on %s\n", + (disname != NULL) ? disname : XDisplayName(NULL)); + exit(0); + } + else { + fprintf(stdout, "X-Video Extension version %i.%i\n", ver, rev); } nscreens = ScreenCount(dpy); - for(i = 0; i < nscreens; i++) { - fprintf(stdout, "screen #%i\n", i); - XvQueryAdaptors(dpy, RootWindow(dpy, i), &nadaptors, &ainfo); - - if(!nadaptors) { - fprintf(stdout, " no adaptors present\n"); - continue; - } - - for(j = 0; j < nadaptors; j++) { - fprintf(stdout, " Adaptor #%i: \"%s\"\n", j, ainfo[j].name); - fprintf(stdout, " number of ports: %li\n", ainfo[j].num_ports); - fprintf(stdout, " port base: %li\n", ainfo[j].base_id); - fprintf(stdout, " operations supported: "); - switch(ainfo[j].type & (XvInputMask | XvOutputMask)) { - case XvInputMask: - if(ainfo[j].type & XvVideoMask) - fprintf(stdout, "PutVideo "); - if(ainfo[j].type & XvStillMask) - fprintf(stdout, "PutStill "); - if(ainfo[j].type & XvImageMask) - fprintf(stdout, "PutImage "); - break; - case XvOutputMask: - if(ainfo[j].type & XvVideoMask) - fprintf(stdout, "GetVideo "); - if(ainfo[j].type & XvStillMask) - fprintf(stdout, "GetStill "); - break; - default: - fprintf(stdout, "none "); - break; - } - fprintf(stdout, "\n"); - - format = ainfo[j].formats; - - if ( ! shortmode ) { - fprintf(stdout, " supported visuals:\n"); - for(k = 0; k < ainfo[j].num_formats; k++, format++) { - fprintf(stdout, " depth %i, visualID 0x%2lx\n", - format->depth, format->visual_id); - } - } - - attributes = XvQueryPortAttributes(dpy, ainfo[j].base_id, &nattr); - - if(attributes && nattr) { - fprintf(stdout, " number of attributes: %i\n", nattr); - - for(k = 0; k < nattr; k++) { - fprintf(stdout, " \"%s\" (range %i to %i)\n", - attributes[k].name, - attributes[k].min_value, - attributes[k].max_value); - - if(attributes[k].flags & XvSettable) - if ( ! shortmode ) - fprintf(stdout, " client settable attribute\n"); - else fprintf(stdout, " settable"); - - if(attributes[k].flags & XvGettable) { - Atom the_atom; - int value; - - if ( ! shortmode ) - fprintf(stdout, " client gettable attribute"); - else fprintf(stdout, ", gettable"); - - the_atom = XInternAtom(dpy, attributes[k].name, True); - - if(the_atom != None){ - if((Success == XvGetPortAttribute(dpy, - ainfo[j].base_id, the_atom, &value))) - fprintf(stdout, " (current value is %i)", value); - } - fprintf(stdout, "\n"); - } - else if (shortmode) - fprintf(stdout, "\n"); - - } - XFree(attributes); - } else { - fprintf(stdout, " no port attributes defined\n"); - } - - XvQueryEncodings(dpy, ainfo[j].base_id, - &nencode, &encodings); - - if(encodings && nencode) { - int ImageEncodings = 0; - - for(n = 0; n < nencode; n++) { - if(!strcmp(encodings[n].name, "XV_IMAGE")) - ImageEncodings++; - } - - if(nencode - ImageEncodings) { - fprintf(stdout, " number of encodings: %i\n", - nencode - ImageEncodings); - - for(n = 0; n < nencode; n++) { - if(strcmp(encodings[n].name, "XV_IMAGE")) { - fprintf(stdout, " encoding ID #%li: \"%s\"\n", - encodings[n].encoding_id, - encodings[n].name); - fprintf(stdout, " size: %li x %li\n", - encodings[n].width, - encodings[n].height); - fprintf(stdout, " rate: %f\n", - (float)encodings[n].rate.numerator/ - (float)encodings[n].rate.denominator); - } - } - } - - if(ImageEncodings && (ainfo[j].type & XvImageMask)) { - char imageName[5]; - - for(n = 0; n < nencode; n++) { - if(!strcmp(encodings[n].name, "XV_IMAGE")) { - fprintf(stdout, - " maximum XvImage size: %li x %li\n", - encodings[n].width, encodings[n].height); - break; - } - } - - formats = XvListImageFormats( - dpy, ainfo[j].base_id, &numImages); - - fprintf(stdout, " Number of image formats: %i\n", - numImages); - - for(n = 0; n < numImages; n++) { - sprintf(imageName, "%c%c%c%c", formats[n].id & 0xff, - (formats[n].id >> 8) & 0xff, - (formats[n].id >> 16) & 0xff, - (formats[n].id >> 24) & 0xff); - fprintf(stdout, " id: 0x%x", formats[n].id); - if(isprint(imageName[0]) && isprint(imageName[1]) && - isprint(imageName[2]) && isprint(imageName[3])) - { - fprintf(stdout, " (%s)\n", imageName); - } else { - fprintf(stdout, "\n"); - } - if ( ! shortmode ) { - fprintf(stdout, " guid: "); - fprintf(stdout, "%02x", (unsigned char) - formats[n].guid[0]); - fprintf(stdout, "%02x", (unsigned char) - formats[n].guid[1]); - fprintf(stdout, "%02x", (unsigned char) - formats[n].guid[2]); - fprintf(stdout, "%02x-", (unsigned char) - formats[n].guid[3]); - fprintf(stdout, "%02x", (unsigned char) - formats[n].guid[4]); - fprintf(stdout, "%02x-", (unsigned char) - formats[n].guid[5]); - fprintf(stdout, "%02x", (unsigned char) - formats[n].guid[6]); - fprintf(stdout, "%02x-", (unsigned char) - formats[n].guid[7]); - fprintf(stdout, "%02x", (unsigned char) - formats[n].guid[8]); - fprintf(stdout, "%02x-", (unsigned char) - formats[n].guid[9]); - fprintf(stdout, "%02x", (unsigned char) - formats[n].guid[10]); - fprintf(stdout, "%02x", (unsigned char) - formats[n].guid[11]); - fprintf(stdout, "%02x", (unsigned char) - formats[n].guid[12]); - fprintf(stdout, "%02x", (unsigned char) - formats[n].guid[13]); - fprintf(stdout, "%02x", (unsigned char) - formats[n].guid[14]); - fprintf(stdout, "%02x\n", (unsigned char) - formats[n].guid[15]); - - fprintf(stdout, " bits per pixel: %i\n", - formats[n].bits_per_pixel); - fprintf(stdout, " number of planes: %i\n", - formats[n].num_planes); - fprintf(stdout, " type: %s (%s)\n", - (formats[n].type == XvRGB) ? "RGB" : "YUV", - (formats[n].format == XvPacked) ? "packed" : "planar"); + for (i = 0; i < nscreens; i++) { + fprintf(stdout, "screen #%i\n", i); + XvQueryAdaptors(dpy, RootWindow(dpy, i), &nadaptors, &ainfo); + + if (!nadaptors) { + fprintf(stdout, " no adaptors present\n"); + continue; + } + + for (j = 0; j < nadaptors; j++) { + fprintf(stdout, " Adaptor #%i: \"%s\"\n", j, ainfo[j].name); + fprintf(stdout, " number of ports: %li\n", ainfo[j].num_ports); + fprintf(stdout, " port base: %li\n", ainfo[j].base_id); + fprintf(stdout, " operations supported: "); + switch (ainfo[j].type & (XvInputMask | XvOutputMask)) { + case XvInputMask: + if (ainfo[j].type & XvVideoMask) + fprintf(stdout, "PutVideo "); + if (ainfo[j].type & XvStillMask) + fprintf(stdout, "PutStill "); + if (ainfo[j].type & XvImageMask) + fprintf(stdout, "PutImage "); + break; + case XvOutputMask: + if (ainfo[j].type & XvVideoMask) + fprintf(stdout, "GetVideo "); + if (ainfo[j].type & XvStillMask) + fprintf(stdout, "GetStill "); + break; + default: + fprintf(stdout, "none "); + break; + } + fprintf(stdout, "\n"); + + format = ainfo[j].formats; + + if (!shortmode) { + fprintf(stdout, " supported visuals:\n"); + for (k = 0; k < ainfo[j].num_formats; k++, format++) { + fprintf(stdout, " depth %i, visualID 0x%2lx\n", + format->depth, format->visual_id); + } + } + + attributes = XvQueryPortAttributes(dpy, ainfo[j].base_id, &nattr); + + if (attributes && nattr) { + fprintf(stdout, " number of attributes: %i\n", nattr); + + for (k = 0; k < nattr; k++) { + fprintf(stdout, " \"%s\" (range %i to %i)\n", + attributes[k].name, + attributes[k].min_value, attributes[k].max_value); + + if (attributes[k].flags & XvSettable) { + if (!shortmode) + fprintf(stdout, + " client settable attribute\n"); + else + fprintf(stdout, " settable"); + } + + if (attributes[k].flags & XvGettable) { + Atom the_atom; + + int value; + + if (!shortmode) + fprintf(stdout, + " client gettable attribute"); + else + fprintf(stdout, ", gettable"); + + the_atom = XInternAtom(dpy, attributes[k].name, True); + + if (the_atom != None) { + if ((Success == XvGetPortAttribute(dpy, + ainfo[j].base_id, + the_atom, + &value))) + fprintf(stdout, " (current value is %i)", + value); + } + fprintf(stdout, "\n"); + } + else if (shortmode) + fprintf(stdout, "\n"); + + } + XFree(attributes); + } + else { + fprintf(stdout, " no port attributes defined\n"); + } + + XvQueryEncodings(dpy, ainfo[j].base_id, &nencode, &encodings); + + if (encodings && nencode) { + int ImageEncodings = 0; + + for (n = 0; n < nencode; n++) { + if (!strcmp(encodings[n].name, "XV_IMAGE")) + ImageEncodings++; + } + + if (nencode - ImageEncodings) { + fprintf(stdout, " number of encodings: %i\n", + nencode - ImageEncodings); + + for (n = 0; n < nencode; n++) { + if (strcmp(encodings[n].name, "XV_IMAGE")) { + fprintf(stdout, " encoding ID #%li: \"%s\"\n", + encodings[n].encoding_id, + encodings[n].name); + fprintf(stdout, " size: %li x %li\n", + encodings[n].width, encodings[n].height); + fprintf(stdout, " rate: %f\n", + (float) encodings[n].rate.numerator / + (float) encodings[n].rate.denominator); + } + } + } + + if (ImageEncodings && (ainfo[j].type & XvImageMask)) { + char imageName[5]; + + for (n = 0; n < nencode; n++) { + if (!strcmp(encodings[n].name, "XV_IMAGE")) { + fprintf(stdout, + " maximum XvImage size: %li x %li\n", + encodings[n].width, encodings[n].height); + break; + } + } + + formats = + XvListImageFormats(dpy, ainfo[j].base_id, &numImages); + + fprintf(stdout, " Number of image formats: %i\n", + numImages); + + for (n = 0; n < numImages; n++) { + sprintf(imageName, "%c%c%c%c", formats[n].id & 0xff, + (formats[n].id >> 8) & 0xff, + (formats[n].id >> 16) & 0xff, + (formats[n].id >> 24) & 0xff); + fprintf(stdout, " id: 0x%x", formats[n].id); + if (isprint(imageName[0]) && isprint(imageName[1]) && + isprint(imageName[2]) && isprint(imageName[3])) { + fprintf(stdout, " (%s)\n", imageName); + } + else { + fprintf(stdout, "\n"); + } + if (!shortmode) { + fprintf(stdout, " guid: "); + fprintf(stdout, "%02x", (unsigned char) + formats[n].guid[0]); + fprintf(stdout, "%02x", (unsigned char) + formats[n].guid[1]); + fprintf(stdout, "%02x", (unsigned char) + formats[n].guid[2]); + fprintf(stdout, "%02x-", (unsigned char) + formats[n].guid[3]); + fprintf(stdout, "%02x", (unsigned char) + formats[n].guid[4]); + fprintf(stdout, "%02x-", (unsigned char) + formats[n].guid[5]); + fprintf(stdout, "%02x", (unsigned char) + formats[n].guid[6]); + fprintf(stdout, "%02x-", (unsigned char) + formats[n].guid[7]); + fprintf(stdout, "%02x", (unsigned char) + formats[n].guid[8]); + fprintf(stdout, "%02x-", (unsigned char) + formats[n].guid[9]); + fprintf(stdout, "%02x", (unsigned char) + formats[n].guid[10]); + fprintf(stdout, "%02x", (unsigned char) + formats[n].guid[11]); + fprintf(stdout, "%02x", (unsigned char) + formats[n].guid[12]); + fprintf(stdout, "%02x", (unsigned char) + formats[n].guid[13]); + fprintf(stdout, "%02x", (unsigned char) + formats[n].guid[14]); + fprintf(stdout, "%02x\n", (unsigned char) + formats[n].guid[15]); + + fprintf(stdout, " bits per pixel: %i\n", + formats[n].bits_per_pixel); + fprintf(stdout, " number of planes: %i\n", + formats[n].num_planes); + fprintf(stdout, " type: %s (%s)\n", + (formats[n].type == XvRGB) ? "RGB" : "YUV", + (formats[n].format == + XvPacked) ? "packed" : "planar"); - if(formats[n].type == XvRGB) { - fprintf(stdout, " depth: %i\n", + if (formats[n].type == XvRGB) { + fprintf(stdout, " depth: %i\n", formats[n].depth); - fprintf(stdout, " red, green, blue masks: " - "0x%x, 0x%x, 0x%x\n", - formats[n].red_mask, - formats[n].green_mask, - formats[n].blue_mask); - } else { - - } - } - - - } - if(formats) XFree(formats); - } - - XvFreeEncodingInfo(encodings); - } - - } + fprintf(stdout, + " red, green, blue masks: " + "0x%x, 0x%x, 0x%x\n", + formats[n].red_mask, + formats[n].green_mask, + formats[n].blue_mask); + } + else { + + } + } + + } + if (formats) + XFree(formats); + } + + XvFreeEncodingInfo(encodings); + } + + } - XvFreeAdaptorInfo(ainfo); + XvFreeAdaptorInfo(ainfo); } return 1; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xvinfo-1.1.1/xvinfo.man new/xvinfo-1.1.2/xvinfo.man --- old/xvinfo-1.1.1/xvinfo.man 2010-10-07 05:38:37.000000000 +0200 +++ new/xvinfo-1.1.2/xvinfo.man 1970-01-01 01:00:00.000000000 +0100 @@ -1,30 +0,0 @@ -.TH xvinfo __appmansuffix__ __vendorversion__ -.SH NAME -xvinfo - Print out X-Video extension adaptor information -.SH SYNOPSIS -.B "xvinfo" -[-display \fIdisplayname\fP] -.SH DESCRIPTION -.PP -.B xvinfo -prints out the capabilities of any video adaptors associated -with the display that are accessible through the X-Video extension. -.SH OPTIONS -.PP -.TP 8 -.B "-display \fIdisplay\fP" -This argument allows you to specify the server to query; see \fIX(__miscmansuffix__)\fP. -.TP 8 -.B "-short" -Output less details, to reduce the amount of text. -.SH ENVIRONMENT -.PP -.TP 8 -.B DISPLAY -This variable may be used to specify the server to query. - -.SH SEE ALSO -X(__miscmansuffix__), xdpyinfo(__appmansuffix__), xwininfo(__appmansuffix__), -xdriinfo(__appmansuffix__), glxinfo(__appmansuffix__), xprop(__appmansuffix__) -.SH AUTHORS -Mark Vojkovich -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
