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
vor 15 Jahren
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
vor 15 Jahren
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
vor 15 Jahren
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
vor 15 Jahren
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
vor 15 Jahren
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
vor 15 Jahren
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
vor 15 Jahren
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
vor 15 Jahren
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
vor 15 Jahren
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
vor 15 Jahren
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
vor 15 Jahren
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
vor 15 Jahren
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
vor 15 Jahren
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
vor 15 Jahren
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
vor 15 Jahren
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
vor 15 Jahren
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
vor 15 Jahren
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
vor 15 Jahren
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
vor 16 Jahren
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
vor 16 Jahren
sam
48e2c4cebf
storyboard.c:
- generate smaller thumbnail mosaics
- process more images (1 out of 15 instead of 20)
- try to rule out more similar images
- cope with streams that do not advertise their picture size in the headers
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3351 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
d759c65d79
storyboard.c: more output filename tuning...
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3349 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
0e8b0d6376
storyboard.c: fix output path.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3348 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
77016401db
storyboard.c: tuned the output file name.
examples/.gitignore: ignore storyboard.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3347 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
f83b0deb78
Conditionally build the movie thumbnailer by detecting libavcodec et al.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3346 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
70e7f92416
Added a movie thumbnailer (storyboard generator) using libavcodec.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3345 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
1ff231b9f7
Change _C pixel format suffixes into _U8 for more clarity.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3342 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
0494eff2ef
Add pipi_release_pixels and pipi_set_colorspace in prevision of
pipi_get_pixels using the tiles system. These functions should
disappear one day, because they're going to leak like crazy.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3341 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
bb926c7a95
Rename pipi_getpixel into pipi_get_pixels.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3340 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
jylam
c0359c8aa4
* Fixed a memory leak in histogram example
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@3082 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
69fda35bdf
Add a bunch of .gitignore files for git-svn users.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2936 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
1f64bdfa4b
Do not install example programs.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2935 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
56dcd4e41e
Fix C include paths for separate directory builds.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2913 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
0eb36a6225
Support C99 types on Win32 through the same hacks as in libcaca.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2902 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
jylam
3553851ad5
* Preliminary support for a string to color routine (rgb(), argb() frgb(), fargb()) as well as named colors
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2810 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
jylam
756cc89890
* Preliminary image histogram routines and example
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2809 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
a25a78d31c
* line.c: make the line drawing example use aliased lines.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2796 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
jylam
6d69dcc7ea
* Added bezier files, lolz.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2789 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
jylam
306ec17156
* Added a bezier curve primitive (2 control points).
* Fixed a float overflow in antialiased lines (this algorithm is a mess, and I need to rewrite it)
* Wrote a bunch of craderies degueulasses to avoid having y1 already defined in math.h
* Did I say this antialiased line implementation sucks ?
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2788 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
jylam
c759699dba
* Fixed the second part of the previous buffer overflow. No comment.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2783 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
jylam
b67fde0e94
* Added Wu-Xaolin antialiased lines (Still lacks RGBA32 transparency code, with a fallback to float for now)
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2777 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
jylam
971efb124e
* Added simple Bresenham line drawing routines (RGBA_32, RGBA_F, Y_F)
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2776 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
44c9b8e15d
* Get rid of the specific error diffusion functions, since our stock kernels
work perfectly well.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2759 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
db43a4df0d
* img2rubik.c: add quick and dirty dithering code to img2rubik.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2738 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
baa3d82e4b
* Move the palette reduction algorithm into pipi_reduce().
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2736 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
f6e201c341
* img2rubik.c: improve stability by clipping t.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2734 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
585af308a2
* img2rubik.c: fix convex hull build, some points were not properly
excluded.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2733 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
b9ccaad752
* img2rubik.c:
+ fix RGB-space UV projection.
+ free allocated memory at the end.
+ clean up the debug messages and make them optional.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2732 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
0151c722cd
* More img2rubik experimentation, with a lot of debugging messages.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2731 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren
sam
e23268c286
* img2rubik.c: factor out the hull generation so that we can also build a
convex hull of the Neugebauer primaries.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2730 92316355-f0b4-4df1-b90c-862c8a59935f
vor 16 Jahren