Re: Thumbnailing service project; opinions, suggestions?



On Mon, 2009-10-19 at 21:35 +0200, Mark wrote:

> For Jannis and Philip,
> Nice tumbler talk but could you two make suggestions for my project? ^_^

As I already wrote:

A PDF thumbnailer that implements the 'specialized thumbnailer' spec
that doesn't need to link with gdkpixbuf.

I think that matches your project description, it fits in the architec-
ture of Tumbler (and if done right we could make this a project that
many people will use and install alongside Tumbler). 

It's much more simple than developing an entire thumbnailer, as you only
need to implement one D-Bus method called "Create". 

- You'll have to work with a queue handling the thumbnailing, as Create
  isn't allowed to block, which means that GThreadQueue could for
  example be used (which means that your work will involve dealing with
  threads).

- You'll need to deal with DBus .service registration

- You'll need to code against a specification (which is in general
  harder than doing your own thing - but schools like that)

- It's a thumbnailer service and it could work standalone (which means
  that it fits your requirements for school)

- You wont have the NIH syndrome. Nobody has yet made a PDF thumbnailer
  that implements the 'specialized thumbnailer' spec

- It sounds doable within 8 weeks

I suggest that you set up a gitorious repository, start with making a
skeleton out of the maemo-video-thumbnailer project, adapt all the files
that you read about in the specification, hollow out the methods, and
then implement them for PDF files instead of video (GStreamer).

You can check out libpoppler for dealing with PDF files. Poppler can be
compiled not to use gdkpixbuf, but instead cairo as far as I know.

I strongly advise to do that.


Anyway, it's up to you.

Also, it wont be about free-choice unless your thumbnailer implements
the specification. Each new home-brew specification that isn't agreed by
multiple people adds API clutter to the platform.

ps. Specialized thumbnailers spec:

http://live.gnome.org/ThumbnailerSpec#head-83f1d6d2084e75742104681ad94c29b8d0dd2052

ps. Note that we might make minor changes to this spec in the following
days. Among them might be the optional Cancel() method and a parameter
to the Create() method called "scheduler" (which you can also ignore,
for now).


-- 
Philip Van Hoof, freelance software developer
home: me at pvanhoof dot be 
gnome: pvanhoof at gnome dot org 
http://pvanhoof.be/blog
http://codeminded.be



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]