nitoTV version 1.0 (take two), July 13, 2012 Version History =============== 1.0 This updated probably doesn't really merit the 1.0 label, but i figure, eh its been 2+ years, why not?. Apple changed the link that we had hardcoded for the Smart Installer for the 10.4.9 combo update, we now check a plist hosted online by firecore for the current link (in case it ever changes again). Added the memory monitor launchdaemon, this is still a work in progress, but essentially it monitors three different values free memory available, resident (wired) memory and virtual memory consumed by the Finder. There is a threshold for each free memory threshold is 4.5 by default, resident memory threshold is 100 and virtual memory is 500 (all in MB). If free memory dips below 4.5 MB, and the Finder consumes resident memory above 100 MB and virtual above 500 it relaunches. It will poll the status every 60 seconds, if the Finder is found dead (also known to happen) it will relaunch it automatically. This solution could definitely be more elegant, and it will not relaunch if XBMC or mplayer are active. This is kind of a stop-gap, piece of duct tape over the sluggish performance that occurs after watching a lot of video/doing a lot of browsing / generating a lot of previews (lot of old code to debug/memory proof). This launchdaemon is installed upon launch and defaults to off, if you want to turn it on go to Settings -> Utilities - > Services. If you want to edit any of these thresholds for now that can be done manually via the defaults binary while SSHED in Read: defaults -host 002436eec002 read com.nito.memorymonitor Write: defaults -host 002436eec002 write com.nito.memorymonitor freeMemoryThreshold -int 4.5 defaults -host 002436eec002 write com.nito.memorymonitor residentMemoryThreshold -int 100 defaults -host 002436eec002 write com.nito.memorymonitor virtualMemoryThreshold -int 500 Added the ability to copy files from one playlist to another directly. (Right click when editing a playlist, at the bottom there is "add to playlist") The stop button on the harmony remote will now also relaunch the Finder from practically any menu (not just the file browser) (also another piece of duct tape to help circumvent lag issues). Last but not least in Utilities "Block BREvents" was added. This pushes up a blank black controller that will prevent any BREvents from being processed. ( you will need to ssh in and killall -9 Finder to get it back ) The reason for this feature is really just personal use, I have an ATV 1 and ATV 2 on the same TV and i cycle between them and hate pairing / keeping track of separate remotes). The harmony stop button will also respring the Finder here. 0.9.5 Moved the MouseLocator install outside of the Smart Installer into its own seperate section. We also remove the MouseLocator from startup items which it keeps adding itself to and bogging down the AppleTV. Changed the weather icons to a new nice set, don't remember exactly where they came from, but James got em' for us :). Weather metadata was added as well to show current conditions. Thanks to Tom Cool for the improved parsing classes for yahoo weather! 0.9.4 I have got to stop with the late night / early morning releases, another major smart installer bug overlooked, also put a wrong icon in the new set. 0.9.3 Added support for the Harmony remote's playback buttons (Play, Pause, FF, Rewind, etc). Fixed RSS editing bug (thanks santa). Revamped RSS display, it fetches faster now (better parsing class) and now touts support for multipage feeds, the multiple page code isn't perfect, but it is a marked improvement. If you haven't replaced your finder icons with Leopard/Snow Leopard CoreTypes (done automatically by atvPwn when run on Leopard+) a new set of icons will be installed in place of the old Tiger ones in the Smart Installer, you can run it again even if you have already run it before. Added some nil check code in network mounts to prevent crashes with improperly formatted mount points. All of the new icons came courtesy of Aldrin Lee, big thanks!, the folder icons are based on Uni Matte icons and the others are a revision of another custom set by Aldrin, all beautifully done. The smart installer package installer will no longer re-install package (tar.bz2 files in ~/Documents/Packages) that have been installed prior. 0.9.2 Major smart installer bug keeping USB patching from working, fixed a bug where the nitoTV icon wouldn't appear next to update item. 0.9.1v2 Found a very strange bug in CommonMediaPlayer so that forced a quick v2 of 0.9.1. 0.9.1 Wanna give a shout out to Phil's friend Kyle! (he wasn't kidding) Lots of cleanup work done in this release: fixed some autorelease bugs/leaks for when Alert dialogs are automatically dismissed after a set time. Fixed various other memory leaks/bugs. Added custom metadata for mounted volumes in addition to all of the settings and install sections. In addition to the new descriptive metadata I added some new pictures in the settings section to vary it up a bit. Thanks to Tom Cool for the help getting custom meta to work. Cleaned up the resources folder a bit. Got the Genre and Director keys working in metadata (finally!!) As well as Episode and Season keys working for TV Shows! (doesn't sort by them yet, but it displays them!). After meta is loaded titles in the file browser with match those in the metadata, it won't sort by those names but it will display them. We also added metadata for saved share points in the network menu. Fixed an MPlayer AC-3/DTS passthrough bug. Fixed an install bug with iTunesFS. Fixed an MPlayer playback leak leak (thanks Graham!), we have also bundled a newer version of MPlayer from the mplayer-devel branch, not the latest, but newer :) Please report any problems with playback. Added a size check for the download of 10.4.9 combo update, appears to be problems with an Apple server. 0.9.0 Hate for 0.9.0 to be a bugfix release but what can ya do? Fixed a bug in the smart installer with the new smbfs.kext installer, fixed improper permissions for package as well. 0.8.9 Added an option to toggle the 5 minute timeout in DVDPlayback. Fixed a bug in the CommonMediaPlayer framework where DVD's would get stuck on an initial selection screen. Smart Installer will now swap the smbfs.kext with a "new" one (its still the same essential version, only the buffer was modified) that will allow better DVD streaming over samba shares. 0.8.8 Gesture bug fixes. Mount points will now save themselves when mount is chosen before attempting to mount, hopefully fixes any crashes occuring in this instance. Fixed progress bug when choosing mount from a mount point where the controller wont pop after mounting successfully. Right click on smart installer will prompt to patch the recovery partition with ssh (perpetual patchstick, restore to ssh patched atv AND the ability to ssh while in recovery mode. use with caution, any errors could lead to an AppleTV that wont restore). Added changelog section for nitoTV update. Added dutch localization, Thanks James! 0.8.7 Quick followup bugfix release. Swipe Left and Swipe Right gestures were broken in 3.0.1, now fixed. The CommonMediaPlayer installer was broken as well, that is also fixed. Added a changelog for the CommonMediaPlayer framework. Click right on the Update CommonMediaPlayer option to get an up to date changelog. 0.8.6 Implemented a new framework that is a joint effort between Graham Booker (Perian/Sapphire dev) and myself, this framework at its first iteration is going to solely focus on DVDPlayback. This framework ushers in a much better playback experience for DVDPlayback in nitoTV, overlays, playheads, much improved control scheme (no more control maps!) It is also introducing, courtesy of a new component from Graham Booker, full 5.1 AC-3 passthrough! (In MPlayer too!!) At long last, you read that right! :). There is no more MPlayer fall back for DVD failure, no DVD listing or importing at the current version, but the listing and import will see implementation in future releases. MPlayer fallback, and general playback will also probably make it into future iterations of the framework, some growing pains please bear with us. I removed install Couch Surfer / WebKit from the installation manager because that version of Couch Surfer is no longer hosted online and I never had any control over the distribution of that plugin, I merely did it as a favor to Brandon Holland when he was still responsible for it. An update item was added for the CommonMediaPlayer framework as well, so we can update the framework without updating our PlugIns, future versions of CommmonMediaPlayer will update itself, allowing update in any plugin that implements it properly, for now this updater is a stop gap. The only other major change in the PlugIn was the removal of QuickTime resume, volume control and so forth, there was a major bug at the completion of the files that would always cause a crash. Hopefully as the CommonMediaPlayer framework evolves we will implement QuickTime classes into it as well. To enable 5.1 AC-3 passthrough for DVD's and MPlayer toggle the 5.1 AC3 Audio setting on in MPlayer or DVD settings. 0.8.5 Fixed an RSS compatibility issue with Sapphire. Compiled a new MPlayer binary (mplayer-devel branch from macports as of Jan-27-10) No new formats added, just figured we were overdue for a new binary, LIVE555 seems slightly improved, but still doesn't recognize most streams I throw at it unfortunately. All mp4 files will be scanned for high-profile and arguments will be appended to MPlayer that improve playback drastically, unfortunately its still not to the point of watchability on most files, but it is definitely an improvement. Smart Installer will now install the private framework DVD.framework. Apparently this framework is needed to verify region codes of discs with any external drive, this is the reason a lot of DVD's will not play back even when they do mount. Run the Smart Installer again and this will be fixed. Fixed the DVD Language picker. Fixed the Blacklist volume / MPlayer argument editor crashes. QuickTime single file playback works with audio/subtitle toggling, volume control, and resume still no support in QuickTime playlist playback (which has been fixed to allow exiting properly) 0.8.4 Happy New Year! Glad to bring you the first nitoTV release of 2010. This release is mainly a maintenance release, I am pretty certain the MPlayer exiting crash bug is fixed, which also should fix some major memory leaks so hopefully nitoTV won't need a finder reboot as often to get things running smoothly again. NTFS volumes should be recognized as ejectable volumes now too. OSBoot was added to a global generic blacklist so it should no longer show up in anyone for files (as of before it shouldn't have either, still a mystery). Tweaked drive automounting code to see if it helps those having issues mounting NTFS volumes (no promises, it worked fine for me to automount without this tweak.) The Smart Installer will not start without a combo update that undergoes a size check (we we're going to do MD5 but the checks were way too slow) so if the combo update doesn't match its proper size it will delete and re-download, hopefully this should clear up any issues of smart installer failures. The Kernel Extension mananger saw an update, if TVComposite right clicked in the list two options have been added "Add startup item" and "Remove startup item" some people experience issues with TVComposite in rc.local and hopefully the ATVColor startup item will rectify that issue (similar to the one created in the wiki). Also did some idiot proofing there to disallow unloading and deleting certain kext files. Last but not least, ISO mounting (in DVDPlayback) is greatly improved in this version. 0.8.3 DVD Importing/Autoimport fixed, not sure how long that has been broken. Fixed some screen release and compatibility issues with pre 3.x versions. Right click on bonjour points will bring up a mount facade with the hostname and mount name filled in for easier (non-afp) share creation, works for afp too of course. Added support in 3.x for the extra play/pause button on the new Apple remotes. The elusive MPlayer crash on exit bug is still around unfortunately but I'm working hard on fixing it, fixed some other minor leaks here and there. I am hoping to get more of these leaks and slowdown issues fixed in the new year but for now this will have to do. 0.8.2 Whoops, big bug in the version check code that was breaking nitoTV in all versions BUT 3.0. That is fixed now, RSS makes a comeback as well. USB and watchdog patches updated for 3.0.1 as well. Fixed Smart Installer glitch for OS 1.0 recovery.dmg's. While proper entire recovery.dmg partition worked, JUST the OS.dmg by itself wasn't working, this glitch is now fixed. 0.8.1 So Apple put out OS 3.0 a few days ago, as predicted various things needed tweaking and upgrading, and we are sad to report that some features may have no chance of making it back in. Apple has updated the WebKit, WebCore, JavaScriptCore and JavaScriptGlue frameworks and actually use them in the OS (which we don't think they did before) Therefore by installing the newer ones (newer before OS 3.0) needed for CouchSurfer the AppleTV's finder is sent on an endless reboot, without some magic from Brandon I don't know if its making it back. These framework changes have also affected the RSS section which we couldn't fix either. With that out of the way we HAVE restored the functionality for DVD, MPlayer, QuickTime, Weather, Network, download, installer and Application Launching sections. We did our best to put an error message in place of all the things we could not get working for 3.0. Things may be a little buggy from the OS transition so please bear with us :) Audio volume and sub toggling and resume returns in QuickTime playback! (2.2-2.4), didn't think this feature was going to make it passed 2.1, but after some extensive debugging it's working again. It is possible to turn off the volume control in General settings if this is not a desirable feature. 0.8.0 "Options" button while browsing files is a shortcut to settings (similiar to holding right on the Apple remote.) An "mplayer manual" section was added to MPlayer settings for easy access to keystrokes for keymap programming. Fixed perian online check bug, was detecting new version but fetching improper URL. Smart Installer dmg check fixed. "Install All Packages" works now, possibly the first time it ever worked. Improved weather interface. Added French, German, Italian and Spanish localizations (thanks James!). Added some files from combo and recovery install to help enable bluetooth better (still requires dongle of course!, thanks grufty!), added DVD settings for default audio and subtitles (DVDPlayback.framework only!) default subtitles selection still doesn't work completely, but audio seems okay. Posted a new 0.8.0 messed up some localization settings. 0.7.9 Fixed gesture issues in DVDPlayback and MPlayer playback. The "options" button in the remote app is mapped to "hold menu" for changing between keymaps in DVD and MPlayer playback. Fixed Smart Installer bug for DVDPlayback framework stub not being moved if update was preformed rather than a restore. Fixed one crash bug in adding suffixes, blacklist volumes or MPlayer arguments (there is still another elusive bug that casuses some crashes there). Fixed another file browsing crash bug. Added subtitle size toggle for MPlayer (only works to toggle between the default fonts installed with nitoTV, Arial-14 - Arial-24) 0.7.8 Improved preview generation (updated ffmpeg to support mkv). Updated localization file. Fixed gesture bugs from 0.7.7, fixed network crash where manual mount points were not working. 0.7.7 Fixed gesture support for AppleTV 2.4 and the new remote app for iPhone/iPod Touch (except in DVD playback, not cooperating there for some unknown reason). Improved blacklist support. Various bug fixes. Fixed kextload bug (still posted as 0.7.7 since this was the only change and was done today) 0.7.6 AppleTV OS 2.4 Support including USB patch updates. No other changes. 0.7.5 Fixed bug in TVComposite installation, properly installs PAL if selected. Added Setting to change how the files are sorted (Alphabetical, which is default, Date Modified Ascending/Descending or file size Ascending/Descending, it does not calculate folder sizes, folders will be Alphabetical after the files are sorted). Settings section has been broken down into seperate sections for MPlayer, DVD, General, Categories and Utilities. Fixed a major crashing bug for file browsing. Added rudimentary document/pdf viewing. Documents in doc, rtf and txt format can be read, pdf format is a bit sketchier, multiple pages won't be displayed and the initial page gets cut off and displayed inconsistently. 0.7.4 Added kernel extension manager for manually loading kext's and for adding/removing them from /etc/rc.local. Override up and down in File section, Settings, Playlist (root and editor), Applications and Recent Items section to go to the bottom or top respectively. Added TVComposite.kext to installation manager. Smart Installer will query online database if kernel is not recognized, this will allow us to update USB patch information online if a new AppleTV OS comes out, rather than having to release a whole new version. 0.7.3 Added individual package installer inside the installation manager (for the tbz packages in ~/Documents/Packages), removes need to run Smart Installer just to install a few packages. Fixed major bug in recovery section of Smart Installer that was causing crashes and installation failures. Fixed other minor annoyance/bugs in Smart Installer as well. Added some new icons in Installation sections for Smart Installer, Flash, iTunesfs, Couch Surfer and WebKit. Pushed a new 0.7.3 with Localizable.strings inside English.lproj, forgot to do this a long time ago. 0.7.2 Fixed playlist bug, when files are missing in QuickTime playlist we just skip to the next. Install software disabled in Leopard (Was never really meant to work in there, and no future plans to implement) Added the ability to set a custom hostname. Smarter playlist addition code, if an item exists in a playlist it will not be added again. Added a tbz package installer to the smart installer (tbz packages with path lists intact, ie darwin packages from the 10.4 iso, added to the ~/Documents/Packages folder manually) Added services section where you can toggle ssh, afp and ftp on and off (this just turns them on and off, they must be installed already). 0.7.1 Obfuscation with network passwords (when entering passwords or editing mount points). Fixed RSS bugs in root RSS facade. Fixed conflicts with Sapphire compat classes (would have conflicts anytime Sapphire or ATVFiles was installed) this conflict fix unfortunately breaks any compatibility with ATV4Mac, sorry. Error message added for when eject fails. Added setting to toggle whether AppleTV OS Updates are blocked or unblocked. Added copy option to copy the file to the current directory or the selected directory, the current directory option will allow you to copy files into the root ~/Movies folder (or whatever mountLocation is set to). Install Flash section added to installer manager. Added USB / Watchdog patch for 2.3.1, added general compatability to 2.3.1 as well (as far as 2.3 and 2.2 were compatible) RSS feeds lose pictures in 2.3+ (may only be a 2.3.1 issue, not sure but for safetys sake went to 2.3). Fixed weather for 2.3+. Slideshow editor displays properly in 1080i. Removed safe display release from settings, added "Set Time Zone" in its place. Easier to set the local time zone, no need to muck around in the terminal. 0.7.0 Vastly improved memory management, several memory leaks have been fixed (thanks Jim). Network names with special characters should resolve properly when saved from the volumes section. TV show metadata fixed (broke it in the last release uknowingly). First Leopard/frontrow compatible version as well, this about won't appear there due to problems with document controller, but this version should universally work between 2.x and Leopard frontrow (intel only), it may or may not work with the Tiger version of frontrow, untested. Now possible to add RSS feeds through the UI just like in the Weather and Network sections. Slideshow Editor will let you set the time per slide for the photo plugin to anywhere from 1 second to 9999 hours. 0.6.5 Fixed a bug with screen capture in DVD playback for 2.3. Recent Files now include DVD's as well. Added icons for recent files and weather. 0.6.4 Fixed the double tap for left and right dvd menu navigation for 2.2/2.3. Updated for Perian 1.1.3, Perian installer now checks version online, no more need for nitoTV updates to accommodate new perian versions. Added installer for Keyboard Magic in Couch Surfer installer. DVD flickering should be fixed in 2.3. Smart Installer will now grab the 10.4.9 Combo update and place it in the ~/Documents folder automatically, it will also properly install the missing pieces for System Preferences application to run properly. Smart Installer fixes afp bonjour advertising (with 1.0 recovery only). Last but certainly not least, we are confident that screen release has been solved for 2.3 in all resolutions, give us some feedback and let us know. 0.6.3 Potential fix for most of the NSAutoreleaseNoPool leaks in 2.3, Added option to clear recent items. Fixed the forward and backward continual holds for DVDPlayback in 2.2 and 2.3. Recent items will not add repeat items. Reorganized Settings section. Hold commands should work again in 2.2/2.3 for Application launching. Fixed MPlayer caching, was unknowingly broken for a few versions now. Added streams section for streaming audio and video, we also added a brand new MPlayer build that has LIVE555 support for RTSP video streaming, its a bit buggy and far from flawless, but the best implementation we could get for the time being. While 2.3 support has been improved, we still strongly advise sticking to 2.1 or 2.2 at the very latest. 0.6.2 File delete bug fixed, added patch for 2.3 kernel for USB and watchdog. 2.3 basic support has been implemented, 2.3 should be supported to the extent that 2.2 was supported, we still recommend using the OSUpdate tool to downgrade to 2.1 for the best performance from nitoTV. IMPORTANT NOTE: 2.3 gives a LOT of autorelease errors (i.e. 2008-12-02 01:40:12.860 Finder[244] *** _NSAutoreleaseNoPool(): Object 0x9406920 of class NSCFArray autoreleased with no pool in place - just leaking) we are aware of this, have no idea if there is any fix at all, and have heard similar reports of other devs having these sorts of problems, if this causes unpredictable results, we recommend a 2.1 or 2.2 downgrade. 0.6.1 Aspect ratios fixed in 1080i resolution for DVDPlaback.framework (hopefully). Fixed NES rom launching (inadvertently broken in 0.6.0). Fixed text overlay for 2.1 and lower (also inadvertently broken in 0.6.0) Added "Recent Files" menu item that will list the last 10 Applications and Files launched. It can be turned off in Settings. 0.6.0 Aspect ratios fixed in DVDPlaback.framework mode. Fixed a bug where files without an asset would crash in QuickTime based playback. Added delete confirmation dialog in playlist menu. Updated perian installer for 1.1.2. Took out the spinning progress indicator before playing mplayer videos. The screen release issues have been somewhat "solved". Fixed MPlayer DVD playback, was broken since the advent of DVDPlayback framework reimlementation. With Time in Title enabled folder lists will refresh. Forgot to thank gbooker in the last about section for smoking out the quicktime preference to allow additional codec support in 2.2. thanks graham! 0.5.7 Updated for 2.2 (limited) Some things will not work because the require a pretty drastic re-write, the QuickTime playback in 2.2 will not support keymaps, text overlay, or volume control. The smart installer has been updated for the 2.2 kernel for USB and watchdog patch. Not much else changed, some nice little eject icons for mounted volumes. This is mainly a stop-gap release until we have more time to fully update for 2.2. 0.5.6 Fixed small smart installer problem that would prevent completion. 0.5.5 The DVDPlayback.framework is BACK!! (thanks Turbo!!) and the Smart Installer got some major adjustments. (You will need to run the Smart Installer again before the DVDPlayback framework will work) Fixed an extension controller bug where no new extensions would be added, various other tweaks and bug fixes. 0.5 Various major/minor bug fixes, cleaned up UI in few sections, QuickTime text display is back, QuickTime audio/sub toggling back. Time displayed in title (think iPod/iPhone title/time display), Metadata makes a comeback, Added atomic parsley to fetch metadata directly from mp4 files where applicable. Added hold left and hold right to toggle subs and audio in libdvdnav based playback, Added MPlayer resume. 0.4.8 AppleTV OS 2.1.0 works for real this time!, honest! 0.4.7 Only three changes: adjusted Smart Installer for the patch, loads in 2.1.0, new modes in safe display release. 0.4.6 Pretty quick follow up release, found a major bug with the Smart Installer re: mouse enabling that prevented the installer from finishing. Some great App Launcher enhacements, keymaps (identical to mplayer setup) can now be edited in the new keymap editor!, smart/safe display release code added as well. 0.4.5 Initial Application Launcher implementation, watchdog/USB patches for smart installer (2.0-2.0.2), Smart installer modifications / improvements. Install Software section works without internet (only on those packages applicable without internet) Fixed empty / unlistable folder bug, finder system icon display. 0.4 Photo playback improvements, libdvdnav re-emerges, Independent OpenAL installer, Added settings to turn off unplayed markers and preview generation. Updated patches for 2.0.1 USB in smart installer, Settings images, file copy/paste, playlist enhancements (re-arrange, move to top/bottom), kextloader and smart installer merged, custom network arguments (for mounting) and of course bug fixes. 0.3.1 Major bug fixes (fixPerm works again) Updated smart installer to work from restore images, Cover Art returns. unplayed markers return. 0.3 Bug fixes, tweaks, more features restored, ability to turn off POD, RSS and Weather from menu 0.2.2 Has some major fixes, finally updated to full take 2 to investigate some of the installer problems, and im happy to report that the Smart Installer AND Perian installer both work in Take 2 full now! Those are the main changes for 0.2.2. 0.2.1 Has one minor fix, there was a missing file that was causing the smart installer to throw an error, this file has been included so HOPEFULLY the installer should work for everyone now. General Update Info 0.6.3 =================== I will start this update info with a little tidbit on the latest AppleTV OS and then delve into fixes and new features. 2.3 has given us a huge headache (as it has many other devs) and the screen release problems of old has come back and gotten worse. Apple has removed some very important notifications and functions that we have not found comprable replacements for. As a result, there may be a flickering in ANY resolution (even those below 1080i) and screen release issues are back for 720p and 1080p, we wasted a few days trying to fix this with very minimal success, if these problems are too much to deal with, the only solution will be to downgrade to 2.1 or 2.2 (still highly recommend 2.1) There may or may not be a future fix for this, but we don't forsee them to be coming anytime soon. Streams section ================= After a long delay, we have finally added official streaming video and audio support to nitoTV, no more need to make manual playlists in the terminal. We had to compile a fresh MPlayer with LIVE555 support to implement support for most streams to be supported, some streams are not supported still but we did our best to support as many as possible. The audio/video selection in the streams section only makes one minor adjustment for how nitoTV handles the streams, there is no caching for audio streams, the caching caused most audio streams to take a very long time to load and doesn't appear to be needed. Video playback will support caching, but this wont provide flawless playback for every stream, some may still pixelate or stutter from time to time. MPlayer note: Since we updated MPlayer with LIVE555 and used the latest MPlayer svn source (as of a few days ago) we had to forgo libdvdnav support, the only DVD menu support will be with the DVDPlayback.framework installed. Settings Changes =================== The settings section has been reorganized into 5 setions MPlayer, DVD, General, Categories, Utilities. Most of the sections are pretty self explanatory, MPlayer for MPlayer settings, DVD for DVD, General for any file browsing, accepted extensions etc, Categories are the categories that will appear in the nitoTV menu and Utilties are general utilites like viewing the console, rebooting the finder, appletv or repair. Recent Items ============== There will no longer be any repeat items and there is now an option to clear recent from the bottom. Bug Fixes ========== Continual holds for 2.2 and 2.3 have been fixed in DVDPlayback and Application launching Most autorelease/leak errors should be fixed (or at least no longer complain in the console) MPlayer caching was broken for a few versions, this is now fixed. General Update Info 0.6.0 =================== Just a quick note, there have been no improvements made for the 2.2 support. Some really nice fixes / features in this latest edition. Aspect ratios should appear properly in DVDPlayback (finally). When deleting playlists there is now an option dialog to 'cancel delete' or 'delete' (identical to the file removal dialog, though no files are actually deleted). MPlayer DVD support was broken in 0.5.5 but has now been fixed (for those without the DVDPlayback.framework installed) 720/1080p Screen release ================== Dramatic progress and improvements have been made in this regard. For MPlayer, app launching & rom playback screen release problems should be completely gone!. Let us know if you have any problems with the remote not responding. In DVDPlayback there should be no more release issues either, however, if a DVD takes a significant amount of time to load there may still be lingering issues, otherwise they should work much more consistently. Thanks goes to dd for the online / offline notification info (which we finally got working in some instances, without side effects). An additional thanks goes to liquidice629, whom unwittingly supplied some of the most important information with regards to screen control on the AppleTV. (specifically CGShieldingWindowLevel();) General Update Info 0.5.5 =================== NOTE: Just going to continue to leave the old update informations below until I actually have time to revise the wiki. DVDPlayback framework ===================== DVDPlayback.framework finally makes it's debut in 2.x based nitoTV!!! (yes nitoTV should still work in 2.0.1-2.1.0) The main thanks goes to Turbo for getting this framework back in action, surprisingly there was very little code changed in the plugin to maintain the functionality, the work that was needed was on the kernel level. For anyone who is familiar with how the framework functioned in 1.x versions the functionality is identical. DVD Keymaps: These particular keymaps are only relevant with the DVDPlayback framework installed. Pressing and holding menu will change to the second keymap, < and > will remain the same but + will toggle through multiple audio tracks and - will toggle through multiple subs. (this is the same from before, just reinterating it or putting it out there for those unfamiliar) DVD Alerts: DVD alerts are back same as before in 1.0, any time you are in the File section of nitoTV and a DVD is inserted you will get the option to play, import or list the titles of said DVD. DVD Importing: No enhacements or improvements, same as before. (still need to reimplement growl notifications) Smart Installer =============== The smart installer had some nice improvements and changes, it MUST be run (even if you have run it before) to get the DVDPlayback framework to work again, in addition, if the recovery.dmg (From a 1.0 AppleTV) and the 10.4.8/10.4.9/10.4.10 combo update (I recommend 9) will install everything necessary to mount DVD's, ISO's and music CD's (music playback / cd importing to come later) It will also fix permissions and owners that I have overlooked in the past which are instrumental to getting UI scripting working (needed for game emulators) Random Notes / Bug fixes ======================= Adding extensions in the extension manager should work again if networking components are not installed nitoTV will no longer crash but will present an error message that they are missing. Changed back to the 0.4.8 model of Kerberos check, 0.4.8 wasnt far enough and 0.5 was too overzealous, for now it will error in the console but won't prevent the mount from proceeding if a framework that could be problematic is found. Rewind during emulator will take a screen shot again Hold Rewind in the file browser will regenerate images again. General Update Info 0.5 =================== There is still some relevant information below in the updates for 0.4.6 and 0.4.5 that hasn't been added to the wiki or anywhere else so I'll let them intact here until there is a chance to add them elsewhere. QuickTime Changes ================= QuickTime playback saw a nice overhaul in this version, we have the return of text info displays (volume muted, max, keymap changes, subs/audio toggling, file titles), sub/audio toggling has returned as well. There have been some bug fixes as well, unplayable files wont crash anymore they will show the default unplayable dialog, unfortunately this gave rise to another bug (nothing major) menu needs to be pressed twice to get back to the file listings, a minor inconvience that I couldn't find a timtely workaround to. Resume times have also been fixed as well, there are files that would not resume properly if the resume time was too close to the end of the total duration. Metadata ======== Metadata has finally made a comeback, was a terribly small oversite on my part that it wasn't working the first time I tried with earlier versions. The support is still limited to mainly the same tags that worked in 1.x based versions. Certain tags still aren't cooperating (episode/season numbers in TV shows for instance) Those will hopefully be smoothed out in the next release. Atomic Parsley has been incorporated to read some basic tags direclty from applicable files (mp4, m4v, etc...) It does not read all the tags yet, just some basic ones. This will be expanded in the future, just wanted to lay the groundwork. Currently only the following tags are supported mediaType title artist description genre Time In Title ============= Similiar to the iPod classic setup where the time will be displayed in the title area after 30 seconds. This can be turned off in the settings. MPlayer Resume ============== This implementation is a little buggy, some file formats have some timing issues (it appears to be based on bizarre framerates) that will try to resume later then they actually should, which causes some files to not play back at all when attempting to resume, this is why there is an option to turn MPlayer resume off and on till it can be honed a bit better. General Notes ============= There was some major cleanup work done and various bugs fixed as well in this release, really wanted to work on the stability and make the plugin less crashy and more reliable. The following bugs have been addressed (and i may have forgotton some as well) Playlist unselectable - after switching through files in a QuickTime based playlist subsequent playlists wouldnt be selectable. This has been "fixed". It wasn't a legit fix, more of a workaround, but it works. General Update Info 0.4.6 =================== Since this update is so close on the heels of 0.4.6 we'll leave the 0.4.5 information intact in here because it is still pretty valuable. There is a new keymap editor for MPlayer in the settings facade (where 'reset controls' used to reside), this keymap editor also works for Applications, just hit the ff/next button on the remote on the app of your choice, continue through "edit controls" and assign key maps as you please. If you want a command sent be sure to put it in lowercase, will also respond to words "up, down, left, right, return, tab, delete" to emulate these buttons on the keyboard. For right now, unless its one of the words about (left, right, etc) every other command with be sent with the command button (this will be expanded in the future) We also added a little amber blink (blinks twice) when keymaps are changed (added in MPlayer mode as well) to better indicate when the changes take place And last (but certainly not least) we added some "safe display" code, this code will check for resolutions that have trouble relinquishing the display (720p and 1080p) and switch to a lower more stable resolution (1080i etc) before attempting to release the screen. This works with both MPlayer and application launching, this feature can be toggled in settings: "Safe Display Release" This goes somewhat in tandem with the new "Safe Display Startup" setting, this setting will force the AppleTV into a resoution deemed "safe" upon startup of the Finder. This setting is mainly there for those "oops" moments when you switch TVs and forget to put it at a safe resolution for the TV you are switching to. General Update Info 0.4.5 =================== 0.4.5 introduces initial Application Launching support. There is an option to enable an Application category for the main menu in the settings facade (similiar to how RSS, Weather, POD are enabled). The Applications folder defaults to /users/frontrow/Applications (~/Applications) This can be changed in the terminal settings but not via the GUI yet. To open a particular file in a program installed in your ~/Applications folder you can browse to it from the Files section. It is important to launch the application at least once before trying to launch a file in it. Using menu will exit the current application, if the application crashes menu will still exit back out to the main menu. NOTE: as of right now we have NOT implemented the fire and forget, quit finder or remote watcher aspects of the App launcher, those will (pending which ones have demand) make it into subsequent releases. Installer Changes ============== The smart installer will now check the USB/Watchdog patch prior to doing file install checks, this is necessary for those who have 1) already installed the software and just want the watchdog patch, or 2) those who haven't actually copied a disc image in place for file installation (or deleted said disc image) can still get the watchdog patch. The empty folder selection bug is fixed, a dialog will appear mentioning an empty folder, or a folder with no supported suffixes. USB patch updated for 2.0.2, also covers watchdog, and will apply to 2.0.1 and 2.0 for any late updaters. Display Changes ============ While in 1080i 720p files will have -monitoraspect 16:9 added to properly fill the screen Finder Icons will be displayed for any items missing a cover image based on their finder CoreTypes.bundle based icon. This can be turned off in settings (it can slow down browsing slightly from time to time) WARNING: It is not recommended to swap in a full Leopard based CoreTypes.bundle, it will work to replace the icons at first, but after reboot most icons only display as the generic document icon. However, it IS possible to just grab some choice images from the Leopard bundle and replace the original Tiger based ones, make sure to backup the original CoreTypes.bundle just in case. The following are some images of notice that can be replaced. ApplicationsFolderIcon.icns com.apple.mac.icns DesktopFolderIcon.icns DeveloperFolderIcon.icns DisconnectedFileServerIcon.icns DocumentsFolderIcon.icns GenericAirDiskIcon.icns GenericFileServerIcon.icns GenericFolderIcon.icns HomeFolderIcon.icns LibraryFolderIcon.icns MovieFolderIcon.icns MusicFolderIcon.icns OpenFolderIcon.icns PicturesFolderIcon.icns PublicFolderIcon.icns SitesFolderIcon.icns SmartFolderIcon.icns Potential code re-writes: ========================= NONE! We are almost back on track to bring all the features in 1.x based versions into Take 2. Future Consideration ==================== The following should be addressed in the future pending time to do it. Improved metadata support / cataloging / fetching Nicer RSS setup Parental Controls resume or start from beginning menu Special Thanks ============== Aldrin Lee (for icons) Tom Cool (parsing classes + more) IconFamily team (Troy Stephens, Thomas Schnitzer, David Remahl, Nathan Day, Ben Haller, Sven Janssen, Peter Hosey, Conor Dearden, Elliot Glaysher, and Dave MacLachlan) James Abeler (for everything) Graham Booker (quicktime preference in 2.2) liquidice629 (CGShieldingWindowLevel()) Turbo (kext loader / SSE3 emulation) ak2007 (for App Launcher source to help integrate app launching into nitoTV) brandon holland (for various example code for porting to Take 2) ben mackin (for informative take 2 wiki and info for USB patch) jim dovey a.k.a. alan quatermain (always gets a shout) Sapphire team (for open source leopard porting info) mplayer team (for mplayer) ffmpeg team (for ffmpeg) Richard Bannister (for emulators) jrhelp32 (offset update for 2.0.1 USB patch) atomic parsley team (for atomic parsley) Legal ======= nitoTV Copyright © 2007-2010 nito llc. All rights reserved. SSE3 emulator and kextloader copyright 2007-2010 by Mike Byrne (turbo@0xfeedbeef.com) Portions Copyright (c) 2007-2010 Jim Dovey (aka Alan Auatermain) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to use the Software without restriction for personal use, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. nitoTV may not be distributed, in whole or in part, in any form (including dynamic downloading), whether for commercial or non-commercial purposes, without explicit written permission.