Did you know the mupdf backend allows you to open pdfs and epub? 99% of ebooks are either pdf epub or trivially colorlessly convert to epub. There is reasonable virtue in being able to use a single reader for all books.
I guess the other (quite complete) open source options are xpdf itself, muPDF (used in Sumatra PDF), pdfium (Chromium's PDF viewer) and pdf.js. I wonder how they compare between each others. Especially muPDF and Poppler.
"Please note that xpdf, and thus poppler, is licensed under the GPL,
not the LGPL. Consequently, any application using poppler must also
be licensed under the GPL." [1]
I hope they have a more forgiving licence. PDFium [2] is Apache License, but its Chromium dependency makes it harder to work with.
> "Consequently, any application using poppler must also be licensed under the GPL."
This is not generally true. If your application e.g. just uses a command line tool like pdftotext it can well have another license than GPL, even a proprietary license.
To clarify: when you say "just uses a command line tool" you mean "uses a program by starting it in the normal way in anther process and communicates via its human interface". No calling into its image.
I'm sure you know this, Rochus, but a naive read if your comment is not clear.
Right. Whether it's a human or a machine readable/operable interface is not relevant. The relevant part is "using a regular interface without linking", as you just do when you use their command line tools.
Poppler and its integration with Emacs via pdf-tools has dramatically improved my PDF reading and annotation powers. Since I started using it about 5 years ago, for the first time in over 30 years I prefer reading and annotating papers in digital form (as opposed to just storing and searching, which happened over 10 years ago). Recently I started using Amazon scribe as well, though I wish it was a more hackable hardware (without Amazon as an intermediate) so I could further optimize my workflows.
ffmpeg has a great many of its own decoders though, and I suspect that they will eventually be implementing their own replacement for libvpx eventually