Skip to content
The Karelia iMedia Browser, framework and application for browsing media on Mac OS X
Objective-C Mercury C XSLT
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
CC
ObjectiveFlickr @ b52142f
cs.lproj
de.lproj
en.lproj
es.lproj
fmdb
fr.lproj French updates Aug 28, 2014
iMedia.xcodeproj
it.lproj
ja.lproj
nl.lproj
no.lproj
pt_BR.lproj
zh_CN.lproj
.gitignore
.gitmodules
Credits.html
Flickr.tiff
IMBApertureAudioParser.h
IMBApertureAudioParser.m
IMBApertureHeaderView.xib
IMBApertureHeaderViewController.h
IMBApertureHeaderViewController.m
IMBApertureParser.h
IMBApertureParser.m
IMBApertureVideoParser.h
IMBApertureVideoParser.m
IMBAppleMediaParser.h
IMBAppleMediaParser.m
IMBAudioFolderParser.h
IMBAudioFolderParser.m
IMBAudioView.xib
IMBAudioViewController.h
IMBAudioViewController.m
IMBButtonObject.h
IMBButtonObject.m
IMBComboTableView.h
IMBComboTableView.m
IMBComboTextCell.h
IMBComboTextCell.m
IMBComboViewTemplate.pdf
IMBCommon.h
IMBCommon.m
IMBConfig.h
IMBConfig.m
IMBDisableTitleToColorTransformer.h
IMBDisableTitleToColorTransformer.m
IMBDynamicTableView.h
IMBDynamicTableView.m
IMBFNSubscribeFileWatcher.h
IMBFNSubscribeFileWatcher.m
IMBFSEventsWatcher.h
IMBFSEventsWatcher.m
IMBFaceObjectViewController.h
IMBFaceObjectViewController.m
IMBFileWatcher.h
IMBFileWatcher.m
IMBFireFoxParser.h take out obsolete locations for firefox bookmarks Jul 18, 2012
IMBFireFoxParser.m
IMBFlickrHeaderView.xib
IMBFlickrHeaderViewController.h
IMBFlickrHeaderViewController.m
IMBFlickrNode.h
IMBFlickrNode.m
IMBFlickrObject.h
IMBFlickrObject.m
IMBFlickrParser.h
IMBFlickrParser.m
IMBFolderParser.h
IMBFolderParser.m
IMBGarageBandParser.h
IMBGarageBandParser.m
IMBHoverButton.h
IMBHoverButton.m
IMBIconCache.h
IMBIconCache.m
IMBImageBrowserCell.h
IMBImageBrowserCell.m
IMBImageBrowserView.h
IMBImageBrowserView.m
IMBImageCaptureParser.h
IMBImageCaptureParser.m
IMBImageFolderParser.h
IMBImageFolderParser.m
IMBImageItem.h
IMBImageItem.m
IMBImageKit.h
IMBImageView.xib
IMBImageViewController.h
IMBImageViewController.m
IMBKQueue.h
IMBKQueue.m
IMBLibraryController.h
IMBLibraryController.m
IMBLibraryView.xib
IMBLightroom1Parser.h
IMBLightroom1Parser.m
IMBLightroom2Parser.h
IMBLightroom2Parser.m
IMBLightroom3Parser.h Update sandboxing needs. Jun 14, 2012
IMBLightroom3Parser.m
IMBLightroom3VideoParser.h
IMBLightroom3VideoParser.m
IMBLightroom3or4Parser.h
IMBLightroom3or4Parser.m Move to 10.6's own data searching method. Nov 29, 2012
IMBLightroom4Parser.h
IMBLightroom4Parser.m
IMBLightroom4VideoParser.h
IMBLightroom4VideoParser.m
IMBLightroomParser.h
IMBLightroomParser.m
IMBLinkView.xib
IMBLinkViewController.h
IMBLinkViewController.m
IMBLoadMoreObject.h
IMBLoadMoreObject.m
IMBMainThreadProxy.h Noticed formatting on license prelude was wonky in some files. so I f… Dec 26, 2011
IMBMainThreadProxy.m
IMBMetadataTransformer.h Noticed formatting on license prelude was wonky in some files. so I f… Dec 27, 2011
IMBMetadataTransformer.m
IMBMovieFolderParser.h
IMBMovieFolderParser.m
IMBMovieObject.h
IMBMovieObject.m
IMBMovieView.xib Bugfix: outlets for ibListView and ibComboView were not set, so I ret… Jan 4, 2011
IMBMovieViewController.h
IMBMovieViewController.m
IMBNode.h
IMBNode.m
IMBNodeCell.h
IMBNodeCell.m
IMBNodeObject.h
IMBNodeObject.m
IMBNodeTreeController.h
IMBNodeTreeController.m
IMBNodeViewController.h
IMBNodeViewController.m
IMBObject.h
IMBObject.m
IMBObjectArrayController.h
IMBObjectArrayController.m
IMBObjectFifoCache.h
IMBObjectFifoCache.m
IMBObjectThumbnailLoadOperation.h
IMBObjectThumbnailLoadOperation.m
IMBObjectViewController.h
IMBObjectViewController.m
IMBObjectsPromise.h
IMBObjectsPromise.m
IMBOmniWebParser.h
IMBOmniWebParser.m
IMBOperationQueue.h
IMBOperationQueue.m
IMBOrderedDictionary.h
IMBOrderedDictionary.m
IMBOutlineView.h
IMBOutlineView.m
IMBPanel.h
IMBPanel.m
IMBPanel.xib
IMBPanelController.h
IMBPanelController.m
IMBParser.h
IMBParser.m
IMBParserController.h
IMBParserController.m
IMBProgress.xib
IMBProgressWindowController.h
IMBProgressWindowController.m
IMBProject.xcconfig Generate dSYM during builds. Nov 13, 2012
IMBPyramidObjectPromise.h Noticed formatting on license prelude was wonky in some files. so I f… Dec 27, 2011
IMBPyramidObjectPromise.m
IMBQLPreviewPanel.h
IMBSafariBookmarkParser.h
IMBSafariBookmarkParser.m
IMBSandboxUtilities.h
IMBSandboxUtilities.m
IMBSkimmableObjectViewController.h
IMBSkimmableObjectViewController.m
IMBSmartFolderNodeObject.h
IMBSmartFolderNodeObject.m
IMBTableView.h
IMBTableView.m
IMBTargetDebug.xcconfig
IMBTargetRelease.xcconfig
IMBTargetTest.xcconfig
IMBTestApp.xib
IMBTestAppDelegate.h
IMBTestAppDelegate.m
IMBTestFaceBrowserCell.h
IMBTestFaceBrowserCell.m
IMBTestFacesBackgroundLayer.h
IMBTestFacesBackgroundLayer.m
IMBTestTextView.h
IMBTestTextView.m
IMBTestiPhotoEventBrowserCell.h
IMBTestiPhotoEventBrowserCell.m
IMBTextFieldCell.h
IMBTextFieldCell.m
IMBTimecodeTransformer.h
IMBTimecodeTransformer.m
IMBURLDownloadOperation.h
IMBURLDownloadOperation.m
IMBURLGetSizeOperation.h
IMBURLGetSizeOperation.m
IMBXBELParser.h
IMBXBELParser.m
IMBiPhotoEventNodeObject.h
IMBiPhotoEventNodeObject.m
IMBiPhotoEventObjectViewController.h
IMBiPhotoEventObjectViewController.m
IMBiPhotoObjectPromise.h
IMBiPhotoObjectPromise.m
IMBiPhotoParser.h
IMBiPhotoParser.m Release instance variables in owning class Jun 18, 2013
IMBiPhotoVideoParser.h
IMBiPhotoVideoParser.m
IMBiTunesParser.h
IMBiTunesParser.m
IMBiTunesVideoParser.h
IMBiTunesVideoParser.m
Info.plist
LICENSE
NSDictionary+iMedia.h
NSDictionary+iMedia.m
NSFileManager+iMedia.h
NSFileManager+iMedia.m
NSImage+iMedia.h
NSImage+iMedia.m
NSString+iMedia.h
NSString+iMedia.m
NSURL+iMedia.h
NSURL+iMedia.m
NSView+iMedia.h
NSView+iMedia.m
NSWindow_Flipr.h
NSWindow_Flipr.m
NSWorkspace+iMedia.h
NSWorkspace+iMedia.m
OmniwebBookmarksToXBEL.xslt
README.mdown
TestApp-Info.plist
UKFNSubscribeFileWatcher.h
UKFNSubscribeFileWatcher.m Cast to keep the compiler happy Jun 18, 2013
UKFSEventsWatcher.h
UKFSEventsWatcher.m
UKFileWatcher.h
UKFileWatcher.m
UKKQueue.h
UKKQueue.m
UKMainThreadProxy.h
UKMainThreadProxy.m
UK_IMB_RenameBegin.h
UK_IMB_RenameEnd.h
badge_checkbox.png
cork-background.jpg
firefox_allBookmarks.png
firefox_bookmarksMenu.png
firefox_bookmarksToolbar.png
firefox_tag.png
firefox_unfiledBookmarks.png ran images through ImageOptim to save a bunch of bytes in size Apr 6, 2010
i.tiff
i2.tiff
iMedia.h
iMedia.pch
iMedia.tiff
iTunes10-icon-01.png
iTunes10-icon-02.png Updated iTunes parser for new iTunes 10 icons Sep 2, 2010
iTunes10-icon-03.png Updated iTunes parser for new iTunes 10 icons Sep 2, 2010
iTunes10-icon-04.png
iTunes10-icon-05.png
iTunes10-icon-06.png
iTunes10-icon-07.png
iTunes10-icon-08.png
iTunes10-icon-09.png
iTunes10-icon-10.png
iTunes10-icon-11.png Updated iTunes parser for new iTunes 10 icons Sep 2, 2010
iTunes10-icon-12.png
iTunes10-icon-13.png
iTunes10-icon-14.png
iTunes10-icon-15.png
iTunes10-icon-16.png
iTunes10-icon-17.png
iTunes10-icon-18.png
iTunes10-icon-19.png
iTunes10-icon-20.png
iTunes10-icon-21.png Updated iTunes parser for new iTunes 10 icons Sep 2, 2010
iTunes10-icon-22.png
iTunes10-icon-23.png
iTunes10-icon-24.png
iTunes10-icon-25.png
iTunes10-icon-26.png
iTunes10-icon-27.png
iTunes10-icon-28.png
iTunes10-icon-29.png
iTunes10-icon-30.png
iTunes10-icon-31.png
iTunes10-icon-32.png
iTunes9-icon-01.png
iTunes9-icon-02.png
iTunes9-icon-03.png
iTunes9-icon-04.png
iTunes9-icon-05.png
iTunes9-icon-06.png
iTunes9-icon-07.png
iTunes9-icon-08.png
iTunes9-icon-09.png
iTunes9-icon-10.png ran images through ImageOptim to save a bunch of bytes in size Apr 6, 2010
iTunes9-icon-11.png
iTunes9-icon-12.png
iTunes9-icon-13.png
iTunes9-icon-14.png
iTunes9-icon-15.png
iTunes9-icon-16.png
iTunes9-icon-17.png
iTunes9-icon-18.png
iTunes9-icon-19.png
iTunes9-icon-20.png
iTunes9-icon-21.png
iTunes9-icon-22.png
iTunes9-icon-23.png
iTunes9-icon-24.png
iTunes9-icon-25.png
iTunes9-icon-26.png
iTunes9-icon-27.png
iTunes9-icon-28.png
iTunes9-icon-29.png ran images through ImageOptim to save a bunch of bytes in size Apr 6, 2010
iTunes9-icon-30.png
iTunes9-icon-31.png
iTunes9-icon-32.png
itunes-icon-audiobooks.png
itunes-icon-folder7.png
itunes-icon-library.png
itunes-icon-movies.png
itunes-icon-music.png
itunes-icon-partyshuffle.png
itunes-icon-partyshuffle7.png
itunes-icon-playlist-normal.png
itunes-icon-playlist-normal7.png
itunes-icon-playlist-purchased.png
itunes-icon-playlist-smart.png
itunes-icon-playlist-smart7.png
itunes-icon-podcasts.png
itunes-icon-podcasts7.png
itunes-icon-purchased7.png
itunes-icon-tvshows.png
js.opacity
js.tiff
load-more-normal.pdf panic's shrinkit on PDFs saves space for several files! Feb 11, 2011
load-more-pressed.pdf
main.m Noticed formatting on license prelude was wonky in some files. so I f… Dec 27, 2011
url_icon.tiff
version.plist
warning.tiff

README.mdown

Overview

This is the iMedia Browser framework that is used by a number of applications (and as the basis for a stand-alone utility). Developers are encouraged to include this in their application as long as there is proper attribution.

Sandboxing

iMedia 2.6 and later is compatible with common sandboxing setups, with the following notes:

  • Search the headers for SANDBOXING to make sure your app has the entitlements iMedia needs
  • Users must house their media within the standard Movies, Music and Pictures folders, or grant access to them by dragging in custom folders
  • iMovie Sound Effects have been removed on the basis that Apple doesn't want us poking around another app's resources

There is also a longer-term effort in the iMediaSandboxing fork to farm out parsing to XPC processes.

Compatibility

2.7

The same as 2.6, minus support for Garbage Collection.

2.6

Out of the box (the v2.6.x branch), iMedia supports OS X 10.6 Snow Leopard and later. It is suitable for both 32 and 64 bit apps. See above for sandbox compatibility details.

2.5

Basically the same as 2.6, minus sandbox compatibility.

2.1

For apps still supporting OS X 10.5 Leopard, we continue to support the existing iMedia 2.1 codebase on the v2.1.x branch.

1.x

For the older 1.x branch, which is not being maintained, you can get it from subversion:

svn checkout http://imedia.googlecode.com/svn/trunk/ imedia-read-only

Recent Release Notes

2.5.1

  • The +[IMBConfig registerDefaultValues] method has been made private. You should have no need to call it in your app as IMBConfig automatically runs that routine the first time it is used

2.5.2

  • When dragging or copying iPhoto images, we mimic iPhoto by also including ImageDataListPboardType on the pasteboard. This allows iPhoto-aware apps to properly handle image metadata without any knowledge of iMedia

2.5.3

  • +[NSImage imb_imageForResource:fromAppWithBundleIdentifier:fallbackName:] replaces +imb_imageResourceNamed:fromApplication:fallbackTo:. Apps likely shouldn't use this method anyway as it's fairly iMedia-specific. The new method nicely returns retina-compatible images if a suitable name is specified, like the other Cocoa image APIs.

2.5.4

  • -[NSWorkspace imb_iconForAppWithBundleIdentifier:] has been removed. Its fallback mechanism was buggy and relied on private implementation details in the OS frameworks, which have since broke. If you are using this method in your app, provide your own implementation instead

2.6

  • iMedia is now roughly compatible with the OS X app sandbox. See Sandboxing section above for full details
  • A few public APIs have been removed or changed in the process, but chances are you weren't using them, or the replacement is dead obvious in the headers

Development

Developers are welcome to work on enhancements and fixes! Please use the GitHub issue tracker; note that we are not done migrating issues from the old Google Code issue tracker.

There are plenty of things that need to be done, and your help would be appreciated!

Something went wrong with that request. Please try again.