MooVId revision history: (this page is plain text) 0.1b only rgb support 0.2b added 8 bit cram support 0.3b async i/o handling added 0.4b rgb 16 bit/16 bit cram support added 0.5b added cvid 24 bit support & timer based stuff 0.6b fixed a bug in the rgb 8 bit routine 0.7b added 16bit->gray support (05.11.96) 0.71b fixed some little bugs (07.11.96) 0.72b fixed the avi examining routines&the reqtools opening stuff (09.11.96) 0.73b fixed the first framez skipping bug (14.11.96) 0.75b the avi stream detection fully rewritten (now support audio+video, video+audio, only video, only audio) (17.11.96) 0.8b added i/o error handling & 8 bit (mono pcm) audio support (17.11.96) 0.81b added audio.device allocation (system friendly audio allocation) & better audio-error handling (18.11.96) 0.82b fixed mono sample playing bug: now plays mono sample in left+right channels 0.9b finally fixed CVID 24 bit bug... huh... c compiler/d68k bug ;) & size optimization (21.11.96) 0.91b fixed stupid (non dividable width by 8) avi files playing & io bug handling fix (22.11.96) 0.92b fixed random pixels CVID bug... i hope now all CVID bugs fixed + Gray routine optimization (25.11.96) 0.93b added some brightness (a little bug in gray conversion.. ;)+ now really fixed the "modulo" like bug (26.11.96) added 24 bit->ham8 support for cvid24 modes 0.94b optimized the cvid decrunch routine (-~300 bytez) (27.11.96) 0.95b Finally added shell argrument checking... (07.12.96) 0.96b Added screenmodeid requester (use modeid ? ) & removed 2 harmless enfocer hits (08.12.96) 0.97b Mouse button detection rewritten.. no more btst #6,$bfe001 ;) and optimization: -400bytez (08.12.96) 0.98b I/O handling rewritten: now buffered with intelligent bufsize calculation (11.12.96) 0.981b i/o error detection added for the new buffered i/o routine (12.12.96) 0.982b audio bug fixed... thanx for Caveman/CDi ;) (30.12.96) 0.983b cvid bug message added and first release for AmiNET (31.12.96) 0.984b lame library opening bug fixed (12.01.97) 0.985b added 18bit (bugfree ham8) support & AVId now startable from WB (15.03.97) 0.986b Faster AUDIO conversion (16.03.97) 0.987b Verbose option and 16 bit Mono PCM audio support added (16.03.97) 0.988b Faster 18bit conversion and reduced about 300kb the 18bit mode memory usage & fixed a bug in the 18bit screen init routine & in 18bit the screen is centered (as in all other modes) (17.03.97) 0.989b Fixed a nasty bug in the 18bit init routine (could cause random crash) Needs about 300kb smaller memory when no 18bit mode selected MUCH more smoother audio playback & fixed audio sync problem (19.03.97) 0.990b Fixed the cvid decompressor height/internal modulo error (20.03.97) Fixed all CVID related bug.... huh... finally.. i almost give up.. ;) 0.991b Added support for stereo 16 bit sound (no stereo 8 bit yet, becoz i don't have such format avi ;) & fixed fps display bug (01.04.97) 0.992b Fully system friendly audio (no more hw. poking) (may cause little audio playback bugs with 16 bit stereo playback) & removed sound play when noskip or/and fps parameter used (02.04.97) 0.993b Fixed some audio related bugs... No more CPU eating loops on fast machines.. (thanx to ALAN for the help!) (01.05.97) 0.0994b Added 32 bit c2p for 32 dividable width avis (around 10-15% faster than the old c2p) (10.05.97) 0.994b++ Added NOCENTER option and fixed many audio sync prob. (again...) (21.05.97) 0.995b Added WINDOWPLAY option for 16 grayscale window play (kick 3.1 req) (25.05.97) 0.996b Added FORCE32 (32bit chunky force) and more than 2 times faster 24bit-> gray conversion Sound again no disabled when FPS and/or NOSKIP parameter used (01.06.97) 0.9961bFixed the Height problem in window playback mode (05.06.97) 0.997b Added AKIKO parameter (for the window playback) and added ultra fast window playback for AGA/ECS/OCS (and dont need kick 3.1 anymore for win playback) (15.06.97) 0.9971b Fixed a bug in the pubwin opening with windowplay (21.06.97) 0.9972b Optimized the memory allocation (no more memory allocated which is really needed) (22.06.97) 0.9973b Fixed a bug in the stereo 16 bit audio playback and added 8 bit stereo audio support (29.06.97) 0.9974b Fixed the 18bit modulo like bug (now able to play all 24 bit avis in 18 bit) (29.06.97) 0.9975b Added double height switch (kick 3.1 req) (30.06.97) 0.9976b Added 16 grayscale ECS support (Ofcourse OCS is good too!) (01.07.97) 0.9977b Fixed a bug in the 16bit->ecs conversion routines No more palette allocation for 18bit (unneded) (03.07.97) 0.9978b Added full system friendly c2p for ecs/gray/ham8 routines (requires 3.1, akiko,gfxcard recommended, and i think ham8 wont work on gfx cards) (03.07.97) 0.9979b Improved the audio channel allocation: now able to play 2 stereo (or mono) avis at same time with sound (07.07.97) 0.9980b Some optimization in the 24bit->gray8, and in the 24bit->ecs routines (18.07.97) 0.9981b Improved the audio errorhandling, and some things added for async i/o (26.07.97) 0.9982b Removed some ham8 bugs from the 24bit->ham8 routine & from the 16bit->ham8 routine (03.08.97) 0.9983b Fixed the RLE compression error requester and removed two harmless enforcer hits (04.08.97) 0.9984b Little faster window playback (about 6-10% faster) (10.08.97) 0.9985b Major rework in the video decoder/converter selection (i can now easily add gfx card support :) & faster 8/16bit->ecs and 8/16bit->window playback (about 10%) (13.08.97) 0.9986b Added some monitor specific stuffs (PAL,NTSC... and LO/HI/SHIRES Switches...) and better decoder/converter selection & better audio convertert selection (20.08.97 - Hungary Rulez :) 0.9987b The audio sync fixed again... i think there are 2-3 different AVI encoders and all make different audio sync... now AVId use the most recent audio format... (this cause problems on pC too.. :) Much more precise frame timing Fixed MSVC/CRAM detection bug.. (now able to play MSVC AVIs too) (31.08.97) 0.9988b Fixed CVID non by 4 dividable width avis modulo-like bug... Huh... that was hard to find ;) (02.09.97) 0.9990b Added RLE 8 bit decoder support (14.09.97) 0.9991b Fixed some audio memory allocating problems (only with stereo audio) Added 32 bit CVID support (i hope work.. i have only 2 test AVIs) Fixed problem: no more crash when ECS and WINP used at same time (but still not recommended ;) (16.09.97) 0.9992b Fixed the RLE8 bit decoder i/o buffer calculation (aahh... what a stupid format... some times the compressed image bigger than the orginal... uhh... mICROsOFT... ) Fixed an aligment problem in the AVI file structure reading (this caused some i/o errors in the previous versions with some AVIs) (21.09.97) 0.9993b Fixed problem with widder than 320 AVIs playback (huh... heavy workaround..) (note: in 18bit mode the max width is 320 - because of the super-hires 1280 width limit) (26.09.97) 0.9994b Removed FORCE32 parameter (now FORCE16 instead of it) No more 32 bit width masking with the screen playback (only with the default 32bit c2p, with FORCE16 still masks to 16bit) Some optimization in the 32bit c2p (no more stack using in the main loop) (27.09.97) 0.9995b Added PUBSCREEN switch for the window playback (without PUBSCREEN option still play on the default pubscreen) (02.10.97) 0.9996b Added a SMALL GUI... (hehe :) - recommended with WINP option! (05.10.97) 0.9997b Now seek every time to keyframe when the gui slider used (except at some buggy index table avi) (09.10.97) 0.9998b Optimization in the 24bit->18bit converter.. global speedup: ~10% Added 18 bit support for 16bit AVIs (and a side note: the source code length is now above 10000 lines... ) (11.10.97) 0.9999b No more 32 bit width masking with the custom window playback routine & no more stack using in the window play c2p main loop Faster 16bit->18bit conversion (about 10% faster) (12.10.97) 0.99990b (huh.. what a stupid version number ;) Fixed a really big problem, what caused GURU on 3.0.. (sorry i tested only it under 3.1 ;) (reported by Alessandro Gerelli - thanks man!) (16.10.97) 0.99991b (the stupid version number strikes back :) So... added BREEZE (special fast & good ham8) dither for 24 bit AVIs (dither by Stephen Fellner - thanks for it!) Frame skipping changed: now AVId show at least one frame/s even on a very slow systems (06.12.97) 0.99992b Changed dither mode selection... now req. DITHER keyword and dither type (use DITHER ? option for help) Some pre-code for GFX-Card Support (what will be picasso96) (07.12.97) 0.99993b Fixed the BREEZE dither centering prob. and the BREEZE dither prob... (09.12.97) 0.99994b Changed BREEZE dither name to STORM (what a big change ;) Major speedup during 24/32 bit CVID AVIs playback (about 1.5 times faster 256 gray,16 gray ecs, windowplay) (01.01.98) 0.99995b Added full p96 support (but opens always a modeid req due a p96 bug..) (04.01.98) 0.99996b Added STORM dither for 16bit avis too (11.01.98) 0.99997b STORM dither optimization (about 10% speed up) Fixed problem with the FPS reading from AVI (lame rounding prob..) Fixed STORM problem with widder AVIs than 320 Now dither p96 default when p96 system detected (and the Workbench is a p96 screen) Default dither now STORM (instead of gray) When dither is gray and p96 screen selected then akiko option turned on (req kick 3.1) Optimized CVID decoder for S3 based cards too (or similar cards what have ARGB 32bit) (18.01.98) 0.99998b Fixed p96 bestmodeid() related stuff.. hu... not p96 was buggy just i was lame ;) (19.01.98) 0.99998c (ceta :) Fixed problem with the index search.. (if there not was an index then it caused i/o error) Added MABFIX switch for Hicolor RGB AVIs, because MainActorBroadcast save RGB15 bit instead of 15RGBpC... ehh... The default width now at least 320 at VGA/SUPER72/EURO72 monitor too! (and i hope now storm is working good on that monitors) Now STORM dither work with SDBL on all monitors and do not need kick 3.1 for that! (but i recommend 3.1 for PAL/NTSC, because of the speed!) (28.01.98) 0.99999b (soon 1.0 ;) Added non-interleaved sound support & some small fixes Added support for Macintosh VFW converter saved AVI files index (ShapeShifter Rulez ;) (15.02.98) 0.99999a (hmm ;) Various audio related fixes (espec. with interleaved audio correct detection) 8 bit Audio sync changed back again to M$ standard (but added AUDIOSYNC=AS/S switch) (22.02.98) 0.99999c Fixed problem with Mac Video for Win converted stereo non-inter. audio detection... (PIV-AVId 0.85b) Added "Surround" like (fake stereo) audio support for MONO audio default on (can be switched off with NSM) Faster CVID decoder on p96 screens (about 2 times faster!) (31.03.98) 0.99999d Removed a harmless Enforcer hit (introduced in 0.99999c) Faster CRAM16bit decoder on p96 screens (01.04.98) 0.99999e Corrected audio buffer size Faster CRAM8bit decoder on p96 screens Various small fixes (p96 screen related, etc) (05.04.98) 0.99999f Added Microsoft ADPCM 4 bit audio support (MS-ADPCM) (mono & stereo too, but stereo is untested) (13.04.98) 0.99999g Fixed problem with non by 4 dividable width RGB avis (same bug is in all other AVI player on Amiga ;) (29.04.98) 0.1b (hehe ;) Major changes... so... new name: MooVId ;) Faster 16bit CRAM decoder on p96 direct screens Support MOVs with Cinepak 16/24/32 bit and Apple Video (RPZA) 16 bit video codec And RAW 8 bit mono audio (other audio/video codec soon!) But there are problems with MOV index generator, so crashes possible! (16.05.98) 0.2b Major changes again... (+20 kb filesize & new ~5000 sourcecodelines ;) Added !full! GUI... (gui design & gui init code by Alan/UF) GUI Features: Loop on/off Fast seek in AVI/MOV file Volume Frameskip on/off onfly FPS changer (with dinamic audio freq. recalc) (other GUI featrues soon) Known bugs: no GUI with WINP option (will be fixed soon) use WINP NOGUI for window play Wrong GUI color with 256 color AVIs (no color lookup code) GUI problems possible with softsdbl GUI is default ON, use NOGUI to disable Added NICEAUDIO/S option (to avoid audio clicks, but hangup possible) (17.05.98) 0.3b Better frame skipping with "normal" Cinepak AVI/MOVs Normal means AVI/MOV with keyframes (no without keyframe, or all frame is key) The other codecs still use the old way! MOV player now always seek to keyfile when GUI slider used Fixed some prob. with the bufsize calculation (AVI) Fixed a bug in the non-interleaved audio preload routine (AVI) Faster 16bit audio conversion routines (AVI audio) Added much more safer I/O routine (internal buffer size check) (the not fully supported MOV files do not crash now.. just I/O req instead) Switch back to topaz.font when the GUI font not found (no more error msg) Added support for 8bit MONO TWOS audio (MOV) More precise GUI position slider calculation (fixed rounding problem) (27.05.98) *0.31b Removed all emulated (on 060) instructions from the main loop (soft mulu64) So max. speed on 060 ;) Added support for a new video codec ;) (very important one ;) Some fixes in MOV index generator (still not bugfree!) (03.06.98) 0.32b Totally new screenopen code (BestModeID() stuff soon!) Fixed problems with bigger AVI/MOV on AGA screen with STORM/18BIT dither Faster Gray/ECS conversion (10-40% speed up) 20% faster 18BIT dither Added back the AutoScroll (removed some months ago because a wrong comment.. ;) (07.06.98) 0.33b Fixed CRAM 16 bit STORM dither prob. (introduced in 0.32) Fixed RLE8 video playback with p96 dither Fixed GUI problems with soft SDBL Added WINP for the most important codec ;) Better usable position slider (now you can hold the slider) (10.06.98) 0.34b Added support for CyberGFX (but i still recommend picasso96) When you see black/gray screen when using dither CGFX that is not my fault, just there are some missing features in CGFX... (whats are in picasso96 ofcourse..) (21.06.98) 0.35b Skip changed back to old style (will be there a better skipping soon!) Fixed CGFX screenopen code (note: assembled with ASM-Pro 1.12! Yepp! ;) (07.07.98) 0.36b Back again to ASM-One.. (ASM-Pro's scroll is tooo slow for me) Fixed CRAM8bit playback on gfxcard (what was a tricky bug ;) Fixed problem CGFX playback with CVID/INDEO... (i hope... ;) CRAMhicolor, RPZA playback is still DO NOT work under CGFX! (at least on my PIV i got always back 15bit screenmodeid instead of 15bitpC - and my direct CRAM/RPZA decoder support 15bitRGBpC only) Arrghh! Now i know what is the difference between CGFX and p96 (after i tried CGFX on my PicassoIV.... hmmm...) So i still STRONGLY recommend p96 as video system... (30.07.98) 0.37b Fixed two major bugs (both introducted in 0.36b) One CGFX related, and one p96/aga/ecs related.. (the 0.36b was the most worser version ever: gray screen only on cgfx, and crash on aga, and gray screen only on p96... ) Hmmm.. all problem caused by only one wrong (bonus) source-line... ;) Added 15bitnonpC format CRAM decoder (now hi CRAM work with CGFX) Added 15bitnonpC format RPZA decoder (again for CGFX) Added back GUI with WINP option (yepp! no more "winp nogui" ;) Fixed 2 memory eating (forgot to free...) bug Added intelligent window postion center stuff for windowplayback (when winx specified center just the y position for example ;) Added filename and AVI/MOV width/height to the window title Removed a harmless enforcer hit (windowplayback) (02.08.98) 0.38b Optimized CinePak decoder for Zorro2 graphicsboards (about 20-40% speed up on z2 machines) You can use this with ZORRO2 or ZORRO2GFXBOARD parameter (12.08.98) 0.39b Added key 's' for skip, and 'l' for loop (during playback with gui) Fixed GUI color problem during 8bit AVI playback Optimized CinePak playback for Piccolo/Spectrum board (use with zorro2 parameter) (hicolor CRAM, and RPZA playback is still !SLOW! on Piccolo/Spectrum) The 'modeid [8 number hex modeid]' now work on GFX-Cards too (experts only ;) Fixed a bug in the AVI structure parser, what caused crash with some (espec. INDEO) AVIs Fixed 16bit PCM stereo audio playback (AVI) Changed all requesters to reqtools requesters Speeded up INDEO playback on GFX-Board (still grayscale, but color will be same speed too!) (24.08.98) 0.40b Fixed problem with INDEO playback on CGFX system (ehh... p96 rulz ;) Added ECS dither for INDEO playback Added STORM/HAM8/18BIT dither for INDEO playback (all is gray at the moment, but color will be same speed) (25.08.98) 0.41b Finally added color INDEO playback (on CGFX/p96/AGA (ham8, STORM, 18BIT) too!) (27.08.98) 0.42b 6x9=42 ... ;) Fixed a bug in the WINP routine (what caused crash on below 8 bit screens without AKIKO) Some changes with p96/CGFX bestmodeid() selection (now try first 16 bit mode with ZORRO2 option, and after 15bit) Now do not need to use ZORRO2 option on Domino, Spectrum, Piccolo boards, becasue the new routine check for all modes (not just 24/32 bit truecolor BGR and ARGB for CinePak) (30.08.98) 0.50b MUCH MORE better Frame Skip (AVI/MOV too!) Fixed RGB-hicolor AVI playback on CGFX/p96 Fixed problem with STORM/Ham8/18BIT dither when MooVId was started without OUTPUT window (like from Dopus, etc.) Fixed CinePak/Indeo playback (wrong colors... hmmm) on Piccolo/Spectrum boards.. (i forgot to remove some comments.. ;) (and a side note: the source code length is now above 26000 lines... ) (13.09.98) 0.51b Fixed modulo problem during GFX-Board playback (that caused prob. with some spec. width movies) Added TOOLTYPE support (20.09.98) 0.52b Faster 32bit c2p for 040/060 (about 7% faster) Thanks to Stephen Fellner! FIXED some MOV index generator problems (still not bugfree...) (fixed stsc problems) ADDED function for 'R' key to reset the FPS to the original FPS (it will set back the FPS rate from the anim. file) (29.11.98) 0.53b FIXED MOV frame selector (now always jump to keyframe when GUI used) ADDED PAUSE function when gui position slider used (AVI/MOV too) ADDED PAUSE/PLAY button code (work with too) (09.12.98) 0.54b ADDED color CinePak window playback (req. hi/truecolor screen) ADDED color Intel Indeo window playback (only on hicolor screen) (both is MORE faster than the old grayscale window playback) (13.12.98) 0.55preADDED YUV9 (Intel Raw) Codec support ADDED AccuPak Codec support (my PalomAVI AVI Capture codec) FIXED upper 8 line video trash when RMB used on video screen FIXED many bugs in MOV header parser (bahhh.. lame QT docs...) 0.55b ADDED support for a MOV files without mdat/moov header (hmmm) SPEEDED up non-interleaved audio preload (AVI) FIXED some non-interleaved audio preload bugs (AVI) NEW MOV header parser & MOV index generator (i hope now all MOV related i/o & recognization problem gone) ADDED support for CinePak 16 bit Video FIXED audio stuff when pause used MOUSE pointer is disabled when NOGUI option used FIXED color problem in the YUV9/AccuPak decoder Redesigned source code-structure (hmm... ;) (03.01.99) 0.551b FIXED a crash-problem with some bad MOV files (MooVID now skip the bad part) (04.01.99) 0.60b ADDED multiple file selection code (both shell/reqtools) NEXT/PREV animation button is working now (multiple file selection) ADDED AUTOPLAY and NOAUTOEXIT options (shell/tooltype) FIXED some MOV related code again ADDED some new error requesters ;) FIXED verbose FPS rounding problem FIXED CinePak decoder odd-height problem (14.01.99) 0.61b FIXED some GUI border related code FIXED video window height calculation FIXED multiple TRAK MOV's detection FIXED CGFX screenmode id detection when dither gray was selected (now do not need AKIKO parameter) ADDED cgfx/p96 autodetection during windowplay (AKIKO parameter is now unneded on GFX-boards) FIXED cgfx bestmodeid() code, now try to open 320x200 screen at least (because CGFX's bestmodeid() code is buggy....) ADDED GFXBOARDSCREENWIDTH/GFXBOARDSCREENHEIGHT options/tooltypes, to force the screen size (and scennmode) on gfx-board screens (eg. to 640x480 or 800x600) (17.01.99) 0.62b FIXED a MOV TRAK detection problem CORRECTED FPS (verbose) calculation FIXED a multiple file windowopen bug Fixed problem with AVI/MOV GUI position slider (overseek prob..) REMOVED custom I/O, MooVId now use asyncio.library (v39+) FIXED AVI w/o INDEX playback stuff (first frame seek was wrong) (02.02.99) 0.63b NEW MOV Index generator (About 130 times (!) faster than the older one) ADDED support for IMA-ADCPM (IMA4) MOV audio (at the moment mono only) ADDED support for MACE 3:1 (MAC3) MOV audio (at the moment mono only) ADDED support for MACE 6:1 (MAC6) MOV audio (at the moment mono only) ADDED support for DVI-ADPCM AVI audio (mono/stereo, but mono is untested) SOME Pre-Code for the new AVI/MOV audio stuff (10.02.99) 0.64b Fixed 16bit TWOS/RAW audio (MOV) loader code (ehh.. i was so lame..) Now able to play the famous new Starwarstrailer.mov w/o problem ;) Removed a harmless CyberGuard (Enforcer) hit, what introducted in 0.60b (13.02.99)