View Single Post
Old 01-31-2011, 03:22 PM   #1
jackie_w
Grand Sorcerer
jackie_w ought to be getting tired of karma fortunes by now.jackie_w ought to be getting tired of karma fortunes by now.jackie_w ought to be getting tired of karma fortunes by now.jackie_w ought to be getting tired of karma fortunes by now.jackie_w ought to be getting tired of karma fortunes by now.jackie_w ought to be getting tired of karma fortunes by now.jackie_w ought to be getting tired of karma fortunes by now.jackie_w ought to be getting tired of karma fortunes by now.jackie_w ought to be getting tired of karma fortunes by now.jackie_w ought to be getting tired of karma fortunes by now.jackie_w ought to be getting tired of karma fortunes by now.
 
Posts: 6,208
Karma: 16534692
Join Date: Sep 2009
Location: UK
Device: Kobo: KA1, ClaraHD, Forma, Libra2, Clara2E. PocketBook: TouchHD3
[GUI Plugin] Copy book covers as Standby images (Sony/Kindle/Nook)

The Copy Cover plugin was created in Jan 2011 because I wanted to make more use of my Calibre book covers. I wanted to simulate reading a paper book, i.e. when you close it, at the end of a reading session, you see its cover.

Some devices now include a standard feature which allows you to display cover of current book when in Standby, but for those which don't, this plugin may offer you a workable alternative. It will populate your device's 'special' screensaver directory with Calibre covers of the correct shape, size and format, then you use the features on the device to do the rest.

Main Features:
  • Quick and easy to copy one or more (max 100) Calibre book covers to your reader to use as Standby/PowerOff images.
  • Allows you to specify whether you want to:
    • rescale covers to exactly fill reader's screen or keep aspect ratio of original covers
    • copy a single or multiple covers
    • choice of how to manage cover images on device
    • (Kindle with Custom Screensaver only) automatically reboot your Kindle after disconnecting
  • Works with:
    • Kindle devices (non-Ad-supported only) which have had the appropriate "jailbreak" modification applied plus either of the following (see Special Notes below):
      • Custom Screensaver mod (NiLuJe)
      • Simple Screensaver mod (Yifan Lu)
    • Nook STR and Nook original (see Special Notes below).
    • Sony readers PRS-350/650/950.
    • Sony PRS-600 provided it has the PRSPlus custom firmware (including wallpaper directory) installed (see Special Notes below).
    • PocketBook360 and other newer PocketBook models (see Special Notes below).
    If you own one or more of the above supported devices, the plugin should automatically detect which one is connected to Calibre and process accordingly.
  • Runs on Windows, Linux or OSX.

Special Notes:
  • Testing of Kindle support was done on Windows with
    • jailbroken non-Ad-supported Kindle Touch(FW v5.1.2) and Paperwhite(FW v5.2.0) with 'Custom Screensaver' mod, both were UK 3G versions.
    • jailbroken Kindle3 3G with 'Custom Screensaver' mod.
    • jailbroken non-Ad-supported Kindle Touch (FW v5.1.2) with 'Simple Screensaver' mod.
    N.B. Please do not "jailbreak" your Kindle unless you fully understand what it means and implies! More info in the Kindle forum, NiLuJe's threads here and here, the Kindle Touch wiki and Yifan Lu's webpage.
  • Nook STR users will need to manually create the special named directory /screensavers/calibre in Nook internal memory before using the plugin for the first time.
  • Similarly, Nook original users will need to manually create directory /my screensavers/calibre in Nook internal memory.
  • Testing of Sony PRS-600 was done on Windows. You must have the PRSPlus custom firmware installed and the named directory /database/system/PRSPlus/wallpaper/ must be present in internal memory.
    N.B. Please do not install custom firmware on your Sony unless you fully understand what it means and implies! Full info in the Sony Reader Developer forum.
  • Testing of PocketBook was done on PB360, PB903 and PB603, but the plugin should work for any PocketBook model which:
    • stores PowerOff logos in directory /system/logo/ in internal memory
    • requires PowerOff logos to be in either 8- or 16-colour greyscale (4BPP) .bmp format.

Note: Thanks to CraftyDan, cybmole, Loeffel, nynaevelan, Dopedangel, Oletros, Akirainblack, paola, preempalver for beta-testing of various versions. Special thanks to NiLuJe for assistance with Kindle matters.

Version History
Spoiler:
  • Version 2.0.4 - 13 May 2020
    Maintenance upgrade for python3 compatibility.
    No longer supports PocketBook devices due to removal of BMP format support from calibre image utils.
  • Version 2.0.0 - 18 Jul 2014
    Ensure plugin keeps working with upcoming calibre 2.0 release.
  • Version 1.6.4 - 07 Nov 2012
    Added support for non-ad-supported Kindle Paperwhite and Touch which are using NiLuJe's latest Custom Screensaver mod.
    All Kindle models: covers which are copied to Kindle with aspect ratio kept will be padded with white bars so that the screen is fully filled, i.e. previous screen no longer visible behind screensaver.
  • Version 1.6.3 - 01 Sep 2012
    Fix for problem encountered by Pocketbook users using Linux.
    Plugin should now always create greyscale bmps with the correct depth of 4BPP.
  • Version 1.6.2 - 28 Aug 2012
    Added support to send 16-colour greyscale bmps for Pocketbook devices from PB602 onwards. Devices PB360 (original) and PB301 will continue to receive 8-colour greyscale bmps.

    Added option to randomise the order in which covers are sent to device. More likely to be useful for devices (e.g. Kindle Touch with Simple Screensaver) which do not already have some kind of on-device 'shuffle' or 'random' option.

    Fix for correctly setting auto reboot option on Kindles with Custom Screensaver which are also using NiLuJe's Custom Fonts mod (fix courtesy of NiLuJe).
  • Version 1.6.0 - 20 Aug 2012
    Added support for non-Ad-supported Kindle Touch (with 'jailbreak' plus 'Simple Screensaver' mods).
    Added progress bar to help users who like to copy larger batches.
    Max. number of total covers now 100 (all devices).
  • Version 1.5.1 - 20 Sept 2011
    Corrected support for Nook original.
  • Version 1.5.0 - 17 Sept 2011
    Added support for Nook STR.
    Support for Nook original still in progress.
  • Version 1.4.1 - 24 June 2011
    Maintenance release only, issued on advice from Calibre Developers.
    It has been necessary to accommodate planned changes to the main Calibre program, due to be phased in starting with next release.
    Changes in v1.4.1 are minimal - so no change to features or functionality (sorry!)
    Will work on all versions of Calibre, from v0.7.53 onwards, so can be installed immediately.
  • Version 1.4.0 - 17 May 2011
    Added support for Sony PRS-600, if PRSPlus custom firmware installed.
    Increased maximum covers to 99.
    Added extra option to add new covers to those already on the device.
    Added new menu utility to clear all cover images.

    Version 1.3.0 - 3 May 2011
    Added ability to copy multiple covers (max 15)
    Added support for Kindle 2/3/3G/DX if Kindle "jailbreak" and "Custom Screensaver" mods have been applied.

    Version 1.2.0 - 18 Apr 2011
    Rewritten for new plugin infrastructure in Calibre 0.7.53
    Also simplified Customisation screen and made it more easily accessible
    - after installing, please restart Calibre (Ctrl-R) and re-run Customisation to make sure you have your desired settings
  • Version 1.1 - 28 Jan 2011
    Gives sensible error message if no books are selected.
  • Version 1.0 - 26 Jan 2011
    Original release


1. Install Copy Cover Plugin and Add Copy Cover to one of the Calibre menus/toolbars
As of Calibre v0.8.6, installing plugins from this sub-forum is easier than ever.
Please see the How do I install a plugin using Plugin Updater? section in the Introduction to plugins thread.


2. Customize Copy Cover Plugin
Spoiler:
  1. Depending on the toolbar/menu to which you added this plugin, customisation is accessed as follows:
    right-click context menu - same menu as Copy Cover action
    toolbar - via the small arrow to the right of the icon
  2. There are 6 parameters to set. See attached screencap (custom.jpg).

    The first one specifies the screen resolution of your reader e.g.
    600,800 PRS-350/650/600 PocketBook360/6xx Kindle2/3/4/Touch
    600,1024 PRS-950
    758,1024 Kindle Paperwhite
    824,1200 Kindle DX PocketBook 9xx

    The second parameter is a keep aspect ratio checkbox:
    unchecked - if you prefer the cover to completely fill the screen. In most cases this will mean the cover is slightly distorted as it is stretched/squashed to fit.
    checked - if you want to keep the aspect ratio of the original book cover when you copy it to your reader. Please note that for most book covers this will result in "filler bars" padding out the book cover image to fill your reader's screen.

    The third parameter is a multi-copy checkbox:
    unchecked - if you want to copy only a single cover. This is the default, for compatibility with earlier versions. For Sony users, this may be slightly less effort to maintain because of how the management of Sony Standby images works.
    checked - if you want to be able to copy multiple covers - maximum set to 100 to avoid "fat finger" disasters and accidentally clogging your reader storage.

    The fourth parameter - file housekeeping - is only selectable if you also checked the multi-copy box above. Choose one of the following radio buttons to specify whether or not to completely replace your cover images each time you copy a new batch:
    • Remove old cover images before copying new (default)
    • Add to existing cover images

    The fifth parameter - random sequence - is only selectable if you also checked the multi-copy box above. It is more likely to be useful for devices (e.g. KindleTouch-with-Simple-Screensaver) which do not already have some kind of on-device 'shuffle' or 'random' option. If you are sending covers in a large batch it may help you avoid single-author 'clumps'.
    unchecked - (default) covers sent in the order you selected them in the Calibre library window.
    checked - selected covers sent in random sequence.

    The sixth parameter is a checkbox only relevant to Kindle-with-Custom-Screensaver users:
    unchecked - you will need to manually reboot your Kindle after disconnecting before your new screensaver image(s) will be used.
    checked - your Kindle will automatically reboot a few seconds after disconnecting. Your new screensaver image(s) will then be used.
  3. Click OK to save your preferences to your Calibre config directory.


3. Using the Copy Cover feature - normal usage.
  1. Connect your reader to Calibre with the USB cable in the normal way.
  2. Highlight your chosen book(s) in the Library window. Select the Copy Cover menu item from the menu/toolbar you chose in step 1. You will get a confirmation messagebox summarising what has been copied and to where (example attached below, infomsg.jpg). It is purely for information, so when you're ready press Close.
  3. Safely disconnect your reader in the normal way.
    Kindle-with-Custom-Screensaver users may need to reboot at this point, depending on customisation settings.
In normal usage that's all there is to it. The next time you switch off your reader a chosen book cover should be displayed.

However, if these are the first covers you've copied, there may be one more step. The fact that you've read this far implies you will be familiar with it already, but just in case...

4. Setup Copy Cover on Reader

Kindle with Custom Screensaver (non-Ad-supported):
Spoiler:
The covers you have just copied are always in the "jailbreak with Custom Screensaver" directory (/linkss/screensavers in internal memory).
Kindle 2/3/4/DXG images will be in JPG format with names beginning calibre_cover.
Kindle Touch/Paperwhite images will be in PNG format with names beginning bg_medium_ss.
  • If you set this plugin's customisation to automatically reboot the Kindle then no further action is required.
    Otherwise, you will need to do a manual Kindle reboot before your new cover image(s) will be "seen".

Kindle with Simple Screensaver (non-Ad-supported):
Spoiler:

No further action is required. The covers you have just copied are always in the "jailbreak with Simple Screensaver" directory (/screensaver in internal memory) and are called bg_xsmall_ssnn.png where nn=00-99.

Note: To make sure a particular book cover is always displayed, you would need to make sure that only ONE image was copied/stored, otherwise the Kindle will select one from the screensavers directory each time you switch to standby mode.

Nook original:
Spoiler:
The cover(s) you have just copied are always in the Nook's internal memory /my screensavers/calibre directory, with name(s) beginning calibre_cover. All you need to do is use the Nook's standard screensaver feature to choose the calibre subdirectory.

Nook STR:
Spoiler:
The cover(s) you have just copied are always in the Nook's internal memory /screensavers/calibre directory, with name(s) beginning calibre_cover. All you need to do is use the Nook's standard screensaver feature to choose the calibre subdirectory.

Sony PRS-x50:
Spoiler:
The cover(s) you have just copied are always in the standard Sony images directory with name(s) beginning calibre_cover. The final step is to tell your Sony to use it/them as the Standby image(s).
  • Home - Applications - Pictures, See All
    The cover name(s) begin calibre_cover (it/they should be the first in the list if you tap sort By Date)
  • Options - Select Standby Screen
    Make sure the cover(s) you want are ticked and press Done (top right).
Note: To make sure a particular book cover is always displayed in standby mode, you will need to make sure that only ONE image is ticked. If you tick more than one the Sony will cycle round your selected list.

Sony PRS-600:
Spoiler:
No further action required. The cover(s) you have just copied are always in the PRSPlus wallpaper images directory with name(s) beginning calibre_cover.

Note: To make sure a particular book cover is always displayed, you would need to make sure that only ONE image was copied/stored, otherwise the PRS600 will randomly select one from the wallpaper directory each time you switch to standby mode.

PocketBook:
Spoiler:

The cover(s) you have just copied are always in the standard PocketBook logo directory and always have a name beginning calibre_cover. The final step is to tell your PocketBook which to use.
  • Main menu - Settings - Appearance - Power-off logo
    To make sure a single book cover is ALWAYS displayed in Poweroff mode, find it in the list and select it.
    If you prefer a random image each time you power off, select the item called random logo.

Note: Whether your PB receives 8- or 16-colour greyscale bmps is dependent on which PB model Calibre thinks is connected. PB360(orig)/PB301 will receive 8-colour greyscale, PB602/603/902/903 (or newer) will receive 16-colour greyscale.

Attached Thumbnails
Click image for larger version

Name:	infomsg.jpg
Views:	1745
Size:	37.7 KB
ID:	65842   Click image for larger version

Name:	custom.jpg
Views:	1637
Size:	39.4 KB
ID:	70115  
Attached Files
File Type: zip Copy Cover To Device_v2-0-4_py3.zip (9.8 KB, 69533 views)

Last edited by jackie_w; 05-13-2020 at 12:38 PM. Reason: Maintenance update v2.0.4. Prepare for calibre move to python3
jackie_w is offline   Reply With Quote