Data file formats: Difference between revisions

From OLPC
Jump to navigation Jump to search
m (not a stub these days)
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
This page is about the various file formats that the XO may encounter.
{{stub}}

==Introduction==
==Introduction==
Because the OLPC has limited storage and limited RAM, it is not a good idea to support every data format used on regular PCs. It makes more sense to use our PCs to convert data than to put that burden on the OLPC.
Because the OLPC has limited storage and limited RAM, it is not a good idea to support every data format used on regular PCs. It makes more sense to use our PCs to convert data than to put that burden on the OLPC.


The libraries and packages in the build support various file formats. Some of this support is exposed through the various [[Activities]] and the files they load.
The libraries and packages in the build support various file formats. Some of this support is exposed through the various [[Activities]] and the files they are able to load.
Most activities list the mime types they support in their <tt>activity.info</tt> file.
Most activities list the mime types they support in their <tt>activity.info</tt> file.
In a [[Terminal activity]],
In a [[Terminal activity]],
cat ~olpc/''Activity name''.activity/activity/activity.info
cat ~olpc/Activities/''Activity name''.activity/activity/activity.info
and there will be a mime_types line.
and there will be a mime_types line.


Line 15: Line 16:
''TODO: This should become a table of format - mime-type - activities supporting the format - a link to sample files for each file format.''
''TODO: This should become a table of format - mime-type - activities supporting the format - a link to sample files for each file format.''


* [[choosing image formats|Image formats]]
* [[Image file formats]]
** [[JPEG 2000]] (? does not work in Browse). [http://www.fnordware.com/j2k/relax.jp2 Sample file]
** [[JPEG 2000]] (? does not work in Browse). [http://www.fnordware.com/j2k/relax.jp2 Sample file]
** [[GIF]]
** [[GIF]]
Line 25: Line 26:


* [[Ebooks|eBook formats]]
* [[Ebooks|eBook formats]]
** HTML in [[Browse]]. Note Browse uses the [[XULRunner]] engine from Firefox, which supports advanced CSS 3 feature for nicer layout ([http://www.princexml.com/samples/slogans/slogans.html sample book] and [http://people.opera.com/howcome/2005/ala/sample.html sample chapter]).
** [[DJVU]] (coming some day to [[Read]], see <trac>6223</trac>). [http://djvu.org/docs/ Sample files]
** [[DJVU]] (coming some day to [[Read]], see <trac>6223</trac>). [http://djvu.org/docs/ Sample files]
** [[PDF]] (in [[Read]] via [[Evince]])
** [[PDF]] (in [[Read]] via [[Evince]])
* [[Multimedia]] formats:
** [[Browse]] supports advanced "HTML 5" capabilities such as the &lt;canvas&gt; tag for interactive rendering, though slowly (see [[HTML canvas performance]]).
** [[Music/formats|Sound formats]]
*** [[Ogg]] Vorbis (supported by the [[Totem plugin]] for [[Browse]]).[http://commons.wikimedia.org/wiki/Image:Tromboon-sample.ogg Sample file], also there are sample files in some OLPC builds in OLPC Library > media > music ([http://dev.laptop.org/pub/content/Library/music/bundle_index.html equivalent web version]. (The version of Browse in [[Release notes/8.2.0]] uses a XULRunner engine that does not yet support the &lt;audio&gt; and &lt;video&gt; tags.)
*** WAV (supported by the Totem plugin for Browse). [http://www.nch.com.au/acm/index.html Sample files]
*** the Totem and Gnash plugins for [[Browse]] claim to support other formats, enter <tt>about:plugins</tt> in the Browse location field.


* [[Music/formats|Sound formats]]
** Video formats
*** [[Ogg]] Theora (supported by the [[Totem plugin]] for [[Browse]])
** [[Ogg]] Vorbis (supported by the Totem plugin for [[Browse]]). [http://commons.wikimedia.org/wiki/Image:Tromboon-sample.ogg Sample file], also there are sample files in some OLPC builds in OLPC Library > media > music ([http://dev.laptop.org/pub/content/Library/music/bundle_index.html equivalent web version].
*** [http://en.wikipedia.org/wiki/DV DV] format ? (/usr/lib/libdv present)
** WAV (supported by the Totem plugin for Browse). [http://www.nch.com.au/acm/index.html Sample files]
** the Totem and Gnash plugins for [[Browse]] claim to support other formats, enter <tt>about:plugins</tt> in the Browse location field.

* Video formats
** [[Ogg]] Theora?
** [http://en.wikipedia.org/wiki/DV DV] format ? (/usr/lib/libdv present)


* General formats
* General formats
Line 45: Line 48:
* Compression formats
* Compression formats
** Uncompressed (this is listed because the JFFS2 filesystem on the OLPC will compress all compressable files)
** Uncompressed (this is listed because the JFFS2 filesystem on the OLPC will compress all compressable files)
** GNU Zip (supported by [[Python]]'s zlib module, and by [[Etoys]])
** GNU Zip (supported by [[Python]]'s zlib module, [[Etoys]], and the implementation of the jar: URL protocol in [[XULRunner]] that powers [[Browse]])


* OLPC-specific formats
* OLPC-specific formats
** [[Activities]] are made available to download as ".xo" [[bundles]]
** [[Content]] is a made available to download as ".xol" [[bundles]]
** [[Journal entry bundles]] (a zip file with the ".xoj" extension and mime type 'application/vnd.olpc-journal-entry')
** [[Journal entry bundles]] (a zip file with the ".xoj" extension and mime type 'application/vnd.olpc-journal-entry')


== See also ==
== See also ==
* [[:Category:mimetype]] and other mimetype category assignments of [[Activities]]
* [[:Category:mimetype]] and other mimetype category assignments of [[Activities]]
* [[Image file formats]]


[[Category:File formats]]
[[Category:File formats]]

Latest revision as of 04:46, 19 August 2009

This page is about the various file formats that the XO may encounter.

Introduction

Because the OLPC has limited storage and limited RAM, it is not a good idea to support every data format used on regular PCs. It makes more sense to use our PCs to convert data than to put that burden on the OLPC.

The libraries and packages in the build support various file formats. Some of this support is exposed through the various Activities and the files they are able to load. Most activities list the mime types they support in their activity.info file. In a Terminal activity,

 cat ~olpc/Activities/Activity name.activity/activity/activity.info

and there will be a mime_types line.

On some activities' wiki pages the infobox lists some of the mime types they support, e.g. Browse.

List of supported formats

TODO: This should become a table of format - mime-type - activities supporting the format - a link to sample files for each file format.

  • General formats
    • XML
    • SQLite (a lightweight relational database that is included in Python 2.5)
    • Gnu gdbm (supported by Python's dbm module)
    • Berkeley db version 4.3.0.1 (supported by Python's bsddb module)
  • Compression formats
    • Uncompressed (this is listed because the JFFS2 filesystem on the OLPC will compress all compressable files)
    • GNU Zip (supported by Python's zlib module, Etoys, and the implementation of the jar: URL protocol in XULRunner that powers Browse)

See also