From 5a6bee4fe076e06514c6e4e538590dd3a2a5cdc3 Mon Sep 17 00:00:00 2001 From: "N.N." Date: Fri, 6 Nov 2009 18:37:00 +0000 Subject: upgrade gridflow svn path=/trunk/; revision=12728 --- externals/gridflow/ChangeLog | 704 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 704 insertions(+) create mode 100644 externals/gridflow/ChangeLog (limited to 'externals/gridflow/ChangeLog') diff --git a/externals/gridflow/ChangeLog b/externals/gridflow/ChangeLog new file mode 100644 index 00000000..1b43583b --- /dev/null +++ b/externals/gridflow/ChangeLog @@ -0,0 +1,704 @@ +/* $Id: ChangeLog 4755 2009-11-05 04:24:29Z matju $ */ + +version 0.9.7 (...): + +version 0.9.6 (2009.11.02): + + * MAJOR revision of the manual (no more xml nor html: all helpfiles) + * documented several dozen undocumented classes + * revised all documentation content + * installation instructions are now in ./README instead of doc/install.html + * added [gf/canvas_filename] [gf/string_replace] [gf/canvas_count] + * added [gf/canvas_getpos] [gf/canvas_setpos] [gf/canvas_edit_mode] + * added [gf/canvas_setgop] [gf/canvas_xid] [gf/canvas_loadbang] etc + * added [doc_h] [doc_c] [doc_cc] [doc_i] [doc_ii] [doc_o] [doc_oo] + * added [doc_m] [doc_also] [doc_editmodebang] [doc_pos] + * added examples/pinwheel.pd, examples/radial_blur.pd + * added examples/operator_spectrum.pd + * [#change]: now takes an argument just like [change] + * [#in x11]: fixed some bugs and set out_size to a sensible default. + * removed [#camera_control], [#camera_old], [#centroid_in_pd] + * removed [count], [condition] + * [#window]: added outlet + * [#swap]: added optional argument + * [var.#]: added optional argument + * [#spread]: added optional argument + * [#to_literal]: write numbertype + * [#fade_lin]: accept grid args + * [#posterize]: made the optional argument really optional... + * renamed source files + * rewrote GEM support without using GEM headers + * removed --gem-include + * removed bundled/Base (was a copy of GEM 0.91 include files) + * [#from_pix]: much faster + * [#to_pix]: support 3-channel rgb input + * [#out x11]: some video modes are now much faster than before + * [args]: don't [loadbang] it anymore: it's automatic now. + * [args]: removed attribute outlet: it's automatic now. + * removed [send39] : GridFlow requires PureData 0.40 these days. + * added GridFlow About in Help menu + * GridFlow menu items available in all windows instead of just the main + +version 0.9.5 (2009.10.18): + + * added [gf.print] (aliased to [print]) + * added [cv/#Ellipse], [cv/#HarrisCorner], [cv/#KMeans] + * renamed goop.pd to surface_tension.pd + * [#in quicktime]: "get" also produces messages "framerate", "height", + "width", "depth", "codec". + * added [#draw_hpgl], [#reinterval], [#cluster_avg] + * added [norecurse], [gf.error] + * [#color]: added bang + * [#inner]: fixed infinite loop bug with large right-inlet grids. + * [#transpose]: fixed crash with zero-sized grids. + * [receives]: "empty" prefix automatically turned into "" (no prefix). + * [#in grid] and [#out grid]: fixed several bugs + * [#make_cross] can make rectangular crosses + * [demux] alias removed (please use [shunt]) + * renamed every [cv.Something] to [cv/#Something] to avoid any future + nameclashes with Loïc's library. + * automatically removes artificial stacksize limits of the OS that may + have caused segfaults in the last year or so, if you didn't use + ulimit -s unlimited or somesuch + * added [# c2p] and [# p2c] (polar transforms) + * added new examples: polar.pd, radial_blur.pd + * fixed more OSX bugs + * fixed [#grade] bug (thanks to mescalinum) + * removed support for gem 0.89 and some 0.90 versions + * renamed [#labeling] to [#labelling] (kept an alias) + +version 0.9.4 (2008.07.04): + + * [#convolve] takes more RAM but gets faster on OSX + * added [listread], [receives], [ascii_to_f], [plotter_parser], [list.==] + * added [cv.Invert], [cv.SVD], [expect], [#hello] + * [plotter_control] supports most other commands and uppercase selectors + * added [#in dc1394] + * added [#window] (a shortcut for a [spigot] and a [#out window]) + * rewrote [listflatten] (was removed in 0.9.2) + * [#camera] greys out unavailable options and supports dc1394 + * added "GridFlow index" in Help menu (like Pd's right-click on blank) + * made arguments optional in [#border] [#draw_image] [#draw_polygon] + * [#draw_polygon]: added attribute "draw" (fill, line) + * [#draw_polygon]: added attribute "omit" (none, last, odd) + * support whitespace in symbols again (after bug in 0.9.2) + * fixed ppm loader + * [#fft]: added attribute "real" + * added example frequency_mask.pd + +version 0.9.3 (2008.06.06): + + * fixed bugs introduced in 0.9.2 relative to: [#in] loop, [#in] initbang, + [display] selector, [#out] initbang, [#print], [#labeling], [#out window] + * added example patches instant_blur.pd game_of_life_gem.pd + * added [class_exists] + * added [#in quicktimecamera] + * fixed some example patches + * fixed some recent OSX compilation problems + * fixed OSX QuickTime decoding on Intel (endianness problem) + * fixed existing GEM 0.89 and 0.90 support + * added GEM 0.91 support (GemBase::isRunnable) + * --gem-source renamed to --gem-include + * --gem-include=bundled can compile gem support without gem source code + * swapped outlets of [#import_pix] + * added SDL mouse position event report (but buttonup does not work) + * added SDL key report + * added some SDL options: title, hidecursor, partial setcursor + * added SDL fullscreen (use key f, F11 or Escape) + * x11: replaced method "transfer" by method "shared_memory". + +version 0.9.2 (2008.05.02): + + * removed libruby dependency + +version 0.9.1 (2008.04.16): + + * switched from CVS to SVN + * removed LTIlib support + * x11: added "warp" method for moving mouse cursor around + * removed all Ruby code (rewritten in C++ or Pd) + * rewrote PPM support. now relies on libnetpbm. + (apt-get install libnetpbm10-dev) + * removed broken Targa support + * removed timelog feature in [#in]/[#out] (redundant) + * removed [joystick_port], [SoundMixer], [pd_netsocket], [rubyarray], [ls], + [system], [exec], [regsub], [memstat], [#edit], [peephole], [listmake], + [gridflow]/[#global], [sendgui], [realtimer], [bindpatcher], [renamefile] + (contact me if you need any of them) + * added [gf.error], [usertime], [systemtime], [tsctime] + * added method to_ascii in [#import] + * [display] word-wrap + * [#import] defaults to per_message mode + * removed support for ~/.gridflow_startup and GridFlow.data_path + (contact me if you need them) + +version 0.9.0 (2007.11.20): + + * new object classes: [#slice], [#sort], [#line_to_polygon]. + * rewrote some object classes from Ruby to Pd. + * split compilation of the LTIlib support allows to compile + it with reasonable amounts of RAM. + * new classes: [seq_fold], [#seq_fold], [#.var], [#noise_gate_yuvs] + * updated [#camera] + * added PWC-specific options: framerate white_mode white_red white_blue + white_speed white_delay auto_gain compression noise_reduction + * added "pwc" option in [#camera], for enabling PWC-specific options. + * colorspace conversion directly in [#in videodev] (faster) + * grid messages no longer contain dim and numbertype (just a pointer) + * GridOutlet: added set_chunk (so set_factor is obsolete) + * removed GridFlow menu + * faster [#inner] for small matrix sizes + * GridFlow won't work in plain Ruby anymore (without Pd) + * removed [pd_netsend] [jmax_udpsend] [jmax4_udpsend] [pd_netreceive] + [jmax_udpreceive] [jmax4_udpreceive] [printargs] [rubyprint] + * removed Type.rb and Contract.rb and their use in videodev.c + * [#in quicktime]: added workaround for jpeg_quality problem + * [#in quicktime]: added method "get", that produces message "frames" + that gives the number of frames in a video + * [#out]: added method "autoclose" + * removed old documentation: *-icon.png + * renamed [#export] to [#to_float] + * renamed [#export_list] to [#to_list] + * renamed [#export_symbol] to [#to_symbol] + * renamed [#export_pix] to [#to_pix] + * fixed 256MB limit bug + * fixed reassign bug + +version 0.8.4 (2006.10.12): + + * resuming support for Ruby 1.8 ! + * added compatibility with more recent versions of Ruby 1.9 + * added compatibility with more recent versions of GCC 4.x + * much more LTIlib support! (a few dozen more object classes) + * [#camera]: improved + * rblti supports ltilib 1.9.15 and gcc 4 + * new object classes: [route2], [#polygon_each_edge], + [#polygon_moment], [#polygon_radial_map], [#polygon_comparator], + [#moment_polar]. + * new float-only numops: sin cos tanh exp log atan2 + * new float-only vecops: C.sin C.cos C.tanh C.exp C.log + * [#fft] can do RGB (per channel) + * can show added inlets/outlets at runtime. + * can remove inlets/outlets at runtime (and erase them from screen). + * much faster videodev !!! + + (also unfinished [#edit_polygon] and [#draw_rect]). + +version 0.8.3 (2006.04.02): + + * added Makefile rules for downloading+installing ruby 1.9 + * new numops: weight rol ror + * new vecops concept helps with complex numbers + * new vecops: C.* C.*conj C./ C./conj C.sq- C.abs- + * [#convolve]: added attr "wrap", "anti" + * [#inner]: faster! + * [#shunt]: added attr index,mode,lo,hi + * now also works with older (non-CVS) versions of GEM + * new object classes: [#fastblur], [#t], [#rgb_to_rgba], [#rgba_to_rgb], + [#change], [#swap], [#polygon_perimetre], [#polygon_area], [args], + [#gamma], [#saturation] + * now autodetects the .gz suffix (goes with ppm/targa/grid formats) + * moved the rest of pd_help/ to doc/flow_classes/ + * automatic attribute generator for Ruby + +version 0.8.2 (2006.03.17): + + * Ruby 1.9 required + * removed jmax2pd + * fixes of various compilation problems + * new object classes: [realtimer], [#export_pix], [#import_pix], + [#border], [#fft] + * beginning support for LTIlib. new object classes: + [lti], [lti.meanShiftSegmentation], etc. + * added "load" method in [gridflow]. (thanks Claude) + * automatic attribute generator for C++ + * added "help" and "get" methods to *all* classes (!!!) + * no more "make install" + * not using mkmf.rb (ruby's makefile generator) anymore + * removed --debug-harder (use "valgrind" instead) + +version 0.8.1 (2006.02.20): + + * [ls] now supports wildcards: ? [] * ** + * [#color] has new method: delegate + * added [regsub], [memstat], [listfind], [sendgui] + * x11: removed methods: draw,autodraw; added: use_shm,title + * examples : added markov.pd, bounce.pd, doodle.pd, mechanics.pd + * [#pack],[#unpack] now default to 2 values + * new numops: clip+,clip- + * fix for shared memory bug in [#out x11] + * added [#out tk] + * added [#out opengl] (using GLUT, hackishly) + * [unix_time] behaviour changed. (see manual) + +version 0.8.0 (2005.06.06): + + * removed support for jMax 2.5 and jMax 4.1 + * added GCC 3.4 support + * added AMD64 support + * added support for puredata "datastructure" pointers (aka gpointer) + * changing the @-prefix for a #-prefix, where the old prefix still works + (the old syntax is backwards-compatible, + the new syntax is forwards-compatible) + * 13 object-classes rewritten from Ruby to Pd abstractions + * merged [@],[@!] -> [#] and added message "op" + * removed all one-input ops (see next...) + * new two-input ops: abs- sq- avg hypot sqrt rand + * [#fold],[#scan]: removed seed arg and right outlet; added msgs "op" and "seed" + * [#inner],[#convolve] : added msgs "op" and "seed" + * [#inner],[#convolve] : removed three first args (usually * + 0) + * [#inner] : removed middle inlet + * major changes to the bridge API (Ruby<->PureData) + * project "Linux Devices For Ruby" got merged in, as devices4ruby/ + * source code cleanup + * internals: split Grid into Grid+GridPtr + * internals: GridObject no longer manages GridOutlet + * internals: added classes P,PtrGrid,... + * internals: beginning to use C++'s Standard Template Library (sometimes) + * [gridflow] now has "formats" msg (to list available formats) + * [#store] added msg "op" + * [#out x11] removed flag "verbose" + * some spaces may now be omitted in gf-lists. e.g.: + ( ( 2 1 ) ( ) ) ( 3 4 ( 5 ) ) can be shortened to: ((2 1) ()) (3 4 (5)) + * new object classes: + [display], [#reverse], [#unpack], [#centroid2], [ls], [renamefile], [unix_time], + [exec], [plotter_control], [#text_to_image], [#hueshift], [rubyarray] + * in pd_examples added Alx's epicycloid.pd, scratch_video.pd, threshold.pd + and Matju's goop.pd + * some new/updated help files by St�hanie Brodeur & Darsha Hewitt + +version 0.7.7 (2004.08.24): + + * GridFlow runs on MacOS 10.2 with PureData 0.37 + * updated drag_rectangle.pd, nervous_video.pd, fire.pd, color_correction.pd + * updated feedback_fractal.pd (added morphing) + * added pd_examples/waves.pd, pd_examples/sand.pd + * added pd_examples/color_detect.pd (supersedes chroma_key.pd) + * added pd_examples/spectrogram.pd, pd_examples/photo_pianoroll.pd + * removed [rtmetro] (obsolete) + * [@store]: added methods: put_at, reassign + * [pingpong]: added $1 + * [demux] renamed to [shunt] and extra optional arg added (for initial value) + * new object classes: + [range], [#mouse], [#pack], [#color], [bindpatcher], + [#camera], [#fade_lin], [#peephole] + * videodev: added method "get" + * [@out quartz] now works properly + * [@downscale_by] accepts any number of channels + * [@inner2] removed; instead use [@transpose] with [@inner] + * videodev: "transfer" message allows to change the queue's length + * quicktime(hw): added messages "parameter", "framerate", "size" + * quicktime(hw): fixed encoding bug + * png: fixed memory leak + * ./configure --lite disables float32 float64 int64 + * ./configure --verbose prints useless details + * doc: rewrote installation instructions + * x11: fixed memory leak in resizing window + * on MacOS 10 [@out window] now defaults to [@out quartz] + * doc: added credits section + +version 0.7.6 (2004.03.22): + + * GridFlow runs on MacOS 10.2 (only with jMax 2.5) + * [@out quartz] makes a native MacOS (Cocoa+Quartz) window (warning: very buggy) + * support for Apple QuickTime movie decoding (format/quicktimeapple.c) + * file suffix detector is now extensible + * added: Ruby interface for libUSB (base/usb.c) + * x11: now emits "keypress" and "keyrelease" messages + * [@downscale_by] now supports 4 channels (therefore [peephole] does too) + * fixed bugs in: x11, @draw_image, @import, @export, ... + * "open x11" now allows any DISPLAY spec + * now includes the pictures used in the examples + (not a separate download anymore) + * [@out x11 here override_redirect] (override window manager; be careful with this) + * [pd_netsocket] does like [netsend]/[netreceive] but two-way + (warning: not complete yet) + * support for nested lists in incoming messages + * new object classes: + [delcom_usb]: support for Delcom USB I/O controller + [joystick_port]: support for linux joystick drivers + [foreach], [rubysprintf], [listflatten] + [messageprepend], [messageappend], [@transpose] + [@fade], [@centroid] + jMax emulation: [listmake], [listlength], [listelement], [listsublist] + jMax emulation: [listprepend], [listappend], [listreverse], [oneshot] + jMax emulation: [inv+], [inv*] + * Pd main window: adding GridFlow menu, Ruby/Tcl evaluators (with command-history) + * added bin/jmax2pd (converts .jmax files to .pd files) + * ported all .jmax examples to .pd (using jmax2pd) (20 out of 20) + * support for variable number of inlets/outlets (only with PureData) + +version 0.7.5 (2003.09.28): + + * type aliases: int32,i32,i; int16,i16,s; uint8,u8,b; float32,f32,f + * added support for float64 (alias f64, d) + * added support for int64 (alias i64, l) + * doc: added number type table + * @convolve: supports even-sized grids + * fixed bug: puredata gf clock ran way too fast + * rewrote the profiler subsystem (and removed bugs) + * @scale_by: now works with any number of channels + * renamed samples/ to jmax_examples/ + * Algebraic Properties Descriptions (internal, used for accelerations) + * @convolve,@outer,@for,@inner,@draw_polygon: much faster + * quicktime: support for pluggable codecs (eg: dv, divx, rpza, ...) + * quicktime: fixed more bugs + * quicktime: major speed increase + * quicktime: added "colorspace" option + * videodev: fixed bugs + * videodev: removed obsolete option "noinit" + * videodev: added option "colormodel" (especially because of new camera drivers) + * sdl: added automatic resizing of window + * png: read support + * jMax bridge: more stable than ever + * PureData bridge: *much* more stable than ever + * Operator1, Operator2 renamed to Numop1, Numop2 + * x11: now also called "window", so you can write "@out window", "open window" + * new object classes: + @draw_image: picture-in-picture, with alpha blending, etc + jmax4_udpsend: send to a jMax 4.0.x system via UDP + jmax4_udpreceive: receive from a jMax 4.0.x system via UDP + pd_netsend: send to a pd system via UDP + pd_netreceive: receive from a pd system via UDP + @eight: (like @four, but with eight of them ;-) + peephole: like [@out x11] but as inset of a patcher (jMax 2.5 only) + * support for upcoming jMax 4.1 + * "open file" autodetects how to handle a file, by filename suffix + +version 0.7.2 (2003.04.24): + + * fixed bugs in: make install, jpeg reading + * added support for float32 + * added direct .jmax decoding + * added direct .pd encoding + * pd examples moved to separate directory + * ported some .jmax examples to .pd (automated) (8 out of 20) + * added motion_detect.pd + * new classes: demux, and more jmax emulations + * @in,@out: keyword "option" may be omitted + * configure: added --ruby-prefix + * adding custom C++ pre-preprocessor + * better type checking of message arguments (better error reporting too) + * @print supports 3 dimensions, and msg "base" with arg 2,8,10,16 + * can now write loadbang-messages into an object box using the comma + * major cleanup of the source code + * added operator *>>8 (multiplication by value then division by 256) + * new classes: @rgb_to_yuv, @yuv_to_rgb + * @rotate now works with multiple axis (can work on 3D points, etc) + +version 0.7.1 (2003.03.24): + + * fixed important bugs (crashes and such) + * @store,@ can now receive in inlet 1 while sending from outlet 0. + * @, when inlet 1 grid size is small but not 1, is now much faster. + * added memcpy() usage logging (see profiler_dump) + * added examples: drag_rectangle.jmax, plot.jmax, eclipse.jmax + * added example: cellular_1d.pd + * added classes: fork, jmax_udpsend, jmax_udpreceive + * added classes: @rotate, @remap_image, @type + * added operators: gcd,lcm (common divisors/multiples) + * quicktime: added encoding, added seek, fixed bugs + * @in inlet 1 tells frame number (int), end-of-file (bang) + * @in: added: set, option loop (controlling auto-rewind) + * updated cross_fade.jmax (much faster) + * @two,@three,@four allow inlet 0 bang trigger + * configure: simpler config for jMax 2.5 + * PD help patches (by Uli Berthold) + * PD: "make install" takes care of help patches and library + * CVS web interface on artengine.ca (thanks to Alex) + +version 0.7.0 (2003.02.01): + + * new classes: @cast, @join, @ravel, @grade, @perspective + * new grid protocol supports several number types (added uint8,int16) + * added number type support in most classes + * added "option cast" for @in in some formats + * can now specify number types in grid literals + * added some MMX support (accelerates by 0%..40%) + * @import: added optional 2nd arg specifying type. + * @import: can convert symbols to grids of their ascii codes. + * new [@import per_message] yields one grid per incoming message + * [fps]: added options "user" "system" "cpu" for selecting clock + * aalib: added options autodraw, draw, dump + * aalib: added raw input (two channels: characters, attributes) + * x11: added support for 256-color mode using a private colormap. + * x11: added "use_stripes" for alternate 256-color rendering. + * fixed problems with earlier versions of Ruby (like 1.6.2) + * new samples: polygon.jmax + * videodev_effects.jmax: added sort-effects, centre-of-gravity-tracking + * the time profiler is back to working !!! + * @scale_by, @downscale_by: added right inlet, for configuration + * @store is a bit faster + * ppm: accelerated by large amount + * @outer,@inner,@inner2,@fold accelerated by obscene amount + +version 0.6.5 (2003.01.10): + + * can now encode Targa-24, Targa-32, JPEG-24 + * can now output through aalib (ascii art library) + * fixed problems with libruby.a + * tested with the new version of Ruby (1.8) + * new classes: + fps, @rgb_to_greyscale, @greyscale_to_rgb, @solarize, + @complex_sq, @export_symbol, @draw_polygon, + @apply_colormap_channelwise + * new class FPatcher, a ruby patcher/abstraction system + * @scale_to,@contrast,@spread,@posterize now available in + PureData & Ruby; they also now accept arguments. + * [@scale_to]: back to working; inlets "height" and "width" merged + * [route grid_begin] replaced by [route grid] + * [route grid_end] replaced by [@finished] + * Most everything is 10-50% faster + * changes in the internal transmission of grids + * new two-input operators: div, swapdiv, put, ignore + * compilable on MacOS 10 + +version 0.6.4 (2002.12.23): + + * can now decode JPEG (using libjpeg.so) + * many bugs fixed (especially in file formats) + * operators: log* added; tanh renamed to tanh* + * @two,@three,@four are no longer specific to the jMax side + * format grid: option headerless for reading any kind of file + * format grid: option headerful (revert to actual .grid format mode) + * fixed problems with GNU C++ version 3 + * format ppm: accelerated writing + * format modifier gzfile: gzip support also works with [@out] + * format x11: the "here" specifier is now optional + * added @checkers + * [@scale_by {y x}] for different y,x scale factors + * [@in blah blah] means "open blah blah" -> [@in] (and same with @out) + * added @downscale_by with or without smoothing + * format targa: can now decode 32 bit RGBA + * @layer: combines RGBA foreground with RGB background, yielding RGB. + * format grid options: endian big, endian little, endian same + * formats ppm,grid: use 'option rewind' to overwrite same file + (by default, rewind is no longer done after each frame) + ('option rewind' also rewinds on reading) + +version 0.6.3 (2002.12.06): + + * removing the custom leak detector ("Valgrind" program used instead) + * removed all (?) memory leaks + * videodev: new options: frequency, transfer [read|mmap], noinit + * profiler summary code rewritten + * profiler wrapper code removed + * x11: option setcursor <0-63>, option hidecursor + * x11: outlet 0 tells cursor position / button state + * more C++ification of the code + * many bugs fixed (especially crashes) + +version 0.6.2 (2002.09.17): + + * jMax objects written in (or using) Ruby now can work in PureData too. + * new format: SDL (portable output to window) + * can now compile bridges without libruby.so + * changed grid-protocol: added direct object-to-object streaming. + * bug: gridflow's clock tick back to a decent value (sorry) + * all inlets supporting grids also convert int/float as 0-D grids + * @fold and @scan now accept grids in right inlet and constructor + * @convolve is 2-3 times faster + * %,swap% are now called rem,swaprem; new %,swap% is the true modulo. + * @for now allows vectorial from/to/step values + * @identity_transform removed, change to eg: [@for{0 0}{240 320}{1 1}] + * PD users: grid literals are written like: + [@for ( 0 0 ) ( 240 320 ) ( 1 1 )] with all those spaces + * @inner,@inner2,@convolve can take right inlet grid as 4th argument + * re-enabled and improved the memory leak detector (use --debug) + * fixed many bugs and leaks + * fixed bugs in @store + * added sample: zoom.pd + +version 0.6.1 (2002.08.29): + + * now compiling GridFlow as C++ (replacing C) + * now you can use Ruby 1.7, which is faster + note: if you do so, make sure your version is dated 2002 + * new objects: rubyprint, printargs, @print, @scan, @inner + * new format: apple quicktime (using libquicktime.so) + * @in gzip support (example: "open ppm gzfile teapot.ppm.gz") + also works with targa and grid + * BitPacking now supports 1 to 4 channels instead of just 3 + * using mkmf.rb makefile generation; some MSWindows support thru Cygwin + * added geiger counter simulator in [rtmetro] + * libruby.so is only needed when using GridFlow through jMax + * now can do grid literals in @ and @outer, like [@ + {0 1}] + * syntax of @redim,@import changed from [@redim 2 3] to [@redim {2 3}] + * "3 3 # 1 0 0 1" into inlet does automatic @redim, for all objects + * grid literals accept {2 3 # 1 4 5} as an implicit [@redim {2 3}] + * objects rewritten in Ruby language: @in, @out + * updated samples, templates, documentation. + * fixed bugs + +version 0.6.0 (2002.07.31): + + * THIS IS AN EXPERIMENTAL BRANCH (VERY BUGGY) + REAL PROJECTS SHOULD USE VERSION 0.5.0 INSTEAD + * GridFlow rewritten as a plugin for Ruby instead of jMax. + * GridFlow now includes a Ruby-for-jMax bridge. + * you need Ruby 1.6.6 (including libruby.so) or compatible + * you don't need GNU Bash anymore (configurator is now a Ruby program) + * format handlers for .ppm, .tga, .grid rewritten in Ruby + * merged all Makefiles together, etc. + * sources are in base/ and format/ instead of c/src/ + * many bugs removed, many bugs added. + * will read ~/.gridflow_startup if it exists + +version 0.5.0 (2002.06.08): + + * big changes to the internals (especially use of macros) + * can compile without X11; added --no-x11 in ./configure + * removed support for jMax 2.4 + * auto-detects jMax 2.5 and jMax 3.0 + * @inner renamed to @inner2 (new, proper @inner coming soon) + * faster unary operators + * added unary operator: sq (faster squaring) + * further separation of GridFlow from jMax + * major format API changes (added Stream class) + * format "grid" now supports 8 bits per value + * support for HeroineWarrior's LibMPEG3 (reading + seeking) + * libmpeg.so (Greg Ward's) now also looked up as "libwardsmpeg.so" + * added objects: rtmetro, pingpong + * Moved CVS repository from Hostname.2y.net to Artengine.ca + * updated samples + +version 0.4.1 (2002.01.02): + + * cvs repository now has public access + * now can run configure without jmax/fts being present + * standalone version now works on Silicon Graphics and Corel Netwinder. + * MPEG format readonly (single file at a time; mpeg video layer only) + * grid TCP: non-blocking read + * fixed all known memory leaks + * X11 Shared Memory now disables itself properly on remote display + * updated help files + * updated help screenshots in the manual + * fixed profiler bugs + * fts emulation moved to c/src/ and tests moved to tests/ + +version 0.4.0 (2001.11.28): + + * package name changed from "video4jmax" to "gridflow" + * documentation *rewritten*, more precise, more structured + * documentation format is now XML (includes HTMLized version) + * can now compile without jmax/fts (if you need quicker testing...) + * added format "grid" for storing any kind of grid to disk. + * added TCP client/server socket support (with format "grid" only) + * added (timewise) profiler + * @convolve now takes up to three arguments + * Format API changes again + * "connect" merged into "open" + * "size" merged into "option" + * @video_out merged into @out + * format videodev can now do full framerate (instead of just half) + * added X11 Shared Memory support (faster image transfer locally) + * added @scale_by for quick scaling by integer factors. + * @identity_transform, @scale_to are much faster. + * many other accelerations + +version 0.3.0 (2001.11.04): + + * reworked File Format API + * grid objects now all accept lists of integers (auto-convert to 1D grid) + * many accelerations (incl large speedup on chains of binary operations) + * transformed @video_out (X11) into a "File Format" (really) and: + * allows multiple displays + * auto-resizing window + * can set output as wallpaper + * can read from the screen (screenshot) + * @video_out now a backward-compatibility wrapper + * format videodev now uses double buffer mmap (somewhat faster) + * @video_in_file, @video_out_file renamed to @in, @out (with aliases) + * new objects: + @convolve, @inner, @for + * more samples: Fire, Ripple, Game of Life, Chroma Key, Convolve, Saturation + * much improved samples: Color Correction, Linear Transform. + * use [@store uint8] for low-ram storage of values 0-255. + * videodev: added option norm 0=pal 1=ntsc 2=secam 3=auto + +version 0.2.2 (2001.08.15): + + * @video_out auto-updates on X11 ExposeEvent + * updated documentation and help + * fixed installation/config of help and summary + * split BitPacking module from @video_out + * added support for BTTV input (that is, using mmap() command) + * new videodev options: channel,tuner,contrast,hue,etc. + * now with 30 binary operators, and 3 unary operators + * added many new samples + * new objects: + @!, @fold, @outer, @dim, @redim, + @posterize, @contrast, @two, @three, + @identity_transform, @scale_to, @spread + +version 0.2.1 (2001.08.01): + + * added private CVS repository on hostname.2y.net + * added configuration script (detects video4linux 1.x) + * added documentation in HTML format + * added File Format API + * format "ppm": PPM P6 RGB24 support read-write + * format "targa": Targa RGB24 support read-only + * format "videodev": Video4linux read (using read() command only) + * @store no longer slowing down its downstream + * many other accelerations + * Tuple changed to Dim; Index removed + * Grid element type is typedef Number + * @ supports grids in right inlet + * now there are 20 binary operators + +version 0.2.0 (2001.05.05): + + * package name changed from "video" to "video4jmax" + * new kind of post() cancels repetitive log entries + * major modifications to existing objects + * new "grid transmission system" + (Tuple,Index,GridInlet,GridOutlet,GridObject) + * vout -> @video_out + * vin_file -> @video_in_file + * vout_file -> @video_out_file + * added @import, @export + * added @, @store + +version 0.1.1 (2001.04.03): + + * removed vout's grab + * vout width and height parameters swapped + * vout_file class is mostly like vout but writes to a file in PPM format. + +version 0.1.0 (2001.03.14): + + * fixed the bits_per_pixel bug + * merged in some other variations on the main sample + * included Christian's makefiles for jmax 2.5 + +version 0.0.7 (2001.03.08): + + * vout should support most types of RGB visuals now + * autodraw now works: 0=none; 1=page; 2=line; 3=pixel + * less global variables + * putting all of this under the GPL + +version 0.0.5 (2001.03.05): + + * vout class, two params: width, height; 24-bit BGR only; refresh by +finishing scanline or sending bang; "grab" (hack); "reset" for resetting +the pixel pointer. + + + +a very short history of GridFlow: + +video4jmax 0.1 (mar 2001): sending int messages to a window in jMax +video4jmax 0.2 (may 2001): grids +GridFlow 0.4 (nov 2001): xml manual; can compile without jMax +GridFlow 0.5 (jun 2002): mpeg; cvs goes to artengine.ca +GridFlow 0.6 (aug 2002): ruby; c++; literals +GridFlow 0.6.2 - 0.6.5 : pd; jpeg; big speedups; 1 grid = 1 message +GridFlow 0.7.0 (feb 2003): number types; mmx; other big speedups +GridFlow 0.7.2 - 0.7.5 : pd support gets stable; float grids; @draw_image; source_filter.rb +GridFlow 0.7.6 to 7 (2004): permanently switching from jmax to pd; #pack, #color, #camera +GridFlow 0.8 (2005): attributes; # prefix +GridFlow 0.8.1 to 4 (2006): LTI; FFT; complex numbers; GEM pix compatibility +GridFlow 0.9.0 (2008): removing Ruby, removing LTI, adding OpenCV +GridFlow 2.0 : ... -- cgit v1.2.1