|
|
![]() products linux osx win32 bsd autodox classtree source code | tabpixVersion 0.958, build id 0703161351Module Descriptiont@b TNG. a set of lightweight c++ classes for next generation pixel moving, scaling etc.. plus basic audio objects like audio stream handle audio sample handling etc 3d points and boxes
depends on: Module HistoryVersion: 0.9582007 march 4removed the include file tab_version.h and replaced it with a global tab_version_macros.h which sits in the root directory for all tab build projects. This has happened in an effort to significantly speed up rebuilding of the project after build numbers are incremented.2007 feb 20fixed the method tab_object::SystemLaunchBrowserDoc() so that it works more reliably under windows, including the invocation of the users PREFERRED web browser (firefox) instead of iexplore.exe. This should fix the failure of the F1 (help) key in zs4.Version: 0.9572007 feb 18added static "header_only" boolean member to tab_riff32 and tab_mov32 classes. The member can be set using the ParseHeadersOnly(bool) method. This causes the parser to bypass the "movi" list of an avi file.2007 february 15added support for FreeImage library which allows the reading of .iff, .pcx, .gif and many more image formats.Also added support for loading image sequences. This requires the directory containing the images to also contain a *.ini file with a [sequence] group that has four entries for now: "fps=" (frames per second), "width=", "height=" and "select=" (Set by default to a file pattern like "*.jpg"). This *.ini file will indicate to zs4 how to interpret the image sequence in the directory. The files will be sorted by name. 2007 february 13named struct's and union's which had been un-named thus far.2007 february 12using now libexpat version 2.0 for xml parsing (specifically for font configuration files under linux, among other things)2007 january 30Modified Direct Draw Surface interface used from DDSD to DDSD2 (DirectX 7).2007 january 18-19added a method called AlphaReverse() to tab_bitmap class, added CoInitialize calls to thread startup and the corresponding un-init calls ad thread termination. Cleaned up lots of code in preparation of 64-bit version of ZS4.2007 january 17fixed png codec so that it only creates bitmaps for decoded data when neccessary.Version: 0.9532006 may 10added method in media stream handles (read mode) which allow the temprary freeing of associated video memory. this happens in the hope memory use during zs4 output generation can be reduced....2006 aprilfixes for gcc (GCC) 4.0.3 20051201 (prerelease) (Debian 4.0.2-5)Version: 0.951fixed tab_object::Scale32() linear scaler (range overflow issues), which allowed the repair of the wave reader (wav and avi files) such that it now supports 8 bit unsigned wave formats (uncompressed).Version: 0.9502006 feb 2made sure that the media player based input filter can not read *.dv files made by iMovie. bummer. but that's billyboy, ain't it...2006 jan 21Version: 0.9492006 jan 21added running export-time-stamp methods WriteTimeGet() and WriteTimeSet() to allow zs4 to transmit a relative export time stamp to the export driver (wmv driver specifically).2006 jan 20added to methods to tab_filebuf class (win32 only) which serve the purpose of using and accessing wide string information in windows media encoder subsystem, amont others. the methods are:- tab_error SetFromWideString(WCHAR * wstr); - static tab_filebuf * VectorizeStringFromWideString(tab_vector * v, WCHAR * wstr, bool unique); fixed windows media reader to no longer report *.wmv files as a writable format. this is a reader only module (media player nuts and bolts). Version: 0.9482005 12 30added support for reading and writing *.ini files from this lowest level of tab support code...Version: 0.9472005 11 126changed copyright date to include the year 2005Version: 0.9452005 10 13added support for rotating a point about something other than the coordinate 0:0 (rotate2D function about an other point)2005 10 11when generating an output avi file, the frame rate in the avi headers now reports a rounded value of the actual frame rate. an (ntsc) rate of 29.97 frames per second will be shown as 30 fps.Version: 0.9442005 9 11added methods to convert whole bitmaps from rgb 2 yuv and vice versa in a non-planar fashion.2005 9 10added tab_bitmap methods to retrieve bitmap pitch and bitmap bits2005 09 7added locking and threading logic wich used to be in kernel library. and changed buffer logic to recycle small memory allocations instead of reallocation them.Version: 0.9422005 08 21added a class tab_dl, designed to support dynamic library loading on a low level. this is primarily for the creation of a FreeFrame client, which requires dynamic loading of FreeFrame plugins. more info on that topic at http://www.freeframe.orgVersion: 0.9402005 08 8fixed SystemWhich() function for linux and osx so that they also recognize files which exists in the current directory ./ /br2005 08 6added support for decoding the fourCC code "444P", which i found when dumping the RIFF struction of an mencoder generated AVI files that was scaled.made tab_object::SystemCommand() abortable... Version: 0.9352005 06 12changed compile options for linux from -march=686/pentium4 to -mcpu=686/pentium4. it is hoped that these changes allow the softwaer to run on an opteron as well.2005 06 7for linux pentium4 flavour made all TAB(FAST)FLOAT variables 64 bit.added a bunch ofprimitives to tab_bitmap cpp class, enabling the drawingof lines ellipses, circles, rectangles (filled or outlined)... Version: 0.9342005 06 1minor fix forwriting avi/wav meta INFO list chunk, now should be parseable event by the tabriffdump utility.improve wav reading speed for reverse reading and random access, cached reading... Version: 0.9312005 may 18added a peek-average fetch method to cpp class tab_peek, this happens for frequency sensitive noize gates etc...Version: 0.9302005 may 12the class tab_af_imagio, which "streamifies" still images has been changed to report the stream duration as 30 seconds.Version: 0.9302005 may 11included some metainformation into the output file (wav and avi). this is a RIFF info chunk with engineer=user, software=zs4-kernel, etc, overridable by the property keyvalues fron the cpp object "tab_af_wavio".allow the extension "zsv" for zs4 generated avi files. this allows a motion-png video which the win32 media player cannot read to be renamed with an extension of ".zsv", which allows zs4 to read the avi file using its on parser and internal codecs, bypassing wmp shortcomings. Version: 0.9282005 april 28after revisiting complaints about a video import limit of about 3.5 minutes in the win32 (ms-player-reader), expanded some stuff to 64 integral values in the hopes that this will address the acusations... :)Version: 0.9272005 april 24attempt to fix jpeg still frame encode bug (default quality was wrongly 0 instead of 90...2005 april 21added nifty, mutant, additive blend to tab_bitmap::RotMovScale(), this was done for supportingsome higher level pattern generation algos...Version: 0.9262005 april 11added shortcut method to tab_bitmap which combines init/copy functions into a new CopInit() method...Version: 0.9232005 02 2 (wed, Jan 26)groundhog day. made wrapper to allow the fiewing of still images (jpg etc) as media streams. fixed length = 10 secs.... this means that ui objects like showaudio and mmeditor now are capable of viewing jpg and other images as if they were streams. this affects waveman and zweistein (zs4) products.2005 01 26 (wed, Jan 26)internal audio-samples per second has been increased to 48 kHz, to be in line with popular DVD requirements. there is a hit on audio playback performance (~15%)Version: 0.9222005 01 12 (wed, Jan 12)made raw 24 bpp win-bump encoder for "uncompressed" avi co(dec). this should also mean that (without further mucking) the fotoman should be capable of exporting *.bmp files (by specifying that extension in the file name) and the command line utility tabconvert(.exe) should now actually succeed in converting to that image format.Version: 0.9202004 12 26 (sun)now got an avi parser which can (for now) extract audio from avi files. this in the course of creating a raw-uncompressed-avi writer for both zweistein 3.01 as well zs42004 12 22 (wed)added proper support for gradient transparency in win32 icon loader. added support for 1 bpp monochrome cursors and icons with proper boolean transparency.Version: 0.9192004-12-15fixed string to color conversion. the fomats now permissible are:- "rgb[a]" (hex values 0-f, alpha digit optional - "rrggbb[aa]" (hex values 00-fff, alpha digits optional - "red", "green", "blue", "orange", "yellow" etc... 2004-12-18fixed 32 bit format reading for wav files... so at this point the wav reader can handle 16 bit (type 1) waves of (hopefully) all sample reates and channel counts, as well as 32 bit wave files (type 1 and 3)Version: 0.918 and earlier2004-11-13much things have happened lately to this module since the improvements in imaging. most of all we have extended this collection of multimedia primitives with many audio processing features:list of new object classes: * tab_audiofilter, this object is now our basic building block for a pull-based processing logic, including file input filters as using the i_document_audio in module tabaudio * audiofilter tab_af_basic extends tab_audiofilter and provides 10 band frequency measurement on a per channel basis. * audiofilter tab_af_basic_stats extends tab_af_basic and provides accumulated amplitude statistics for all frequency stripes of all channels of an audio stream. * utility object tab_af_chanprops for storing the properties of single channel audio chunks. props include amplitude per frequency band, overall amplitude, start and duration of the chunk * utility object tab_af_chanprops_accu, for accumulating/averaging running properties stashed in tab_af_chanprops * audiofilter tab_af_mswav represents to ms-wave code moved here from the plugin module document_mswav. it, of course, extends tab_audiofilter 2004-09-03-Frichanged the minimum and maximum scaling factors to 256 (1/256 respectively) and achieve an overall scaling range where the highest possible magnification is more than 50000 X of the lowest possible magnification.added a simple anti-aliasing capability to the (mix-)scaler. this is what sorta had some kinda causal connection with the 50000X scaler. 2004-09-02-Thuadded a mix (blend alpha source) mode to the screen scaler, and underneath that, the tab_bitmap class. also moved the inline code from the tab_bitmap.h file to the tab_bitmap.cpp file. no need to advertise our guerilla-coding-tactix...changed the minimum and maximum scaling factors to 64 (1/64 respectively) and achieve an overall scaling range where the highest possible magnification is more than 4000 X of the lowest possible magnification. |