From 2ab93efbb8e57d730812e50ff1c9f1bbb7157918 Mon Sep 17 00:00:00 2001 From: Sebastian Harl Date: Tue, 19 Jun 2007 17:49:56 +0100 Subject: [PATCH 1/1] Initially added pfstools-1.6.1-1. --- debian/changelog | 7 +++ debian/compat | 1 + debian/control | 60 ++++++++++++++++++ debian/copyright | 78 ++++++++++++++++++++++++ debian/libpfs-1.2-0.install | 2 + debian/libpfs-1.2-0.shlibs | 1 + debian/libpfs-dev.install | 6 ++ debian/octave-pfstools.install | 3 + debian/pfsglview.1 | 107 +++++++++++++++++++++++++++++++++ debian/pfstools.install | 3 + debian/rules | 103 +++++++++++++++++++++++++++++++ 11 files changed, 371 insertions(+) create mode 100644 debian/changelog create mode 100644 debian/compat create mode 100644 debian/control create mode 100644 debian/copyright create mode 100644 debian/libpfs-1.2-0.install create mode 100644 debian/libpfs-1.2-0.shlibs create mode 100644 debian/libpfs-dev.install create mode 100644 debian/octave-pfstools.install create mode 100644 debian/pfsglview.1 create mode 100644 debian/pfstools.install create mode 100755 debian/rules diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..bd55222 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,7 @@ +pfstools (1.6.1-1) unstable; urgency=low + + * Initial release (Closes: #399503, #410669). + * Added pfsglview.1 from upstream CVS. + + -- Sebastian Harl Mon, 11 Jun 2007 17:28:22 +0200 + diff --git a/debian/compat b/debian/compat new file mode 100644 index 0000000..7ed6ff8 --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +5 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..ece4d4f --- /dev/null +++ b/debian/control @@ -0,0 +1,60 @@ +Source: pfstools +Section: graphics +Priority: optional +Maintainer: Sebastian Harl +Build-Depends: debhelper (>= 5), autotools-dev, libqt3-mt-dev, libmagick++9-dev, libtiff4-dev, libopenexr-dev, libnetpbm10-dev, octave2.1-headers, tetex-bin, freeglut3-dev +Build-Conflicts: octave2.9-headers +Standards-Version: 3.7.2 + +Package: pfstools +Architecture: any +Depends: octave, octave-pfstools, ${shlibs:Depends} +Recommends: pfstmo +Suggests: dcraw +Description: command line HDR manipulation programs + pfstools is a set of command line (and one GUI) programs for reading, + writing, manipulating and viewing high-dynamic range (HDR) images and video + frames. All programs in this package exchange data using a simple generic + file format (pfs) for HDR data. It is an attempt to integrate existing file + formats by providing a simple data format that can be used to exchange data + between applications. + . + The concept of pfstools is similar to netpbm for low-dynamic range images. + . + Homepage: http://www.mpi-inf.mpg.de/resources/pfstools/ + +Package: libpfs-dev +Section: libdevel +Architecture: any +Depends: libpfs-1.2-0 (>= ${source:Version}) +Description: C++ library to read and write pfs files (development files) + PFS is a high-dynamic range (HDR) image format. It is an attempt to integrate + existing file formats by providing a simple data format that can be used to + exchange data between applications. This library can be used to write custom + applications that can integrate with the existing pfstools programs. + . + This package contains the header files and the static library. + +Package: libpfs-1.2-0 +Section: libs +Architecture: any +Depends: ${shlibs:Depends} +Description: C++ library to read and write pfs files + PFS is a high-dynamic range (HDR) image format. It is an attempt to integrate + existing file formats by providing a simple data format that can be used to + exchange data between applications. This library can be used to write custom + applications that can integrate with the existing pfstools programs. + . + This package contains the shared library. + +Package: octave-pfstools +Section: math +Architecture: any +Depends: octave2.1, ${shlibs:Depends} +Description: octave bindings for pfstools + PFS is a high-dynamic range (HDR) image format. It is an attempt to integrate + existing file formats by providing a simple data format that can be used to + exchange data between applications. + . + This package contains octave bindings to read and write PFS files. + diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..55e1455 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,78 @@ +This package was debianized by Sebastian Harl on +Mon, 11 Jun 2007 17:28:22 +0200. + +It was downloaded from . + +Upstream Authors: + Grzegorz Krawczyk + Rafal Mantiuk + + For contributions, see AUTHORS. + +Copyright Holders: + Grzegorz Krawczyk + Rafal Mantiuk + +License: + + All files (except doc/data_model.png, doc/pfs_format_spec.tex and + src/pfs/*) + Copyright (C) 2003-2005 Rafal Mantiuk + Copyright (C) 2003-2005 Grzegorz Krawczyk + + This package is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this package; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, + USA. + +On Debian systems, the complete text of the GNU General Public License +can be found in `/usr/share/common-licenses/GPL'. + + Files src/pfs/* + Copyright (C) 2003-2004 Rafal Mantiuk + Copyright (C) 2003-2004 Grzegorz Krawczyk + + This library is free software; you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published by + the Free Software Foundation; either version 2.1 of the License, or (at + your option) any later version. + + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public + License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, + USA. + +On Debian systems, the complete text of the GNU Lesser General Public License +can be found in `/usr/share/common-licenses/LGPL'. + + Files doc/data_model.png + doc/pfs_format_spec.tex + + Copyright (C) 2003 Rafal Mantiuk + Copyright (C) 2003 Grzegorz Krawczyk + + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.2 or + any later version published by the Free Software Foundation; with no + Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A + copy of the license is included in the section entitled "GNU Free + Documentation License". + +The Debian packaging is (C) 2007, Sebastian Harl and +is licensed under the GPL, see above. + diff --git a/debian/libpfs-1.2-0.install b/debian/libpfs-1.2-0.install new file mode 100644 index 0000000..00328f0 --- /dev/null +++ b/debian/libpfs-1.2-0.install @@ -0,0 +1,2 @@ +usr/lib/libpfs*.so.* + diff --git a/debian/libpfs-1.2-0.shlibs b/debian/libpfs-1.2-0.shlibs new file mode 100644 index 0000000..10c77a6 --- /dev/null +++ b/debian/libpfs-1.2-0.shlibs @@ -0,0 +1 @@ +libpfs-1.2 0 libpfs-1.2-0 (>= 1.6) diff --git a/debian/libpfs-dev.install b/debian/libpfs-dev.install new file mode 100644 index 0000000..2df8f8e --- /dev/null +++ b/debian/libpfs-dev.install @@ -0,0 +1,6 @@ +usr/include/* +usr/lib/libpfs*.a +usr/lib/libpfs*.la +usr/lib/libpfs*.so +usr/lib/pkgconfig/* + diff --git a/debian/octave-pfstools.install b/debian/octave-pfstools.install new file mode 100644 index 0000000..ff9de68 --- /dev/null +++ b/debian/octave-pfstools.install @@ -0,0 +1,3 @@ +usr/lib/octave/* +usr/share/octave/* + diff --git a/debian/pfsglview.1 b/debian/pfsglview.1 new file mode 100644 index 0000000..e878d62 --- /dev/null +++ b/debian/pfsglview.1 @@ -0,0 +1,107 @@ +.TH "pfsglview" 1 +.SH NAME +pfsglview \- Viewer for high-dynamic range images in pfs format +.SH SYNOPSIS +.B pfsglview +[--h] [--v] +.SH DESCRIPTION +pfsview is a OpenGL/GLUT application for viewing high-dynamic range images. It +expects pfs stream on the standard input and displays the frames in +that stream one by one. + +.SH DYNAMIC RANGE WINDOW +To show high-dynamic range data on a low-dynamic range monitor, +pfsglview uses concept of a dynamic range window. The dynamic range +window is the highest and lowest value that should be mapped to black +and white pixel. Values above or below the window are clipped (see +clipping methods below). The dynamic range window is displayed in +pfsglview as a blue area on the dynamic range scale (second toolbox from +the top). The window can be moved, shrunk and expended using a mouse +or a keyboard. + +.SH ZOOMING AND PANNING +To zoom image, the mouse can be dragged in vertical direction with the left button pressed. +Pressing [space] button or pressing left mouse button above the statistic window (left-bottom corner) changes from +zooming to panning modes and vice versa. To pan image, the mouse can be dragged in vertical +and horizontal directions with the left button pressed. + +.SH POPUP MENU OPTIONS +.TP +.B Zoom reset +Set default zoom parameters. +.TP +.B Zoom in +Increase image (mouse dragging with left button pressed). +.TP +.B Zoom out +Decrease image (mouse dragging with left button pressed). +.TP +.B Increase exposure +Move dynamic range window into higher luminance values. +.TP +.B Decrease exposure +Move dynamic range window into lover luminance values. +.TP +.B Extend dynamic range +Extend dynamic range window. +.TP +.B Shrink dynamic range +Shrink dynamic range window +.TP +.B Low dynamic range +Set dynamic range window to <-1,1> range (log scale). +.TP +.B Fit to dynamic range +Set dynamic range windo to minimum and maximum luminance of a given image. +.TP +.B Choose channel +Change image data channel. +.TP +.B Mapping method +Change mapping method (see below for details). +.TP +.B Next frame +Display next image from the pipe. +.TP +.B Previous frame +Display previous image from the pipe. +.TP +.B Histogram +Switch on/off histogram window. +.TP +.B Info +Switch on/off info window. +.TP +.B Save&Quit +Send the visible LDR image (8-bits) to stdout and quit pfsglview. + + +.SH MAPPING METHODS + +High-dynamic range data are usually better visualized using non-linear +scale, for example a logarithmic or a power function. pfsglview offers +several such scales, shown in \fIpopup\fR menu. Gray-scale values for +each mapping method are computed by the formulas: + +\fBLINEAR\fR: y = (x-min)/(max-min) + +\fBGAMMA\fR: y = [ (x-min)/(max-min) ]^gamma + +\fBLOGARITHMIC\fR: y = (log10(x)-log10(min))/(log10(max)-log10(min)) + +where \fIy\fR is the gray-scale value after mapping, \fIx\fR +is an input HDR value, \fImin\fR and \fImax\fR are lower and upper bounds +of the dynamic range window. + +.SH EXAMPLES +.TP +pfsin memorial.hdr | pfsglview +See the memorial image. +.TP +pfsin memorial.hdr | pfsglview | pfsout memorial.jpg +See the memorial image and save the clipped (8-bits) version to memorial.jpg (\fISave&Quit\fR option from popup menu should be activated). + +.SH "SEE ALSO" +.BR pfsin (1) + +Please report bugs and comments to Radoslaw Mantiuk . diff --git a/debian/pfstools.install b/debian/pfstools.install new file mode 100644 index 0000000..b3f913e --- /dev/null +++ b/debian/pfstools.install @@ -0,0 +1,3 @@ +usr/bin/* +usr/share/man/man1/* + diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..e5963bb --- /dev/null +++ b/debian/rules @@ -0,0 +1,103 @@ +#!/usr/bin/make -f +# debian/rules for pfstools +# +# Written by Sebastian Harl + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# These are used for cross-compiling and for saving the configure script +# from having to guess our platform (since we know it already) +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + +CXXFLAGS = -Wall -g + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CXXFLAGS += -O0 +else + CXXFLAGS += -O2 +endif + +include /usr/share/octave/debian/defs.make + +config.status: configure + dh_testdir + + for file in config.guess config.sub; do \ + if [ ! -e $$file.upstream ]; then \ + mv $$file $$file.upstream; \ + ln -s /usr/share/misc/$$file .; \ + fi \ + done + + CXXFLAGS="$(CXXFLAGS)" ./configure \ + --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \ + --prefix=/usr --mandir=\$${prefix}/share/man \ + --with-octave-m-dir=$(MDIR)/pfstools \ + --with-octave-oct-dir=$(OCTDIR)/pfstools + +build: build-stamp + +build-stamp: config.status + dh_testdir + + $(MAKE) + + touch build-stamp + +clean: + dh_testdir + dh_testroot + rm -f build-stamp + + -$(MAKE) clean + -$(MAKE) distclean + + for file in config.guess config.sub; do \ + if [ -e $$file.upstream ]; then \ + rm -f $$file; \ + mv $$file.upstream $$file; \ + fi \ + done + + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + $(MAKE) DESTDIR=$(CURDIR)/debian/tmp install + + chmod 644 debian/tmp/usr/share/octave/site/api-v13/m/pfstools/* + + # these binaries are not available + rm debian/tmp/usr/share/man/man1/pfs{in,out}jpeghdr.1 + +binary-indep: build install + # nothing to do here + +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs ChangeLog + dh_installdocs AUTHORS README TODO doc/faq.txt doc/pfs_format_spec.pdf + dh_installexamples + dh_install --sourcedir=debian/tmp --list-missing + dh_installman debian/pfsglview.1 + dh_link + dh_strip + dh_compress + dh_fixperms + dh_makeshlibs + dh_installdeb + dh_shlibdeps -Llibpfs-1.2-0 -ldebian/libpfs-1.2-0/usr/lib/ + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install + -- 2.30.2