Antonio Ospite [Mon, 7 Jul 2014 13:56:39 +0000 (15:56 +0200)]
debian/patches: add a patch to fix the license of the example programs
Antonio Ospite [Mon, 7 Jul 2014 13:25:13 +0000 (15:25 +0200)]
debian/libam7xxx0.1-doc.lintian-overrides: update one override
Antonio Ospite [Mon, 7 Jul 2014 12:25:45 +0000 (14:25 +0200)]
debian/gbp.conf: fix typo s/prinstine-tar/pristine-tar/g
Antonio Ospite [Thu, 15 May 2014 16:10:02 +0000 (18:10 +0200)]
debian/changelog: release package version 0.1.5-1
Git-Dch: ignore
Antonio Ospite [Thu, 15 May 2014 16:08:00 +0000 (18:08 +0200)]
debian/control: fix cme warnings "Synopsis is too long."
Antonio Ospite [Thu, 15 May 2014 15:59:15 +0000 (17:59 +0200)]
debian/control: use a single dash in short descriptions
Some packages use two dashes to separate the generic description from
the package specific one, but the majority of packages use only one.
Antonio Ospite [Thu, 15 May 2014 14:54:31 +0000 (16:54 +0200)]
debian/control: fix installation over old versions
Antonio Ospite [Thu, 15 May 2014 14:45:11 +0000 (16:45 +0200)]
debian/watch: detect new versions from gitweb
Antonio Ospite [Thu, 15 May 2014 11:03:44 +0000 (13:03 +0200)]
debian/patches: drop all patches
Some patches were fixes from upstream which are now in the orig
codebase.
Some other patches were reverts of upstream commits needed to build with
older libav and libusb versions shipped in Debian distributions, drop
these as well as they are not needed anymore to build the package in
Unstable; possibly they can come back in a backport branch if needed.
Antonio Ospite [Thu, 15 May 2014 13:37:32 +0000 (15:37 +0200)]
debian/control: rename the libam7xxx-bin package to libam7xxx0.1-bin
This fixes a lintian error:
E: libam7xxx source: version-substvar-for-external-package libam7xxx0.1 -> libam7xxx0.1-bin
Antonio Ospite [Thu, 15 May 2014 13:22:28 +0000 (15:22 +0200)]
debian/libam7xxx0.1-doc.lintian-overrides: update overrides
Antonio Ospite [Thu, 15 May 2014 12:56:24 +0000 (14:56 +0200)]
debian/control: rename the libam7xxx-doc package to libam7xxx0.1-doc
This fixes a lintian error:
E: libam7xxx source: version-substvar-for-external-package libam7xxx-dev -> libam7xxx0.1-doc
Antonio Ospite [Thu, 15 May 2014 11:15:24 +0000 (13:15 +0200)]
debian/rules: install the NEWS file as the upstream changelog
Antonio Ospite [Thu, 15 May 2014 11:00:28 +0000 (13:00 +0200)]
debian/copyright: update contact info and copyright years
Antonio Ospite [Thu, 15 May 2014 10:59:28 +0000 (12:59 +0200)]
debian/control: update Maintainer email address
Antonio Ospite [Thu, 15 May 2014 10:58:21 +0000 (12:58 +0200)]
debian/changelog: prepare for package version 0.1.5-1
Git-Dch: ignore
Antonio Ospite [Thu, 15 May 2014 10:50:18 +0000 (12:50 +0200)]
Merge tag 'v0.1.5' into debian
Release version 0.1.5
Antonio Ospite [Thu, 15 May 2014 10:44:07 +0000 (12:44 +0200)]
Release version 0.1.5
Antonio Ospite [Thu, 15 May 2014 10:33:41 +0000 (12:33 +0200)]
HACKING.asciidoc: update Windows cross-build section to use libav10
Antonio Ospite [Mon, 12 May 2014 21:02:28 +0000 (23:02 +0200)]
am7xxx-play: port to libav10
Antonio Ospite [Thu, 8 May 2014 10:59:02 +0000 (12:59 +0200)]
Update email address and copyright years
Antonio Ospite [Thu, 8 May 2014 10:37:44 +0000 (12:37 +0200)]
contrib/performance/README: fix some typos
Antonio Ospite [Thu, 8 May 2014 10:27:23 +0000 (12:27 +0200)]
cosmetics: remove some trailing spaces
Antonio Ospite [Thu, 8 May 2014 10:26:04 +0000 (12:26 +0200)]
README.asciidoc: update instructions to test libam7xxx on Windows
Antonio Ospite [Thu, 8 May 2014 10:15:16 +0000 (12:15 +0200)]
HACKING.asciidoc: update the build instructions for Windows
Antonio Ospite [Thu, 8 May 2014 09:37:34 +0000 (11:37 +0200)]
am7xxx: don't use partial designated initializers
Compilers may warn about missing fields in initializers when more checks
are enabled with STRICT_COMPILATION_CHECKS=ON:
.../src/am7xxx.c:1131:31: error: missing field 'direction' initializer [-Werror,-Wmissing-field-initializers]
struct am7xxx_header h = { 0 };
^
1 error generated.
Antonio Ospite [Thu, 8 May 2014 09:22:31 +0000 (11:22 +0200)]
am7xxx: add a portable_endian.h
Add a portable_endian.h to define platform specific implementations for
the functions found on most unix-like systems in endian.h.
Antonio Ospite [Wed, 7 May 2014 19:40:44 +0000 (21:40 +0200)]
Merge branch 'zoom-tele-picopix'
Antonio Ospite [Wed, 7 May 2014 16:05:11 +0000 (18:05 +0200)]
am7xxx-play: allow setting the AM7XXX_ZOOM_TELE zoom mode
Antonio Ospite [Wed, 7 May 2014 16:04:16 +0000 (18:04 +0200)]
picoproj: allow setting the AM7XXX_ZOOM_TELE zoom mode
Antonio Ospite [Wed, 7 May 2014 16:01:58 +0000 (18:01 +0200)]
am7xxx: implement the set_zoom_mode() operation for the PicoPix 2055
Apparently AM7XXX_ZOOM_ORIGINAL and AM7XXX_ZOOM_TELE are the only
supported zoom modes on the PicoPix 2055.
Antonio Ospite [Wed, 7 May 2014 15:59:30 +0000 (17:59 +0200)]
am7xxx: add support for a new AM7XXX_ZOOM_TELE zoom mode
Some PicoPix projectors support a different zoom mode than the Acer
C110, in this mode the image uses a different lens distortion but the
frame aspect ratio does not change.
Antonio Ospite [Wed, 7 May 2014 15:46:50 +0000 (17:46 +0200)]
am7xxx: add a msleep() implementation in tools.[ch]
Antonio Ospite [Wed, 29 Jan 2014 14:29:59 +0000 (15:29 +0100)]
debian/changelog: prepare for 0.1.4-3
Git-Dch: ignore
Antonio Ospite [Wed, 29 Jan 2014 13:49:26 +0000 (14:49 +0100)]
debian/patches: add 0004-Revert-am7xxx-use-the-symbolic-constant-for-libusb-l.patch
Some old libusb version without the LIBUSB_LOG_LEVEL_* defines is still
around in Debian distros (like Raspbian). So add a patch to be able to
build packages for them.
Antonio Ospite [Wed, 4 Dec 2013 10:32:26 +0000 (11:32 +0100)]
Merge branch 'powermode-PicoPix2055'
Antonio Ospite [Thu, 28 Nov 2013 14:23:04 +0000 (15:23 +0100)]
am7xxx: add support for setting the power mode on the PicoPix 2055
Antonio Ospite [Thu, 28 Nov 2013 14:13:12 +0000 (15:13 +0100)]
am7xxx: dump fields of unknown packet types
Allow dumping the payload fields as generic header_data, this is useful
when the packet type cannot be handled explicitly because the meaning of
the data is not known.
Antonio Ospite [Thu, 28 Nov 2013 13:57:09 +0000 (14:57 +0100)]
am7xxx: factor out a send_command() function
Some packet types do not carry any header_data and thus they can be seen
as commands issued to the device.
Add a send_command() function to handle such packet types, others of
them are going to be added in future commits.
Antonio Ospite [Thu, 28 Nov 2013 12:49:52 +0000 (13:49 +0100)]
am7xxx: switch from device quirks to device ops
Define device specific operations in order to allow supporting different
implementation of a given operation by different device models.
For instance this will be used to add an alternative implementation of
the 'set_power_mode' operation for the Philips/SagemCom PicoPix 2055
projector.
For now device specific callbacks are used only for the 'set_power_mode'
and 'set_zoom_mode' operations.
Antonio Ospite [Tue, 19 Nov 2013 12:18:22 +0000 (13:18 +0100)]
debian/control: drop the am7xxx metapackage
Recommend libam7xxx0.1-bin for libam7xxx0.1 and recommend
libam7xxx0.1-doc for libam7xxx-dev.
Antonio Ospite [Tue, 19 Nov 2013 12:04:53 +0000 (13:04 +0100)]
debian/control: specify the debian package branch in Vcs-Git
This is what is suggested in
http://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-VCS-fields
Antonio Ospite [Tue, 19 Nov 2013 12:04:00 +0000 (13:04 +0100)]
debian/control: bump Standards-Version to 3.9.5
Antonio Ospite [Tue, 19 Nov 2013 12:01:12 +0000 (13:01 +0100)]
debian/gbp.conf: explicitly disable pristine-tar
This fixes build when users have pristine-tar set to True in the global
configuration file.
Antonio Ospite [Tue, 19 Nov 2013 11:50:44 +0000 (12:50 +0100)]
debian/control: drop the version on the asciidoc dependency
Also drop the dependency on docbook-xsl as it will be brought in by
xmlto.
Antonio Ospite [Mon, 18 Nov 2013 13:41:42 +0000 (14:41 +0100)]
doc/lsusb_dumps: add lsusb_Philips-PicoPix-2055.log
Antonio Ospite [Mon, 18 Nov 2013 13:38:26 +0000 (14:38 +0100)]
doc/lsusb_dumps: strip trailing spaces
This makes it easier to compare different files with diff.
Antonio Ospite [Mon, 18 Nov 2013 13:35:37 +0000 (14:35 +0100)]
doc/man: misc fixes to man pages
The help text in particular was copied from the output of the '-h'
option which was referring to "this help message", this was OK on the
command line but it sounds a little off in a man page.
Antonio Ospite [Wed, 30 Oct 2013 09:49:56 +0000 (10:49 +0100)]
debian/patches: add 0003-CMakeLists.txt-define-DEBUG-1-only-when-CMAKE_BUILD_.patch
DEBUG=1 should not be enabled for Debian packages which are built with
CMAKE_BUILD_TYPE=RelWithDebInfo.
Antonio Ospite [Wed, 30 Oct 2013 09:41:06 +0000 (10:41 +0100)]
CMakeLists.txt: define DEBUG=1 only when CMAKE_BUILD_TYPE=Debug
When building with CMAKE_BUILD_TYPE=RelWithDebInfo the development debug
code should not be enabled, so don't define DEBUG=1 in DEBUG_FLAGS as
this will end up being both in CMAKE_C_FLAGS_DEBUG and
CMAKE_C_FLAGS_RELWITHDEBINFO.
Instead define DEBUG=1 only for CMAKE_C_FLAGS_DEBUG so it gets used only
when CMAKE_BUILD_TYPE=Debug.
Antonio Ospite [Wed, 30 Oct 2013 09:24:17 +0000 (10:24 +0100)]
debian/control: remove versions from libav dependencies
Antonio Ospite [Sun, 13 Oct 2013 13:50:11 +0000 (15:50 +0200)]
HACKING.asciidoc: fix the url of the avcodec_encode_video2 patch
Antonio Ospite [Sat, 7 Sep 2013 15:30:28 +0000 (17:30 +0200)]
am7xxx-play: cosmetics, fix coding style
Antonio Ospite [Sat, 3 Aug 2013 14:25:51 +0000 (16:25 +0200)]
debian/changelog: release Debian package 0.1.4-2
Git-Dch: ignore
Antonio Ospite [Sat, 3 Aug 2013 14:11:17 +0000 (16:11 +0200)]
debian/patches: add 0002-am7xxx-add-quirks-for-Philips-Sagemcom-PicoPix-2055.patch
With this patch PicoPix 2055 works more reliably.
Antonio Ospite [Sat, 3 Aug 2013 13:14:34 +0000 (15:14 +0200)]
am7xxx: add quirks for Philips/Sagemcom PicoPix 2055
The Philips/Sagemcom PicoPix 2055 does not support some operations:
- setting the power mode confuses the firmware
- setting the zoom mode has no effect whatsoever
Disable these operations.
Thanks-to: Luca Bompani
Antonio Ospite [Sun, 28 Jul 2013 21:22:15 +0000 (23:22 +0200)]
NEWS: fix a typo s/mode/more/
Antonio Ospite [Sun, 28 Jul 2013 16:44:19 +0000 (18:44 +0200)]
debian/changelog: package upstream version v0.1.4
Git-Dch: ignore
Antonio Ospite [Sun, 28 Jul 2013 18:07:48 +0000 (20:07 +0200)]
debian/control: update Standards-Version to 3.9.4
Antonio Ospite [Sun, 28 Jul 2013 18:25:05 +0000 (20:25 +0200)]
debian/control: fix a not-binnmuable-any-depends-all lintian error
E: libam7xxx source: not-binnmuable-any-depends-all am7xxx -> libam7xxx-doc
Antonio Ospite [Sun, 28 Jul 2013 18:23:23 +0000 (20:23 +0200)]
debian/control: update the list of supported devices
Antonio Ospite [Sun, 28 Jul 2013 17:51:25 +0000 (19:51 +0200)]
debian/libam7xxx0.1.symbols: add the am7xxx_send_image_async symbol
Antonio Ospite [Sun, 28 Jul 2013 16:24:47 +0000 (18:24 +0200)]
debian/patches: refresh patches for v0.1.4
- Drop 0001-doc-add-a-man-page-for-am7xxx_mode_switch.patch it has
been merged upstream
- Rename 0002-Revert-am7xxx-play-switch-to-avcodec_encode_video2.patch
to 0001-Revert-am7xxx-play-switch-to-avcodec_encode_video2.patch as
it's now the first patch
- Refresh patch to apply cleanly to upstream version 0.1.4
0001-Revert-am7xxx-play-switch-to-avcodec_encode_video2.patch
Antonio Ospite [Sun, 28 Jul 2013 16:20:15 +0000 (18:20 +0200)]
Merge tag 'v0.1.4' into debian
Release version 0.1.4
Antonio Ospite [Sun, 28 Jul 2013 09:15:18 +0000 (11:15 +0200)]
Release version 0.1.4
Antonio Ospite [Sat, 27 Jul 2013 23:11:42 +0000 (01:11 +0200)]
contrib: add some benchmarking data about am7xxx_send_image_async
Antonio Ospite [Sat, 27 Jul 2013 22:50:30 +0000 (00:50 +0200)]
am7xxx-play: fix a crash when a packet cannot be encoded
Antonio Ospite [Sat, 27 Jul 2013 22:38:13 +0000 (00:38 +0200)]
am7xxx-play: don't initialize variables when not needed
Antonio Ospite [Sat, 27 Jul 2013 22:19:04 +0000 (00:19 +0200)]
TODO: mention that atoi() must go away
Antonio Ospite [Sat, 27 Jul 2013 22:10:08 +0000 (00:10 +0200)]
picoproj: get rid of exit(), return more meaningful values to userspace
Maybe the values returned by picoproj will never be used, but it is
better to use a clean style in example code.
Antonio Ospite [Sat, 27 Jul 2013 21:47:26 +0000 (23:47 +0200)]
HACKING.asciidoc: add commands to compile with clang
Antonio Ospite [Sat, 27 Jul 2013 21:44:45 +0000 (23:44 +0200)]
HACKING.asciidoc: add an example of testing am7xxx-play with valgrind
This will make testing easier as the line can be copied and pasted.
Antonio Ospite [Sat, 27 Jul 2013 21:36:08 +0000 (23:36 +0200)]
doc: update Doxyfile.in
Antonio Ospite [Sat, 27 Jul 2013 21:27:01 +0000 (23:27 +0200)]
contrib: add a udev rule to invoke am7xxx-modeswitch
This will be useful on embedded systems like RaspberryPi or BeagleBone
where users may not want the whole usb-modeswitch package to be
installed just for libam7xxx.
Antonio Ospite [Sat, 27 Jul 2013 21:25:34 +0000 (23:25 +0200)]
Rename am7xxx_mode_switch to am7xxx-modeswitch
The new name matches more closely the name of the binary used in recent
usb-modeswitch versions.
Antonio Ospite [Sat, 27 Jul 2013 21:02:34 +0000 (23:02 +0200)]
TODO: mention that data types could be improved in the API
Antonio Ospite [Sat, 27 Jul 2013 21:01:16 +0000 (23:01 +0200)]
picoporj: fix another -Wshorten-64-to-32 warning from clang
../examples/picoproj.c:196:8: error: implicit conversion loses integer precision: 'size_t'
(aka 'unsigned long') to 'int' [-Werror,-Wshorten-64-to-32]
ret = fread(image, size, 1, image_fp);
~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Antonio Ospite [Sat, 27 Jul 2013 20:55:53 +0000 (22:55 +0200)]
picoproj: silence a -Wshorten-64-to-32 warning from clang
../examples/picoproj.c:187:12: error: implicit conversion loses integer precision: '__off_t' (aka 'long')
to 'unsigned int' [-Werror,-Wshorten-64-to-32]
size = st.st_size;
~ ~~~^~~~~~~
Antonio Ospite [Sat, 27 Jul 2013 20:53:19 +0000 (22:53 +0200)]
CMakeLists.txt: disable -Wsign-conversion warnings
Antonio Ospite [Sat, 27 Jul 2013 19:33:28 +0000 (21:33 +0200)]
am7xxx: fix a clang warning
../src/am7xxx.c:685:16: error: implicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int'
[-Werror,-Wshorten-64-to-32]
num_devices = libusb_get_device_list(ctx->usb_context, &list);
~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
libusb_get_device_list() returns ssize_t, just use it for the num_devices
variable.
Antonio Ospite [Sat, 27 Jul 2013 18:55:48 +0000 (20:55 +0200)]
examples: silence a couple of clang warnings
Silence a couple of warnings given when compiling with clang:
../examples/am7xxx-play.c:764:28: warning: will never be executed [-Wunreachable-code]
AM7XXX_ZOOM_ORIGINAL, AM7XXX_ZOOM_TEST);
^~~~~~~~~~~~~~~~
../examples/am7xxx-play.c:748:24: warning: will never be executed [-Wunreachable-code]
AM7XXX_POWER_OFF, AM7XXX_POWER_TURBO);
2 warnings generated.
../examples/picoproj.c:142:28: warning: will never be executed [-Wunreachable-code]
AM7XXX_ZOOM_ORIGINAL, AM7XXX_ZOOM_TEST);
^~~~~~~~~~~~~~~~
../examples/picoproj.c:127:24: warning: will never be executed [-Wunreachable-code]
AM7XXX_POWER_OFF, AM7XXX_POWER_TURBO);
2 warnings generated.
The warnings refer to the default case of a switch statement over an
enum variable, clang fails to understand that the default case can still
be reached because any integer value can be assigned to the enum
variables via the atoi() function. Work around the warning.
The behavior is also documented here:
http://lists.cs.uiuc.edu/pipermail/cfe-dev/2012-September/024174.html
In general assigning arbitrary values to enum variables will just be
weird; using enums in read mode is always safe tho.
Antonio Ospite [Sat, 27 Jul 2013 18:26:06 +0000 (20:26 +0200)]
doc: mention the Top-Height/TEC PP700 in the Doxygen documentation
Antonio Ospite [Sat, 27 Jul 2013 18:23:30 +0000 (20:23 +0200)]
doc: add some lsusb dumps for reference
Antonio Ospite [Sat, 20 Jul 2013 22:13:33 +0000 (00:13 +0200)]
am7xxx-play: use am7xxx_send_image_async()
Woot, this change alone doubles the frame rate :)
Antonio Ospite [Sat, 20 Jul 2013 22:10:28 +0000 (00:10 +0200)]
am7xxx: implement am7xxx_send_image_async()
Implement am7xxx_send_image_async() the non-blocking version of
am7xxx_send_image().
This way user programs can more easily overlap encoding and
communication and achieve higher framerates.
Antonio Ospite [Sun, 14 Jul 2013 11:25:25 +0000 (13:25 +0200)]
am7xxx: fix a typo in a comment s/a am7xxx device/an am7xxx device/
Antonio Ospite [Sat, 13 Jul 2013 09:05:00 +0000 (11:05 +0200)]
CMakeLists.txt: enable two new compiler warnings
Enable -Wsign-conversion as a strict compilation check for both gcc and
clang.
For clang also enable -Wshorten-64-to-32 as a strict compilation check.
Antonio Ospite [Sat, 29 Jun 2013 22:22:07 +0000 (00:22 +0200)]
am7xxx: add quirks for devices not supporting some operations
For instance Philips/SagemoCm PicoPix PPX 2330 does not support power
modes and zoom modes, and the device even gets confused when trying to
use them; so for reliable operation it is better to just skip these
operations on such devices.
Thanks-to: Grégory Lemesre
Antonio Ospite [Sat, 29 Jun 2013 22:20:51 +0000 (00:20 +0200)]
picoproj: remove an unreachable break statement
Antonio Ospite [Sat, 29 Jun 2013 22:15:30 +0000 (00:15 +0200)]
am7xxx-play: uniform coding style
Uniform the coding style of error paths to the one use throughout in the
file.
Antonio Ospite [Sat, 29 Jun 2013 22:12:59 +0000 (00:12 +0200)]
CMakeLists.txt: add support for clang and isolate gcc-only options
Antonio Ospite [Sat, 29 Jun 2013 21:11:57 +0000 (23:11 +0200)]
HACKING.asciidoc: mention the patch needed for older libav/ffmpeg
libav/ffmpeg 0.8.X series do not have avcodec_encode_video2() which the
code uses, so for these older versions a patch is needed to undo the
changes which added support for that call.
Antonio Ospite [Sat, 29 Jun 2013 21:02:13 +0000 (23:02 +0200)]
README.asciidoc: mention the TEC PP700 projector as supported
Mention the Top-Height/TEC PP700 amongst the supported devices, it has
been verified to be work with libam7xxx (thanks to the user nicknamed
MHz).
The projector looks exactly like an Acer C112 from the software point of
view.
Antonio Ospite [Sun, 26 May 2013 22:06:23 +0000 (00:06 +0200)]
picoproj: remove an unneeded blank line
Antonio Ospite [Sun, 26 May 2013 22:05:00 +0000 (00:05 +0200)]
examples: print the usage message when a required option is missing
While at it specify which option is missing when picoproj fails..
Antonio Ospite [Sun, 26 May 2013 21:53:13 +0000 (23:53 +0200)]
CMakeLists.txt: fix enabling verbose debug output
In
024af793fa6d6af644c225804d140cc13aa56307 the definition -DDEBUG=1 got
lost, add it back.
Antonio Ospite [Fri, 5 Apr 2013 21:35:34 +0000 (23:35 +0200)]
am7xxx: use the symbolic constant for libusb log level
Antonio Ospite [Fri, 5 Apr 2013 21:29:58 +0000 (23:29 +0200)]
picoproj: show the image resolution when image does not fit the native one
This may help spotting a missing or wrong dimension parameter on the
command line.
Antonio Ospite [Fri, 5 Apr 2013 21:28:24 +0000 (23:28 +0200)]
picoproj: remove one of two consecutive blank lines
Antonio Ospite [Mon, 25 Mar 2013 22:04:03 +0000 (23:04 +0100)]
doc, contrib: add PicoPix 2330 to the list of supported devices
Thanks: Varlei Everton Menconi <varlei@dge.inpe.br>