Version History: Difference between revisions

From kJams Wiki
Jump to navigation Jump to search
 
(585 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Version 1.0d45: Not Released Yet ==
== List of Latest Changes ==
* hooked up the "re-link files", and "reinterpet names" from the menu (they're also available from the context menu)
* [[History|Click Here]]
* Fixed "File->Export->Original Playlist Files..." so that it only exports either the zip or the MP3+CDG.  Used to be, it *could* have exported Zip, MP3, CDG, PCM and cached CDG for each song, which i'm sure is not what you wanted.
* when "Adding to Library" Audio+CDG files, i now support WAV+G & AIFF+G
* new: "File->Export->Audio Only..." will extract and export only MP3 files, with canonical name (album-track - artist - song.mp3)
* hooked the "Duplicate" command up to songs now, so you can select some songs, and hit "duplicate" and guess what happens?  Well, they files on the disc really do get duplicated.  This is very different from just dragging a song into a playlist twice.  When you do that, both playlist items reference the same song (same files).  When you duplicate, files on disk are duplicated, a new song is added, and the new playlist item references the new song.
* added pref to not show info messages in the video window (and it works)
* added pref for "auto-cue" and no it is NOT hooked to anything yet.  (the QT export prefs also do nothing at this time)
* fixed the crash during the song name interpretation (relating to strchr)
* there was a temporary hang at the end of a long import (add to library) session while all the "clear the LCD window" threads got a chance to fire.  now, i don't fire any at all, also speeding up the process.
* added some new name parser templates
* when you manually enter the serial number, it now displays the success window if it works.  (saying things are fully functional now)
* you can now use the actual paste menu item when entering the serial number manually
* d44r1 August 24
* Almost completely re-wrote CDG graphics decoder (actually most of Jim's code is now gone).  The colors are now "true" CDG colors (was using a palette of 256, now using a palette of 4096, so you'll see better color fidelity.  Keep in mind you can only see 16 of the colors from the palette at any one time, just now the palette has a much larger range)
* no more wiggly graphics when you go full screen, or size the Video window to an odd size (ie: not exactly 2x or something)
* graphics window now erases the area outside the "regular" content area, using the border color (eg: the text showing the song name, if it was very long, would write off the right edge of the screen, then stay there)
* the "About kJams" graphic has been updated to use full color (32 bit, with color cycling, you have to watch it for more than 4 seconds), and now shows the version number, like it should have in the first place.
* fixed a crashing bug if you tried to print your receipt after purchasing (only affects new purchases)
* fixed a crashing bug relating to deleting a playlist while it's still in rename mode
* d44r3 September 8
* the "Get Info" dialog still does not handle Unicode text, BUT!!  Now if you enter unicode text directly (turn on the Advanced pref "Allow Name Editing") it will now correctly save (and load!) your unicode text on song Names / Albums / Artists!
* Okay while i was there i decided to go ahead and upgrade all edit dialogs to Unicode (eg: Get Info).  Finally, unicode support thru the entire application!  Now your song names / artists / albums can contain japanese, chinese, cryllic, hebrew, or whatever characters you want!  (there may still be more work to do)
* The Video window, when showing the next song eg: "Play: Song Name" now can show unicode characters, and the text is now anti-aliased much nicerly
* when scrubbing forward in time, i no longer re-render from time zero, i only render from the previous time to the new time, thus speeding things up greatly.  (when scrubbing backward, i still must render from time zero, so it's slower)
* i had broken the "click in the full screen video window to un-full screen it" feature.  it's back.
* if you brought up Exposé, it would hide the Video window, now it doesn't.
* added a pref to shut off the ability to apply the remembered pitch / tempo for all playlists, only applies when playing a song.  (Pitch will always be applied when burning / exporting QuickTime)
* in the log file, when reporting the user's menu choice, i now support international characters
* had broken the ability to play some QuickTime movie types, the last time i said i "fixed" it.  Now i really DID fix it.  eg: MPEG 4.
* Now, the LCD window uses the sooooper smooth text drawing that also affords tha ability to draw lovely international characters.
* i now show the tasks window when you click the update button, or when you export QuickTime, or when you burn a disc, to let you know something is going on.
* d44r4 September 15
* did a huge ammount of work toward getting the QuickTime Export options actually hooked up.  Not there yet.
* fixed a startup crasher for you 10.3.9 stragglers.  I had snuck in a 10.4 only call, and it crashed you.  Well, i fixed that.  It was the thing that keeps the video window showing when you bring up Exposé, so that feature only works on 10.4.  Don't you think it's time to upgrade?
* Worked around a problem with tracks from the publisher "Song Factory".  They produce very bad encodings, in the sense that, they're changing the Color Table on every frame they should be doing nothing.  (that's 150 Palette changes per second in the worst case)  This is a HUGE waste of CPU, and you can feel it if you try to scrub backward from the end of the song.  I now detect the situation and skip the extra work.
* d44r5 September 17
* Dam! QuickTime audio compression is HARD!  And I'm smart too!!
* When Updating / Burning / Exporting, i now really *really* show the tasks window
* if you ever run a later version of kJams, then go back to an earlier version that can't read the later version's database, i now simply inform you of the fact, rather than unceremoniously wiping out your database, which you probably wouldn't appreciate.
* Fixed a bug where the database would NOT be marked as dirty if you changed something that does not have a column represented in the browser window (eg: year, genre)
* Fixed a bug where if you imported many songs at once with the exact same name (even tho they're in different folders), only the first one would show up.
* Fixed a bug with QT Export that would delete the default settings (rather than make a copy) after the first one went out, possibly crashing you after the first export
* for some reason the Import popup was coming up blank.  I've switched to CFStrings and now it works.
* d44r6 September 18
* fixed a bug in the Disc Info dialog, where you couldn't click or edit the fields
* QT Export is now kinda sorta actually working!  Now doing "export from procedures" to get iPod and 3G goodness.
* for those of you crashing when creating a new playlist, i've put extensive debug info in the code, next time it happens, send me the log file and i'll be in a much better position to finally squish that bug
* tweaked the way the freedb is accessed, now it won't say "disc not found" whenever you stick in a disc, if it can't find the disc, it will remain silent.  It will only report if you picked "Get" from the advanced menu.
* updated name and icon, there's more work to do there
* fixed the ability to edit meta info
* d44r9 October 11
* if you delete the automatically created playlist during ripping, you no longer crash.  (if you don't want it you should just turn off the pref anyway)
* "re-link to files" will do a better job of setting the navigation dialog to somewhere as close as possible to where it thought the file was supposed to be living
* the tasks window no longer shows "track numbers" since they're mostly irrelevant
* when creating a burn, during the "building disc image" phase, the task window now shows which song it's processing, and also if it's pitch bent) (so you are no longer wondering why this song takes twice as long to assemble as that song)
* Ooops, busted QT Export yet again.  Fixed.  (Still does not yet use the export dialog)
* many other dialogs were coming up blank.  fixed
* the string for adding songs to a playlist (after a double click while in target mode) had all funny characters in it
* if an error came up during import, and then you either mounted or dismounted a CD, you'd crash with the "pli index out of date" thing
* errors reading the Table of Contents on a CD no longer cause one error per track, now it's just one per disc
* you know how the graphics never halt, even if the program seems to be hung?  like when saving or sorting a large database, or when doing burn prep?  well, i tried to do the same thing with the tasks window, but it doesn't seem to help.  On my "solo" proc g4 laptop, doing a burn prep on 20 songs sill seems to "hang" for several seconds at a time while running all those threads.  Oh well.  Hey just noticed it actually *does* help, just not while prepping for burn.  okay i'll leave it in.
* used to crash you if you played a song with a percent sign in it (eg: “99.9% Sure”)
* sorting lost it's progress bar, looks like a while ago.  now it's back.
* fixed crash when sorting by pitch
* when you select multiple tracks and get info, then start typing, it was supposed to auto-check the field you type into, that busted, but now it's back
* d44r11 October 18
* if you had < QuickTime 7.1 or MacOS 10.3.9 you'd crash, rather than simply being informed.  fixed.


== What My Plan Is ==
== What My Plan Is ==
next thing:<br>
Okay what am i doing next?
* finish transition to kJams from kTunes
 
* fix several bugs (related to ripping, auto-updating, freedb)
I'm going to keep fixing bugs and release 1.0.1 updates in the same way i have always updated kJams, just about weekly, all for free, for life.  Yep, i've got your back :)
* finish 日本翻訳 (actually just finish localizing, with J being my test subject. Localizing entails extracting all the strings in the entire program into those string files)
 
* Finish QuickTime Export. This will let you actually *use* the options dialog when exporting your CDG files (you can already see i'm working on that in the new preference pane, it's not hooked up yet) (it will be apple scriptable)
Keep in mind however: NO NEW major FEATURES for 1.0.1
after that<br>
 
* fully customizable columns & instant sorting
HOWEVER: i'm also [[KJams_2|starting to work on 2.0]].  Yes, you heard it right! Any new feature requests will have to go into 2.0
* Ability to play ALL quicktime types, even those that "can't be moved / extracted on a background thread"
 
* ability to burn (pitch bent) audio portion of non-CDG songs (aif, mov, midi, kar etc)
2.0 will be sold separately, basically you'll have to buy it if you want it.  Existing users get a discount!  Sorry, but I don't really know how else to fund it's development.  Sadly, i'm not making the income i had hoped from the release of 1.0.  (perhaps because all the news outlets are ignoring me?)
* iTunes integration
 
* expanded audio encoding options during Rip (AAC, AIF, WAV, Apple Lossless etc)
Also, I'm going to have to [[Tech_Support|start charging for tech support]] services, sorry about that.
 
==Headline 2.0 features (no promises)==
* [[KJams_2|Has it's own page]]
 
==After "1.0" release==
* Windows
** Windows Media Video playback [http://www.codeproject.com/Articles/18708/Reading-WMV-ASF-WMA-windows-media-Files info]
** Microphone Input
* 1 fix nav dialogs to honor flags (show only folders eg)
* 2 drag images on XP
* 3 GDI+ for all drawing
* 3 Producer
* done! <strike>ability to rip VCDs</strike>
* done! <strike>messenger ABOVE showscreens</strike>
* all LTRS template text edits should be a menu instead
* all dates should be localized?
* new structure to the "kJams" folder (consolidate all the spread out folder mess)
* uber progress bar on ripping from CD, NEO+G, SuperCDG, BIN/CUE
* uber progress on burn setup (so you can cancel it)
* move activities to browser window, or "arrange / gather windows"
* allow new singer to go N spots away from current singer, or before current singer
* 2nd video window can always show rotation
* call exchangefiles on the app during auto update
* an on-screen indicator of current global slip, as well as pitch shift and tempo change
* maybe: mark any playlist as "can be seen via server", new "get list of playlists" (include Rotation), include "last time sung"
* more "rotation" smarts
* ability to zip all songs in library that are not already zipped.
* re-canonicalize the names (up folders) "Keep Library Folder Organized"
* normalize audio
* a zillion other things i've left out


== Pokers In the Fire ==
== Pokers In the Fire ==
* "smooth as glass" quicktime playback, using QTKit
This stuff is also "After 1.0"<br>
* "smooth as glass" quicktime playback, using QTKit (this will enable full 30fps playback even with both video windows open and set to maximumm size)
* ability to QT Export any file type (midi, kar, mpeg)
* auto update the [[Map]] whenever someone makes a purchase (parse purchase info, geocode for lat/lon, add to address book, update map data, upload map data). '''Update:''' I have written a nice applescript that can parse my email and extract a new address book entry, including geocoded lat/lon info.  Neat!
* auto update the [[Map]] whenever someone makes a purchase (parse purchase info, geocode for lat/lon, add to address book, update map data, upload map data). '''Update:''' I have written a nice applescript that can parse my email and extract a new address book entry, including geocoded lat/lon info.  Neat!
* auto-publish when I build a new version and invoke a script (export new vers.html file, zip lite and pro, upload lite and pro, upload vers file).  '''Update:''' I now have all the parts I need for the workflow, just have to sew it all together now
* FINALLY done! Wow this saves me like an hour each time i make a new release!  <strike>auto-publish when I build a new version and invoke a script (export new vers.html file, zip lite and pro, upload lite and pro, upload vers file).  '''Update:''' I now have all the parts I need for the workflow, just have to sew it all together now</strike>
 
* full CDPedia support
== Bugs I'm aware of that will be fixed ==
* 80% done: ability to cue two songs for cross fade (same as: ability to export QuickTime (or iPod) at the same time as playing some other song)
* the album popup may crash under certain situations
 
== To Do ==
* Problem: NOT dealing with UTF-8 very well. Must replace all std::str with ustring
* Set ID3 tags
* <strike>write Zip function so after you rip MP3+G they'll get zipped up together, with a canonical name, enable Zip after rip in the prefs pane</strike>
* When editing meta info on Zipped files: unzip files, set ID3 tags, then zip them up again, but leave a copy unzipped so you can get them easily again.
* During import of pre-existing MP3's, scan ID3 tags. Also, write a one-shot utility to both scan for bad zips and also read ID3's from valid zips, and re-canonicalize the names. Move bad zips to a new folder.
* finish CDPedia support
** 40% done: ability to cue a song to the first non-silent sample, so un-pausing means instant-on
** 20% done: ability to cue two songs for cross fade (same as: ability to export QuickTime (or iPod) at the same time as playing some other song)
* Allow a 'placeholder' track to be input into a singer's "Tonight" list, that includes the disc name and track number, and when it comes up, the dialog comes up, says "stick in the disc", to let it play direct from disc, automatically picking the right track. Alternately, allow KJ to drag a track from a CD into a playlist. then, eject disc. when that song is coming up next, put up a dialog that says "please stick that disc back in" and it'll go play it from disc, Alternately, rip the song when it gets drug from the CD into the singer's "Tonight"
* Allow a 'placeholder' track to be input into a singer's "Tonight" list, that includes the disc name and track number, and when it comes up, the dialog comes up, says "stick in the disc", to let it play direct from disc, automatically picking the right track. Alternately, allow KJ to drag a track from a CD into a playlist. then, eject disc. when that song is coming up next, put up a dialog that says "please stick that disc back in" and it'll go play it from disc, Alternately, rip the song when it gets drug from the CD into the singer's "Tonight"


== Previous Versions ==
== Previous Versions ==
* [[History_6|d44]]
* [[History_7|d46]], [[History_8|d47]], [[History_1.0d48|d48]]
* [[History_6|d44 - d45]]
* [[History_5|d42 - d43]]
* [[History_5|d42 - d43]]
* [[History_4|d40 - d41]]
* [[History_4|d40 - d41]]
Line 107: Line 63:
* [[History_2|d25 - d35]]
* [[History_2|d25 - d35]]
* [[History_1|d11 - d24]]
* [[History_1|d11 - d24]]
* [[History_0|d1  - d10]]
* [[History_0|d01 - d10]]

Latest revision as of 07:57, 13 November 2015

List of Latest Changes

What My Plan Is

Okay what am i doing next?

I'm going to keep fixing bugs and release 1.0.1 updates in the same way i have always updated kJams, just about weekly, all for free, for life. Yep, i've got your back :)

Keep in mind however: NO NEW major FEATURES for 1.0.1

HOWEVER: i'm also starting to work on 2.0. Yes, you heard it right! Any new feature requests will have to go into 2.0

2.0 will be sold separately, basically you'll have to buy it if you want it. Existing users get a discount! Sorry, but I don't really know how else to fund it's development. Sadly, i'm not making the income i had hoped from the release of 1.0. (perhaps because all the news outlets are ignoring me?)

Also, I'm going to have to start charging for tech support services, sorry about that.

Headline 2.0 features (no promises)

After "1.0" release

  • Windows
    • Windows Media Video playback info
    • Microphone Input
  • 1 fix nav dialogs to honor flags (show only folders eg)
  • 2 drag images on XP
  • 3 GDI+ for all drawing
  • 3 Producer
  • done! ability to rip VCDs
  • done! messenger ABOVE showscreens
  • all LTRS template text edits should be a menu instead
  • all dates should be localized?
  • new structure to the "kJams" folder (consolidate all the spread out folder mess)
  • uber progress bar on ripping from CD, NEO+G, SuperCDG, BIN/CUE
  • uber progress on burn setup (so you can cancel it)
  • move activities to browser window, or "arrange / gather windows"
  • allow new singer to go N spots away from current singer, or before current singer
  • 2nd video window can always show rotation
  • call exchangefiles on the app during auto update
  • an on-screen indicator of current global slip, as well as pitch shift and tempo change
  • maybe: mark any playlist as "can be seen via server", new "get list of playlists" (include Rotation), include "last time sung"
  • more "rotation" smarts
  • ability to zip all songs in library that are not already zipped.
  • re-canonicalize the names (up folders) "Keep Library Folder Organized"
  • normalize audio
  • a zillion other things i've left out

Pokers In the Fire

This stuff is also "After 1.0"

  • "smooth as glass" quicktime playback, using QTKit (this will enable full 30fps playback even with both video windows open and set to maximumm size)
  • ability to QT Export any file type (midi, kar, mpeg)
  • auto update the Map whenever someone makes a purchase (parse purchase info, geocode for lat/lon, add to address book, update map data, upload map data). Update: I have written a nice applescript that can parse my email and extract a new address book entry, including geocoded lat/lon info. Neat!
  • FINALLY done! Wow this saves me like an hour each time i make a new release! auto-publish when I build a new version and invoke a script (export new vers.html file, zip lite and pro, upload lite and pro, upload vers file). Update: I now have all the parts I need for the workflow, just have to sew it all together now
  • full CDPedia support
  • 80% done: ability to cue two songs for cross fade (same as: ability to export QuickTime (or iPod) at the same time as playing some other song)
  • Allow a 'placeholder' track to be input into a singer's "Tonight" list, that includes the disc name and track number, and when it comes up, the dialog comes up, says "stick in the disc", to let it play direct from disc, automatically picking the right track. Alternately, allow KJ to drag a track from a CD into a playlist. then, eject disc. when that song is coming up next, put up a dialog that says "please stick that disc back in" and it'll go play it from disc, Alternately, rip the song when it gets drug from the CD into the singer's "Tonight"

Previous Versions