From 457ccfd08402db6e478204b29d508c3aca0c4b3e88515c3f86eb72b4172a82f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cristian=20Rodr=C3=ADguez?= Date: Thu, 12 May 2011 19:34:56 +0000 Subject: [PATCH] Accepting request 70003 from home:adra:branches:devel:libraries:c_c++ libv4l name changed to v4l-utils (submission as new package) --- Changes: Update to v0.8.3, Spec file updates, Added desktop file and icon for qv4l2, Removed libv4l-nonvoid_return.diff patch (fixed upstream), Added a patch to disable compilation of utils/rds --- libv4l should be removed from Factory and be replaced by this package OBS-URL: https://build.opensuse.org/request/show/70003 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/v4l-utils?expand=0&rev=1 --- .gitattributes | 23 ++++ .gitignore | 1 + baselibs.conf | 4 + disable_rds_compilation.patch | 8 ++ qv4l2.desktop | 9 ++ qv4l2.svg | 31 +++++ v4l-utils-0.8.3.tar.bz2 | 3 + v4l-utils.changes | 204 ++++++++++++++++++++++++++++++ v4l-utils.spec | 232 ++++++++++++++++++++++++++++++++++ 9 files changed, 515 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 baselibs.conf create mode 100644 disable_rds_compilation.patch create mode 100644 qv4l2.desktop create mode 100644 qv4l2.svg create mode 100644 v4l-utils-0.8.3.tar.bz2 create mode 100644 v4l-utils.changes create mode 100644 v4l-utils.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/baselibs.conf b/baselibs.conf new file mode 100644 index 0000000..c7d4aca --- /dev/null +++ b/baselibs.conf @@ -0,0 +1,4 @@ +libv4l +libv4l1-0 +libv4l2-0 +libv4lconvert0 diff --git a/disable_rds_compilation.patch b/disable_rds_compilation.patch new file mode 100644 index 0000000..8932e91 --- /dev/null +++ b/disable_rds_compilation.patch @@ -0,0 +1,8 @@ +--- utils/Makefile.orig 2011-02-10 00:04:27.000000000 +0200 ++++ utils/Makefile 2011-05-08 20:37:57.115000119 +0300 +@@ -1,4 +1,4 @@ +-SUBDIRS=libv4l2util decode_tm6000 keytable rds v4l2-compliance v4l2-ctl v4l2-dbg xc3028-firmware ++SUBDIRS=libv4l2util decode_tm6000 keytable v4l2-compliance v4l2-ctl v4l2-dbg xc3028-firmware + + all install: + @for i in $(SUBDIRS); do \ diff --git a/qv4l2.desktop b/qv4l2.desktop new file mode 100644 index 0000000..20cbf7a --- /dev/null +++ b/qv4l2.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=QV4l2 +GenericName=V4L2 test Utility +Comment=Allow testing Video4Linux devices +Exec=qv4l2 +Icon=qv4l2 +Terminal=false +Type=Application +Categories=Qt;AudioVideo;Video;TV; diff --git a/qv4l2.svg b/qv4l2.svg new file mode 100644 index 0000000..28356e5 --- /dev/null +++ b/qv4l2.svg @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + \ No newline at end of file diff --git a/v4l-utils-0.8.3.tar.bz2 b/v4l-utils-0.8.3.tar.bz2 new file mode 100644 index 0000000..ab44a23 --- /dev/null +++ b/v4l-utils-0.8.3.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:525ebed7ef6e0f6a4bb68fe10403a3725eb1ec31a4c557c68256079b00e283b5 +size 314347 diff --git a/v4l-utils.changes b/v4l-utils.changes new file mode 100644 index 0000000..23c5541 --- /dev/null +++ b/v4l-utils.changes @@ -0,0 +1,204 @@ +------------------------------------------------------------------- +Sun May 8 17:46:17 UTC 2011 - asterios.dramis@gmail.com + +- Update to v0.8.3 + * Name changed to v4l-utils (libv4l + some utils). + * Lots of changes (see ChangeLog). +- Spec file updates + * Changes based on rpmdevtools templates and spec-cleaner run. + * Changes to incorporate the addition of the utils. + * Updates Licenses (based on Fedora). +- Added desktop file and icon for qv4l2 (taken from Fedora package). +- Removed libv4l-nonvoid_return.diff patch (fixed upstream). +- Added a patch to disable compilation of utils/rds (fails to compile with + ic2-dev.h from ic2-tools). + +------------------------------------------------------------------- +Thu Jun 10 08:32:50 UTC 2010 - wittemar@googlemail.com + +- build libv4l-32bit + +------------------------------------------------------------------- +Mon May 17 10:07:34 UTC 2010 - coolo@novell.com + +- remove explicit version requires to non-versioned package from + shared libraries +- buildrequire pkg-config to fix provides + +------------------------------------------------------------------- +Mon Feb 22 15:53:02 CET 2010 - ro@suse.de + +- buildfix: "control reaches end of non-void function" + +------------------------------------------------------------------- +Mon Feb 22 09:39:16 UTC 2010 - bphilips@novell.com + +- Upstream doesn't provide bz2. Change back to gz in URL. + +------------------------------------------------------------------- +Mon Feb 22 09:35:32 UTC 2010 - bphilips@novell.com + +- Update to v0.6.4 + - Add more laptop models to the upside down devices table + - Add error checking to mr97310a decompression + - Increase mr97310a minimum clockdiv upon 3 consecutive decoding errors + - Add support for decompressing CPIA1 compressed YUV + - Speed up autogain algorithm + +- Updates from v0.6.3 + - Add more laptop models to the upside down devices table + - Improved mr97310a decompression + - Add support for decompressing yuv420 planar JPEG (one component per SOS, + 3 SOS per frame), this is needed for w9968cf based cams + - Add support for STV0680 raw bayer data + +- Updates from v0.6.2 + - Add more laptop models to the upside down devices table + - Put usb id in controls shm segment name for USB devices, to better + distuingish between devices plugged into the same port + - Enable software whitebalance and autogain for mr97310a cameras + - Improvements / tweaks to software autogain algorithm + +------------------------------------------------------------------- +Fri Jan 15 13:15:18 UTC 2010 - chris@computersalat.de + +- cleanup spec + * shared libs to subpkg + * added debug_package_requires + * bzipped source +- rpmlint + * devel-package-with-non-devel-group + * summary-not-capitalized +- added baselibs.conf as a source2 + o and updated + +------------------------------------------------------------------- +Tue Sep 1 13:10:00 CEST 2009 - schaeferf.obs@googlemail.com + +- Update to v0.6.1 + - Add more laptop models to the upside down devices table + - Bugfix: fixup 320x240 output for pac7302 cameras + - Bugfix: fix reqbuf Device or Resource busy error when using v4l2_read() + - Some applications want to use jpg format if possible, so do not hide + it from the apps (do not assume it always needs conversion) + - Change controls shm segment name to include the username, as it is only + writable by the user (this means libv4l controls are per user) (Gregor Jasny) + - Add support for decompressing sn9c2028 compressed bayer (Theodore Kilgore) + - Report V4L2_FMT_FLAG_EMULATED in v4l2_fmtdesc flags for emulated formats + +------------------------------------------------------------------- +Thu Aug 6 20:48:38 CEST 2009 - schaeferf.obs@googlemail.com + +- Update to v0.6.0 + - Software whitebalancing, automatic gain, exposure and gamma control for cams which lack this in hardware + - Fake v4l2 controls to control all these + - Software flipping controls + - Recognize disabled controls and replace with fake equivalents where available + - Add tons of laptop models to the upside down devices table + - Add support for decompressing ov511 and ov518 "JPEG" + - Improved pac207 decompression code + - Support for rgb565 source format + - Many bug fixes +- Merge spec files from drivers:webcam and openSUSE:Factory + +------------------------------------------------------------------- +Tue Mar 10 16:51:08 PDT 2009 - bphilips@suse.de + +- Add baselibs.conf to build -32bit packages +- Version bump to 0.5.8 + * Add support for UYVY (for USB Apple iSight) patch by Julien BLACHE + + * Remove v4lconvert_yvyu_to_yuv420 function as its functionality is + duplicate with v4lconvert_yuyv_to_yuv420 + * Use Requires.private where appropiate in .pc files (patch by Gregor Jasny) + * Switch to using USB-id's instead of USB product string, as not all devices + set a unique product string. This fixes the upside down issues with + genius e-messenger 112 cams + * Add support for sn9c20x-i420 format patch by Vasily Khoruzhick + + +------------------------------------------------------------------- +Wed Dec 3 22:16:58 PST 2008 - bphilips@suse.de + +- Version bump to 0.5.7 + * Fix a nasty (and stupid) bug in the special try_fmt handling for UVC cams + * Add some more verbose logging of various calls when asking libv4l to log + calls to a file, to assist in (future) debugging + libv4l-0.5.6 + * Always do a s_fmt on uvc cams even if this changes nothing, as not doing + the s_fmt triggers a bug in the uvcvideo driver in kernel <= 2.6.28 + (with certain cams) + libv4l-0.5.5 + * Avoid the use of try_fmt as much as possible on UVC cams, instead use the + results of the enum_framesizes ioctl. This is because: + 1) try_fmt actually causes IO with UVC cams making apps which do lot of + querrying of device capabilities slow (cheese) + 2) some buggy cams don't like getting lots of UVC video probes and crash + when they do + libv4l-0.5.4 + * Don't report DQBUF errors when errno is EAGAIN, this fixes flooding the + screen with errors when applications use non blocking mode + * Add support for downscaling to make apps which want low resolutions + (skype, spcaview) happy when used with cams which can only do high + resolutions (by Lukáš Karas ). + * Add support for converting to YV12 planar (next to the already supported + YU12 / I420) + * Implement RGB/BGR24 -> YU/YV12 conversion + libv4l-0.5.3 + * When conversion requires multiple passes don't alloc the needed temporary + buffer on the stack, as some apps (ekiga) use so much stack themselves + this causes us to run out of stack space + libv4l-0.5.2 + * Add Philips SPC210NC to list of cams with upside down sensor, reported by + Rieker Flaik + * Work around some drivers (pwc) not properly reflecting what one gets after a + s_fmt in their try_fmt answer + * Check that s_fmt atleast gives us the width, height and pixelformat try_fmt + promised us, and if not disable conversion + * Only check width, height and pixelformat when checking if we are doing + conversion, instead of doing a memcmp, as that are the only things which + the convert code checks + * Take into account that the buffers only contain half of the lines when + field is V4L2_FIELD_ALTERNATE + libv4l-0.5.1 + * Add support for software cropping from 352x288 -> 320x240 / 176x144 -> + 160x120, so that apps which will only work with vga resolutions like + 320x240 (Skype!) will work with cams/drivers which do not support cropping + CIF resolutions to VGA resolutions in hardware. This makes all 2.6.27 gspca + supported cams, except for the pac7302 which only does 640x480 (and skype + wants 320x240), work with skype + * The v4lconvert_convert function was becoming a bit of a mess, so split the + functionailiy into separate v4lconvert_convert_pixfmt, v4lconvert_rotate and + v4lconvert_crop functions, and make v4lconvert_convert a frontend to + these + * Do not link the wrapper libs against libpthread (patch from Gregor Jasny) + libv4l-0.5.0 + * Add support for enumerating framesizes and frameintervals of emulated + formats when the driver supports it for the real format + * Make sure the video device always gets opened RW even if the application + asks for RO + * Add Genius E-Messenger 112 (093a:2476) to list of cams which have their + sensor upside down + libv4l-0.4.3 + * Add suport for YUYV and YVYU packed pixel formats (Jean-Francois Moine) + * Prefer compressed pixformats for resolutions > 176x144 + libv4l-0.4.2 + * The bayer pixel order in gspca's sonixb driver was different from that in + the sn9c102 driver from the mainline kernel, a recent gspca patch fixes + this, adjust libv4l to match (and make it work properly with the sn9c102 + driver). + libv4l-0.4.1 + * When the driver supports read() and we are not converting let the driver + handle read() instead of emulating it with mmap mode + * Fix errors and warnings when compiling with ICC (Gregor Jasny) + * Add support to libv4lconvert for rotating images 90 (for Pixart 7302 cams) + or 180 (Philips SPC200NC / Philips SPC300NC) degrees + * Add support for Pixart custom JPEG format + * Hide non public symbols (Gregor Jasny) + * Fix and enable x86_64 asm jpeg decompress helper functions (Gregor Jasny) + +------------------------------------------------------------------- +Fri Aug 15 19:52:59 CEST 2008 - bphilips@suse.de + +- Initial SuSE package + diff --git a/v4l-utils.spec b/v4l-utils.spec new file mode 100644 index 0000000..2a86f7d --- /dev/null +++ b/v4l-utils.spec @@ -0,0 +1,232 @@ +# +# spec file for package v4l-utils +# +# Copyright (c) 2011 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 +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + +# norootforbuild + + +Name: v4l-utils +Version: 0.8.3 +Release: 1 +Summary: Utilities for video4linux and DVB devices + +# ir-keytable and v4l2-sysfs-path are GPLv2 only +License: GPLv2+ and GPLv2 +Url: http://linuxtv.org/downloads/v4l-utils/ +Group: Hardware/TV +Source0: http://linuxtv.org/downloads/v4l-utils/%{name}-%{version}.tar.bz2 +Source1: qv4l2.desktop +Source2: qv4l2.svg +Source100: baselibs.conf +# PATCH-FIX-OPENSUSE disable_rds_compilation.patch asterios.dramis@gmail.com -- Disable compilation of utils/rds (it isn't installed anyway) as it fails to compile with i2c-dev.h from i2c-tools (needs the one from linux-glibc-devel) +Patch0: disable_rds_compilation.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-build + +BuildRequires: kernel-headers +BuildRequires: libqt4-devel +%if 0%{?suse_version} > 1130 +BuildRequires: sysfsutils-devel +%else +BuildRequires: sysfsutils +%endif +%if 0%{?suse_version} +BuildRequires: update-desktop-files +%endif +Requires: libv4l = %{version} +Requires: udev + +%define debug_package_requires libv4l1-0 = %{version}-%{release} +%define debug_package_requires libv4l2-0 = %{version}-%{release} +%define debug_package_requires libv4lconvert0 = %{version}-%{release} + +%description +v4l-utils is a collection of various video4linux (V4L) and DVB utilities. The +main v4l-utils package contains cx18-ctl, ir-keytable, ivtv-ctl, v4l2-ctl and +v4l2-sysfs-path. + +%package devel-tools +# decode_tm6000 is GPLv2 only +License: GPLv2+ and GPLv2 +Summary: Utilities for v4l2 / DVB driver development and debugging +Group: Hardware/TV +Requires: libv4l = %{version} + +%description devel-tools +Utilities for v4l2 / DVB driver authors: decode_tm6000, v4l2-compliance and +v4l2-dbg. + +%package -n libv4l +# Some of the decompression helpers are GPLv2, the rest is LGPLv2+ +License: LGPLv2+ and GPLv2 +Summary: Collection of video4linux support libraries +Url: http://hansdegoede.livejournal.com/3636.html +Group: System/Libraries + +%description -n libv4l +libv4l is a collection of libraries which adds a thin abstraction layer on +top of video4linux2 devices. The purpose of this (thin) layer is to make it +easy for application writers to support a wide variety of devices without +having to write separate code for different devices in the same class. libv4l +consists of 3 different libraries: libv4lconvert, libv4l1 and libv4l2. + +%package -n libv4l1-0 +License: LGPLv2+ +Summary: Video4linux support library +Group: System/Libraries + +%description -n libv4l1-0 +libv4l1 offers the (deprecated) v4l1 API on top of v4l2 devices, independent +of the drivers for those devices supporting v4l1 compatibility (which many +v4l2 drivers do not). + +This package contains shared lib for packages that use libv4l1.so.0 + +%package -n libv4l2-0 +License: LGPLv2+ +Summary: Video4linux support library +Group: System/Libraries + +%description -n libv4l2-0 +libv4l2 offers the v4l2 API on top of v4l2 devices, while adding for the +application transparent libv4lconvert conversion where necessary. + +This package contains shared lib for packages that use libv4l2.so.0 + +%package -n libv4lconvert0 +License: LGPLv2+ +Summary: Video4linux support library +Group: System/Libraries + +%description -n libv4lconvert0 +libv4lconvert offers functions to convert from any (known) pixel-format +to V4l2_PIX_FMT_BGR24 or V4l2_PIX_FMT_YUV420. + +This package contains shared lib for packages that use libv4lconvert.so.0 + +%package -n libv4l-devel +License: LGPLv2+ +Summary: Development files for libv4l +Group: Development/Libraries/C and C++ +Requires: libv4l1-0 = %{version} +Requires: libv4l2-0 = %{version} +Requires: libv4lconvert0 = %{version} + +%description -n libv4l-devel +The libv4l-devel package contains libraries and header files for +developing applications that use libv4l. + +%package -n qv4l2 +License: GPLv2+ +Summary: Video4linux test control and streaming test application +Group: Hardware/TV +Requires: libv4l = %{version} + +%description -n qv4l2 +qv4l2 is a test control and streaming test application for video4linux. + +%prep +%setup -q +%patch0 + +%build +make CFLAGS="%{optflags} -fno-strict-aliasing" CXXFLAGS="%{optflags}" %{?_smp_mflags} + +%install +make install PREFIX=%{_prefix} LIBDIR=%{_libdir} DESTDIR=%{buildroot} + +# Install icon +mkdir -p %{buildroot}%{_datadir}/icons/hicolor/scalable/apps +install -pm 0644 %{SOURCE2} %{buildroot}%{_datadir}/icons/hicolor/scalable/apps + +%if 0%{?suse_version} +%suse_update_desktop_file -i qv4l2 Qt AudioVideo Video TV +%endif + +%clean +rm -rf %{buildroot} + +%post -n libv4l1-0 -p /sbin/ldconfig + +%postun -n libv4l1-0 -p /sbin/ldconfig + +%post -n libv4l2-0 -p /sbin/ldconfig + +%postun -n libv4l2-0 -p /sbin/ldconfig + +%post -n libv4lconvert0 -p /sbin/ldconfig + +%postun -n libv4lconvert0 -p /sbin/ldconfig + +%files +%defattr(-,root,root,-) +%doc COPYING ChangeLog README TODO +%dir %{_sysconfdir}/rc_keymaps +%config(noreplace) %{_sysconfdir}/rc_keymaps/* +%config(noreplace) %{_sysconfdir}/rc_maps.cfg +%if 0%{?suse_version} == 1120 +%dir %{_sysconfdir}/udev +%dir %{_sysconfdir}/udev/rules.d +%endif +%config(noreplace) %{_sysconfdir}/udev/rules.d/70-infrared.rules +%{_bindir}/cx18-ctl +%{_bindir}/ir-keytable +%{_bindir}/ivtv-ctl +%{_bindir}/v4l2-ctl +%{_bindir}/v4l2-sysfs-path +%{_mandir}/man1/ir-keytable.1%{ext_man} + +%files devel-tools +%defattr(-,root,root,-) +%doc COPYING ChangeLog README TODO +%{_bindir}/decode_tm6000 +%{_bindir}/v4l2-compliance +%{_sbindir}/v4l2-dbg + +%files -n libv4l +%defattr(-,root,root,-) +%doc COPYING.LIB ChangeLog README README.lib TODO +%{_libdir}/libv4l/ + +%files -n libv4l1-0 +%defattr(-,root,root,-) +%{_libdir}/libv4l1.so.* + +%files -n libv4l2-0 +%defattr(-,root,root,-) +%{_libdir}/libv4l2.so.* + +%files -n libv4lconvert0 +%defattr(-,root,root,-) +%{_libdir}/libv4lconvert.so.* + +%files -n libv4l-devel +%defattr(-,root,root,-) +%doc README.lib-multi-threading +%{_includedir}/libv4l*.h +%{_libdir}/libv4l*.so +%{_libdir}/pkgconfig/*.pc + +%files -n qv4l2 +%defattr(-,root,root,-) +%doc COPYING ChangeLog README TODO +%{_bindir}/qv4l2 +%{_datadir}/applications/qv4l2.desktop +%dir %{_datadir}/icons/hicolor +%dir %{_datadir}/icons/hicolor/scalable +%dir %{_datadir}/icons/hicolor/scalable/apps +%{_datadir}/icons/hicolor/scalable/apps/qv4l2.svg + +%changelog