Merge CV, ver=5.1; ops/methods from HV, and interface from CV where possible
[goodguy/history.git] / cinelerra-5.1 / cinelerra / CHANGELOG
diff --git a/cinelerra-5.1/cinelerra/CHANGELOG b/cinelerra-5.1/cinelerra/CHANGELOG
new file mode 100644 (file)
index 0000000..cf9c086
--- /dev/null
@@ -0,0 +1,1365 @@
+11/7/01
+
+Mask feathering and value implemented.  Crash bug in
+CWindowMaskGUI::get_keyframe fixed.
+
+
+
+
+
+11/22/01
+
+Removed memory leak in VirtualConsole.  Another case of base destructor
+calling base methods only.
+
+Time average finally implemented. Deinterlace implemented.
+
+Translation in screencapture recording implemented.
+
+AVI parameter editing box.
+
+Drag and drop of assets during an index build doesn't lock up. 
+Dragging mixtures of audio and video works better.  Better handling of
+shared effects which are off.
+
+Batches can be moved up and down the list.
+
+
+
+
+
+12/6/01
+
+OpenDIVX debugging:
+
+Fixed bugs in decore2: *run = *last = -1; was not copied over from
+encore50.
+
+Rewrote bitstream parser in encore2 and decore2 to be more reliable.
+
+Disabled MMX due to crashes in Redhat 7.2.
+
+Discovered decore2 can't do P frames so switched back to decore50.
+
+Renamed header files, symbols to all
+in the same program.
+
+Renamed more symbols in mpeg2enc to coexist with opendivx.
+
+To make encore2 work on 64 bit processors:
+
+Typecasted offsets in CompensateBlock and get_ref to (int)
+
+Decore50 still not functional on 64 bit processors.
+
+
+
+
+Implemeneted PNG list output.  Debugged list output and input.
+
+Configuration dialog for OpenDivx in Cinelerra migrated from encore50
+to encore2.
+
+Configuration dialog for Vorbis and Vorbis export to Quicktime.
+
+Can use shift-R to render.
+
+DV encoding implemented.  The last libdv library only supported MMX and
+B&W.
+
+
+
+
+12/16/01
+
+Moved all OpenDivx support to the encore50 derivative of the encoder. 
+This appears to do everything that the encore2 derivative could do at
+equal or lesser reliability.
+
+Changed bmp argument for decore50 to 3 member array.  Added quant
+argument which, when set to nonzero, fixes the quantization.  OpenDivx
+with fixed quantization looks 33% better than MPEG-2.
+
+Direct copy rendering for OpenDivx so output of the renderfarm can be
+direct copied into a single file.
+
+Moved all theme support into a plugin.  Resources are no longer
+compiled in but concatenated to the binaries.  This made compilation
+take less time and should theoretically allow more themes to be
+supported without increasing resident set size.
+
+Made ports specific to each render node instead of global.  This way
+multiple Cinelerra clients can run on the same box without violating
+the single thread requirement of new libraries.
+
+Cinelerra daemon forks to background.  Made assets export more
+compression parameters to render nodes.
+
+Vorbis decoding in Quicktime without seeking.  The encoding is probably
+not going to change anymore but Vorbis doesn't appear seekable.  No-one
+is going to use OpenDivx and Vorbis without an endorsement from
+Microsoft anyway.
+
+
+
+
+
+
+
+12/22/01
+
+Seeking support for Quicktime/Vorbis.  Support for Vorbis on 64 bit
+processors.  Further debugging of Divx.  Quality of 6 yields errors in
+output.  Quality of 5 seems to be the maximum.  Changed fourcc from
+VBIS to OggS for vorbis.
+
+To make Vorbis work on 64 bit processors:
+
+change sizeof(int) to sizeof(int*) in lib/floor1.c: 263
+
+Menu effects can paste into the timeline.
+
+Changes in label handling when pasting resources.
+
+Statusbar and zoombar resizing restored.
+
+Implemented code to move plugin sets up and down a level.
+
+Improved table of contents support for libmpeg3.  This scans every byte
+of the mpeg files and records the location of every keyframe and every
+sample of audio.  The table of contents can then be loaded by
+Cinelerra, allowing frame accurate editing from mpeg source material.
+
+A memory allocation bug in the Linux kernel crashes the system when
+using mpeg3toc on DVD's so forget about transcoding Starwars on a
+render farm.  Don't know who discovered that either.
+
+
+
+
+
+
+
+12/28/01
+
+Ignored the warnings and set -ieee for all files in quicktime to fix
+floating point exceptions.  This made it twice as slow but it worked.
+
+Floating point exceptions in the following places were fixable with
+certain changes:
+
+vorbis_lpc_predict    ->  A return statement before anything is done.
+bark_noise_pointmp    ->  noise[i] could be set to 0
+bark_noise_hybridmp   ->  noise[i] could be set to 0
+
+Defining VORBIS_IEEE_FLOAT32 seemed to fix mapping0 crashes so the
+preceeding changes were backed out.
+
+Loading XML files with multiple video tracks works better.
+
+Linux 2.4.17 handles DVD table of contents operations better but
+crashes after 5 hours of reading a DVD.  You'll have to reboot often to
+control memory corruption.
+
+
+
+
+
+
+
+1/4/02
+
+Credit for official Microsoft software even though there isn't any
+official Microsoft software. 
+
+Records to DV again but not under kernels after 2.4.7.  
+
+New audio effects:
+Tone generator
+Reverse audio
+Delay audio
+
+3rd attempt to improve main window scrollbars.
+
+
+
+
+
+
+1/11/02
+
+New video effects:
+Delay video
+Reverse video
+Swap channels
+
+New audio effects:
+Denoise
+Parametric EQ using fast fourier transform.  This isn't standard but 
+it gives real gaussian curves.
+Spectrogram
+Time stretch
+Resample
+Pitch shift
+
+Frequency table expanded in Units.  This uses real 1/3 octave steps.
+
+Flipped U and V in opendivx encoder so it conforms to YUV order on
+disk.
+
+Reconfiguration during audio rendering reenabled.
+
+Constitutive reconfiguration for video turned off.  This was used to
+debug the memory leaks.
+
+Icon for Normalize.  Tone generator improvement.
+
+
+
+
+
+1/18/02
+
+New audio effects:
+Compressor
+
+
+New video effects:
+Denoise
+Frame to field conversion
+Field to frame conversion
+Reframe
+
+Video denoise uses the average of an arbitrary number of previous
+frames to predict what the value for the next frame should be.  This
+can also be used as a threshold effect or a time average.
+
+Optimized time average.
+
+
+
+
+1/25/02
+
+Plugin keyframes loaded from XML.
+Correct rendering of plugin keyframes.  Some plugins interpolate.
+Most plugin GUI's update when insertion point is moved among keyframes.
+Plugin keyframes draw when created.
+Cursor jumps to plugin keyframes when selected.
+Samplerate adjustable in all media info windows.
+Samplerate and framerate adjustments not overridden when loaded in an EDL.
+Improved fade automation rendering.
+
+New video effects:
+Oil painting
+Whirl/pinch
+Polar
+Rotation
+Waves
+Waveform/Vectorscope
+Hue/Saturation
+YUV adjustment
+Invert video
+
+New audio effect:
+Invert audio
+
+
+
+
+
+
+
+2/1/02
+
+Progress windows really cancel instead of just letting you press the
+button.
+Status bar shows how long something took when it finishes.
+Removed Send and Recieve options from effects.  It was never needed and it 
+complicated the use of variable track sizes.
+
+First stage of making width and height specific to tracks and renamed 
+projector size to canvas size.
+More interpolation for effects.
+Second stage of titler.
+
+
+
+
+
+
+2/8/02
+Pasting effect keyframes works better.
+Improved extension and contraction of effects during clear and paste.
+Automation for more effects.
+Effect keyframe behavior is more predictable.
+For a good time enable auto keyframes and type stuff into the titler while playing back.
+Clearing VFrames clears the alpha too.
+Added a tests directory and stored some test EDLs.
+Blur can selectively blur single channels
+Effects can be attached to tracks with no data via a popup menu finally.
+Plugin GUI's are more often updated when tracks are deleted.
+
+Final stage of titling implementation.
+Chromakey and lumakey
+
+
+
+2/15/02
+Effects more accurately follow edits while cutting and pasting.
+More accurate keyframing in effects.
+Video Transitions restored.
+Audio transitions enabled.
+Transition length inputted in seconds.
+Stepped up the number of previous files displayed.
+Option to disable tracks when no edits was removed.  The VConsole automatically
+detects when effects synthesize material.
+Independant track sizes can now be changed with a popup menu.
+Renderfarm more accurately calculates balanced loads.
+Disabled avifile to reduce the debugging noise.
+Removed memory leak from Quicktime MPEG-4 decoder.
+Slightly optimized resource window updates after loading.
+
+Linux 2.4.17 crashes probably because Cinelerra moves too much memory
+around.  We disabled kswapd by putting a return 0; in
+/usr/src/linux/mm/vmscan.c.  The operating system seems more stable now.
+
+Enabled deletion of assets and clips from the project.  Also can delete
+assets from disk.
+Rebuild indices should handle multiple indices if selected.
+
+Rectangle selection in asset window.  The heroine background was
+lightened but mind you, the heroine background is a permanent feature.
+
+Latest seeking issue fixed in libmpeg3.  Looking for ways to shift
+audio based on the pts.
+Compositor window tumblers work better.
+More verbose overlays for camera, projector, and output regions, making 
+it easier to visualize the compositing pipeline.
+Easier to use magnifying glass.
+Middle mouse button dragging in CWindow works.
+
+
+new video transitions:
+bandslide
+bandwipe
+slide
+wipe
+irissquare
+
+
+
+
+
+
+
+2/22/02
+
+Implemented another MPEG-2 bitrate control algorithm.  YUV 4:2:2 MPEG-2
+in fixed bitrate modes above 7000000 is recommended for DV footage for
+now.
+
+Assets and effects are now sortable in the Resource window.  Text
+displays aren't corrupted as much.
+
+Certain EDL load operations honor the labels follow edits setting and
+certain load operations insert labels constitutively.
+
+Width and height of tracks load properly.  Adjustments to track width
+and height render more often.
+
+Playback automation always restored from undos.
+
+Improved tracking when every frame is played.  Smooth scrolling during
+playback is now supported.
+
+Right mouse button doesn't activate selection rectangles anymore.
+AVIFile disabled since it doesn't support GCC 3.0 anymore.
+More reliable reading of individual image files.
+More accurate rendering of fade automation.
+More accurate tracking during playback.
+Deinterlace with average works.
+Certain edit operations from CWindow don't lock up the MWindow anymore.
+CWindow scrollbars updatge after loading.
+Track canvas after In/Out point dragging is properly refreshed.
+Cursor motion over keyframes doesn't force rendering as often.
+
+
+
+
+
+
+3/1/02
+
+In/Out clearing crashes less and works better.
+
+Removed IPC modeled semaphores.  Now no IPC stubs are left after a crash.
+
+Rendering nodes and recording batches can be individually toggled.
+
+Buz driver refurbished.  No longer requires kernel hacks to change channels.
+
+Motion JPEG compression library debugged further.  Less corruption.
+
+Playback through Buz driver enabled.  Now adjust color correction and see
+it on a monitor.
+
+Playback of video through Firewire implemented.  Still not functional.
+
+YUV 4:2:0 Planar -> YUV 4:2:2 Planar color conversion
+
+Renderengine retools the playback configuration for every command instead of
+every EDL change.
+
+Integrated IA-32 assembly language jpeg library.
+
+
+
+
+
+
+
+3/15/02
+
+Enabled assembly language routines in jpeg library.  Added swap fields
+option to Buz output driver.
+
+YUV overlay reenabled.  Only works on commercial NVidia drivers.
+
+Libmpeg3 reads transport streams again.
+
+Dissolve debugged further.
+
+Moving out guicast images.  Implementing defaulttheme and microtheme.
+
+
+
+
+
+
+
+
+
+
+
+
+3/22/02
+
+Consolidated audio and video settings into a format dialog.
+Made XVideo a separate driver.
+Continued improvements of defaulttheme.  
+Draws MWindow BG and copies top background instead of several MWindow drawing calls.
+
+
+
+
+
+
+
+
+
+
+
+
+
+4/5/02
+
+Re-enabled configurable preloading in Quicktime since moov atoms larger
+than 2 M were setting the preload too high.
+
+Frame to field copies two fields into the output instead of line
+doubling one field.
+
+Tightened synchronization during recording startup.
+
+CWindow and VWindow timebars implemented.
+Timebars in CWindow and VWindow allow a region to be selected for
+previewing.
+
+Debugged configuration updates in Synthesizer and Parametric EQ.
+
+Extra redundancies in the jpeg library enabled to get IA-32 assembly
+working.
+
+Time average is absolute.
+
+Keybindings and icons for In/Out points changed.
+
+Bezier keyframes less than 10 frames apart don't freeze the CWindow.
+
+Clearing puts the cursor at the in point when using in/out points.
+
+Camera translation from the exact top of a frame to less than the full
+height really translates instead of squishing.
+
+Reenabled background_pixmap in TrackCanvas to allow faster overlay drawing.
+
+Loading non-XML files doesn't change the output width and height
+anymore.  This allows VWindow to change sources without reverting the
+output size.
+
+Loop region loads right.
+
+Pan images aren't corrupted anymore.
+
+Clips created when no region is selected take the entire EDL now.
+
+Parametric EQ reenabled.
+
+Shared effects work again when deleted.
+
+Multiple effects per effect row load properly again.
+
+Jumping to next and prev label from CWindow doesn't lock up when playing back.
+
+Instead of synchronizing the absolute position of each fader, the gang
+option now changes the relative position of each fader.
+
+Slider tooltips always update before being shown instead of showing
+obsolete data.
+
+Got rid of next record label in RecordGUI. Labels set while recording
+are finally inserted in the timeline.  The 'l' key triggers a label
+when recording.
+
+Busy wait removed from repeater finally.
+Prepared settings menu for addition of plugin editing option.
+
+Began first stage of Microsoft AVI importer for Quicktime.
+
+
+
+
+
+
+4/19/02
+
+AVI decoding of official Microsoft MPEG-4 and mp3.
+Second debugging pass for BC_Repeater.
+23.976 framerate put in place of 24.976 framerate.
+Synthesizer locks up less.
+Libmpeg3 needs only 1 include path instead of 5000.
+MPEG audio decoding 75% reimplemented for use in Quicktime.
+AC3 reimplemented using liba52.
+The mpeg3_layer_t structure handles mp2 and mp3 decoding separate 
+from libmpeg3 on a frame basis.
+The mpeg3_ac3_t structure handles ac3 decoding on a frame basis.
+The mpeg3_pcm_t handles pcm decoding.  PCM is repacketized by the demuxer.
+
+Zoombar clamps more selection values.
+
+
+
+
+
+
+5/3/02
+
+Microsoft MPEG-4 and MP3 encoding in Quicktime, AVI edition.  
+       100% Readable by Cinelerra and Xine but not by Microsoft.
+       Either audio or video plays back in Windows but not both.
+Several Quicktime frame rates changed to double.
+CWindow scrollbars updated on startup.
+Another pass through scrollbar appearance.
+New option to make effects follow edits.
+Preview range updated more often in CWindow.
+Another pass through listbox appearance.
+Track cursor redrawn more frequently.
+XMovie merged with new theme.
+MPEG audio debugging pass 1.
+Got rid of AVIFile and obsolete ffmpeg copy.
+
+
+
+
+
+
+
+
+
+
+
+5/10/02
+
+Better handling of non-existent files in edit lists and renderfarms.
+Hopefully better reporting of errors with the renderfarm.
+Debugged percentage seeking in mpeg3audio.
+Vorbis rc3 doesn't encode without crashing.  Downgraded to vorbis rc2.
+JPEG exporting in AVI.
+More codec checking in AVI and Quicktime export.
+Paste assets from AWindow doesn't lock up as much.
+Faders not visible in the patchbay should now be gangable.
+Debugged YUV compositing algorithms.
+New RGBA -> YUV 16 bit conversions.
+Selecting labels during playback in CWindow doesn't lock up.
+Rewind and end in CWindow and VWindow do something again.
+Playing from the VWindow after loading from XML doesn't crash as much.
+Localsession needs to initialize everything in its constructor.
+Paste from one samplerate to another isn't corrupted as much.  Samplerate conversion in paste_edls.
+
+MICROSOFT mouse wheel adjusts all scrollbars, sliders, pots, and
+tumblers, perfect for fine adjustments and zooming.  In CWindow and
+VWindow it performs frame advance.
+
+Mix2000 update for mouse wheel.
+
+
+
+
+
+5/17/02
+
+Pulling the official MICROSOFT mouse wheel back zooms out the CWindow
+when using the zoom tool.
+
+Brought back the last reflection level in Heroine College Concert Hall
+since backwards reverb seems to be popular.
+
+Paste automation resampling implemented.
+
+Splice and overwrite debugged.  Paste_edls doesn't change the VWindow
+source during splice and overwrite.  Splice inserts before the in_point
+and ignores the out_point.  Overwrite erases between in_point and
+out_point.
+
+Dragging asset into VWindow updates the timebar.
+
+Shifting effect handles works better.  Disabled checks not important to
+effects.
+
+TIFF and TGA I/O with image sequences.
+
+Reenabled alpha blending.
+
+Got rid of row_table[i] reference in cmodel_permutation output subscript.
+
+Decompression of YUV 4:4:4 JPEG.
+
+
+
+
+
+
+
+6/10/02
+
+New option to disable thumbnails in AWindow.
+Shift right handle out doesn't shift keyframes before it.
+Waveform drawn more often after undo load.
+Confirmation box for quit.
+Quit really quits instead of crashing and looking like it quit.
+MP3 decoding hacks to skip JPEG images without parsing ID3 tags.
+Changing track titles redraws overlays.
+Window is renamed after replacing project.
+
+Shrank threshold in equivalency tests.  It was catching the wrong
+in/out points.
+
+Made FloatAutos store bezier curve information.
+
+Got rid of full duplex record options.  Since modern sound drivers
+allow single devices to be opened twice this is more easily done by
+starting playback on the timeline manually when recording.
+
+Plugin titles updated when track titles change.
+Create clip with just in or out point creates something of positive length.
+Create clip with no in or out point takes the entire length in VWindow.
+Labels enabled in VWindow.
+Overwrite doesn't shift effects or labels.
+Overwrite overwrites the region between in and out of in and out are different 
+but overwrites its own length if in and out are identical.
+
+Shifting out point in doesn't delete transitions.
+
+Paste should extend effects when the clipboard has no effects and should
+overwrite effects when the clipboard has effects.
+
+Labels are undone during undo after paste.
+Video tracks are added to the top of the stack while audio tracks are added
+to the bottom of the stack.
+
+Dragging an effect from one track to a zero length track retains the length
+of the effect instead of crashing.
+
+Dragging an effect from the Resource Window onto a zero length track doesn't
+insert the effect on the track.
+
+
+
+
+
+
+
+6/14/02
+
+Bilinear interpolation from Broadcast 2000 migrated over.  This
+averaged more pixels than the standard bilinear interpolation we
+upgraded to in 2000.
+
+Mutual exclusion lock for liba52 since liba52 can't run two frame
+decodes simultaneously.
+
+Removed double lock from Heroine College Concert Hall.
+
+Correctly detects playable tracks more often.
+
+Bezier curves for fade and zoom.
+
+64 bit mpeg file support.  XMovie plays 64 bit mpeg files.
+
+Variable channel numbers work finally.  Audio pans adjust when channel
+count changes.
+
+DV encoding in color works slightly better but still corrupted on the
+right side.  The libdv upgrade can't decode of course.
+
+After assessing levels of interest, marketing direction, and
+experiencing a CVS erasing filesystem crash we moved forward on the
+folding of all code into a single repository.  Moved quicktime,
+libmpeg3, xmovie, mix2000, and 2 mpeg multiplexing tools into the
+cinelerra tree and renamed the one gigantic tree hvirtual.  The upside
+is Cinelerra compilation only requires exporting CFLAGS instead of
+hunting down 5 packages and exporting CFLAGS.  The downside is the one
+guy who uses Quicktime has to download a bigger package through his
+bankrupt ISP's refurbished 1998 reissued cable modem.
+
+Mind you everything except cinelerra and plugins will remain
+independant of each other.
+
+While it may work for servers ext3 isn't suitable for desktops which
+are constantly shut down and restarted.
+
+
+
+6/21/02
+
+DV decoder 0.9.5 migrated.  Not tested for error resilience yet.
+Made to_clip not copy all to the temporary clipboard so it wouldn't
+copy the child EDL's.
+Sort items put in AssetPopup.
+Plugin titles don't extend beyond background.
+Menus reposition when the window is repositioned.
+Default window positions is more accurate.
+Despike migrated to interpolated keyframes.
+Level window resets with everything else.
+Fixed detection of playable tracks error that was introduced with bezier faders.
+More often plays full audio track instead of truncating it.
+MPEG decoder supports XVideo better.
+Going to next and previous label with scrolling refreshes the compositor.
+Drawing of highlight box when dragging over the timeline is more accurate.
+Dragging one keyframe beyond another deletes the keyframe like it should.
+Bezier keyframes may work better than before.
+
+tracks->get_total_length considers keyframe length as well as edit
+length.  This allows keyframe undo for regions where no edits exist.
+
+Update undo routines can be called recursively without corrupting the
+undo table.
+Undoing and redoing keyframe adjustments works better.
+
+Bilinear reduction with alpha channels fixed.
+
+Memory leak removed from Quicktime udta.
+Kludge for 88200 samplerate in Quicktime.  Not tested.
+
+
+
+
+
+
+
+
+
+7/12/02
+
+Sharpen GUI synchronized to keyframes.
+Flip video.
+Freezeframe.
+Freeverb.
+Shift interlace.
+AWindow scrollbars calculated more accurately.
+Attach when effect is already in slot lets you change the effect.
+Faders and effect GUI's track playback.
+More frequent updating of patchbay when scrubbing.
+Pan automation works.
+Raw PCM export supports endian changes.
+All assets are saved during Save File.
+Keyframing right curves for projector zoom.
+All paste_edl operations copy all the assets.
+Camera zoom and projector zoom keyframes are properly generated from CWindow.
+Better bezier keyframe drawing in CWindow.
+Default window positions work in KDE, Gnome, and fvwm.
+
+Can grab control points in CWindow more easily if they're both against
+the left side.
+
+Large amout of unused Broadcast 2000 code removed.
+RecordGUI uses EDL aspect ratio.
+
+Grabbing control points in CWindow works better.
+Different colors for curves.
+Frame advance reverse plays the last frame in the timeline properly.
+Single frame record.
+Rendered effects handle transitions.
+
+Fewer crashes when hiding and showing effects during playback.
+More macros for plugins.
+Ganged faders are unaffected with record off.
+
+Pasting shared effects to different tracks than they were copied from
+doesn't crash but shared effect resolution will be broken.
+
+Shift key snaps curve values when dragging curves.
+
+Documentation buildout.
+
+Creating a clip in the VWindow doesn't automatically set the VWindow to
+the new clip.
+
+Changing asset sample rate works again.
+List boxes updated in AWindow after changing mode.
+Interface preferences have options for trimming.
+
+Copy added to CWindow buttons.  Cut removed from VWindow buttons.
+Copying always takes session parameters, so it works in VWindow instead
+of crashing.
+
+Audio module fragment reduced to support Linux 2.4.18.  Maximum DMA
+allocation is no longer supported in 2.4.18 so audio fragments must be
+kept below 4096.
+
+Units in freeverb changed to DB.
+
+
+
+
+
+
+
+
+
+
+7/19/02
+
+libmjpeg works on dual CPU systems finally.  Mutually excludes
+allocate_temps.  MJPEG files should crash less often.
+
+Start playback after editing doesn't have noise. Denoise mutes first window.
+
+Clear plugin GUI after attach changes it to a different plugin.
+
+DV capture migrated to Linux 2.4.18.
+
+Freezeframe works better.
+
+Concatenate tracks works more often.
+
+When dragging effects, the effect can be positioned at the start of an
+edit or at the start of a track instead of just at the start of a
+track.
+
+More accurate drawing of highlighting.
+
+ALSA driver migrated to Linux 2.4.18, alsa-0.9.0rc2.
+
+Render realtime affect doesn't crash when bringing up GUI.
+Plugin initialization takes proper buffer size.
+Resource Window starts up with nothing highlighted.
+Textboxes don't update contents if the contents are identical.
+Textboxes allow entry and have normal cursor behavior during playback.
+
+Loading with insertion modes that don't replace the project doesn't
+change the project filename.
+
+Curves aren't affected by the cursor when the track isn't armed.
+Tooltips deleted when widgets are deleted.
+start_realtime and stop_realtime removed from plugin interface.
+Memory leaks due to plugins not deleting data reduced.
+
+Must use -O3 because optimization errors prevent video from playing with -O2.
+
+Labels in CWindow don't vanish after resize to fullscreen.
+Undo for transitions.
+
+Better recording from DV camcorders.
+
+
+
+
+
+
+
+
+
+7/26/02
+
+FFT based denoiser.
+Ogg Vorbis support.
+Interpolate effect interpolates the start and end sample of a selection.
+Quicktime ported to Vorbis 1.0
+Undo detach transition.
+Fade should cut out at INFINITYGAIN.
+More accurate waveform drawing of sound files.
+Dragging end of an edit in doesn't clear the first keyframe of the next edit.
+Dragging end of an edit out shifts keyframes with it.
+AgingTV debugged.
+Changing sample rate of asset has an effect on played output.
+Reset camera and projector once again resets the zoom curve.
+U and u key for default transition.  Default transition menu item.
+VWindow remembers labels and in/out points.
+Labels updated in CWindow after undo.
+More intuitive centering on cursor after zooming.
+
+
+
+
+
+
+7/29/02
+16 bit color supported again.
+Apply button in format settings.
+Fewer crashes when toggling play and mute patches during playback.
+More locking when record updates the GUI.
+Better floating point comparison for setting labels.
+More intuitive scrollbar behavior for timeline.
+Level window updates when meter range changes.
+Waveforms drawn after window expansion.
+Background for RecordGUI.
+Preview size adjusted after in/out point dragging and silence pasting.
+More robust handling of Freetype failures in titler.
+Private font directory for titler.  Should ease renderfarm administration.
+AWindow background title updated more often.
+Drop shadow in titler.
+Compositor overlays translated more accurately when scrollbars are gone.
+Better handling of scrollbar and tumbler repeating after mousewheel is used.
+Creating a new project removes the clip reference from VWindow instead of making it crash.
+Project deletion operations while CWindow or VWindow is playing crash less often.
+Overlay modes ported to YUV colormodels.
+8 bit RGB -> 16 bit YUV importing.
+RGB601 refurbished.
+Pots debugged.  They might change value with cursor keys now.
+Bilinear scaling has better clipping for fewer crashes.
+
+
+
+
+
+
+
+
+
+
+
+8/2/02
+Titler crash with drop shadow fixed.
+Titler looping.
+Render uses in/out points if they exist.
+More accurate edges in bilinear scaling.
+Playback termination memory leak removed.
+Module calls render_stop before deleting the attachmentpoint.
+Render farm crash fixed.
+More often terminates recording when no firewire device exists instead
+of just freezing up.
+Titler doesn't interpolate any parameters.
+Old references to real_transition removed from virtual console.
+Source position in plugin client made relative to start of track.
+
+
+
+
+
+
+
+
+8/19/02
+Titler fonts installed by rpm.
+XMovie decodes ac3 according to redesigned liba52 channel mappings.
+Quicktime MPEG4 parameters debugged.
+Gradient effect.
+Background rendering over a renderfarm.
+Renderfarm clients automatically reduced to idle priority.
+Better MJPA decoding on single processors.
+Better title functionality in 16 bit colormodels.
+Undo for effect keyframes.
+Effect GUI's cleared during undo for effect attachment.
+Fewer lockups on startup.
+Proper keyframe interpolation in scale effect.
+Stamp timecode in titler.
+Memory leak in rendering stages removed.
+Removed legacy plugin server code.
+Downsample video resolution.
+Option to generate sequence header in every GOP for MPEG2.
+LADSPA support.
+Listbox doesn't enter drag_icon state when dragging column division.
+Radial, linear, and zoom blur.
+Effect rendering bug fixed.
+64 bit mpeg transport stream seeking beyond 2 gigs.
+More accurate mask drawing when projector is zoomed.
+Clear labels updates CWindow
+More accurate YUV/RGB conversions.
+Histogram.
+Perspective.
+Import partial tga's
+Copy keyframes doesn't copy default keyframe.
+Track highlighting offset by vertical scroll.
+Multiple video scope, spectrogram, and histogram displays may be opened.
+HutSaturation in YUV colorspaces.
+Undo for masks.
+
+
+
+
+10/13/02
+Interpolation of gradient keyframes
+libmpeg3 handles case where audio channel count increases in the middle of the stream
+Zoom bar redrawn more accurately when time format changes.
+More reliable quit of render nodes when master node crashes.
+Render doesn't reset brender to 0.
+Play keyframes discontinued.
+Deleting media from middle of track and pasting to end plays back.
+Persistent frame rate statistics stored in render farm.
+Flash transition.
+Undo for in and out points.
+
+
+
+10/19/02
+sync_parameters for splice, drag assets on CWindow.
+Change asset path updates brender and index file status.
+Transition drop on CWindow.
+Changing video play patch doesn't freeze brender permanently.
+Swap channels generates correct output.
+Shared synthesis effects cause the sharing tracks to 
+play back instead of just the owning track.
+Quicktime recovery utility improved.
+Memory leaks in FileVorbis::check_sig and AssetPicon::create_objects removed.
+ - Remove asset from disk removes it more often.
+AttachmentPoint::~AttachmentPoint deletes plugin servers.
+ - For some reason they were originally deleted in render_stop but render_stop
+   was commented out of Module::~Module.
+Drag scroll working for region selections.
+Single frame recording with multiple batches doesn't crash.
+Sound Level
+DV encoding with proper color conversion.
+
+
+
+
+
+
+
+
+11/08/02
+
+More options for the ffmpeg/MPEG-4 codecs.
+Histogram works on SMP.
+Proper 16 bit alpha blending.
+BRender path updates from preferences.
+Separate preroll for background rendering and rendering.
+Deinterlace by averaging lines 0 and 2 or 1 and 3 to get intervening lines.
+Adaptive deinterlace.
+Frame per second statistics in renderfarm are more reliable.
+Select and slide in the patchbay.
+Video scope can be resized.
+Effect keyframes pasted in right positions.
+Selective denoising of video based on color channel.
+
+
+
+1/12/03
+
+More mouse wheel bindings in MainWindow and ListBox.
+Ctrl-w closes effect windows.
+Perspective doesn't crash when switching from stretch to sheer.
+Better text list searching and keyboard navigation.
+Better Vorbis decoding.
+
+
+
+2/10/03
+
+Close recording without recording anything doesn't crash.
+Save backup now option.
+OpenGL not required anymore.
+Time format changes update the selection textboxes more often.
+MPEG-4 deblocking option in XMovie.
+Resize in Record GUI.
+Export of YUVA16161616 to Component Y'CbCr 10-bit 4:4:4.
+Import of Component Y'CbCr 10-bit 4:4:4 to RGB colorspaces.
+
+
+
+
+
+
+
+
+
+2/14/03
+
+
+Create fade keyframe inadverdently drags bezier handle less often.
+Float autos don't draw on right edge of timeline when keyframes are beyond right edge.
+Better float auto creation.
+Add track anywhere in timeline through track popup.
+Shared track references are automatically reconfigured after deleting or adding tracks.
+Libmpeg3: Better decoding of field-based MPEG video.
+Channels can be moved up or down in the Channel picker properly.
+Better handling of the long delay in deleting files without overflowing the recording buffers.
+Deinterlace really swaps fields instead of just saying it.
+Two line swapping combinations in deinterlace.
+Better listbox row sizing.
+Downsample offset.
+Faster window creation.
+Splash screen while you wait for it to start up.
+File deletion occurs before opening the driver instead of
+       after opening the driver for recording.
+Changing sample rate of WAV file in Asset window works.
+JPEG stills get saved with proper dimensions.
+Migrated to RedHat 8.0.
+ - e2fsprogs-devel is needed to compile the background render object.
+Fewer crashes due to OpenDivx global variables getting overwritten.
+Paste silence and clipboards also shifts effect keyframes properly.
+More checks for circular references in shared effects and shared tracks.
+Tracking during audio playback without video doesn't run past edge of loop boundaries.
+Better keyframing in Titler.
+Multiple language encodings in Titler.
+Undo of replace project after an effect works.
+Frame -> field conversion does line averaging and pixel shifting.
+Field -> frame conversion uses pixel shifting.
+Negative cursor selection is frame aligned.
+Documentation on video cleaning and deinterlacing tools.
+Buttons repositioned properly when filebox is resized vertically.
+Fade automation is more accurate.
+CWindow and VWindow slider position is less erratic after the window is resized.
+Timebars with regions track the playback position.
+More workarounds for buz driver lockups.
+Dragging the cursor on the timebar off the edges scrolls the timeline.
+IVTC uses luminance only in YUV colorspaces to improve accuracy.
+Quicktime: Tighter audio synchronization when encoding Quicktime with Vorbis audio.
+Start of audio effects is more accurate.
+Better IEEE1394 playback of video only.
+More IEEE1394 playback options.
+
+
+
+
+
+
+
+A lot of patches were rejected.  Some were accepted.  Most of these
+coding practices were done in 1997 but abandonned later because of high
+maintenance.  To save code size, the memory leak checker shouldn't flag
+single allocations as leaks and static pointers shouldn't be
+explicitely deleted on exit.
+
+
+titler-charsets.diff
+
+merged.
+
+
+cinelerra-loop-patch*
+
+The bugs in loops and audio positioning were fixed another way.
+
+
+cursor-patch.diff
+
+Too much maintenance in function indirection with no effect.
+
+Explicit declaration of the movement distance requires too much
+maintenance.  The move commands were separated for scalability reasons.
+
+
+
+mempatch-2.diff
+
+
+Units::topower was already static.  Patch has no effect and requires
+too much maintenance.
+
+
+mempatch-3.diff:
+
+DefaultTheme is intended to be replaced by a subclass of BC_Theme and
+use BC_Theme for all memory management.  No expansion of this file is
+maintainable.
+
+ArrayList::aray_delete was merged.
+
+Changes to BC_Meter, BC_Resources require too much maintainence and
+have no effect.
+
+static variables in BC_WindowBase prevent different windows in the same
+application from having different fonts.
+
+Deletion of pointers in AWindow, CWindow, VWindow, MWindow requires too 
+much maintenance.
+
+Buttons in AWindow may be used in the future and should not be deleted.
+
+Buttons in editpanel may be used in the future and should not be deleted.
+
+Selections were replaced by masks.  Deleted from VTrack.
+
+
+
+
+
+
+
+mempatch-5.diff
+
+BC_NewFolderThread expansion done differently.
+BC_FileBox widget deletion already done by BC_WindowBase.  Too much code for no effect.
+BC_ProgressBar::~BC_ProgressBar() implemented.
+BC_Resources changes have no effect.
+It's already a static object and if the images were overridden, their BC_Theme class would delete the lists.
+BC_WindowBase changes were preemptively rejected.
+Canvas::~Canvas merged.
+CPanel::~CPanel already done by BC_WindowBase.  Too much code.
+CWindowGUI::~CWindowGUI mostly done by BC_WindowBase.
+MeterPanel::~MeterPanel merged
+Module::create_new_attachments merged
+StatusBar::~StatusBar already done by BC_SubWindow.
+theme.C too much code.
+VirtualConsole::~VirtualConsole introduced too many bugs.
+ZoomBar::~ZoomBar partially merged.  Mostly done by BC_SubWindow.
+DefaultTheme::DeleteVFrames is done by BC_Theme.
+title.C fonts is a static variable because it shouldn't be deleted.
+
+
+
+
+mempatch-6.diff
+BC_FileBox done differently.  Lock_window is normally used when updating a GUI from a thread.
+
+mempatch-7.diff
+VirtualConsole refurbishment was handled differently.
+
+filevorbis.C asymetric fclose patch applied.
+
+
+
+
+
+
+
+mempatch-9.diff
+
+MWindow::load_filenames memory management applied.
+Rest has no effect.
+
+mempatch-10.diff
+
+decode_lock is static because it shouldn't be deleted.
+Rest has no effect.
+
+
+
+
+
+
+
+
+
+
+
+
+5/16/03
+
+Audio and video playback through firewire.  Can't get a playable
+audio stream for the camcorder in realtime but the interface is there.
+
+Quicktime: Libraw1394 and grabbing removed.  Didn't serve any purpose
+since  playback requires a completely different mechanism than record.
+
+Quicktime, XMovie, Cinelerra: ffmpeg decoder used in MPEG-4.  This
+gives slightly faster playback but is lousy at seeking.
+
+More file writing recovery from crashes.
+
+Cinelerra: Module dereferences renderengine less often in nonrealtime
+effects where renderengine is 0.
+
+Quicktime: Importing of dvgrab and lavtools AVI files.
+Cinelerra: Hitting space rapidly doesn't lock up recording as much.
+Cinelerra: Resize Render effect window.
+Cinelerra: Changing parameters for PCM file works more often.
+
+Cinelerra: tiff upgraded to 3.1.7
+Firehose: Fixed bug in firehose reciever.
+Cinelerra: Virtual file system for renderfarm.
+ - The filesystem prefix for rendering nodes was decidedly useless so it was
+discontinued.
+Cinelerra: Time stretch based on overlapping windows instead of FFT.
+Cinelerra: Freeze frame has line doubling option.
+
+Integrated mpeg2enc, toolame, lame encoding as libraries.
+Toolame refurbishment:
+ - converted exit to return in main.
+ - put prototypes in filempeg.h
+ - created input buffer management.
+ - forced stdin at all times
+ - created error and eof variables.
+ - freq2bark -> toolame_freq2bark
+mpeg2enc symbol conflicts:
+ - putbits -> mpeg2enc_putbits
+ - SmpFrqIndex -> toolame_SmpFrqIndex
+ - BitrateIndex -> toolame_BitrateIndex
+
+edit and effect titles stay visible at all times.  We'll see how long
+this lasts.
+
+long replaced with int64 wherever possible.  After many years of
+assuming long would automatically scale to whatever it was compiled on,
+it appears more of a pain than a scalability point in matters of
+function overloading.
+
+Default configuration should run on stock Redhat 9.0 system.
+
+
+
+Patches:
+loop-crush.diff applied
+exit-crush.diff too much code for no effect
+splash-leak.diff applied
+overlay-speedup.diff applied
+overlay-speedup2.diff applied
+titler-stroke.diff
+titler-stroke2.diff applied but disabled due to SMP crash. (crush)
+       Added Outline style and tumbler.
+       Reduced number of exits due to bounds checking errors.
+
+
+quicktime_leak.diff applied
+small-clean2.diff file may be closed and reopened without calling destructor.
+
+patchbay_free.diff applied but the real problem was PatchBay::update() 
+       dereferenced non-existent tracks to get the ID.
+
+
+perspective_alpha_stretch.diff applied
+virtualconsole_leak.diff applied but the default destructors seem to be 
+       getting called.
+dvlib_bug_workaround.diff applied
+debian_new_dvlib_compile.diff applied
+
+multihead_compositor-1.1.5.diff rejected  The X11 parameter in Playback
+preferences is the compositor display.
+
+filexml.diff applied
+paste-outpoints.diff needs testing
+
+paste-outpoints.diff rejected.  Broke other paste behavior.  The paste
+behavior is not a uniform case but the result of trying behaviors on a
+case by case basis and deciding which behavior is the most convenient. 
+Most of the time what's convenient is not the most scientific.
+
+
+
+
+
+
+