07-01-2017, 04:20 AM | #2536 | |
Fanatic
Posts: 536
Karma: 1000000
Join Date: Dec 2011
Location: Rome, Italy
Device: Kindle PW5, Kindle PW4, Kindle 4 NT
|
Quote:
My routine is exactly that: 1) Buy - but choose "Transfer via USB" 2) Download 3) Upload to calibre 4) Hypenate-this! 5) Transfer to kindle That's what I do, and it wouldn't change much if I had the SS hack able to extract pictures from 1-file KFX - it only would change step 4. However, while hypenate-this would handle hypenation correctly, azw3 doesn't support typographic enhancements, such as for example ligatures. If you don't know what I mean, have a look at how the letters "ff" renders in an azw3 and in a kfx. So, the KFX still is superior: if I could have the KFX format typographic enhancements and the SS, I would go for that. As of now, I have to choose one of them, and SS it is. Yet, there is something I miss, and that's why I hoped somebody had taken care of SS-hack limits. Last edited by Ruskie_it; 07-01-2017 at 04:55 AM. |
|
07-01-2017, 04:56 AM | #2537 | |
Going Viral
Posts: 17,212
Karma: 18210809
Join Date: Feb 2012
Location: Central Texas
Device: No K1, PW2, KV, KOA
|
Quote:
The limitation is your conversion process that is only partial, it does not create the associated metadata directory and files that would be present with a book that was originally KFX. Fix the conversion process your using or use one that does a complete conversion and your problems will go away. For that, you should take your problem with the conversion process to the Calibre forum here. |
|
07-01-2017, 05:45 AM | #2538 | |
Fanatic
Posts: 536
Karma: 1000000
Join Date: Dec 2011
Location: Rome, Italy
Device: Kindle PW5, Kindle PW4, Kindle 4 NT
|
Quote:
Now, I didn't know that the reason wasn't (only) that it misses code for that, but expecially that in "single file KFX" the indication of which is the cover does not exist. Though I now tested it with the Kindle and I can easily that is the case... Of course if the information isn't there, SS-hack can't just create it . The reason I was commenting here is that, first, I thought the cover information actually was in the converted KFX, and second I have read in the calibre plugin thread that the author is not interested in adjusting it to make it compatible with other plugins. Maybe I'll check it more extensively in case I missed something. But I think it is not that easy to modify the plugin. I think the author could change it to extract and save the cover and the metadata, but calibre itself, I don't know if it is structured to handle (and transfer) more than a single file for a book and a format. As far as I know, calibre has a metadata.opf file, a cover.jpg file, and then a file for each format it stores; I am not sure a plugin has the instruments to make it store and transfer an additional directory... As far as things are right now, if I have to choose between KFX features and the SS, I choose the latter. |
|
07-01-2017, 07:54 AM | #2539 |
Grand Sorcerer
Posts: 6,498
Karma: 84420419
Join Date: Nov 2011
Location: Tampa Bay, Florida
Device: Kindles
|
KFX books downloaded to an e-ink Kindle directly from Amazon contain multiple files per book. The main KFX file has most of the book content and is encrypted. The associated SDR directory has an unencrypted metadata.kfx file that contains the book's metadata (surprise!), including the cover. There can be additional KFX files containing book resources (images, fonts, etc.).
The KFX Output plugin for calibre places everything in the single main file unencrypted. The Kindle firmware is able to make use of this alternate arrangement. I suggest that the SS hack should obtain the cover from the book's main KFX file if the associated metadata.kfx file does not exist. The current KFX cover extraction code should work fine if it is given the correct file to operate on. |
07-01-2017, 08:20 AM | #2540 | |
Going Viral
Posts: 17,212
Karma: 18210809
Join Date: Feb 2012
Location: Central Texas
Device: No K1, PW2, KV, KOA
|
Quote:
The problem with that is the author/maintainer is away at school and is unlikely to return until he completes his (advanced) studies. A few more years perhaps. From the post above, the author of the Calibre plug-in could also change his plug-in to produce the "Amazon style" multi-file book. But even though present, is not interested in making any changes. So unless someone falls out of the woodwork and assumes the maintenance of this add-in, it will stay as it is. We have made some progress, we now understand WHY the screensaver add-in does not work in this case of a Calibre converted book. The only hope for the future is that this (Kindle Developer's Forum) and the Calibre Forum are the two highest traffic forums on the MobileRead site. Ref: https://www.mobileread.com/forums/index.php Note the "number viewing" for each at any time of the day or night. |
|
07-01-2017, 08:42 AM | #2541 | |
Fanatic
Posts: 536
Karma: 1000000
Join Date: Dec 2011
Location: Rome, Italy
Device: Kindle PW5, Kindle PW4, Kindle 4 NT
|
Quote:
So there are two ways: 1) To modify the KFX Output plugin so that it produces the additional directory where metadata is stored "by Amazon" 2) To modify the SS Hack so that it extracts the cover from within the monolithic KFX ebook instead of the metadata associated file. I wrote here to, sort of, advocate for the latter because I thought I read that the author of the calibre plugin is not interested in the first way and I was then right when I supposed that the ss hack could be made to extract the cover (now we do know it actually exists in the KFX file). Additionally, even if the plugin author was willing to improve it, I am not sure it is possible to go beyond a certain point. I don't know, infact, if the calibre sdk lets a plugin to mess directly with it's library on the filesystem, and most important with its action (to transfer a KFX file you should now also transfer the associated sdr directory). That's why the easiest way looked - to me - to improve the SS hack code. Too bad Niluje is away. Until that time, however, no KFX file for for me. |
|
07-01-2017, 09:03 AM | #2542 | |
Going Viral
Posts: 17,212
Karma: 18210809
Join Date: Feb 2012
Location: Central Texas
Device: No K1, PW2, KV, KOA
|
Quote:
Yup, you have a good summary of the situation. All of the regular contributors of this forum over the past few years are now dead, dying, or simply gone. So there is a definite shortage of people to maintain what already exists. (if I was even a half century younger . . .) |
|
07-01-2017, 09:34 AM | #2543 | |
Fanatic
Posts: 536
Karma: 1000000
Join Date: Dec 2011
Location: Rome, Italy
Device: Kindle PW5, Kindle PW4, Kindle 4 NT
|
Quote:
Anyway, I have just opened the kfxmeta.py file to see if I get to understand something. I am not a python programmer, but all programming languages look alike; and if I got jhowell's message, here what we should do is introduce some logic like: if meta file exist then "code to extract metadata"; else "code to extract metadata" using the kfx file itself. I don't think I'll be able to, but let's see how much impossible it is.. |
|
07-01-2017, 10:02 AM | #2544 |
Fanatic
Posts: 536
Karma: 1000000
Join Date: Dec 2011
Location: Rome, Italy
Device: Kindle PW5, Kindle PW4, Kindle 4 NT
|
Uhmmm... It is quite hard for me but let's see. I am not sure about literally ANYTHING beyond this line, however let me explain my reasoning.
First I have looked the file kfxmeta.py because it should be where the cover is extracted, but after reading it for a while - and not fully understand all the code - it seems to me that it merely extracts metadata from a passed file, assuming it has one specific format among kfx, kdf or other "derivates", let me use the term. What's important here is that it does not select the file that it is parsing, it merely determines which kind it is and proceeds to extract the cover. Then, I take for good jhowell's statement that the same code can be used to extract the cover from the kfx file instead of the metadata in .sdr, so the point is: let's see when the kfxmeta.py is called and check if we can make so that it is passed the book .kfx instead of the sidecar, when the sidecar does not exist. It looks it is called in linkss/bin/cover-extract shell script file, and more precisely here: Code:
# Check if the book was a KFX... if [ "${last_read_mime}" == "application/x-kfx-ebook" ] ; then # We want the metadata sidecar file, not the book itself... last_read_kfx="${last_read_file%.*}.sdr/assets/metadata.kfx" # Check that it exists... if [ ! -f "${last_read_kfx}" ] ; then kh_msg "couldn't open metadata sidecar of last read kfx book '${last_read_file}', aborting..." W q return 1 fi # Use KFX Meta. # NOTE: See https://www.mobileread.com/forums/showpost.php?p=3261216&postcount=1879 and the posts around it for the rationale behind giving # up and just enforcing PYTHONIOENCODING... # If it ever comes back to bite us on the ass again, a cheap workaround would be to simply kill that barely useful print w/ the infile in it... env PYTHONIOENCODING="utf-8" ${PYTHON} ${LINKSS_BINDIR}/kfxmeta.py -c "${last_read_kfx}" "${LINKSS_TMPFS_CACHE}/" else # Use Kindle Unpack ${PYTHON} ${LINKSS_BINDIR}/kindleunpack.py "${last_read_file}" "${LINKSS_TMPFS_CACHE}/" fi IF last read book was a kfx book then: if the metadata sidecar file exists use it. If it doesnt', run the kfxmeta.py script on the kfx book itself. Yet, I don't really feel comfortable to modify the script to achieve the above. Last edited by Ruskie_it; 07-01-2017 at 10:14 AM. |
07-01-2017, 10:10 AM | #2545 |
Fanatic
Posts: 536
Karma: 1000000
Join Date: Dec 2011
Location: Rome, Italy
Device: Kindle PW5, Kindle PW4, Kindle 4 NT
|
Perhaps it should go like that:
Code:
# Check if the book was a KFX... if [ "${last_read_mime}" == "application/x-kfx-ebook" ] ; then # We want the metadata sidecar file, not the book itself... last_read_kfx="${last_read_file%.*}.sdr/assets/metadata.kfx" # Check that it exists... if [ ! -f "${last_read_kfx}" ] ; then last_read_kfx = last_read_file fi # Use KFX Meta. ... Anybody of good will can validate the syntax at least? |
07-02-2017, 04:33 PM | #2546 |
Connoisseur
Posts: 64
Karma: 10
Join Date: Aug 2008
Device: Hanlin 6.1, Kindle 3, Kindle Touch, KPW3, KOA3
|
PW3 screensaver not working
Hi, i got PW3 that i did the jailbreak ok with KUAL and the MrPI application.
and i installed the screensaver hack. seems to be doing ok )i saw the NiLuJe screensaver page but then i went to register again and lost the screensaver hack or at least its not working. its there at KUAL but it dosent work. yes i got the special offers kind, and went to amazon to disable then but funny thing it dosent appear the special offers there. any ideas? thank you ninki |
07-02-2017, 05:01 PM | #2547 |
Going Viral
Posts: 17,212
Karma: 18210809
Join Date: Feb 2012
Location: Central Texas
Device: No K1, PW2, KV, KOA
|
Yup - you did it.
You changed the registration which removes our application keys. Re-install the 'hotfix' package. With a customer-use firmware build, you will have to use MrPI. Since KUAL is not working until you re-install the keys . . . . You have to trigger MrPI using its main page, search bar, command, enter: ;log mrpi (the semi-colon is part of the command) after putting the 'hotfix' package in /mrpackages. Also be sure to install Python from NiLuJe's snapshots thread. https://www.mobileread.com/forums/sh...d.php?t=225030 If you intend to use "cover mode", then scroll up to find an archive that contains a fixed file to support all versions of kfx books. |
07-02-2017, 05:10 PM | #2548 |
Connoisseur
Posts: 64
Karma: 10
Join Date: Aug 2008
Device: Hanlin 6.1, Kindle 3, Kindle Touch, KPW3, KOA3
|
Do i have to do all over again or just from the hotfix wich will be step 6 (i know these steps by memory by now) Download and install the current 'hotfix' The current version is attached to its release post, see: Jail Break Survival Code and i was sooo happy....not more bitting my nails... |
07-02-2017, 05:22 PM | #2549 |
Going Viral
Posts: 17,212
Karma: 18210809
Join Date: Feb 2012
Location: Central Texas
Device: No K1, PW2, KV, KOA
|
Just do the installation of the 'hotfix' -
One of the things it fixes is the missing application keys that where erased by the change of registration. You have to put it in /mrpackages and then run MrPI using its search bar command. |
07-02-2017, 05:24 PM | #2550 | |
Connoisseur
Posts: 64
Karma: 10
Join Date: Aug 2008
Device: Hanlin 6.1, Kindle 3, Kindle Touch, KPW3, KOA3
|
Quote:
and will i loose registration again? if it screensaver over registration. screensaver wins but if i can have both ..... thanks ninki |
|
Tags |
kindle touch hacks, paperwhite, python, screensavers, touch |
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Problem installing Kindle ScreenSavers Hack | ratchetclank | Kindle Developer's Corner | 3 | 12-30-2015 09:59 PM |
Is it impossible to hack screensavers in K4 4.1? | nonfactor | Kindle Developer's Corner | 1 | 07-04-2012 07:17 PM |
Help! Used screensaver hack- now all collections gone and no screensavers!!! | kuklachica | Amazon Kindle | 1 | 01-16-2011 08:17 PM |
Is a hack necessary to add screensavers? | mldavis2 | Amazon Kindle | 4 | 10-29-2010 05:34 PM |
Hack for screensavers on Kindle 2 | KookyKathy | Introduce Yourself | 5 | 01-09-2010 11:16 PM |