summaryrefslogtreecommitdiffstats
path: root/src/itdb_artwork.c
Commit message (Collapse)AuthorAgeFilesLines
* Fix a few issues in the API doc after the API changes that went onChristophe Fergeau2008-07-291-4/+2
| | | git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@2072 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/ithumb-writer.c (itdb_write_ithumb_files): fix bug whenJorg Schuler2008-06-291-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | writing photos (loop variable "it" re-used inside loop). Rename loop variable to "itw" also in case of writing artwork. * src/itdb_thumb.c (itdb_thumb_to_pixbuf_at_size): If requesting a thumb from the iPod smaller than available, none would be returned. Fixed. Thumbs from the iPod would not be scaled even if requested. Fixed. If requesting a thumb from a file or existing pixbuf, scaling was done even if none was requested (width/height = 0/-1). Fixed. Introduced selection of smallest available thumbnail (width/height = 0) besides largest available thumbnail (width/height = -1). TODO: consider aspect ratio of requested picture (currently it is very likely that some of the square thumbs are returned...) src/itdb_artwork.c (itdb_artwork_get_thumbnail): Introduced selection of smallest available thumbnail (width/height = 0) besides largest available thumbnail (width/height = -1). (Only necessary documentation.) git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@2025 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/db-artwork-writer.c:Christophe Fergeau2008-06-091-1/+2
| | | | | | | * src/itdb_artwork.c: * src/itdb_thumb.c: * src/itdb_thumb.h: fix compilation when gdk-pixbuf isn't present git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@2007 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/Makefile.am:Christophe Fergeau2008-05-301-432/+99
| | | | | | | | | | | | | | | | | | | | | | | * src/db-artwork-parser.c: * src/db-artwork-writer.c: * src/db-image-parser.c: * src/db-image-parser.h: * src/itdb.h: * src/itdb_artwork.c: * src/itdb_device.h: * src/itdb_photoalbum.c: * src/itdb_track.c: * src/ithumb-writer.c: * tests/test-covers.c: * tests/test-photos.c: rework Itdb_Thumb type. Now it's split into different subtypes depending on what it represents (GdkPixbuf, thumbnail read from the ipod, ...). Itdb_Artwork now contains only a pointer to a single Itdb_Thumb (it used to contain a GList * of Itdb_Thumb) since the only time when the list is useful is for thumbs read from the ipod. Using a list for the other types of thumbnails created some complications when trying to set art on an Itdb_Track that wasn't attached to an Itdb_iTunesDB. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1991 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb_track.c (itdb_track_set_thumbnails_internal): setJorg Schuler2008-05-281-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | artwork ID to 0 after removing thumbnails. * src/db-artwork-parser.c (parse_mhii): move out dbid association to a separate function. (mhfd_associate_itunesdb_artwork): handle dbid and mhii_link association of artwork to track (parse_mhfd): loop over the number of mhsd hunks instead of hardcoding it. Call mhfd_associate_itunesdb_artwork(). * src/itdb_itunesdb.c (get_mhit): read the mhii_link field. * src/db-artwork-writer.c (write_mhli): handle unset artwork correctly. (itdb_track_filter_thumbnails): remove thumbnails correctly. * src/db-parse-context.c (db_parse_context_get_sub_context): copy newly introduced artwork field. * tests/test-covers.c: print mhii_link. * src/itdb.h: (Itdb_Track) added mhii_link. (Itdb_Artwork): added dbid. * src/itdb.h, src/db-artwork-parser.c, src/db-artwork-writer.c, src/itdb_device.c, src/ithumb-writer.c, src/itdb_artwork.c: added ITDB_THUMB_CHAPTER_SMALL/LARGE. * src/itdb_device.c: ipod_classic_1_artwork_info: correct ITDB_THUMB_COVER_SMALL/LARGE entries. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1985 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* Added support for video output of photos for iPod Nano Videos andJorg Schuler2007-11-041-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | iPod Classics. * src/ithumb-writer.c (pack_I420): added packer for iPod Nano Video and iPod Classic TV output photo format. (itdb_write_ithumb_files): make sure only valid thumbnail types are written. * src/db-image-parser.h: added declaration for itdb_thumb_type_is_valid_for_db() * src/itdb_photoalbum.c (itdb_photodb_add_photo_internal): make sure only photo thumbnails are added. * src/db-artwork-writer.c (write_mhii): correctly skip unneeded thumbnails (thumbnails not relevant for the current iPod type). (should_write): renamed to itdb_thumb_type_is_valid_for_db() src/itdb.h src/itdb_artwork.c: minor formatting. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1753 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* Additional clean-ups after the glib requirement bumping pointed out byChristophe Fergeau2007-10-301-0/+1
| | | | | | | | | | | | | | | tmz on IRC * libgpod-1.0.pc.in: bump glib requirement there as well * src/Makefile.am: * src/db-parse-context.c: * src/glib-compat.h: * src/itdb_artwork.c: * src/itdb_itunesdb.c: * src/itdb_photoalbum.c: * src/itdb_private.h: * src/ithumb-writer.c: get rid of glib-compat.h since we raised the minimum version to 2.8 git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1749 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb_artwork.c:Christophe Fergeau2007-10-291-2/+2
| | | | | | * src/ithumb-writer.c: replace // comments with /* */ pairs, fixes compilation on my machine git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1747 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* Patch from Filippo Giunchedi <filippo@esaurito.net>Christophe Fergeau2007-10-291-0/+49
| | | | | | | | * src/itdb_artwork.c: add I420 unpacker * src/itdb_device.c: iPod classic full screen photo format is I420 * src/itdb_device.h: add I420 format * src/ithumb-writer.c: add stub for an I420 packer git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1746 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb_device.c (ipod_classic_1_artwork_info)Jorg Schuler2007-10-271-43/+59
| | | | | | | | | | | | | | | | | | src/ithumb-writer.c (pack_RGB_888, pack_RGB_565, pack_RGB_555, pack_rec_RGB_555, ithumb_writer_write_thumbnail) src/db-image-parser.h (_888 definitions) src/itdb_device.h (RGB888 thumb format enum definitions) src/itdb_artwork.c (unpack_RGB_888, unpack_experimental, itdb_thumb_get_rgb_data) Partial support for photos on new iPod Nano 3G and iPod Classics. Photos should be displayed correctly on the iPod but the video output will show garbage (couldn't try video output per se, but from the data iTunes produces this is clear). git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1741 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/db-image-parser.cJorg Schuler2007-09-081-13/+273
| | | | | | | | | | | | | | | | | | | | | | | | src/itdb_device.c src/ithumb-writer.c src/db-image-parser.h src/itdb_device.h src/itdb.h src/itdb_artwork.c tests/test-covers.c: added support to read and write coverart on iPhones. New cover formats are: MEDIUM, XLARGE, XSMALL, SMEDIUM -- should be renamed if function becomes clearer. Introduced New image formats for the thumbnails (THUMB_FORMAT_RGB555, THUMB_FORMAT_REC_RGB555). Coding/decoding functions are pack_/unpack_RGB_555() and pack_/unpack_REC_RGB_555(). Introduced possible padding for thumbnail files (Itdb_ArtworkFormat). * src/db-artwork-parser.c: make output filename unique. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1691 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb_artwork.c (itdb_thumb_get_filename): checkJorg Schuler2007-08-181-2/+6
| | | | | | returnvalue of strchr(). Thanks to Javier Kohen. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1685 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb_artwork.c (itdb_thumb_free, itdb_thumb_duplicate): fixJorg Schuler2007-06-291-0/+4
| | | | | | | compile time error when compiling without GDKPIXBUF. Alternative fix: add '#include <glib-object.h>'. Thanks to Olivier CrĂȘte. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1612 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb_artwork.cJorg Schuler2007-05-071-1/+1
| | | | | | | src/itdb_itunesdb.c tests/test-photos.c: Corrected some typos. Thanks to Daniele Forsi. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1427 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb.hJorg Schuler2007-03-211-1/+73
| | | | | | | | | | | | src/itdb_artwork.c src/itdb_photoalbum.c src/itdb_track.c src/ithumb-writer.c: Added new API functions: itdb_photodb_add_photo_from_pixbuf function(), itdb_track_set_thumbnails_from_pixbuf() and itdb_artwork_add_thumbnail_from_pixbuf(). Thanks to Christophe Fergeau. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1405 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb_artwork.c (itdb_artwork_remove_thumbnail): memory usedJorg Schuler2007-03-211-2/+3
| | | | | | | | | by thumbnail to be removed will be freed now. ATTENTION: this changes the previous API description that stated that the thumbnail will not be freed. This behaviour was inconsistent with all other _remove functions in libgpod and caused a memory hole. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1403 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/ithumb-writer.c (ithumb_writer_write_thumbnail): handleJorg Schuler2006-11-261-2/+5
| | | | | | | | | | | | corrupted image data in a way that does not crash libgpod nor causes the ArtworkDB or PhotoDB to be corrupted. Currently a completely red pixmap is created as a substitute. Somewhat more artistic than I am may want to create a "corrupted image data" pixmap we can imbed into the code. * src/itdb_artwork.c (itdb_thumb_get_gdk_pixbuf): fix failed assertion when image data is illegal. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1341 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * When adding photos to the iPod the user may or may not want toJorg Schuler2006-11-231-5/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rotate the picture shown on the iPod screen, for example deending on EXIF rotation value. This can now be achieved by passing a new parameter 'rotation' to itdb_photodb_add_photo() or itdb_photodb_add_photo_from_data(). (Valid values: 0, 90, 180, 270, rotation is counter-clockwise). These two functions now also accept a GError pointer. As a consequence Itdb_Thumb had to be extended with a field for the rotation value and itdb_artwork_add_thumbnail have been extended to accept @rotation and @error as well. The actual rotation is carried out in ithumb-writer.c/ithumb_writer_write_thumbnail() using gdk_pixbuf_rotate_simple() and require gdk-pixbuf V2.6 or higher. In contrast, itdb_track_set_thumbnails() and itdb_track_set_thumbnails_from_data have been left unchanged, even though they could be extended to accept @rotation and @error easily. Please let me know if this is wanted. * configure.ac src/itdb.h src/itdb_artwork.c src/itdb_photoalbum.c src/itdb_track.c src/ithumb-writer.c: implemented changes outlined above. * tests/test-photos.c: added @rotation and @error to the itdb_photodb_add_photo() call. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1338 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * itdb_artwork.c: added support for UYVY format for iPod Video andJorg Schuler2006-11-121-16/+118
| | | | | | | | | | | | | | | | | | | | | | | | iPod Photo TV output. Code adapted from the GPixPod project. (itdb_thumb_get_byteorder): return the byte order for the current thumbnail (internal function). * itdb_device.[hc]: added thumbnail storage format to the Itdb_ArtworkFormat image information. Currently the following are defined: THUMB_FORMAT_UYVY THUMB_FORMAT_RGB565_LE THUMB_FORMAT_RGB565_BE THUMB_FORMAT_RGB565_BE_90 THUMB_FORMAT_RGB565_LE_90 THUMB_FORMAT_RGB565_LE_90 does not appear to be used by any iPod model. THUMB_FORMAT_RGB565_BE_90 is used for full screen iPod Photo photos but currently is handeled the same as THUMB_FORMAT_RGB565_BE pending input from iPod Photo users. * ithumb-writer.c: added support for UYVY format for iPod Video and iPod Photo TV output. Code adapted from the GPixPod project. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1337 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* Sizing of pixmap did not work properly for data (non-file) coverart.Jorg Schuler2006-09-171-3/+3
| | | git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1314 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb.hJorg Schuler2006-09-171-5/+81
| | | | | | | | | | | | | | | | | src/itdb_artwork.c: added itdb_artwork_add_thumbnail_from_data(). * src/itdb.h src/itdb_track.c: added itdb_track_set_thumbnails_from_data(). * src/itdb.h src/itdb_photoalbum.c: added itdb_photodb_add_photo_from_data(). * src/itdb_artwork.c (itdb_thumb_get_gdk_pixbuf): added support to retreive thumbnail from raw data instead of file. * src/ithumb-writer.c (ithumb_writer_write_thumbnail): added support to write thumbnail from raw data instead of file. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1313 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* 2006-06-05 Jorg Schuler <jcsjcs at users.sourceforge.net>Jorg Schuler2006-06-041-10/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/db-artwork-parser.h src/db-artwork-parserc (ipod_supports_cover_art): made available G_GNUC_INTERNAL. Added ipod_supports_photos(). * src/itdb_itunesdb.c (itdb_create_directories): Create Photos directory. 2006-06-04 Jorg Schuler <jcsjcs at users.sourceforge.net> * src/db-image-parser.c src/itdb_artwork.c src/itdb_device.c src/itdb_photoalbum.c src/itdb_track.c src/ithumb-writer.c: Phased out private IPOD_COVER_SMALL... enum in favor of identical public enum "ItdbThumbType" ITDB_THUMB_COVER_SMALL... * src/db-image-parser.c (ipod_image_new_from_mhni): Accept all thumbnail types we know about (i.e. type != -1). * src/db-artwork-debug.h src/db-artwork-parser.h src/db-image-parser.h src/db-parse-context.h src/glib-compat.h src/itdb_endianness.h: Added CVS "$Id:" line, added copyright notices where missing, added explanations to itdb_endianess.h ;-) * src/itdb_itunesdb.c src/itdb_track.c src/itdb_device.c src/itdb_device.h Made naming consistent and suitable for export: Itdb_IpodModel -> Itdb_IpodInfo ipod_model_table -> ipod_info_table itdb_device_get_model_info() -> itdb_device_get_ipod_info() MODEL_TYPE_... -> ITDB_IPOD_MODEL_... nth_GENERATION -> ITDB_IPOD_GENERATION_nth Exported Itdb_IpodModel, Itdb_IpodGeneration, Itdb_IpodInfo, itdb_device_get_ipod_info(). * src/itdb_device.c: new API: itdb_info_get_ipod_info_table(), itdb_info_get_ipod_model_name() * src/itdb.h src/itdb_artwork.c: Removed unused field ->type in Itdb_Artwork and corresponding enum ItdbArtworkType. 2006-06-03 Jorg Schuler <jcsjcs at users.sourceforge.net> * src/itdb_artwork.c (itdb_thumb_get_gdk_pixbuf): handle thumbnail padding correctly -- who would have thought that iTunes indicates _negative_ padding at times... Please use the test-photos program to check out whether or not your photos show up correctly without black bars or funny colors. * src/db-artwork-writer.c src/db-image-parser.c src/itdb.h src/ithumb-writer.c: Hopefully do padding right: - read padding fields from mhni header and store them with each thumbnail - calculate padding for PhotoDB only (padding for iTunesDB Artwork does not seem to be necessary) - include the padding into the total width/height It seems to work well on my iPod Nano -- feedback appreciated. * tests/test-photos.c: added possibility to dump all photos into a directory: tests/test-photos dump <mountpoint> <output_dir> * src/itdb_artwork.c: changed byte order for full screen iPod Nanos. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1299 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * tests/test-photos.c: added possibility to dump all photos into aJorg Schuler2006-06-021-8/+19
| | | | | | | | | directory: tests/test-photos dump <mountpoint> <output_dir> * src/itdb_artwork.c: changed byte order for full screen iPod Nanos. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1297 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* ***** merged photo-support branch back to MAIN. branch is taggedJorg Schuler2006-05-301-3/+15
| | | | | | | photo-support-merged_00 ipod.py will need minor patching (flag2, flag3). git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1292 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * docs/Makefile.am:Christophe Fergeau2006-04-101-21/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * docs/reference/Makefile.am: * docs/reference/libgpod-docs.xml: * docs/reference/libgpod-sections.txt: * docs/reference/tmpl/Internal.sgml: * docs/reference/tmpl/artwork.sgml: * docs/reference/tmpl/device.sgml: * docs/reference/tmpl/itunesdb-copying.sgml: * docs/reference/tmpl/itunesdb-db.sgml: * docs/reference/tmpl/itunesdb-lowlevel.sgml: * docs/reference/tmpl/itunesdb-time.sgml: * docs/reference/tmpl/libgpod-unused.sgml: * docs/reference/tmpl/playlists.sgml: * docs/reference/tmpl/smart-playlists.sgml: * docs/reference/tmpl/track.sgml: * docs/reference/version.xml.in: all the files below are new files needed for gtk-doc support * Makefile.am: * configure.ac: add gtk-doc support to build system * src/itdb_artwork.c: * src/itdb_device.c: * src/itdb_itunesdb.c: * src/itdb_playlist.c: * src/itdb_track.c: update inline comments in those files so that gtk-doc can pick them up to build documentation git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1243 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* Alpha version of reversed-endian Artwork writing. Status: iTunesDBJorg Schuler2006-03-231-4/+5
| | | | | | | | | | can be written and is accepted on mobile phones, ArtworkDB can be read and be written as well, but newly added artwork will not yet display. * itdb.h: adjusted a couple of field lengths (4 byte -> 2 byte or even 1 byte) to address endian issues. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1225 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * itdb_itunesdb.c (itdb_write_file): move endianess autodetectionJorg Schuler2006-03-181-2/+2
| | | | | to a place before calling ipod_write_artwork_db(). git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1224 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * itdb_device.[ch]: rewrote ipod-device.c, removed all hal-code,Jorg Schuler2006-03-161-16/+15
| | | | | | | | | | | | | | | removed all code irrelevant to writing the iTunesDB and ArtworkDB. * autodetect iControl directory now also works for ArtworkDB. * db-artwork-parser.c (ipod_db_get_artwork_db_path): create Artwork directory if not already present. * itdb.h: Itdb_iTunesDB: moved mountpoint and musicdirs into private Itdb_Device. Use itdb_set_mountpoint() and itdb_get_mountpoint() to access the mountpoint. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1220 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb_artwork.c: (itdb_thumb_get_gdk_pixbuf) allow to getJorg Schuler2005-12-111-28/+69
| | | | | | | pixbuf even if no iPod is present if the thumbnail points to a local filename. This way artwork support is also possible on the 'Local' repository in gtkpod (or any other application). git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1193 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb_artwork.c: fix compilation problem when gdkpixbuf isJorg Schuler2005-12-091-1/+3
| | | | | not present. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1190 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/itdb_itunesdb.c: change g_assert to g_return_if_fail (don'tJorg Schuler2005-12-061-2/+2
| | | | | | | | | | | | | | | | terminate the application just because the iTunesDB was manipulated). * src/db-artwork-parser.c: change g_assert to g_return_if_fail (don't terminate the application just because the ArtworkDB was manipulated). * src/itdb_artwork.c: change g_assert to g_return_if_fail (don't terminate the application just because the ithmb file was manipulated). There's a number of g_asserts left in db-parse-context.c which don't catch programming errors but input errors. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1188 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* * src/db-artwork-writer.c, src/itdb_itunesdb.c,Jorg Schuler2005-12-041-3/+5
| | | | | | src/itdb_track.c, src/ithumb-writer.c: handle artwork size and count self-consistently. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1184 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* 2005-11-28 Christophe Fergeau <teuf@gnome.org>Christophe Fergeau2005-11-281-0/+4
| | | | | | | | | | * src/itdb_artwork.c: (unpack_RGB_565), (get_pixel_data): * src/itdb_itunesdb.c: (get_mhod): * src/ithumb-writer.c: (pack_RGB_565), (ithumb_rearrange_thumbnail_file): added some paranoia checks before doing some mallocs to prevent potential int overflows in some mallocs which could be triggered by using forged iTunesDB files git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1181 f01d2545-417e-4e96-918e-98f8d0dbbcb6
* New API for thumbnail support: see src/itdb.h for details.Jorg Schuler2005-11-281-0/+429
* src/itdb.h: Introduced Itdb_Artwork and ItdbThumbType and changed Itdb_Image to Itdb_Thumb throughout the source. * src/itdb_artwork.c: new file as backend for Itdb_Artwork support (new, free, duplicate, get_thumb_by_type, add_thumbnail, remove_thumbnail, remove_thumbnails), as well as for the Itdb_Thumb support (new, free, duplicate, get_gdk_pixbuf, get_filename) * src/itdb_track.c: new functions for artwork support (set_thumbnails, remove_thumbnails) * src/ithumb-writer.c: added support to write thumbnails in addition to existing thumbnails * src/db-artwork-parcer.c: (mhod3_get_ithmb_filename) * src/itdb_itunesdb.c: (update_artwork_info) * tests/test-covers.c: updated to new API. * tests/test-write-covers.c: updated to new API. Known issues: iTunes wipes off our thumbnails. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1180 f01d2545-417e-4e96-918e-98f8d0dbbcb6