Package: lfp-reader
<http://code.behnam.es/python-lfp-reader>Version 2.0Provides a Python library and command-line scripts to read Lytro LFP files.
There is also an enhanced viewer for Lytro LFP Picture files supporting
light-field picture refocusing and enhanced-depth-of-field/parallax view.This version supports picture files generated byLytro Desktop application version 2.0.Technically, there are two types of LFP files: Picture and Storage.  LFP
Storage files are used to store the data and configurations for Lytro cameras,
and LFP Picture (.lfp) files are used to store RAW and/or processed data for
Lytro light-field pictures.How to InstallDependenciesThis is a pure-Python package and should work on any platform, but some
functionalities depend on external Python and non-Python libraries.Python Imaging Library:PIL(http://pypi.python.org/pypi/PIL) orPillow(http://pypi.python.org/pypi/Pillow/).GStreamer Python:gstreamer,gst-pythonand thegst-plugins-uglyplugin set
(http://gstreamer.freedesktop.org/modules/).Install in UbuntuRun following commands in a terminal:sudo apt-get install libjpeg-dev python-gst0.10 gstreamer0.10-plugins-ugly python-pip

sudo pip install https://github.com/behnam/python-lfp-reader/tarball/masterLFP File FormatLFPis a new file format used byLytro CamerasandLytro Desktopapp for
RAW and Processed picture files, as well as storing camera software and
information.LFP Picturefiles have a.lfpextension, and among these, the name of
the processed picture files end in-stk.lfp, wherestkstands for
refocuse “stack”.  Embadding JPEG data with some additional refocus data, thestk.lfpfiles are designed to be used in the Lytro Desktop application and
on the web.LFP Storagefiles embed various data files, which are identified by a
pathname, i.e.C:\CALIB\WIFI_MAC_ADDR.TXT.LFP Viewerlfp-viewer.pyAn enhanced light-field picture viewer, suppringrefocusandenhanced depth-of-field/parallaxfeatures.You may provide the name of the Processed LFP Picture file in the
command-line.:./lfp-viewer.py samples/IMG_0001-stk.lfpCommand-line ScriptsThis package provides the following command-line scripts.lfp-file.pySub-command: infoPrints general information about any LFP file, including the metadata and
data chunks (their size and sha1 ids).:./lfp-file.py info samples/IMG_0003.lfpSub-command: exportExports metadata and data sections of a generic file into separate files.:./lfp-file.py export samples/IMG_0001.lfpSub-command: extractExtract the content of a data chunk to standard output, giving its SHA1 id.:./lfp-file.py extract samples/IMG_0001.lfp sha1-992ae2d9f755077e50de7b9b1357e873885b3382lfp-picture.pySub-command: infoProvides detailed information about the LFP Picture file.:./lfp_picture_info.py samples/IMG_0003.lfpTheFramesection provides the information about the RAW picture data.theRefocus-Stacksection tells you about the processed image data for
refocues feature, including the number of refocues images and the size of the
depth table.theParallax-Stacksection tells you about the processed image data for
EDoF/Parallax feature, including the number of parallax images.Sub-command: exporterExports raw, processed data and an all-in-focus image of the LFP Picture file
into separate files.:./lfp_picture_exporter.py samples/IMG_0001.lfp
./lfp_picture_exporter.py samples/IMG_0001-stk.lfplfp-storage.pySub-command: infoPrints general information about any LFP Storage file, including a list of
embedded data files (their path and size).:./lfp-storage.py info samples/IMG_0003.lfpSub-command: exportExports metadata and embedded files of an LFP Storage file into separate files.:./lfp-storage.py export samples/IMG_0001.lfpSub-command: extractExtract the content of an embedded file to standard output, giving its path.:./lfp-storage.py extract samples/IMG_0001.lfp "C:\\CALIB\\ACC.TXT"LFP Reader LibraryLFP Reader library (``lfp_reader``)provides direct reading access to all
data and metadata in any LFP files. For the processed LFP Picture files, you
can easily access the refocused and parallax data and the depth table. And for
LFP Storage files, you can access embedded files easily using their pathname.For more details, look at the module documentation.Code LicenseThis program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.Legal NoticeThis project is NOT affiliated with LYTRO, INC.  Lytro (R) is a trademark of
LYTRO, INC. <http://www.lytro.com/>This project uses GStreamer plugins for H.264 decoding, thus includes no
implementation of H.264 algorithms.Some of this work is based on Nirav Patel’slfptoolsproject and his
analysis on LFP file format.  <https://github.com/nrpatel/lfptools>Copyright (C) 2012-2013 Behnam Esfahbod. <http://behnam.es/>Please report any problems at <https://github.com/behnam/python-lfp-reader/issues>.