$Id: ChangeLog,v 1.388 2007/12/09 01:00:12 ddennedy Exp $ Kino Copyright (c) 2000-2007 Arne Schirmacher <kino@schirmacher.de>, Dan Dennedy <dan@dennedy.org>, Charlie Yates <charles.yates@pandora.be> See the NEWS file for RELEASE NOTES! Changes in version 1.2.0: Changes by Dan Dennedy: - ieee1394io.cc: bugfix reporting dropped frames resetting in capture. - page_export_1394.cc: bugfix to send AV/C record command after locking audio. - playlist.{h,cc}, page_export_pipe.cc: bugfix exporting dual pass when no filename specified. It was generating a filename in the script with a date/time stamp that would change from one pass to the next. The fix uses new PlayList::GetBaseFileOfFrame method to supply a generated name that is arguably more appropriate. - kino_common.cc: bugfix (1813236) loading a DV file whose filename extension is not entirely lowercase causes Kino to import it. - avi.cc: bugfix race condition in AVIFile::GetFrameInfo() - fix from Peter Schlaf. - avi.cc: apply race condition bugfix to AVIFile::GetDVFrameInfo(). - ffmpeg_mov.sh: added Quicktime DV export using ffmpeg. - gstreamer_theora.sh: added Ogg Theora export using gstreamer. - kino_plugin_types.h: fix compilation on missing include for memcpy. - textblock.h: fix compilation on multiple parameters named "outline" - kino_extra.h, page_magick.cc: added GetFrameNumber() to SelectedFrames (for dvtitler). - dvtitler.{glade,cc}: changed font to bold and added black outline by default. - dvtitler.{h,cc}: added variable substitution support. - frame.h, preferences.cc, PixbufUtils.cc, superimpose.cc: compilation fixes for some environments. - preferences.cc: change default for Preview on External Monitor to off to reduce crashing on juju - new firewire stack. - message.{h,cc}, kino_common.cc: bugfix (1763312) file deletion confirmation dialog can exceed screen height. Added new modal_confirm_files() dialog call. - page_export_avi.cc: hide Quicktime option if not built with quicktime support. - kino.glade, page_export_audio.{h,cc}: hide unavailable options due to missing runtime dependency (sox, mp2enc, lame, oggenc). - commands.{h,cc}, kino_av_pipe.cc, kino_common.{h,cc}, page.h, page_capture.{h,cc}, page_editor.{h,cc}, page_export.{h,cc}, page_magick.{h,cc}, page_timeline.{h,cc}, page_trim.{h,cc}, riff.{h,cc}, rwpipe.cc, v4l.h: add const to some char* to cleanup compiler warnings. - frame.cc: fix building/encoding with ffmpeg/libavformat >= 52.0.0. - Kino.desktop: fix French GenericName/Comment. - kino_en_{html,xml}.tar.gz: updated online help. - kino_common.{h,cc}: bugfix (1846847) to use Quit button instead of Close in dialog on exit. Changes by Antti Sokero: - po/fi.po: Added Finnish translation. Changes in version 1.1.1: Changes by Dan Dennedy: - commands.cc: bugfix segfault on crash recovery with gtk+ version < 2.11 Changes in version 1.1.0: Changes by Dan Dennedy: - kino_common.cc: bugfix cancelling import with dash as /bin/sh (Ubuntu >= 6.10) - superimpose.cc: bugfix zoom parameter not applying on PAL. - kino_common.cc, page_export_stills.cc: bugfix resampling to square pixels in video preview and image export. - kino_common.cc: allow importing from command-line and drag-n-drop. - filehandler.cc: bugfix (1664439) retaining video standard and aspect ratio on AVI and Quicktime files. - src/Makefile.am: bugfix (1690198) kino2raw symlink on install with make option -j >1. - scripts/exports/ffmpeg_*.sh: make format dependency tests more strict, fixes mpeg4 avi without mp3. - scripts/exports/ffmpeg_divx.sh: bugfix broken mpeg4 avi broadband. - commands.cc: change output sample rate of kino2raw to be consistent with kino by using sample rate of first frame of project. - scripts/exports/ffmpeg*.sh: update export scripts to be compatible with latest versions of ffmpeg. - frame.cc: set ffmpeg libavcodec interlaced DCT flag - scripts/exports/ffmpeg_dvd(_dual).sh: update dvdauthor integration to work with recent versions (not sure, definitely > 0.6.11). - frame.cc: compilation fix on newer versions of ffmpeg. - main.cc: move g_thread_init() to before any glib function call. - main.cc: bugfix allocating enough storage for g_help_language. - cmd_ref.c: keyboard shortcut corrections. - commands.cc: bugfix starting Edit page at startup on gtk+ 2.11. - page_capture.cc, page_editor.cc, page_trim.cc, v4l.cc: bugfix (1741270) multi-threaded (frame dropping enabled) playback engine CPU hogging, dramatic performance improvement for those not terribly afflicted. - storyboard.cc: bugfix (1749765) hanging on startup on gtk+ 2.11. - scripts/export/ffmpeg_utils.sh: improve startup speed by making this script noop on probing or --usage. - filehandler.cc: bugfix audio problems with non-1:1 interleaved AVIs due to missing initialization. - avi.h: extend capacity of AVI idx1 index for non-1:1 interleaved AVIs that either have many more audio chunks than video chunks, or that are simply indexes over the entire video, rather than the first GB. Changes by Joan Duran: - po/ca.po: added Catalan translation. Changes in version 1.0.0: Changes by Dan Dennedy: - avi.cc: bugfix array out of bounds in GetFrameInfo when type 2 AVI has more than one standard index. This resulted in either file not loading or audio playing garbage. - configure.in: fix --with-libdv-only. - playlist.cc: apply patch from Jörg Kühne to bugfix compilation on some compiler versions. - playlist: remove crash recovery flushing in SetAllDirty() since it is redundant with Store(), which gets called afterwards anyway. - displayer.cc: apply patch from Pierre Beyssac to improve error handling with XVideo mode when out of shared memory space. - filehandler.cc: bugfix (1638147) sound glitches in type 2 AVI due to rounding error computing offset. - image_create.cc: bugfix segfault in Create/From File when not using image file sequence--introduced in last version. Also bugfix when showing warning dialog while preview running. - superimpose.cc: apply above image_create.cc bugfixes and resolve state issues resulting in weirdness. - mediactrl.c: applied patch from Shawn Rutledge to add support for X-Keys Editor USB Jog/Shuttle. - page_export_mjpeg.cc: bugfix usage of ffmpeg for AC-3 output on DVD and proper cleanup of temporary files. - preferences.cc: default frame dropping on. - kino_common.cc: set default button in save dialog. - page_editor.cc: bugfix (1644085) jumping to frame while playing. - jogshuttle.cc: bugfix first usage of jog causing big jump. - export.{h,cc}, page_export_pipe.cc: bugfix (1647275) reporting of frame being processed on second pass in Export/Other. - kino_av_pipe.cc: bugfix (1643924) failure on non-WAV file containing a double-quote character in FX/Audio Filter/Dub or Mix. - kino_common.cc, page_export_pipe.cc: apply above bugfix to other failure points. - configure.in: apply patch (1641949) to fix test for Xext when LDFLAGS contains "Wl,--as-needed". Also, apply patch from Michael Shigorin to fix odd build looping issue in some environments. - configure.in, linux-hotplug/*, kino.rules.d: replace hotplug stuff with udev stuff. - kino_av_pipe.cc,. v4l.cc: add support for using ffmpeg to V4L capture (still experimental and unsupported) when KINO_V4L_FFMPEG environment variable is set and remove support for a patched version of libdv/encodedv. - avi.cc, frame.{h,cc}, page_export_1394.cc, page_export_avi.cc, page_export_pipe.cc: bugfix (1649680) numerous audio distortions on big endian fixes. - scripts/exports/ffmpeg_dvd(_dual).sh: use mpeg-2 program stream output to mplex to prevent confusion for user or potential change in ffmpeg option processing. - scripts/import/media.sh: have mencoder expand/scale to 480 lines on NTSC and 576 lines on PAL to properly retain interlacing on ITU-R 601 sources. Also, remove AVI (>= 1GB) compatibility issues between mencoder and ffmpeg, reduce storage requirements, and improve speed by using named pipes and mencoder raw output. - page_export_audio.cc: bugfix output frequency of lame and oggenc and prevent extra, unnecessary resampling in sox and mp2enc output. - preferences.{h,cc}: remove no longer used dvCaptureDriver and default maximum capture/DV file export frames to 0 (unlimited). - callbacks.h, magick_callbacks.{h,c}: move callbacks still in use into main callbacks.h and remove magick_callbacks. - support.{h,c}: remove unused functions. - scripts/exports/ffmpeg_h264(_dual).sh: enable deblocking filter. - kino.xml, Kino.desktop: make consistent with shared-mime-info's freedesktop.org.xml. - preferences.{h,cc}: change a few defaults. - kino.glade, magick.glade: bugfix setting time value spinners due to incorrect page size. - page_magick.cc: bugfix (1668066) deadlock when Overwite From equals or exceeds To. - page_magick.cc: bugfix multi-threaded race conditions in preview code that can lead to segfaults in plugins--e.g. double-free in dvtitler. (Adds mutex around initialisation in thread startup.) - page_magick.cc: added scrub command handling for jog/shuttle. (Keyboard coontrol would conflict with plugins' GtkEntry widgets as there is no means to enforce the escape-on-focus technique as used elsewhere in the Kino GUI). - page_magick.cc: bugfix unable to restart preview when Esc was used to stop preview. - scripts/help.sh: remove netscape and add firefox as a fallback browser. - scripts/publish/frame.sh, project.sh, bliptv_frame.sh, bliptv_project.sh: integrate publishing movies and still frames to http://blip.tv. - kino_common.cc: bugfix spawning of project.sh and frame.sh not properly preserving argument values with spaces, run saved project asynchronously, and fix location of recent files in menu with publishing enabled. - commands.{h,cc}: add kino2raw function that reads a SMIL file and writes every frame's raw DV to stdout. - main.c: run commands.cc:kino2raw() and exit when invoked kino2raw. - preferences.cc: enable publishing by default and add blip.tv's license options as predefined copyright values. - scripts/exports/ffmpeg_*: improve ffmpeg mpeg-4 and flv with longer GOPs and additional options "-cmp 2" and "-subcmp 2". - scripts/exports/mencoder_dual.sh: removed due to buggy dual pass xvid integration in mencoder. - scripts/exports/mencoder.sh: added more profiles with average bitrates. - src/Makefile.am: fix compiling with ffmpeg subversion revision 8127+. - preferences.cc: remove stderr messages to reduce kino2raw noise. - scripts/exports/ffmpeg2theora.sh: tweak exports--no audio resampling on best and high, highest audio quality on best, lower sample rates on medium and broadband, increase video bandwidth on low, increase GOP on broadband and low. - configure.in, Makefile.am, ffmpeg-svn-r8218.tar.gz: added configure option --enable-local-ffmpeg that is =yes by default. - scripts/dvdauthor/growisofs.sh: added support for environment variable DVD_DEVICE to override the device node for the DVD burner. - *.sh: added comment line to identify script as belonging to Kino package. - scripts/import/media.sh: added signal handling for process and pipe cleanup. Uses ffmpeg-kino to encode when --enable-local-ffmpeg=yes. - kino_common.cc: bugfix import processes not cleaned up when user clicks Cancel on import dialog; sends SIGTERM followed by SIGKILL to child process. - kino2raw.1, ffmpeg-kino.1: added man pages. - riff.cc: bugfix infinite loop on AVI with chunk lengths of zero. - README: comprehensive update. - storyboard.cc: bugfix incorrectly saving a metadata item whose value definition consists of an open-ended list of label/value pairs. - playlist.cc: bugfix segfault on loading empty SMIL document. - help: updated online help with corrections. - scripts/import/media.sh: prevent .ogg files from using mencoder. Changes by Gian Luca Rasponi - it.po: updated Italian translation Changes in version 0.9.5: Changes by Dan Dennedy: - preferences_dialog.cc: fix file dialog type on setting DV capture file. - image_create.cc: bugfix preview of Create/From File when not on first frame. - image_create.cc, superimpose.cc: bugfix file number of file sequence import/overlay with image sequence. - image_create.cc, superimpose.cc: bugfix modal error dialogs that won't go away! - configure.in, kino.glade, kino.spec: bump version. - configure.in, src/Makefile.am: fix build with ffmpeg libswscale. - magick.glade, audio_filters.cc: convert Dub and Mix offset field to seconds units instead of frames. - help.sh: improve detection of GNOME and KDE desktop sessions. - audio_filters.cc: bugfix starting position of non-WAV audio files and enable offset field on them. - conform console messages output to stderr. - page_magick.cc: bugfix SelectedFrames.GetIndex() when not normal speed. - playlist.cc: bugfix LoadMediaObject when filename has no period in it. - kino_common.cc: add importing to bulkLoad for command line file args and drag-n-drop. - *.po: bump versions. - page_magick.cc: bugfix segfault due to not setting current scene when inserting created file into empty playlist. - page_magick.cc, audio_filters.cc, audio_transitions.cc, image_transitions.cc, image_filters.cc: bugfix active state of keyframe controller when changing effects. - kinoplus.glade, book.cc: change Gamma to keyframable levels (brightness, contrast, gamma, hue, saturation, value). - kinoplus.glade, blackbody.h: added white balance to Levels effect based on code from digikam image plugin. - page_export_avi.cc: bugfix (1622204) long-term a/v sync on exporting type 2 AVI and Quicktime (not yet confirmed). - dvtitler/Makefile.am, kinoplus/Makefile.am, timfx/Makefile.am: apply patch from bug 1622541 to cleanup installed plugin files. - avi.cc: bugfix (1625917) test for 1:1 interleaved type 2 AVI too optimistic. - kino.glade, page_export_mjpeg.{h,cc}: bugfix (1619726) enabling MPEG export UI and not warning user when mjpegtools is not installed. - book.cc: make FX Levels key frames non-interpolating. - frame.cc: bugfix widescreen not detected when rendering FX using ffmpeg codec due to libdv bug on ffmpeg's (actually SMPTE 314M) output. - displayer.cc, kino_common.cc, storyboard.cc, page_timeline.cc, page_magick.cc: bugfix display aspect of thumbnails of FX preview for widescreen. - frame.cc: bugfix FX renderings not recording audio in Export/1394 on many devices when using ffmpeg codec. - kino_plugin_types.h: bugfix hue calculation due to precision of float comparisons on certain compiler versions or architectures, affects Colour Hold and Levels plugins. - kino_fr_html.tar.gz, kino_fr_xml.tar.gz: added French version of help. Changes by Jean-Luc Coulon: - fr.po: updated French translation. - kino_fr_html.tar.gz, kino_fr_xml.tar.gz: created French translation of online help. Changes by Vitezslav Kotrla: - cs.po: updated Czech translation. Changes by Mads Bondo Dydensborg: - da.po: updated Danish translation. Changes in version 0.9.4: Changes by Dan Dennedy: - page_export_mjpeg.cc: set audio frequency to 44100 for VCD and SVCD. - page_export_mjpeg.{h,cc}: hide DVD-Video options on startup if saved MPEG format is not DVD. - magick.glade: added tooltips, create advanced options expander for overwrite, added keyframe togglebutton, added/changed labels. - kino_plugin_types.h, kino_plugin_utility.h: moved from timfx to kino to make available for all plugins and add to set of installed headers. - time_map.h: added from KinoPlus for all plugins and add to set of installed headers. - audio_filters.cc, audio_transitions.cc, image_create.cc, image_filters.cc, image_transitions.cc: ensure plugin AttachWidgets is called before PageMagick::RefreshStatus. - kino_extra.h: added static Repaint function, added KeyFrameController and KeyFrameControllerClient interfaces from KinoPlus. - image_create.cc, image_filters.cc, image_transitions.cc, dvtitler.cc, blur.cc, color_hold.cc, image_luma.cc, soft_focus.cc: removed static Repaint methods. - image_create.cc: rename Create From File as From File. - image_filters.cc: rename Swap as Flip. - page_magick.{h,cc}: implemented KeyFrameController in PageMagick, make more widget changes trigger a repaint, disable audio preview when audio is disabled in Preferences. - dvtitler.glade: added tooltips and changed some labels for consistency. - color_hold.cc: renamed Color as Colour for consistency, changed numeric widgets to percentage. - image_luma.cc: removed builtin reverse to only use host reverse option, changed softness to percentage. - soft_focus.cc: changed mix widget to percentage. - timfx.glade: added tooltips, added/changed some labels, changed some numeric widgets from floating point to percentage. - kinoplus/*: added KinoPlus minus Multiple Image Import (redundant), ImageMagick Titler (redundant), ImageMagick Overlay (redundant plus new dependency), Effect TV (new dependency and half-baked), Pipe Filter (new dependency and usability problem), FFMPEG Import (redundant), FFMPEG Dub (to be merged into Dub and Mix). Cleaned up original user interface and adapted to host keyframe controller. Renamed Tweenies as Composite. - kino_av_pipe.cc, scripts/import/audio.sh: added PCM pipe-based KinoAudioInput subclass. audio.sh uses ffmpeg and oggdec. This is a purely an optional dependency. If the file can not be imported due to lack of helper utilities ffmpeg or oggdec, then the factory method KinoAudioInputFactory::CreateAudioInput returns NULL. - audio_filters.cc: enhanced WavSelect::WavFileSelected() to handle non-seekable (pipe) input. - magick.glade, audio_filters.cc: added Gain Audio Filter with curve widget. - magick.glade, audio_filters.cc: added gain curve widgets to Dub and Mix - frame.{h,cc}: bugfix major memory leak in libavcodec-based EncodeRGB with minor improvements in performance and code quality. - dvtitler.cc: bugfix memory leak due to unnecessary pango resource reinitialization with minor performance improvement. - dvtitler.{h,cc,glade}, textblock.{h,cc}: enhance with seperate background padding width and height controls. - page_magick: bugfix abort on switching to Overwrite on empty project introduced with a change above. - scripts/exports/ffmpeg2theora.sh: fix aspect ratio. - frame.{h,cc}: revert memory leak bugfix above because it is a bug in ffmpeg fixed as of svn rev 6945. The workaround in the bugfix above causes a segfault in ffmpeg svn rev 6945 and later. - kino_extra.h: cleanup Repaint() symbol. - configure.in: added HELP_LINGUAS variable for specifying online help translations. - main.c, commands.cc: detect language for online help translation and use when generating path to help page - kinoplus.glade, kinoplus/book.cc: change Charcoal/Line Scale to percentage units. - page_editor.cc: improve performance and behaviour of playback with frame-dropping enabled. - playlist.cc: merge metadata attributes on seq element when performing a join. - page_editor.cc: bugfix cutting last scene that is only 1 frame. - page_trim.cc: make current scene after cutting a scene consistent with page_editor.cc. - page_editor.cc: bugfix deadlocks with frame dropping. - page_trim.cc: improve latency to shuttle with frame dropping. - page_capture.cc, page_editor.cc, page_trim.cc, page_export_1394.cc: with libiec61883 fallback to first interface if no AV/C device found. - page_capture.cc: minor performance enhancement. - export.cc, ieee1394io.{h,cc}, page_editor.cc, page_trim.cc, page_export_1394.cc: bugfix (1591681) hang when 1394 is misbehaving (e.g. root node not cycle master) - stringutils.cc: bugfix replaceAll when search and replace begin with the same character(s) - playlist.cc: bugfix abort when loading non-existing file or not well-formed xml. - commands.cc, kino_common.{h,cc}, preferences.{h,cc}: added recent _projects_ menu items. - kino_common.cc: bugfix (1584065) to add file extension in File/Save(As) when extension not supplied. - audio_filters.cc: convert curve controls for gain, dub, and mix to linear interpolating. - kino_common.cc, *.glade: various minor layout and cosmetic cleanup. - page_editor.cc, page_trim.cc: set displayer pointer null after delete and bugfix segfault in corner case of switching from Trim. - page_magick.cc: convert limit frame spinbutton to format-sensitive time value combo widget for consistency and initialize to one second depending upon video standard set in preferences. - dvtitler.cc: set default font size to 32. - page_magick.cc: bugfix broken keyboard control when leaving FX and time value widgets have focus. - image_create.cc: fix typo Gradiant->Gradient. - scripts/exports/*.sh: use '.' instead 'source' for sh compatibility. - playlist.cc: applied patch from Benjamin Pailhes to bugfix segfault when capture filename has no path. - magick.glade: change Preview Options to mute and frame dropping. - kino_extra.h, page_magick.{h,cc}: added IsPreviewing() method to SelectedFrames interface for plugins to make decisions. - page_magick.{h,cc}: audio_filters.cc, audio_transitions.cc, image_filters.cc, image_transitions.cc, kinoplus/book.cc, timfx/blur.cc, timfx/color_hold.cc, timfx/image_luma.cc, timfx/soft_focus.cc: add multi-threaded frame-dropping to FX preview and make more parameters provide instant feedback during preview playback. - dvtitler/dvtitler.cc, textblock.cc: more instant feedback on toggling Pango markup and indicating markup error. - help/*, scripts/help.sh, callbacks.c, commands.c, page.h, page_capture.h, page_editor.h, page_export.h, page_magick.h, page_trim.h: integrate new docbook-based help system. - playlist.cc: bugfix saving legacy XML to not include body element. - playlist.cc: bugfix loading legacy XML that includes a body element. - playlist.{h,cc}: added EditorBackup::Restore() and persistance management to EditorBackup. - main.c, commands.cc, playlist.cc: added crash recovery of undo history. - page_capture.cc: do not capture frames that have zero timecode, useful to not capture when device is paused while in record (camera) mode. - superimpose.cc: set current folder in file chooser dialog. - dvtitler.glade, superimpose.cc: add zoom control. - page_export_mjpeg.cc: added message dialog when dvdauthor script fails. - audio_transitions.cc: default to cross fade instead of none. - image_transitions.cc: rename Fade to Dissolve and make it default. - image_filters.cc: added Fade In and Fade Out filters. - page_export_pipe.cc, export/scripts/*: pass aspect ratio to scripts and use to improved widescreen support in export scripts. - export/scripts/*: make resolutions abstract to better represent PAL resolutions with simple divisors of vertical resolution. - frame.{h,cc}: further reduce memory footprint of ffmpeg encoder by moving ffmpeg structs to static globals since not multithreaded. - configure.in: remove --with-avcodec and add --with-libdv-only to make ffmpeg codec default and discourage libdv codec (libdv still required, of course). - playlist.cc, storyboard.cc, page_export_1394.cc: bugfix returning pointer on stack from PlayList::GetFileNameOfFrame(). - commands.cc: bugfix drag-n-drop on main notebook in newer versions of GTK+. - configure.in, frame.{h,cc}: got ffmpeg libswscale working. Changes by Jean-Luc Coulon: - fr.po: updated French translation. Changes by Redy Rodriguez: - es.po: updated Spanish translation. Changes by Jan-Eric Lindh: - sv.po: updated Swedish translation. Changes by Mads Bondo Dydensborg: - da.po: updated Danish translation. Changes by Vitezslav Kotrla: - cs.po: updated Czech translation. Changes by Gabor Kelemen: - hu.po: updated Hungarian translation. Changes by Michael Shigorin: - ru.po: updated Russian translation. Changes in version 0.9.3: Changes by Igor Blinov: - po/ru.po: updated Russian translation. Changes by Dan Dennedy: - scripts/export/ffmpeg_*.sh: handle change in ffmpeg's bitrate unit specification: kbps to bits/s. - scripts/export/extract_chapters, smiltime.cc: bugfix (1551893) parsing SMIL time values in locales which do not use period as decimal point. - page_trim.cc: bugfix setting of in and out points after in and out collide when using some input methods (buttons or time entry). - page_export_mjpeg.cc: hide/show DVD options depending upon format. - page_export_mjpeg.cc: remove dvdauthor checkbox replacing with "None" option in script menu. - preferences.{h,cc}: remove obsolete exportMjpegOutputDVDAuthorXML, default mpeg format to DVD. - audio_transitions.cc, audio_filters.cc: move Dub and Mix from Transition to Filter. - audio_filters.h: added IsAFrameConsumer() to AudioFilter interface. - page_magick.cc: use AudioFilter::IsAFrameConsumer() to determine whether to send plugin number of actual or locked audio samples (needed by Dub to preserve audio sync). - kino_extra.h: added GetIndex() to SelectedFrames interface so the audio Dub and Mix filters can seek into WAV file depending upon position of FX interactive preview. - page_magick.cc: bugfix toggling of StartOfMovie and EndOfMovie buttons. - playlist.h, stringutils.{h,cc}: move string_utils into StringUtils. - playlist.{h,cc}: added SavePlayListSrt(). - kino_common.cc: add SRT SaveAs format. - kino_common.cc: remove GTK+ < 2.4 file dialog code since 2.6 required. - scripts/exports/rawplay.sh: add support for ALSA. - scripts/exports/ffmpeg2theora.sh: remove output file prior to start to workaround an overwrite bug in some ffmpeg2theora versions. - frame.cc: bugfix (1577342) make ExtractAudio methods return 0 on DV containing no audio. - frame.h: bugfix (1577342) make resamplers handle frames with no audio by inserting silence. - page_magick.cc: bugfix (1577342) FXSelectedFrames::GetAudio to return silence on frames with no audio. - filehandler.cc: bugfix (1577342) QtHandler::Write to write silence on frames with no audio. - scripts/exports/ffmpeg_xvid(_dual).sh: added XviD AVI output when ffmpeg is built to support it. - frame.cc: add preliminary support for ffmpeg libswscale (not working) - page_export_mjpeg.cc: let dvdauthor xml chapters just use SMIL clock time values. - avi.{h,cc}: bugfix applying audio stream from type 2 AVI. - avi.{h,cc}, filehandler.{h,cc}: bugfix reading audio stream chunks that are not interleaved per video frame. - ieee1394io.cc, page_capture.{h,cc}: stop capture when transport stops (e.g. end-of-tape). - dvtitler.cc: bugfix too many warning dialogs on bad Pango markup by displaying error message in preview. Changes in version 0.9.2: Changes by Dan Dennedy: - frame.cc: bugfix of bugfix with DV rendering with FFMPEG. - playlist.cc: bugfix segfault on xmlCopyDoc due to XML namespace abuse. Changes by Jean-Luc Coulon: - po/fr.po: updated French translation. Changes in version 0.9.1: Changes by Dan Dennedy: - page_export_pipe.cc: bugfix time estimate when doing 2 pass. - page_trim.cc: apply patch from Robin Rosenburg to make behavior of split scene more reliable. - ieee1394io.cc, kino_common.h, page_bttv.cc, page_editor.cc, storyboard.cc, timfx/color_hold.cc, timfx/image_luma.cc, timfx/soft_focus.cc: bugfix global C pointers in C++ context causing compile errors on gcc 4.1. - kino.glade: restore accellerators for stock undo/redo since a recent libglade version seems to have dropped them?! - filehandler.cc: bugfix (1518494) split capture on timecode discontinuity. - page_magick.cc: bugfix (1518111) drag-n-drop in storyboard in FX after a playlist manipulation (e.g. render). - page_magick.cc: update Overwrite frame range when clicking storyboard scenes even when in Create mode so state is sensical when switching from Create to Overwrite. - page_export_audio.cc, frame.h: bugfix (1512512) compile on big endian. - modal_message.h, modal_message.cc: let all functions take variable args. - kino_common.cc: add filename in error dialogs involving file loading. - page_capture.cc: display warning about dv1394, not raw1394, if compiled for dv1394. - preferences_dialog.cc: hide raw1394 warning if compiled for dv1394. - kino_common.cc: bugfix not respecting Cancel on confirmation of closing modified project file. - scripts/export/ffmpeg_mp4_dual.sh: bugfix typo in low quality profile ffmpeg command. - scripts/export/ffmpeg_dvd(_dual).sh: always output AC-3 (used to output MP2 for PAL). - page_magick.cc: allow play from current position instead of rewinding first. - page_export_mjpeg.cc: bugfix regression introduced in previous version generating valid mp2 audio for DVD. mp2enc defaults to 44100Hz, and I removed specifying 48000. - page_trim.cc: bugfix regression introduced in previous version where playback with frame dropping enabled is very juddery. - frame.cc: bugfix avformat encoding, was producing incomplete DIF byte stream, must use libavformat to perform DV muxing. - gtkenhancedscale.c: apply heap memory bugfix patch from Pierre Beyssac. - export.cc: change behavior of clicking scene to set current frame position to be cohesive with rest of UI (e.g., makes FX load frame range of currently highlighted scene when clicking scene in Export and then switching to FX). - smiltime.cc: add serialize to frames format for MediaClippingTime. - playlist.h, playlist.cc: bugfix compliance to SMIL 2.0. - extract_chapters: handle clock values in media clipping times. - playlist.cc: apply multiple xmlFreeNode bugfix patch from Pierre Beyssac. - displayer.cc: in FindDisplayer::getDisplayer, set PAL flag according to vertical resolution for proper display of NTSC in V4L. - kino_av_pipe.cc: on pipe-oriented WAV export, set chunk lengths with special large value to emulate sox pipe output to fix pipes into ffmpeg. - page_export_mjpeg.cc: allow no audio to be encoded and therefore skip muxing (bugfix 1511205). - page_export_mjpeg.cc: enhancement to accept ffmpeg in audio pipe to perform AC-3 encoding. - page_magick.cc: bugfix (1535588) scrub preview of Frames following in FX/Video Transition (play and render still worked). - page_magick.cc: make output of cross-fade slightly cleaner. - audio_transitions: only invoke resampler in WAV reader when necessary. - audio_transitions: bugfix Dub regression introduced in v0.8.0(?) resulting in gross artifacts and make Mix output slightly cleaner. - page_magick: bugfix current position set zero when click scrub bar to stop playing preview. - kino.glade, callbacks.c, commands.{h,cc}, kino_common.{h,cc}: remove savePlayListAsEli(). - playlist.{h,cc}: added option isLegacyFormat bool to SavePlayList(). - kino_common.{h,cc}: added Format combo box to save dialog and enable saving playlist as SMIL, legacy XML, and ELI. - preferences.{h,cc}: added exportMjpegVideoPipe, exportMjpegAudioPipe, and exportMjpegMultiplex. - page_export_mjpeg.cc: make advanced options (video, audio, and mplex) sticky between session. - preferences.cc: default audio render/import sample rate to 48KHz. - kino_common.cc: prompt for video standard like FX does instead of referring to Preferences dialog. - preferences.cc: bugfix metadata editing regression introduced in 0.8.0. - storyboard.cc: enforce * in metaValues regression introduced in 0.7.1. - kino_common: bugfix Kino not exiting when FX rendering in progress. - callbacks.cc: bugfix regression introduced in 0.7.1 that prevents keyboard control upon leaving Export. Changes in version 0.9.0: Changes by Dan Dennedy: - README, BUGS, configure.in, help/index.html: change location of bug report submissions. - scripts/dvdauthor/qdvdauthor.sh: launch qdvdauthor in background. - export.cc: round up ideal sample count.in calculateAdjustedRate(). - playlist.cc: make GetFrame() properly return success/failure. - frame.h: improve accuracy of AsyncAudioResample::ReadAudio by using result from PlayList::GetFrame(). - configure.in: detect libiec61883. - ieee1394io.{h,cc}: change AVC::isPhyIDValid and AVC::getNodeId to iterate over all ports. - preferences_dialog.cc: iterate over all raw1394 ports instead of requiring the interface number. - frame.{h,cc}: add assignment operator. - ieee1394io.{h,cc}: remove raw1394Reader, add iec61883Reader, change IEEE1394Writer to use frame buffering and background threading, and add iec61883Writer. - mediactrl.c: print error on failure to open evdev file to help diagnose problems. - page_capture.cc: remove raw1394Reader and add iec61883Reader support - page_editor.cc: change from dv1394Writer to abstract IEEE1394Writer - page_trim.cc: change from dv1394Writer to abstract IEEE1394Writer - page_export_1394.{h,cc}: change from dv1394Writer to abstract IEEE1394Writer, remove advanced export settings since rarely needed any longer (can still change in config file). - page_export_1394.cc: Redirect messages from label in middle of notebook page to status bar. - page_export_avi.cc: bugfix frame range for calculateAdjustedRate when using AutoSplit. - page_export_mjpeg.cc: change mp2enc command for DVD format to not resample audio and instead let Kino do it. - page_export_mjpeg.cc: bugfix to not try to output zero audio samples, which results in abort. This was a result of change to async resampler. - page_export_pipe.cc: only encode audio into exported frame if async resampler returns some samples. - preferences.cc: change default dv1394 device file names to something more commonly used with kernel 2.6, and enable Preview on External Monitor by default to pleasantly surprise users who are not aware of this feature! - preferences_dialog.cc: remove IEEE 1394 options that are no longer or very rarely needed. - avi.cc: bugfix regression introduced in v0.8.0 causing corrupt index when exporting very large type1 or OpenDML type2 AVI. - filehandler.cc: accept fourcc dvcp for Quicktime on open and use fourcc dvcp for PAL Quicktime on file creation. - kino_common.cc: remove fourcc display in properties since it was not accurate. - cs.po, da.po, eu.po, fr.po, hu.po, it.po: updated translations. Changes in version 0.8.1: Changes by Dan Dennedy: - page_trim.cc: make duration report duration of trimmed clip rather than untrimmed amount. - de.po: added. - cs.po: applied update. - scripts/exports/mencoder.sh: revise to use XviD, to use VBR in high quality modes, and to support widescreen. - filehandler.cc: support dvsd, dv25, and AVdv Quicktime fourcc codes when opening quicktime file. - audio_transitions.cc: bugfix Dub and Mix file open dialog opening multiple times when icon clicked. - dvtitler/superimpose.cc: bugfix open dialog opening multiple times when icon clicked. - kino.glade: cleanup button sizes in Capture. - linux-hotplug/usb.usermap: add missing supported product ids. - hu.po: added Hungarian translation by Gabor Kelemen. - ru.po: added Russian translation by Blinov Igor. - kino_common.cc: bugfix extra period characters appearing in GtkFileChoosers and subsequently in returned filenames. - configure.in: fix --with-quicktime and --with-avcodec to accept "no" value. - configure.in: improve --with-quicktime configure detection by looking first for libquicktime's pkg-config, then Heroine Virtual's Quicktime4Linux, followed by cvs.cinelerra.org's libquicktimehv. - filehandler.cc: bugfix compatibility with latest libquicktime 0.9.8pre2. - kino.glade: move Timeline controls to bottom for UI consistency. - kino_extra.h: added SelectedFrames::Repaint() and IsRepainting() methods. - magick.glade, image_create.cc, image_filters.cc, image_transitions.cc, kino_common.cc, page_magick.{h,cc}, dvtitler.cc, dvtitler.glade, dvtitler.{h,cc}, superimpose.cc, timfx/blur.cc, timfx/color_hold.cc, timfx/image_luma.cc, timfx/soft_focus.cc: make FX preview interactive. - scripts/publish/frame.sh: make script location in $HOME consistent with exports and dvdauthor. - scripts/publish/project.sh: make script location in $HOME consistent with exports and dvdauthor. - kino_common.cc: let user override import script using a file at $HOME/kino/import/media.sh. - scripts/import/media.sh: some versions of mencoder require vstrict=-2 for ffv1 codec. - scripts/dvdauthor/*: add dvdauthor XML processing scripts. - src/rwpipe.h, src/rwpipe.cc: take class for bidirectional pipe out of page_export_mjpeg.cc. - kino.glade: reorganize Export/MPEG, make DVD format default, and add option menu to choose from extensible dvdauthor processing scripts. - page_export_mjpeg.cc: add DVDTool and methods to add dvdauthor processing scripts to option menu and run selected one. - scripts/exports/*: improvements with ffmpeg cross-version high quality mode detection, QPEL on high quality single pass MPEG-4, and restoration of ABR on high and medium quality dual pass MPEG-4. - scripts/publish/*.sh: extend to support KINO_HOME environment variable. - kino_common.cc: extend KINO_HOME support to import/media.sh script. - framedisplayer.cc: bugfix resampler not closing in CloseSound(). - page_editor.cc, page_trim.cc, page_capture.cc: bugfix UI latency during playback due to various GDK/GTK events causing unnecessary video preview updates. - kino.glade, help/export.html: rename Export/DV Pipe as Export/Other. - magick.glade: move universal video transition controls upward so they are less obscured. - scripts/export/ffmpeg_dvd(_dual).sh: bugfix deleting all files in current directory if export name left blank (bug 1448271). - scripts/import/media.sh: increase ffmpeg version compatibility by specifying image size argument with dimension instead of abbreviation and by specify a pix_fmt. - page_trim.{h,cc}: bugfix resetting in point when switching from insert to overwrite mode (bug 1452421). - page_trim.cc: bugfix scrub bar not updating after split scene (bug 1452000). - page_trim.cc: bugfix current scene position forgotten upon loading a clip in insert mode. - page_editor.cc: bugfix expected behaviour of 'o' command to set out point, which is slightly different than 'd$' by preserving the current frame. - kino_extra.h: added GetKinoWidgetWindow() to let plugins parent dialog windows to main Kino window. - storyboard.cc: parent dialog windows to main Kino window and free filename returned from file dialog. - dvtitler.cc: parent dialog window to main Kino window. - page_magick.cc: bugfix storyboard not updating when adding files via drag-n-drop (bug 1450495). - page_magick.cc: add status bar progress similar to one in Export, add ability to pause during rendering. - page_magick.cc: present dialog prompt to get NTSC/PAL when needed instead of failing and telling user to set Preferences/Defaults (bug 1450444). - page_magick.cc: make create mode always create before current scene instead of current frame to be consistent with the scene-orientation approach encouraged throughout. - page_magick.cc, kino_common.cc: synchronize current position between other Edit, Trim, and FX. - export.{h,cc}: add param to innerLoopUpdate to send the activity displayed in the status bar. - export.h: make formatSecs public so it can be used by page_magick. - export.{h,cc}: added calculateAdjustedRate method to facilitate locked audio export. - frame.h: change AudioResample and derivatives to take rate params as double to allow for greater precision of conversion ratios - not used at this time. - frame.h: added isStreaming flag to SrcAudioResample constructor and createAudioResample factory method. This fixes a bug between the differing usage models employed in the player vs. FX rendering that often results in choppy audio in FX. - frame.h: added AsyncAudioResample class to facilitate locked audio export (but could be used elsewhere). - page_export.cc: in updateProgress, pulsate on negative value. - page_export_1394.cc: implement locked audio output only if resample is enabled by user. - page_export_audio.cc: implement locked audio output. - page_export_avi.cc: implement locked audio output only if resample is enabled (still always enabled on big endian machines). - page_export_mjpeg.cc: implement unconditional locked audio output. - page_export_pipe.cc: implement unconditional locked audio output. - make all base classes with virtual methods include a virtual destructor. Changes by Craig Drummond: - kino.glade, callbacks.c, message.{h,cc}, kino_common.{h,cc}, preferences_dialog.cc: * Make preference dialog a GtkDialog, not window. * Use gtk_alternative_button_order. * Give each dialog a parent - this includes the message boxes. - preferences.cc: If set, use $KINO_HOME/kinorc as config file. - page_export_mjpeg.cc: If set, look into $KINO_HOME/dvdauthor. - page_export_pipe.cc: If set, look into $KINO_HOME/exports. Changes in version 0.8.0: Changes by Dan Dennedy: - preferences_dialog.cc, kino.glade: bugfix segfault clicking file browse button and accepting in Preferences/Capture (reported by Jean-Luc Coulon). - gtkenhancedscale.c: bugfix cosmetic bug in Trim when changing scenes in update mode. - riff.cc: added data length parameter to RIFFFile::ReadChunk() for safety check with warning message on insufficient storage. - avi.cc: bugfix OpenDML AVI with 2GB RIFF chunks (AVIStdIndex not big enough). - page_magick.cc, audio_transitions.cc: enhance to use locked audio for non-B-frame consuming audio transitions Dub and Mix. - nearly all files: drop GNOME dependencies, but require GTK 2.6 and libglade 2.5. Added some utilities from MLT to replace gnome-config. - src/dvtitler/: bundle in timfx minus OpenGL-based FX. - src/dvtitler/lumas/: bundle in images for timfx's Luma Wipe. - src/timfx/: bundle in dvtitler as simply Image Filter/Titler. - storyboard.cc: bugfix storyboard interactive search stealing focus. - configure.in: bugfix installation location of kino-jogshuttle hotplug script (from Jan Brinkmann). - timeline.{h,cc}: make multi-threaded for better responsiveness. - dvtitler.{h,cc}, textblock.{h,cc}: added support for toggling whether to process input text as plain or Pango markup. - dvtitler.glade: added markup checkbutton and reorganize UI. - HOWTO-PLUGIN: remove GNOME info and replace with GTK2. - oss.{h,cc}: add ALSA support with code from Troy Rollo. - page_magick.{h.cc}, frame_displayer.{h.cc}: change from dv_oss interface to new dual OSS/ALSA kino_sound interface. - kino.spec: remove GNOME from description, remove libgnomeui dependency, add libasound dependency. - preferences.cc: default audio device to "default." - kino.glade: added import window. - kino_common.{h,cc}: added KinoCommon::importFile(). - magick.glade: reorganize FX UI - page_magick.cc: disable reading of removed "Create before" widget - always create before current frame now. - timfx/image_luma.cc: default to an inbuilt wipe. - frame.cc: added mutex locks around avcodec_open() and avcodec_close() to improved thread safetiness. - frame.cc: use libavcodec/img_convert instead of internal routines and use libavcodec frame alloc/free. - kino_common.cc: bugfix stack corruption in GTK FileChooser preview. - frame.{h,cc}: added methods CreateEncoder and EncodeRGB with avcodec support for DV video encoding. - page_magick.cc: refactor to use Frame::CreateEncoder, Frame::EncodeRGB, Frame::EncodeAudio, Frame::SetRecordingDate, and Frame::SetTimeCode. - preferences_dialog.cc: Hide libdv-only options (Display/DV Decoder and Other/Enable two pass encoding) when built with avcodec. - dvtitler/superimpose.{h,cc}: added FX/Video Filter/Superimpose based upon dvtitler compositing engine and Create/From File. - preferences.{h,cc}: convert from gnome-config to glib 2.6's g_key_file. - displayer.cc: add rounding to AspectRatioCalculator to completely fill preview. - kino_common.cc: restore splash in video window. - po/cs.po: updated czech translation by vitko. - page_magick.cc: improve preview/render/stop button state handling. - kino.glade: use new 16 pixels icons for File/Publish and File/Save Still. - scripts/exports/various: Make High and Medium profiles VBR. - scripts/exports/ffmpeg_flv.sh: added SWF+XHTML profiles. - preferences.{h,cc}: add enableAVC - page_capture.cc: make AVC button state "sticky" via preferences. - page_capture.cc: bugfix race condition in clean() method on leaving page. - ieee1394io.cc: bugfix occassional segfault when leaving Capture by initializing currentFrame to NULL (could return NULL pointer to FramePool). - Page, FramePool, FileMap: suppress gcc4 compiler warnings. - Use intltool to gettextize glade files and add i18n support to dvtitler and timfx. - kino_av_pipe.{h,cc}: bugfix setting YUV4MPEG interlace flag on progressive or deinterlaced material. - kino.glade, page_export_mjpeg.cc: add detection of yuvdeinterlace and prefer it over yuvdenoise for mjpegtools 1.8 compatibility. - es.po, fr.po, it.po, nb.po, sv.po: apply updated translations from contributors. - scripts/export/ffmpeg_*: simplify options to improve chance of success across various versions of ffmpeg. - scripts/export/ffmpeg_h264(_dual).sh: added H.264 exports. Changes by Alan Canon <acanon@bellsouth.net> - kino.glade: Added two GUI items to the MJPEG Export page. One allows the override of the aspect ratio when the mpeg file is generated. This is useful for users with anamorphic widescreen adaptor lenses fitted to their cameras, as footage shot using such a lens, though intended for presentation at other than the 4:3 aspect ratio, is not digitally tagged as such. The previous workaround was to edit the DVD Author .xml file, adding <video aspect="16:9" /> to the titleset. - page_export_mjpeg.cc: Modified constructor and destructor so that all options sticky except the video/audio/mplex pipelines (since these have their default values set by the libglade run-time.) Added support for the aspect ratio override, used in adjusting the -a option for mpeg2enc. Added support for running a script once DVDAuthor xml has been produced at the completion of export. This means that the DVD authoring or MPEG viewing can commence unattended immediately following the completion of export, if desired. The script is executed using the name of the dvdauthor file as the sole command-line argument. - preferences.h: Added seven variables to the Preferences class, representing the seven sticky options in the Mjpeg Export page. - preferences.cc: Added support for persisting the seven options from Mjpeg Export page. Changes in version 0.7.6: Changes by Dan Dennedy: - no.po: added Norwegian translation by Knut Berg - nb.po: added Norwegian Bokmaal translation by Klaus Ade Johnstad - preferences_dialog.cc: fix 64bit compilation issue on_avc_phyid_activate() (patch from Daniel Kobras) - kino.glade: fix tooltip typo on capture driver menu (Daniel Kobras) - kino.glade, preferences_dialog: make capture device file entry available only when dv1394 is selected (Daniel Kobras) - preferences.cc: make compilation less memory intensive (Daniel Kobras) - kino.glade, configure.in: bump versions and change website address - README: change main website address and change or remove outdated info (re GNOME 1.4 and video1394) - kino.xml: added shared-mime-info definition of video/dv and application/x-smil - scripts/exports/ffmpeg_flv.sh: added Flash Video export script. - scripts/exports/ffmpeg_divx.sh, help/intro.html: change "DivX" to "MPEG-4 AVI" and cleanup other info in the intro page. - scripts/exports/ffmpeg2theora.sh: add bitrate control arguments for ffmpeg2theora v0.12. - ieee1394io.cc: bugfix dv1394 deadlock exiting capture. - image_create.cc: bugfix importing (FX/Create/From File) images with alpha channels (alpha is ignored) (patch from Michael Hanke). - scripts/exports/ffmpeg_mp4.sh: added MPEG-4 ISO format export. - scripts/export/ffmpeg_3gp.sh: added script for 3GPP mobile MPEG-4. - riff.cc, riff.h, avi.cc, avi.h, endian_types.h (added): make RIFF and AVI classes endian and architecture safe (Daniel Kobras). - frame.h, frame.cc, framedisplayer.cc, page_export_1394.cc, page_export_audio.cc, page_export_avi.cc, page_export_mjpeg.cc, page_export_pipe.cc: refactor AudioResample into class template to do endian conversion as well (Daniel Kobras). - audio_transitions.cc, , kino_av_pipe.cc: bugfix endianness of WAV import and export endian (Daniel Kobras). - frame.h: bugfix compilation errors on gcc 4.0 (Andreas Jochens). - frame.cc: bugfix endianness of Frame::ExtractYUV() (Daniel Kobras). - frame.cc: enable use of libavcodec for decoding RGB for both NTSC and PAL (was PAL only previously). - page_export_pipe.cc: sort scripts in UI by description. - kino_common.cc: bugfix GTK 2.4 FileChooser defaulting to wrong folder (Jira bug #KINO-154 patch courtesy of Andy Pengelly). - commands.cc: bugfix segfault on exit (bug #KINO-156). - mediactrl.c: added support for Hercule's distributed ShuttlePRO (bug #KINO-144). - gtkenhancedscale.c: bugfix startup segfault on ia64 (David Mosberger) - scripts/export/ffmpeg_divx_dual.sh: added dual pass MPEG-4 AVI export - scripts/exports/ffmpeg2theora.sh, ffmpeg_mp4.sh: added metadata support - kino.glade: bugfix tooltop for Preferences/IEEE 1394/raw1394 interface. - storyboard.cc: bugfix metadata value display bug. - ieee1394io.cc: bugfix deadlock exiting Capture with no ieee1394 modules. Changes by Mads Bondo Dydensborg: - Added Basque language support, eu.po, by Dooteo <dooteo@euskalgnu.org> Changes in version 0.7.5: Changes by Dan Dennedy: - it.po: added Italian translation by gian luca rasponi - cs.po: updated Czech translation - updated insert, capture, and save frame icons from Andreas Nilsson - kino.glade: use stock-execute in FX/Render, and stock-convert in Export/Export - publish.sh, frame.sh: look in $HOME/kino/scripts/ for user-supplied script. Changes in version 0.7.5: Changes by Dan Dennedy: - gtkenhancedscale.c: small cosmetic touchups - page_trim.cc: bugfix player not getting updated duration when selecting a new scene in Overwrite mode while playing. - preferences_dialog.cc: bugfix re-opening preferences when using the window manager close button. - page_export_pipe.cc: add support for dual pass output (Flags contains "double-pass"). - scripts/exports/mencoder.sh: added contribution by Ruda Matousek - riff.h, riff.c, avi.cc: added mutex locks around critical routines involving multiple interdependent lseek, read, and write calls to make them atomic. - filehandler.cc: performance optimization for type 2 AVI. - page_export_mjpeg.cc: bugfix (S)VCD output due to '=' in format specifier. (introduced in 0.7.4) - Kino.desktop: renamed to be compatible with kde menus - sigh - page_export_mjpeg.cc: do not output 2 numeric parts in filename unless needed and check for longopts on mplex and mpeg2enc. - image_create.cc: extend max number of frames to create to 999999. - kino.png: new icon from Andreas Nilsson. - main.c: use new icon and remove kino-32.png. - commands.cc, callbacks.c: bugfix bad interaction between mouse scroll and jogshuttle. - kino.glade, magick.glade: change all icon+label buttons to have icon preceed the label, add new insert and tab icons from Andreas Nilsson, and replace transport icons with stock_media from Jimmac. - ffmpeg_dvd.sh: added dual pass profiles. - page_export.cc: bugfix storyboard enabled state when switching export pages. Changes by Mads Bondo Dydensborg: - kino.desktop: apply patch from Daniel Kobras to add new translation entries and remove blank ones. Changes in version 0.7.4: Changes by Dan Dennedy: - page_capture.cc: bugfix null frame pointer deref - kino.desktop: add Greek translation, remove unconfirmed translations, and add Encoding key. - pixmaps/kino.png, kino-32.png: added new icons contributed by Eugenia Loli-Queru - smiltime.cc: bugfix indefinite state - ieee1394io.cc: bugfix deadlock situation stopping a dv1394 capture. - kino.glade, page_export_mjpeg.cc: always honor the cleanup option, not just when there is an error. - page_export_mjpeg.cc: deinterlace MPEG-1 formats using yuvdenoise fast if user does not specify (sensible default). - page_magick.cc: bugfix Video Transition/Frame following when in Create mode. - ieee1394io.cc: debug/cleanup thread cancellation issues by removing more blocking calls. - page_trim.cc: use KinoCommon::getFileToOpen() for FileChooser dialog on GTK 2.4. - kino.glade: change accellerator on View/Edit to 'd' to prevent clash with Edit menu for translations where a video edit is not the same as generic edit. - po/es.po: added spanish translation from Redy Rodriguez. - FrameDisplayer: added CloseAudio method to close OSS device when not needed. - PageEditor, PageTrim: call displayer's CloseAudio method when playback stopped. - kino.1: apply patch from Daniel Kobras to fix documentation about DV file support. - playlist.cc: apply patch from Daniel Kobras to fix segfault when project directory is /. - scripts/*.sh: apply patch from Daniel Kobras to remove bash-specifics and handle extra quoting. - page_export_audio.c, page_export_mjpeg.c, page_export_pipe.c, page_export_stills.c: apply patch from Daniel Kobras to handle greater length file names and special chars in filename with quoting. - kino.desktop: added MimeType as Name and Comments for es. - kino.glade: hide V4L tab - no longer supported but still available thru editing the glade or ~/.gnome2/kino config file. Also, cleanup the Every entry in the Capture tab. - po/cs.po: added Czech translation. - scripts/exports/ffmpeg2theora.sh: added script by jan gerber - audio_transitions.cc, magick.glade: drop A/B Switch from Audio Mix due to lack of usability. Do not change #samples in Transitions to prevent loss of audio and subsequent sync errors on export. - kino.glade: revert export tabs to top position to minimize effect of nested tabs. - editor_play.xpm: less clunky looking play button. - kino_common.cc: fix GtkFileChooser save dialog to use session's current directory or preferences project directory. Fix preview size in GtkFileChooser open dialog for 4:3 (16:9 still not honored). - *.html: added Table of Contents links to top of each page. Removed info about V4L in prefs.html - page_editor.cc: added Home, End, PgUp, and PgDn keyboard commands. - page_capture.cc, page_trim.cc: added Home and End keyboard commands. - gtkenhancedscale.c: cleanup and make click anywhere not on arrow position top slider to click spot. - kino.glade: hide notebook tabs on keyboard command reference and add fourth "other" tab. - page_export.cc, page_magick.cc, page_timeline.cc: switch to other tab in keyboard command window. Changes by Mads Bondo Dydensborg - po/da.po: updated - cmd_ref.c: fix missing translatable string - po/fr.po: added french translation by Philippe Martin Changes in version 0.7.3: Changes by Dan Dennedy: - preferences_dialog.cc: bugfix defaulting max frames and max size for capture when they equal zero (zero is valid and means unlimited). - kino.desktop, pixmaps/kino.png: fix newlines and add kino icon - kino_common.cc: bugfix segfault in filechooser preview function on filename with no extension. - kino_common.cc: bugfix file save dialog on GTK 2.2. - page_export_mjpeg.cc: bugfix scene split, each scene contained extra frame at the end. - image_transitions.cc: bugfix No Change - audio_transitions.cc: add No Change - cmd_ref.c: bugfix columns added each time keyboard reference opened. - help.sh: bugfix to use gconftool-2 to lookup preferred gnome browser from gconf key set in gnome-default-applications-properties capplet. - applied updated sv translation from Kjell. - kino_common.cc: bugfix HIG compliance on button order of file chooser. Changes in version 0.7.2: Changes by Dan Dennedy: - image_create.cc, image_transitions.cc: bugfix uninitialized members GDKImageTransitionRepository.selected_transition and GDKImageFilterRepository.selected_filter - page_magick.cc: bugfix setting Overwrite/To entry. - mediactrl.c: add missing include. - po/sv.po: added Swedish translation by Kjell Claesson. - applied FreeBSD patches from Pierre Beyssac. - audio_filters.[ch], audio_transitions.[ch], page_magick.cc: pass # samples by reference and have WavRead return # samples, so we do not try to copy or encode more audio samples than are really available. - page_magick.cc: bugfix audio crossfade broken with changes - ieee1394io.[ch]: bugfix compilation on gcc 3.4/cleanup kludgy code - mediactrl.c: added ShuttlePro2 to the list of devices (patch from Kent Loobey) - bugfix broken playback at end of movie with drop frames enabled. - bugfix broken Redo menu item and toolbar (Ctrl+R worked). - displayer.cc: bugfix set XV_AUTOPAINT_COLORKEY to 1 and addition to set the colorkey to a dark gray. - page_export_stills.cc: save files with 6 digit number to make compatible with Gimp Animation Pacakage. - image_create.cc: added ability to import from image sequence using scanf format specifier in the filename and added helpful tip to GUI. - applied patch from David T Hollis <dhollis@davehollis.com> to use new file chooser dialogs on GTK+ 2.4. - filehandler.cc: free mem in AVIHandler's destructor because Close() is only called after writing. - scripts/exports/ffmpeg_divx.sh, ffmpeg_mp3.sh: bugfix mp3 encoder detection for newer versions of ffmpeg. - mediactrl.c: added support for Griffin PowerMate (patch from Lars Täuber <taeuber@informatik.hu-berlin.de>) - page_magick.cc: bugfix FX/Create #Frames and FX/Overwrite duration - page_export_mjpeg.cc: bugfix accuracy of dvdauthor xml export for NTSC - page_capture.cc: bugfix potential deadlock when stopping capture. Changes in version 0.7.1: Changes by Dan Dennedy: - kino_common.cc: bugfix in makeTimecode submitted by Jason Woods - PageTrim: added 3 point insert editing (sponsored by Tagesschau.de) - PageTrim: added many scene-oriented editing commands as a byproduct of having to fix Storyboard drag-n-drop scene arrangement in Trim. - Reorganize and simplify menus and toolbar. - frame.cc: added Frame::Deinterlace linear-blend deinterlacer - playlist.cc: added SetSeqAttribute, GetSeqAttribute for metadata. - storyboard.cc: convert GtkListStore to GtkTreeStore for metadata. - audio/image_filters/transitions.h: change gnome.h include to gtk/gtk.h. - added src/cell-renderers from MrProject for storyboard metadata support. - avi.cc: bugfix generating AVIX for files >1GB - filehandler.cc: add autosplit based upon timecode discontinuity. - change all gtk_signal usage to g_signal. - page_capture.cc: bugfix segfault leaving page when IEEE 1394 not available (due to cancelling non-created thread). - preferences_dialog: bugfix dv quality scale not incremental. - page_capture.cc: bugfix make type 2 AVI OpenDML if size >1000, not 1024. - page_capture.cc: bugfix writing type 2 AVI with bad audio stream format parameters due to non-normal speed DV used to gather audio info. - preferences_dialog.cc: bugfix segfault in Jog/Shuttle Action menu selection. - preferences.cc: added metaNames and metaValues for lists of seq element attributes and their value ranges. - src/cell-renderers: added from MrProject to support combos in GTK tree. - storyboard.cc: added metadata editing. - playlist.cc: make string_utils class public. - replace all GnomeFileEntry with GTK Entry and Open button. - preferences.cc: replace deinterlacePreview bool with displayExtract int. - preference_dialog.cc: replace Display/Deinterlace checkbox with optionmenu. - frame.h: make GetUpperField and GetLowerField public. - frame.cc: change ExtractPreviewYUV and ExtractPreviewRGB to use displayExtract preference option to either deinterlace with linear blend, get lower field, or get upper field. - page_export_stills.cc: add resample and extract options. - kino_common.cc: remove getFileToSave as getFileToOpen serves same purpose now. - page_capture.cc: cleanup and fixup toggle button sensitivity and state. - make keyboard reference window's notebook change pages with the main window. - dress up about dialog. - added custom split and join icons. - kino_common.cc: implemented saveFrame with pixel aspect and extract options. - page_capture.cc: added pixel aspect and extract option to save snapshot. - added Save Still Frame menu and toolbar items. - preferences.cc: added expandStoryboard, enablePublish, and newProjectURI. - added Publish Project and Still menu and toolbar icons. - riff.h: 64bit OS fix. - fix timecode display problems throughout for PAL. - killed the command entry (retained existing functionality with some behaviour change--no Enter required except to stop a goto-frame) - page_editor.cc, page_trim.cc: Reassign key 'i' to set in point, assign key 'o' to set out point. - added scripts/publish/project.sh and frame.sh - added scripts/export/ffmpeg_dvd.sh - page_export_mjepg.cc: applied patch from Greg Hookey for dvdauthor xml. - added PlayList::SetDocId, PlayList::GetDocId, PlayList::SetDocTitle, and PlayList::GetDocTitle. - added KinoCommon::fetchProjectMetdata to expand metaValues and generate DocId. - Make View menu radio items that change state appropriately. - bugfix hang on dialog when bad files loaded from command line. - page_export_pipe.cc: add smil filename to script args. - filehandler.cc: use current date/time if no DV recording date when putting timestamp in filename of file captures/exports. - page_export_1394.cc: remove redundant audio extract when resampling and bugfix failure status at end of export. - page_export_avi.cc: remove redundant audio extract when resampling. - numerous various changes to improve GNOME HIG compliance. - applied patch from Matthias Oelmann for USB Jog/Shuttle improvement to add a hardware abstraction layer. - changed many diagnostics to use stderr. - prevent redundant calls to Export::activate() and improper calls to Export::selectScene(). - Permit setting preview size from Capture when no file loaded and default not set in Preferences. - Consolidate play and pause buttons. - bugfix durations as timecode. - Added colons on labels for controls. - Removed dvDecoderAddNTSCSetup option from Preferences--no longer supported. - Removed JogShuttleDevice from Preferences--no longer used. - Removed enableTimecode from Preferences--no longer used. - Automatically save/restore selected time format in preferences timeFormat. - Fixup control label accellerators. - In Capture, show files on storyboard, capture duration in timecode, and current capture file in status bar. - Added preference trimModeInsert to enable Insert as the default in Trim along with checkbox in preferences dialog under Other. - Added mouse scroll wheel support (shift = single-frame, ctrl = shuttle). - Added more keyboard and Jog/Shuttle commands -- replaced ":split" with "Ctrl+J" which has always been available anyway. - Cleanup static and local Frame objects, using FramePool throughout. - Created a modal_confirm() to consolidate this message dialog. - Change Save As to make Kino use the new document name for the current session. - Issue a modal_confirm() if an existing file is selected in Save As (or Save untitled). - Add stop() and start() methods to JogShuttle and connect to Preferences dialog and SIGUSR2 handler. - bugfix PageCapture deadlock starting capture from paused state. - Added reporting of dropped frames to Capture. - Updated Frame class to use new libdv functions and require libdv 0.102. - Dropped support for video1394. - Make playback in Edit stop transport at end of movie. - bugfix not exporting to external monitor via dv1394 without frame drop. - Added custom icons for trim set in and out buttons. - Unify and relocate progress bar to bottom right of window. - bugfix abort writing AVI when disk full. - Improve warnings for failure to initialise IEEE 1394 subsystem. - bugfix some deadlocking issues within Edit and Trim playback and the frame seeking (h, j, mouse wheel, etc.) - Added smiltime.h and smiltime.cc for expanded time format and entry. - Change all frame spinner widgets to "time spinner" widgets that use SMIL time classes. - Revised FX GUI layout. - Updated online help and added new topics. - Added scripts/help.sh and removed usage of gnome help. - Added some context sensitivy to online help. - Detect shared installation of libsamplerate and attempt to link to it. Changes by Charles Yates - cursor key fixes Changes by Mads Bondo Dydensborg - Danish translation (and a short translation README) - Hotplugging for USB JogShuttle devices - Added help/export.html - with changes by Bill Marr - Backtrace dump on sigsegv Changes in version 0.7.0: Changes by Dan Dennedy: - GNOME2/GTK2 port using libglade - added new Storyboard view class. - Consolidated Preferences/Display/Fixed image size with View/ 50/100% percent and added new Auto Fill option, which does not use Fixed image size. - preferences.cc: bugfix saving dv/1394 export pre-roll - run astyle on all code to cleanup formatting - ieee1394io.cc, page_capture.cc: bugfix to properly handle dv device in record (camera) mode - filehandler.cc: bugfix quicktime audio reading with patch from Richard Baverstock - preferences_dialog.cc, ieee1394io.cc: do not try to read 1394 rom further if error is returned on getting directory (usually due to a hub device) - added keyboard accelerators for view 50/100/auto - page_editor.cc, page_trim.cc: make videoShuttle not stop/start playback threads. Also, fix jumpiness behavior in page_editor.cc. - preferences.cc: change default file format to raw DV, and default syt_offset to 0. - page_export_mjpeg.cc: set aspect flag on mpeg2enc. - page_capture.cc: make AV/C button a toggle button to represent current state. - preferences.cc, commands.cc: save and restore window state between sessions. - kino_common.cc: remember and use current directory for insert and append dialogs as well as Open/Save. Added getLastDirectory() method. Changes by Charles Yates - pixbuf unaccelerated previews - timeline clean up/speed up - modified plugin directory to $prefix/lib/kino-gtk2 - failed to fix load splash - attempted to make safe - improved click on fx preview behaviour (returns to last page) - removed 'return to render' fx key press - removed yuv2divx (and good riddance) - cleaned up export presentation a bit - removed confusing 'advanced' button from fx frame selection - turned on low quality and audio previews by default - GUI tuning for export, preview and storyboard - DV Pipe Export - Provided ffmpeg_divx.sh and ffmpeg_vcd.sh as export scripts - Provided ffmpeg_mp3.sh export script - Provided rawplay.sh export script - Corrected ffmpeg/mp3lame dependent scripts - Storyboard redraw and select propogation corrections - partial V4L fix up - added IsUsable to plug-in api (to allow run time dependency checks) Changes in version 0.6.5: Changes by Charles Yates: - changed oss /dev/dsp open to write only - added .dif extension support (for compatability with forthcoming Mainactor release) - Merged smilutils libkino with kino Changes by Dan Dennedy: - integrated libsamplerate (Secret Rabbit Code) - applied patch from Daniel Kobras to return AVI::WriteFrame success result through call stack, and to automatically enable OpenDML if capturing unlimited file size or max size >1GB. - bugfix Export/IEEE1394 not sending AV/C Record. - bugfix crashes in scene list updates. - Added generic getStreamFormat, getFrameInfo, and getFrame methods - changed AVI and Quicktime file handlers to read separate audio track and encode into DV frame. - added more valid DV AVI FOURCCs: DVSD, CDVC, cdvc, and DV25, dvcs, DVCS, dvcp, DVCP. - apply patch from Johan Evenhuis (Bug #54) to improve performance of AutoSplit. - page_export_mjpeg.cc: if DVD format and bitrate and frequency not specified set them to good defaults (48KHz frequency and 192kbps bitrate). - Frame: add method IsNormalSpeed(). - PageCapture: prevent capturing bogus frames when commenced from a paused state. - fix compilation on gcc-3.3 by reinstating gettext support - avi.cc: no longer put JUNK chunks in MOVI list for efficiency gain. - filehandler.cc: setting size and frames to zero = infinity. Changes in version 0.6.4: Changes by Dan Dennedy: - bugfix opening Quicktime DV without audio track - bugfix segfault on buffer underrun in dv1394 capture - bugfix resource leak on current scene highlight by making threads detached - bugfix error handling on disk run full in capture - pause playback in edit and trim when use scrub bar - AVI writing compatibility improvements - bugfix scene list not updating with playlist changes - bugfix MoreInfo and current scene highlight in the Trim page reflecting correct frame and file in some cases. - bugfix segfault on leaving Export/1394 or Export/DV File with background job. - remove Frame::ExtractBGR0() resulting in bugfix for recent libavcodec incompatibility. - expose more jogshuttle actions: undo, redo, split - add resampling on WAV input to FX/Audio/Transition/[Dub|Mix] - bugfix clipping on FX/Audio/Transition/Cross Fade Changes by Charlie Yates: - added two pass DV encoding Changes in version 0.6.3: Changes by Dan Dennedy: - added Quicktime support (--with-quicktime) - added export result status - added dv1394 support and refactored ieee1394io.cc - bugfix unlocked mutex in AVC::Timecode - added Help/Command Reference - implemented PlayList::GetFileNameOfFrame() and added display of filename during IEEE 1394 Export - bugfix AVI attempt to write negative size JUNK padding, as reported on type2 - bugfix to report user error if AVI is not fourcc dvsd - bugfix to report user error if file load failed due to permissions - make Jog/Shuttle use HID driver by default - added current clip filename to status bar in Edit, Trim, Timeline, and FX - bugfix xmlSaveFormat undefined compilation error - bugfix Export/MPEG/Scene Split - tweak AV/C handling to make more tolerant to transport status errors and to increase polling interval to be nicer. - added support for libavcodec for DV decoding YUV NTSC and PAL, and RGB for PAL only (--with-avcodec) - open raw DV files readonly - removed ExportMJPEG, ExportAudio, and PageMagick dependency on libdv and use AudioInfo instead. - Added AVC:Noop() and resolve bus reset issues due to changes - Added Frame::EncodeAudio() - Modify Page Export1394 re-encode audio to provide consistent audio bit depth - Added Preferences::dvExportPrerollSec with UI and used in Export1394 to allow user to configure preroll to allow receiving to sync. - Added Preferences::avcPollIntervalMs with UI and used in PageCapture to let users reduce AV/C activity level on their devices for more stability. - Added AVIFile::verifyStream, AVIFile::isOpenDML, and KinoCommon::showFrameMoreInfo - Added a expandable panel to show detailed frame and file information. - bugfix trim control not resizing - new trim control design - Added audio resample options to Export/1394 and Export/DV File - Added audio resampling to FX to fix mixed audio format projects - Changed AudioSwitch to a cross fade with spline controls - Changed some tool tips in Export for clarity - Added key handling in Timeline and FX. - Added scene highlighting and scrolling to scene strip. - Extened GtkEnhancedScale (trim contol) to render scene breaks. - Replaced use of Bar class plus hscale with new GtkEnhancedScale. Changes by Mads Bondo Dydensborg: - added Export/MPEG cleanup option to disable removing temp files if mplex fails. - added support for changing mappings for the jogshuttle in the preferences. Changes by Charlie Yates: - Audio sample calculations (requires new libdv CVS) - Special case treatment of audio only FX - Capture no longer delivers incomplete frames to preview - V4L has support for different channels - Diagnostics changed from cout to cerr where overlaps with smilutils legacy library exist - Added a 'no change' image transition to allow audio only transitions Changes in version 0.6: Changes by Charlie Yates: - Fixed memory consumption issues for .avi files - Enhanced fx preview (large with low quality option) - Modified playlist handling - dirty flag et al included - Added FX Housekeeping (removes old files on exit) - Fixed Trim editing and undo usage - Added preview deinterlace (yikes! ugly for XV but ok for GDK rendering) - Modified FX Frame selection (default is current Editor scene) - Improved Timeline functionality (fixes memory leak and cleans presentation) - Memory usage related to Frame objects tidy up - View 50%/100% rewrite - Relative file save preference - Directory usage review - Temporary fix to resolve PAL FX rendering issues - Reworked Capture - Playback optimisation in Edit and Trim -- added disk reader thread. - Integrated scene list with FX preview. Changes by Dan Dennedy: - cleanup: deploy new build system based upon autoconf-2.5 - cleanup: compilation fixes for gcc/g++ 3.1 and 3.2. - cleanup: standardize order of includes: config.h, C++ STL, system C, local - PageCapture: bugfix to enable capture buttons even with AV/C control disabled. - IEEE139Reader::ResetHandler: recover iso reception, fine-tuning. - KinoCommon: bugfix to not assert/segfault on missing pixmaps. - KinoCommon: warn user about missing pixmaps. - frame.cc: exclude all non-libdv data and code if have libdv. - ExportStills: bugfix to make frame number in filename 1-based. - AVIFile: bugfix dv2, get total frames from index counts on read, move idx1 to within first 1GB, do not add frames if no large index (OpenDML) and >1GB, add dmlh to dv2 if large index, add AVIX (extended RIFF) support for dv2, optimize padding for block alignment. - AVIFile: test compatibility with avifile and mplayer, test reading all frames from large AVIs created by Windows/VegasVideo. - FileHandler, PageCapture, ExportAVI: catch failure to create file and warn user. - ExportMJPEG: allow mplex field to be blank and if so, do not delete temp files, change name of temp mpeg file with .mpv extension. - Added many focus event handlers to prevent keystrokes from falling through to our custom key handler. - Added appending to history of gnome file entrys. - Disabled distracting frame borders in GUI. - Added View/FX menu item. - Help updates. - KinoMJPEGVideoPipe::OpenVideoPipe: bugfix framerate for NTSC that caused a/v sync error. - PageTrim: added a loop button and looping behavior. - PageTrim, PageEdit: added shuttle framerate feedback. - Frame: bugfix audio artifacts due to not always decoding headers, removed header_seen private var, and cleaned up rest of code to ensure ExtractHeader is called whenever an instance's data changes. Changes in version 0.51: Changes by Arne Schirmacher: - large AVI file support Changes by Charlie Yates: - added Join scenes function - added undo/redo - added file collecting during capture and playlist editing upon return to editor - bugfix: oss_close - minor fixes to v4l - MJPEG export page - Audio resampling for non 48khz compatible sound cards and mixed sample rate projects - Improved audio export page (now allows selection of sample rate) - Improved audio-less playback (closer to realtime - will probably need some refining) - Enhanced Stills export (allows selection of Every frame a la DV export) - Enhanced Audio export (wav via sox, mp2enc, lame or oggenc) - Enhanced Audio export (output cut on scenes) - More MPEG export (multiple deinterlace methods and scene splits) - Added some error detection in MPEG (sigpipe) - Added Magick page - Introduced Magick plugins - Fixed size images - Added advanced Magick Frame Overwrite functionality and sundry bug fixes and minor cosmetic changes Changes by Dan Dennedy: - applied Daniel Kobras' patch to PageEditor::showFrame to use Frame reference parameter instead of Frame object - added NTSC drop-frame handling to timecode display - added GUI menu/toolbar elements for Charlies additions - added MODULE_LICENSE to USB JogShuttle drivers - changed still file names to include only 8 digits in filename - added drag-n-drop support for files on Kino window - added Trim Page !! - bugfix: make all UI frame references consistently 1-based, required changes in Timeline, Export Stills, Export Audio, and Trim - added Preferences item for video1394 device - cleanup: remove video1394.[ch] - cleanup: remove capture_dialog - cleanup: remove progress_dialog - cleanup: remove unused functions, particularly callbacks - cleanup: remove hardcoded references to frame sizes - remove locks around libdv access and fix multi-threaded access to libdv, requires new version 0.9.5+ of libdv - revise Frame class for new version of libdv - add drag-n-drop support in storyboard to rearrange scenes - added Arne's new large file, OpenDML AVI support (currently beta2) - Add labels to buttons in Capture and Export pages, tooltips to Capture buttons - PageCapture: consolidate AV/C timecode and status transactions - PageCapture: new methods disableAVC() and enableAVC() stop/start AV/C status and timecode and disable/enable UI controls - added Preferences item to disable AV/C - clear timecode display when no AVC or no file loaded - IEEE1394Reader: only check validity of AV/C node id upon starting PageCapture or on bus reset, enhanced bus reset handler - move FileTracker:Add() calls from AVIFile to FileHandler subclasses - added Preferences items: dvCaptureBuffers, dvExportBuffers, dvDecoderAddNTSCSetup, dvDecoderClampLuma, dvDecoderClampChroma - implemented max file size handling in Preferences, PreferencesDialog, FileHandler, PageCapture, and PageExport. - Fix RIFFFile:GetFileSize to return off_t. - Added support for raw .dv file. - Changed Frame::ExtractAudio() to use libdv - added overloaded Frame::ExtractAudio() to get data in array of channels. - changed all audio access to use Frame::ExtractAudio. - added audioScrub preferences item and implemented in PageEditor and PageTrim. - added isOpenDML preferences item and UI to enable AVI LARGE_INDEX for large file support. - use libdv for Frame::GetRecordingDate and Frame::GetTimeCode. - applied patch from Mads Bondo Dydensborg to save movie in mjpegtools ELI format. - applied patch from Mads Bondo Dydensborg to make PlayList::AutoSplit also split on negative time differences. - added KinoCommon::setWindowTitle to place the document name in the window title. - added Preferences::defaultDirectory, KinoCommon::currentDirectory defaults to it, entry in Preferences dialog. - AutoSplit in Export AVI now splits on scene breaks. - use libdv in Frame::IsNewRecording(). - added methods AVIHandler::GetOpenDML and AVIHandler::SetOpenDML - cleanup deprecated use of KinoCommon->getConfig - Added Frame::SetRecordingDate and Frame::SetTimeCode based on new libdv functions. - Modified ExportAVI::doExport and PageMagick::StartRender to set recording date and timecode on frames. - PageTrim: bugfix multiple videos per seq. - KinoCommon: added packIt() method for Charlie's fixed size images preferences, and added calls to PageEditor::, PageCapture::, and PageTrim::start methods. - PageCapture: stop loading splash, which obscures video; add some more mutex locks; view50/100 and saveFrame use global frameBuffer instead of reader; fix toggle state of Record/Stop buttons. - AudioSwitch: fix A/B. - KinoCommon: added changeDirectory() to set process current directory upon loading or saving a SMIL. - ExportAVI: remove every entry (redundant now), add checkbox to update recording date and timecode. - Preferences: close memory leak on gnome_config strings. - Preferences, preferences_dialog, PageCapture, IEEE1394Reader:identify and persist AV/C device by GUID instead of node ID; enable ieee1394 interface and channel selections in preferences. - PageTrim: GUI start/end scene controls now go to in/out points instead of moving between scenes. Use storyboard or keyboard to move between scenes. Changes by Mads Bondo Dydensborg: - added --disable-debug option to configure.in - made KinoCommon::checkFile slightly more robust - removed some potential buffer overflows in the filename handling code - made bulkLoad save absolute paths for files - cleaned up export page, added common buttons and range controls Changes in version 0.50: near total rewrite. Changes in version 0.46: Changes by Arne Schirmacher: - avi.cc would not read in Windows generated type 2 avi files. The new code fixes this. Changes by Dan Dennedy: - reverted Preferences object instantiated to the old method: one object in Commands.cc and extern references everywhere else - bugfix: memory leak in navigator thread due to multiple new Preferences - bugfix: no default capture filename (defaults to untitled now) - bugfix: invalid reference*** WARNING **; Widget not found: capture_dialog_eject_button - bugfix: "soundcard doesn't support 1 channels" - bugfix: opening an AVI before opening capture breaks audio in capture - jogshuttle.cc: added a collection of navigation and edit commands to JogShuttle::button - shuttelpro.c: enabled all of the buttons for the top two rows. Buttons below shuttle ring still not implemented. - bugfix: ShuttlePro shuttle and jog not working - preferences.cc: changed some of the defaults for new config: autoSplit=true, frames=9999, dropFrame=ture, preview_capture=false, syt_offset=19000, displayQuality=2.0 - documented Preferences class - documented JogShuttle class - kino.dox: added jogshuttle.cc and jogshuttle.h - bugfix: corrupt DV/distorted frames during capture with audio enabled even if preview disabled during capture. Solution: delete capture FrameDisplayer if preview turned off. Apparantly, having the audio initialized in the libdv decoder causes some audio processing somewhere and can introduce overhead thereby causing dropped iso packets. - make new type 2 code able to read old type 2 and dvgrab 1.01- dv2 files - moved contents of README to NEWS and made a new README - removed unimplemented commands from man page - bugfix: configure.in and src/Makefile.am now include Xv linker lib only when it exists Changes in version 0.45, July 25-Aug 13, 2001: Changes by Dan Dennedy: - Second lowest dv decoder quality level is now monochrome with AC pass - bugfix: dv decoder quality preferences honored now in capture dialog - bugfix: Kino fails when opening preferences with ieee1394 not loaded - disable IEEE 1394 options when opening preferences with ieee1394 not loaded - bugfix: removed exit() points in preferences_dialog.cc - removed Preferences items that are not usable - bugfix: removed exit() point in ieee1394io.cc - bugfix: preferences do not always save - bugfix: GKD error upon exit when using X or Xv display methods - updated video1394.c with distribution, compatible with kernel 2.4.7. - added drop frame option to reduce choppiness of audio, still some choppiness on my AMD 333, which can not even decode audio alone fast enough - implemented File/New, subsequently opening a file crashes - bugfix: seconds hardcoded to 25 frames, should read from file - added clip timecode to info window (should this be playlist timecode?) - added Coutour ShuttlePro driver - added config/preferences item to enable dropFrame, defaults to false - bugfix: if audio disabled, still decoding audio incurring performance hit - added audio device preferences item: audioDevice - changed space-bar keyboard command to toggle play/pause - bugfix: clicking first, back, forward, or last while playing does not stop playback - added preferences items: enableJogShuttle, jogShuttleDevice - switched functionality between :w and :W - bugfix: toggling audio in preferences crashes Kino on next video update - removed record and eject buttons from capture dialog since they do nothing - remove Quicktime, raw, and test capture file formats since they are unsupported - added ResetBar command - implemented File/New, still need to clear window and display Kino logo !? (we need logo with splash screen) Changes by Daniel Kobras: - added man page - Debian package (pending) Changes by Tomoaki Hayasaka: - added JugShuttle class - added sonyjog.c USB device driver Changes by Arne Schirmacher: - fixes to compile with gcc 3.0 Changes in version 0.44, June 18, 2001: Changes by Arne Schirmacher: - XV now works again with latest libdv Changes by Stefan Lucke: - improvement to the IsPAL function Changes in version 0.43, June 10, 2001: Changes by Dan Dennedy: - expose cip_d for NTSC users in the prefs dialog as the timing threshold - include video1394.h in distribution - endian fix in riff.cc ?? (needs testing) - better AV/C handling of changing nodes - new Preferences option to disable preview during capture Changes by Arne Schirmacher: - fixes to IEEE1394Reader::AviHandler to be compatible with new versions of ohci1394 - bug fix for PAL DV export - prettier code Changes in version 0.42, June 1, 2001: Changes by Yamazaki Makoto: - fixed 50/60 flag in CIP headers in DV Export Changes by Dan Dennedy: - more accurate, concise FillBuffer algorithm (DV Export timing) - added a no_audio flag to the FrameDisplayer::Put() and commmands.cc:Play() so audio does not play at bogus times like during a repaint of part of the video window. - Update bar menu command displays bars immediately - re-enabled the progress bar update during dv export Changes in version 0.41, May 30, 2001: Changes by Dan Dennedy: - removed csr_rom, raw1394_util, simpleavc, and dvcont - added support for librom1394 and libavc1394 (http://sourceforge.net/projects/libavc1394/) - compatibile with new (v0.9x) and old (v0.7x-0.8x) versions of libraw1394 - exposed timing values for DV export through preferences dialog (requires custom, supplied video1394.c) - play audio through OSS, can be disabled in preferences - disable key repeat in Kino, restore system key repeat option outside Kino - repeat keyboard-driven navigation commands until key release (next/previous frame/second) - Stop button in main window works now - remembers current directory between subsequent file dialogs - saves preferences between sessions Changes in version 0.4b, Apr. 30, 2001: minor adaption to latest libdv release again Changes in version 0.4a, Apr. 07, 2001: minor adaption to latest libdv release Changes in version 0.4, Feb. 06, 2001: Merged in Dan's patches: Changes to the display routines: the user can now select the display mode in the options dialog. Changes in version 0.37, Feb. 04, 2001: Added the overview bar. The old statusbar information (current frame, filename etc.) is now displayed in its own window. When exporting movies, the progress dialog now opens before the export starts. Changes in version 0.36, Jan. 28, 2001: The controlling camcorder functions are now more stable. Added more error handling. Changes in version 0.35, Jan. 23, 2001: Several patches supplied by Kino users included: The code for controlling the camcorder has been improved. Export to a NTSC camcorder is now much more reliable. A single image frame can now be saved in several different formats, including jpg, gif, tif, ps and more. When selecting menu commands the corresponding keyboard sequence is displayed. More error checking code has been added. No need to use the patched libdv anymore, as the libdv programmers have added the proposed changes. Changes in version 0.34, Jan. 18, 2001: A function for saving a single frame as an image file has been added. (Can somebody please add JPEG code?) The Xv code now works for NTSC images too. Changes in version 0.33, Jan. 11, 2001: There is now support for exporting movies to a camcorder This is all very new and preliminary. Please refer to the README_DVOUT for more details. Non-Xv output has been optimized by about 20%. You need the included modified version of libdv though. Changes in version 0.32, Jan. 05, 2001: Support for the Xv extensions has been added. See the README_XV for details. Kino now uses a recent libdv, which is finally in real library form. The camcorder controls in the capture dialog work, if you have the dvcont program installed. Kino can now grab very long NTSC Type 2 AVI files without crashing. Changes in version 0.31, Dec. 31, 2000: A bug has been fixed that prevented loading AVI files with more than 4028 frames. A progress dialog for lengthy operations, such as saving, has been added. Plese check out the BUGS and TODO documents. Changes in version 0.3, Dec. 28, 2000: The dvgrab code has been integrated. There is now a Capture dialog where you can preview your camcorder recordings and save selected parts of it to an AVI file. Changes in version 0.21, Nov. 24, 2000: You can now open several AVI files at once by the command: kino *.avi The navigating inside the project is now much faster. A libdv bugfix has been included. Changes in version 0.2, Nov. 08, 2000: Added more commands including cut/copy/paste. Many keyboard commands are now duplicated in the menus. Changes in version 0.1, Nov. 01, 2000: This version has a basic set of menu and keyboard commands and one can actually do some useful work with it. Changes in version 0.01, Oct. 08, 2000: first version, only marginally better than xdvplay.