| <<<Back 1 day (to 2013/04/11) | 2013/04/12 |
Robin_Watts | Morning tor8. | 09:37.23 |
tor8 | hey | 09:37.49 |
ghostbot | hello | 09:37.49 |
Robin_Watts | There are 5 commits on robin/master. | 09:37.50 |
| 2 are ready to go. | 09:38.06 |
| The third one is producing unexpected problems. | 09:38.16 |
| and the other two are still works in progress. | 09:38.25 |
tor8 | Robin_Watts: IN/OUT/ENTER/LEAVE could be left as comments? | 09:46.22 |
| feel free to push the two first | 09:46.43 |
Robin_Watts | tor8: I haven't finished with that commit yet. | 09:52.45 |
| In at least one version I had IN/OUT/ENTER/LEAVE as comments :) | 09:53.00 |
| We still do more copying than we really need to. | 09:53.13 |
shivshnkr | pdf reader using mupdf in android | 11:14.25 |
| how to do that? | 11:14.50 |
| plz help | 11:15.14 |
Robin_Watts | tor8: I see the problem with softmasks - if there is a background color set, then you have to ignore the BBox. | 12:14.00 |
| Well, it's not ignored. | 12:38.25 |
| We have to make the mask 'infinite', fill it with the BC and then draw the mask contents with the bbox as the clipping rectangle. | 12:39.08 |
tor8 | oh... that's ew | 12:43.57 |
Robin_Watts | tor8: Page 552 of the spec if you want to check my reading. | 12:44.58 |
| â¢If the subtype is Luminosity, the transparency group XObject G is composited with a fully opaque backdrop whose color is everywhere defined by the soft-mask dictionaryâs BC entry. The computed result color is then converted to a single-component luminosity value, and the transfer function TR is applied to this luminosity to produce the mask values. Outside the transparency groupâs... | 12:45.08 |
| ...bounding... | 12:45.10 |
| ...box, the mask value is derived by transforming the BC color to luminosity and applying the transfer function to the result. | 12:45.12 |
tor8 | certainly reads like it... | 12:46.29 |
Robin_Watts | testing now. turned out to be simple, I think (famous last words) | 12:48.45 |
Robin_Watts | peeks at kens last test results to guess the length of the bmcmp :) | 12:58.30 |
kens | Not too long | 12:58.42 |
| 78 diffs | 12:58.58 |
Robin_Watts | actually, bmpcmp is limited to 1000 jobs so can never be that long. | 12:59.03 |
kens | see done already :-) Now I just need to find out why some files still error out | 13:01.28 |
deleet | hey guys, has anyone tried to run MuPDF on Android x86? | 13:57.15 |
| I know you guys recently made changes to the ndk build to allow for non-arm aebis but has anyone actually tried it? | 13:58.19 |
Robin_Watts | deleet: I have not tried to run it on android x86. | 13:59.06 |
| I can't immediately see why it wouldn't work though. | 13:59.17 |
deleet | ok. I think I am going to give it a try this weekend | 13:59.40 |
Robin_Watts | mupdf runs just fine on other x86 platforms. | 14:00.01 |
deleet | not quite the same iirc | 14:00.14 |
Robin_Watts | deleet: Why not? | 14:00.28 |
deleet | well CouchDB also runs fine on x86 but I've had all sorts of problems packing it into Android | 14:01.38 |
| namely, segfaults | 14:01.43 |
Robin_Watts | Right, but does couchdb work on android arm and windows/linux x86 ? | 14:02.21 |
deleet | yes | 14:02.28 |
Robin_Watts | and it doesn't work on android x86? OK. That is odd. | 14:02.46 |
deleet | it *almost* does now, after 4 weeks of work lol | 14:03.00 |
Robin_Watts | but I don't know what they are doing in their android wrappers. | 14:03.03 |
deleet | :) seems to work ok | 14:03.42 |
| good job | 14:03.45 |
| it's being transliterated, just fyi (intel cpus have an arm->x86 transliterator) | 14:05.29 |
| but it does seem to work fairly wekl | 14:05.37 |
| *well | 14:05.39 |
Robin_Watts | deleet: Eh? | 14:05.47 |
| I don't believe that. | 14:05.57 |
deleet | 4-12 09:03:33.049 25333 25333 D dalvikvm: Added shared lib /data/data/com.artifex.mupdfdemo/lib/libmupdf.so[houdiniUsed] 0x42339350 | 14:06.16 |
| houdini is said transliterator | 14:06.23 |
Robin_Watts | We build an x86 verision of our native code. | 14:06.32 |
| at least we do if the correct settings are used for APP_ABI | 14:06.52 |
deleet | I didn't compile this app, just got it from the market | 14:07.24 |
| so I'm assuming it's the arm-only version | 14:07.30 |
Robin_Watts | deleet: right, yes. | 14:07.36 |
deleet | I'm testing on a motorola razr i btw | 14:08.02 |
henrys | chrisl:did feith sign the CLA? | 14:15.31 |
chrisl | henrys: John did, yes - Miles has it | 14:25.49 |
henrys | chrisl: okay great | 14:26.22 |
chrisl | henrys: I'm not totally sure about passing it on to Scott, though....... | 14:27.24 |
henrys | chrisl:why? | 14:28.22 |
chrisl | henrys: "thanks for your work, now how about paying us some money"? | 14:28.49 |
tor8 | Robin_Watts: two commits on tor/master | 14:29.25 |
chrisl | henrys: maybe we could ask Scott to put it in his diary for the second half of this year? | 14:29.48 |
Robin_Watts | tor8: OK. Does the vertical text one show up any diffs in cluster testing? | 14:31.39 |
tor8 | Robin_Watts: progressions on the sane tests | 14:32.00 |
| should check the cluster too I guess | 14:32.09 |
Robin_Watts | If only to make sure that the cluster has the sane tests in :) | 14:32.22 |
| but both look good. | 14:32.30 |
tor8 | gs/toolbin/localcluster/clusterpush.pl the latest script? | 14:32.58 |
deleet | who's brilliant idea was it to rename the app .. gah | 14:33.01 |
henrys | chrisl:I guess you can look at it that way, but I just don't see a problem without outlining the GPL rules and telling him he should get a support contract if he wants his problems to have special attention. | 14:34.04 |
Robin_Watts | tor8: it is. | 14:34.09 |
| deleet: Rename the classes? | 14:34.19 |
chrisl | henrys: fair enough. | 14:34.38 |
deleet | yeah | 14:35.06 |
Robin_Watts | Sadly some dodgy company was illegally shipping their app based on MuPDF on the app store, so while we've had them removed, we can't use com.artifex.mupdf any more. | 14:35.19 |
deleet | I remember this but Google should allow you to fix that | 14:35.53 |
Robin_Watts | Which is pretty shit of google if you ask me. But you can't fight BigData. | 14:35.58 |
| deleet: I wish it were true, but I tried twice. | 14:36.36 |
deleet | sigh .. you could have at least not changed it in the source and just exported the app to the market with the different package name | 14:37.51 |
| changing it in the source means it breaks everyone's existing libs if they update .. quite annyoing | 14:38.17 |
Robin_Watts | deleet: Ah, well, no one should be using it in their libs without changing the class name anyway :) | 14:38.40 |
deleet | poor souls, you have to rename the generated package in the gen/ folder for it to even build in eclipse | 14:40.56 |
| and change the manifest.xml | 14:41.10 |
| Robin_Watts: you're not using v8 as a shared lib for forms are you | 14:49.08 |
Robin_Watts | Static lib. | 14:49.21 |
deleet | would it be possible to change it to be shared without much consequence? | 14:49.36 |
Robin_Watts | or rather, we have it built as a static lib, and it becomes part of our shared lib when we link it. | 14:50.00 |
| deleet: It might be. It's not something I'm going to attempt. | 14:50.16 |
deleet | right but I don't know if I can access v8 through your shared lib, which is the goal | 14:50.37 |
Robin_Watts | I just wasted a significant portion of this week trying to get an armeabi build of v8 working. | 14:50.56 |
deleet | yeah I know | 14:51.04 |
| Google strikes again | 14:51.08 |
Robin_Watts | I have utterly failed. We currently only have armeabi-v7a. | 14:51.16 |
| If you can find a way to do it as a shared lib, then great, let us know how. | 14:51.30 |
| Even better, if you can get an armeabi version working, we'll buy you beer :) | 14:51.47 |
deleet | heh, that's something I will be looking into sometime next week | 14:51.59 |
| v8 on armaebi / v7a / x86 | 14:52.07 |
| hoping to replace spidermonkey | 14:52.24 |
Robin_Watts | henrys: Can we make getting a usable-with-mupdf armeabi v8 lib a bountiable bug ? | 14:52.53 |
henrys | Robin_Watts: yup but given your arm kung fu and attempt to get it working, I wouldn't be hopeful. | 14:54.01 |
Robin_Watts | henrys: If I had more time, I could try to figure out what the linker is doing, but it's too much effort for the return. Other people may have already gone through this pain though. | 14:55.42 |
deleet | oh so it's just linking problems? | 14:55.59 |
Robin_Watts | On the other hand a small financial inducement might be enough to get people that know moving. | 14:56.14 |
henrys | fine by me. | 14:56.17 |
Robin_Watts | deleet: The problem is with the shared library load. During the load process it dies with a SIGILL. | 14:56.40 |
| I believe that some setup code is being called which is calling some 'illegal under armeabi' instructions. | 14:57.17 |
| This might be that I'm building with the wrong options, or it might be a problem in v8, or it might even be a problem in the ndk (at least one version of the ndk was broken in this regard). | 14:57.55 |
deleet | weird, v7a isn't that different | 14:58.02 |
Robin_Watts | v7a uses vfp wheras armeabi uses soft-float. | 14:58.31 |
| hence any v7a code that uses FP running on armeabi will most probably cause SIGILL. | 14:58.54 |
deleet | that's the one thing yes | 14:59.12 |
| grr, why am I getting unsatisfied link on openfile .. I see the damn jni function right there | 15:00.19 |
deleet | facepalms | 15:00.44 |
Robin_Watts | tor8: oooh. having text in the softmask breaks lots of stuff! | 15:05.39 |
deleet | hm, you can't remove annotations once you've made them? | 15:19.31 |
paulgardiner | deleet: when in "add annotation" mode (i.e., when you can see the icons showing the differnt types of annotation running across the top menu), you can touch annotations to select them | 15:24.38 |
deleet | paulgardiner: I see, thanks | 15:25.43 |
tor8 | Robin_Watts: bmpcmp, I keep forgetting ... middle one is candidate? | 15:37.29 |
Robin_Watts | candidate, reference, diff. | 15:44.49 |
| CRD | 15:44.50 |
tor8 | crap. | 15:45.44 |
| then my fix broke more than it fixed :( | 15:45.53 |
| oh well. dinner. | 15:45.56 |
Robin_Watts | tor8: welcome to Robins wonderful world of softmasks. | 15:46.13 |
kens | paulgardiner: , TOR8, Robin_Watts : | 16:18.49 |
| http://stackoverflow.com/questions/15972558/password-authentication-with-mupdf-is-not-working | 16:18.49 |
Robin_Watts | kens: answered. | 16:22.37 |
kens | THANKS ROBIN | 16:22.51 |
| sorry caps lock | 16:23.00 |
Robin_Watts | you're welcome, and don't call me caps lock. | 16:23.11 |
malc__ | hah | 16:26.45 |
kens | OK off now, have a good weekend all | 16:46.52 |
ABJ | Hi | 17:51.24 |
ghostbot | what's up | 17:51.24 |
ABJ | I want to convert EPS RGB to CMYK | 17:51.44 |
| how can I do that? | 17:51.48 |
Robin_Watts | Is it thursday again? | 17:51.57 |
ABJ | seems to be Friday | 17:52.17 |
Robin_Watts | We had someone on here yesterday asking exactly the same question. | 17:52.18 |
| Short answer is, you can't do it. Or at least, not with gs. | 17:52.36 |
| How are you generating the eps? | 17:52.47 |
ABJ | we have a Java code that generates it | 17:52.59 |
Robin_Watts | Same as yesterday then :) | 17:53.08 |
ABJ | ya ... it must be the developer who is working on this project | 17:53.22 |
| client is pushing us to produce EPS in CMYK | 17:53.34 |
| there is no CMYK support in any language ... atleast not in java | 17:53.57 |
Robin_Watts | could be. We spent some time experimenting with epswrite, but after looking into it, it converts everything to rgb. | 17:54.02 |
ABJ | hmm ... ok | 17:54.48 |
| I know this is specifically to GS ... but do you have any suggestions what we can do ? | 17:55.16 |
| other alternates maybe ? | 17:55.27 |
| matlab has some print option and you can specify color mode and it can give you an EPS in cmyk ... so they claim | 17:56.03 |
Robin_Watts | You can generate the eps in cmyk to start with. | 17:56.26 |
| or you can possibly write a post converter. | 17:56.40 |
ABJ | can I manipulate an EPS file using GS ( I am new to this, so please excuse my ignorance) ... say I have an EPS file and I give some GS command to add a text with these CMYK colors to this location? | 17:58.18 |
Robin_Watts | ABJ: postscript is a programming language, so you could write a post converter in postscript. | 17:59.23 |
| I'm really doubtful that it would be easier to do it in PS than any other programming language :) | 17:59.41 |
| Going from RGB to CMYK naively is easy. | 18:00.01 |
| For given r,g,b (between 0 and 1) let k = min(r,g,b), then c = 1-r-k, m=1-g-k, y = 1-b-k | 18:01.11 |
| How feasible it is to do a post converter depends on how regular the output you get from your java lib is. | 18:01.55 |
| But, and this is the point we tried to make yesterday, if you do such a simplistic rgb -> cmyk conversion, you'll probably be doing no better than you would be just feeding the rgb version to the printer and having that automatically convert from rgb -> cmyk for you. | 18:02.55 |
ABJ | we have a background image ... and shapes,text and images placed on top of that | 18:03.02 |
Robin_Watts | Right. And your printer probably wants you to generate that in cmyk to start with in the hopes that the colors will be better. | 18:03.35 |
| but if you've gone to rgb already, then unless you are doing specific color management in the conversions, you've lost information. | 18:04.00 |
| hence either generate in CMYK to start with, or don't bother trying to get to CMYK later on. | 18:04.23 |
ABJ | hmm ... ok | 18:05.40 |
| Robin_Watts: thanks for all the help ... and yes once again ... :) | 18:07.04 |
Robin_Watts | np. | 18:07.11 |
kens | Has anyone heard from Miles re the next staff meeting yet ? We're only about 8 weeks out fomr the date he gave at the last one | 18:18.49 |
Robin_Watts | kens: Nope, not heard. | 18:21.28 |
| We should probably mail him to ask if we should book flights. | 18:21.46 |
kens | Yeah I think so, I like to get flights a bit earlier than this | 18:22.27 |
Robin_Watts | You want to, or should I ? | 18:22.48 |
kens | WOuld you mind ? | 18:24.17 |
Robin_Watts | not at all. I'll do it now. | 18:24.24 |
kens | Thanks Robin_Watts | 18:24.55 |
kens | signs off once more | 18:26.17 |
Robin_Watts | sent | 18:26.22 |
| hi ray_laptop | 18:35.57 |
| did you see my burblings a few days back about the valgrind fix you did in gximono.c ? | 18:36.20 |
| OK, that's the softmask stuff fixed. | 18:39.18 |
| in Miami? | 18:43.57 |
ray_laptop | Robin_Watts: burblings ??? | 19:10.10 |
Robin_Watts | aha. | 19:10.20 |
| Yeah, I reckon there is an overflow case you missed. | 19:10.31 |
| In gximono.c where it skips forwards 4 pixels at a time. | 19:10.51 |
| you only check it every 4th pixel. | 19:11.02 |
ray_laptop | Robin_Watts: (sorry -- I was working on an email RFC to tech). I particularly would like your review and henry's, but all are welcome to chime in | 19:11.06 |
Robin_Watts | ray_laptop: http://git.ghostscript.com/?p=user/robin/ghostpdl.git/.git;a=commitdiff;h=1a46d1fd5aa5857af4026f45124b4f3873b92fc1 | 19:11.56 |
ray_laptop | Robin_Watts: iirc, it only does that when there are 4 bytes per color. | 19:11.56 |
ray_laptop | goes to check | 19:12.02 |
Robin_Watts | No, this is gximono.c :) | 19:12.09 |
| It's peter trying to reduce the dda overhead; rather than doing a dda inc every pixel, he does it every 4th etc. | 19:12.49 |
| back in a mo. | 19:18.23 |
ABJ | Hello I am back ... with some more questions ... :) | 19:19.28 |
| this is related to EPS/PS | 19:19.36 |
| I downloaded an EPS file CMYK from the internet ... and I added the following lines to its end before the %%PageTrailer command | 19:20.29 |
| gsave 1 0 1 0.5 setcmykcolor % Set the color to dark green 236 236 moveto (Dark Green) show % Print some text grestore | 19:20.47 |
| it does not show the text ... :( | 19:20.56 |
ray_laptop | Robin_Watts: sorry - phone call | 19:30.04 |
| Robin_Watts: you are correct. Not sure why we don't trip over this more often. BTW, Bug 693795 is probably a duplicate of the one I fixed (same line 486) | 19:34.58 |
| marcos seems to have pretty arbitrary in picking a subject for the valgrind bugs. eg. bug 693835 is actually down in the SSE thresholding code | 19:38.44 |
Robin_Watts | The SSE thresholding stuff has lots of false positives. | 19:39.56 |
| He needs to rerun with PACIFY_VALGRIND to avoid them. | 19:40.08 |
| If you find stuff there, then don't worry. | 19:40.14 |
ray_laptop | Robin_Watts: that one's assigned to henrys (I think). I was just looking for other 'image_render_mono' cases that might be due to other paths in gximono.c (besides line 486) | 19:41.58 |
| Robin_Watts: did you get my "RFC" email ? | 19:46.12 |
| ABJ sure didn't wait around long :-( | 19:47.07 |
Robin_Watts | ray_laptop: I did. It seems reasonable on a first skim. | 19:49.02 |
| ray_laptop: Test from my change just came back clean (well, modulo a few files that I suspect are indetermisms). | 19:50.02 |
| If you're happy I'll push it. | 19:50.07 |
ray_laptop | ABJ (in case you check the logs) -- you probably want to do an 'initgraphics' to reset the CTM and the clipping path (after the gsave) and also you may need to actually select a font e.g. '/Helvetica 12 selectfont' | 19:50.15 |
| Robin_Watts: your change is a further fix to gximono.c ? | 19:50.46 |
Robin_Watts | it is. | 19:51.31 |
| ray_laptop: http://git.ghostscript.com/?p=user/robin/ghostpdl.git/.git;a=commitdiff;h=1a46d1fd5aa5857af4026f45124b4f3873b92fc1 | 19:51.39 |
ray_laptop | Robin_Watts: looks fine. Thanks | 19:51.54 |
| was there an actual test case or bug that showed this (the log message doesn't mention it)? | 19:52.38 |
Robin_Watts | ray_laptop: No. It was just from observation of your fixes, that there was a case missing. | 19:53.03 |
| I don't think you had test cases for all your fixes did you? | 19:53.17 |
ray_laptop | Robin_Watts: nope -- just the line 486. The others were just prophalactic | 19:54.02 |
| (or attempts at it) | 19:54.19 |
| Robin_Watts: thanks for fixing it, and thanks for glancing at my BGrender approach. BTW, any suggestions for a better param name ? | 19:56.20 |
| bbiaw. Lunch and work on finishing the enhancement. | 20:00.11 |
| Forward 1 day (to 2013/04/13)>>> | |