sam
f0b0a8ba0a
Fix the pipi_merge() semantics so that it matches Gimp’s, and don’t ignore
the image’s alpha layers.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3545 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
b473f55d2f
Do not touch alpha values when modifying brightness or contrast.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3544 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
7cf0980427
Look for uninstalled ffmpeg binaries before the system-wide ones.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3543 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
d6e4f6d492
img2twit: reinstate old interpolation tuning for final picture quality.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3540 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
51036f828a
img2twit: remove contrast enhancement.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3539 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
e26e8598f4
Make img2twit's points-per-cell value changeable at runtime.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3538 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
7a49a338e4
img2twit: prevent two points from having the same coordinates, since this
is forbidden by the image format; simplify operation computations by not
packing coordinates at runtime; add a version information in the file
format for future extension.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3537 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
470a28b96b
Optimise img2twit's cell packing even more, gaining around 60 bits.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3536 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
a81278aca8
Beginning of the optim...
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3535 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
03f16f21bc
Add -Wextra to the list of compilation warnings. We're no longer warning-free,
but there's not much to fix.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3534 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
14c3888d21
img2twit: change the position of the S component to help decompose points
for a forthcoming optimisation.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3533 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
fa9efdf602
Another img2twit space optimisation: if we have remaining bits at the end
of the cell allocation, we try to use them to improve the RGB precision as
well as the inner-grid coordinates.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3532 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
b9e07e7b00
img2twit: store w+1,h+1 instead of w,h since neither width nor height can
be zero.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3531 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
8c39330635
Minor cleanup in img2twit.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3530 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
ff93399050
Fix img2twit's rendering. Apparently CGAL's Delaunay triangulation module
does not work with negative indices.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3529 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
8ff3640960
Increase img2twit's output contrast when rendering the final image.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3528 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
efac3cf334
Autodetect message size in img2twit.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3527 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
858b677fcf
Add multiple charsets support to img2twit, and autodetect charset when
decoding.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3526 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
014e889fe0
Allow for non-integer quality values in img2twit.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3525 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
d18e224caa
Fix a bug in img2twit's cell allocation.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3524 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
901c4cd590
Make img2twit message length configurable at runtime, improve the initial
guess by smoothing hard colour gradients, and fixed the bitstack copy
constructor to avoid corruption on exit.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3523 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
6a02de1614
Make img2twit more configurable: iterations per second and debug mode can
now be chosen at runtime. Message length will soon be.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3522 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
9d2ab87f85
Add proper Unicode handling to img2twit. This includes an UTF-8 encoder/decoder
and a special bit stack that can handle arbitrary bases within its stream. The
image encoder and decoder are now separate code paths.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3521 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
1779efba6b
Tremendously improve img2twit.cpp: only compute the new error around the
updated pixel, compute bit allocation at runtime, weight operations in
order to try usual "winners" more often, increase RGB allocation size.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3520 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
8bf0131c9f
Add C++ warnings to the build process.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3519 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
4dd30b4ad4
First attempt at a super-compressor for the purpose of sending images to
Twitter, rendering this service slightly more useful. It's still full of
crap, of course.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3518 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
dbd1afd99e
pipi_measure_msd(): fix this function so that it works with colour images, too.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3517 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
d1fa1af3a1
Fix the FFmpeg headers location in example programs.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3516 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
335ba42a95
Look for the awesome CGAL library at configure stage.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3515 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
d64190242f
Update ignore properties.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3422 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
c7ad1f601c
Synchronise Visual Studio projects with the current code.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3421 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
e7c1b11fad
Add missing M_PI definition in wave.c for Win32 compilation.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3420 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
4c9c6fb75c
Make sure that the gdiplus codec initialises GdiPlus before any library
calls are made.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3419 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
25eac661af
wave.c: implement pipi_wave() in addition to pipi_sine(). The effect is
not yet satisfying.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3418 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
44eca2e75e
context.c: factor some code to gain 180 lines of code.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3417 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
78c5fad50e
wave.c: rename pipi_wave() into pipi_sine().
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3416 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
3b38443852
resize.c: add pipi_crop() and the --crop flag.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3415 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
f025663d4a
jpeg.c: fix a huge resource leak in the error codepath of the JPEG codec.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3414 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
9ebe671bd6
makemovie: new example program; this utility reads a list of images from
stdin and encodes them into a movie (name specified on the command line).
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3413 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
80bfef8e57
mean.c: rename this file into merge.c and implement pipi_merge() for trivial
image merging.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3411 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
b7e3368c23
wave.c: change the wave arguments. The format is now eg. 150x100+10r1.3 where
150 is the wave period, 100 is the amplitude, 10 is the phase, and 1.3 is
the angle of the wave direction.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3410 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
9e9d93dab2
histogram.c: fix a shadowing declaration.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3409 92316355-f0b4-4df1-b90c-862c8a59935f
15 lat temu
sam
37a1e5606e
wave.c: better behaviour around image edges.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3403 92316355-f0b4-4df1-b90c-862c8a59935f
16 lat temu
sam
4936ebfa16
Fix a very old crash in the box blur filter that occurred when the image
was broader than tall.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3402 92316355-f0b4-4df1-b90c-862c8a59935f
16 lat temu
sam
05c7be55fc
Fix a crash in the JPEG loader when meeting with ENOENT.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3401 92316355-f0b4-4df1-b90c-862c8a59935f
16 lat temu
sam
7811f184bb
storyboard.c: fix compilation with optimisations disabled.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3400 92316355-f0b4-4df1-b90c-862c8a59935f
16 lat temu
sam
f0b30c6fa1
Properly handle alpha components in the convolution code.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3399 92316355-f0b4-4df1-b90c-862c8a59935f
16 lat temu
sam
1b42147e18
Properly handle alpha components in the resize code.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3398 92316355-f0b4-4df1-b90c-862c8a59935f
16 lat temu
sam
2ff222affb
Add a wave filter for crappy sine effects.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3397 92316355-f0b4-4df1-b90c-862c8a59935f
16 lat temu
sam
e0e1a1f26c
storyboard.c: add decorations around thumbnails
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3352 92316355-f0b4-4df1-b90c-862c8a59935f
16 lat temu