Picture Transfer Protocol (PTP) is a protocol developed by the
International Imaging Industry Association to allow the transfer of images from
digital camera
A digital camera is a camera that captures photographs in digital memory. Most cameras produced today are digital, largely replacing those that capture images on photographic film. Digital cameras are now widely incorporated into mobile devic ...
s to computers and other peripheral devices without the need of additional
device driver
In computing, a device driver is a computer program that operates or controls a particular type of device that is attached to a computer or automaton. A driver provides a software interface to hardware devices, enabling operating systems and o ...
s. The protocol has been standardized as
ISO 15740.
It is further standardized for
USB by the
USB Implementers Forum as the ''still image capture device class''. USB is the default network transport media for PTP devices. USB PTP is a common alternative to the
USB mass-storage device class (USB MSC), as a digital camera connection protocol. Some cameras support both modes.
Description
PTP specifies a way of creating, transferring and manipulating ''objects'' which are typically photographic images such as a
JPEG
JPEG ( ) is a commonly used method of lossy compression for digital images, particularly for those images produced by digital photography. The degree of compression can be adjusted, allowing a selectable tradeoff between storage size and im ...
file. While it is common to think of the objects that PTP handle as
files
File or filing may refer to:
Mechanical tools and processes
* File (tool), a tool used to ''remove'' fine amounts of material from a workpiece
**Filing (metalworking), a material removal process in manufacturing
** Nail file, a tool used to gent ...
, they are abstract entities identified solely by a 32-bit object ID. These objects can however have ''parents'' and ''siblings'' so that a file-system–like view of device contents can be created.
History
Until the standardization of PTP, digital camera vendors used different proprietary protocols for controlling digital cameras and transferring images to computers and other host devices. The term "Picture Transfer Protocol" and the acronym "PTP" were both coined by Steve Mann, summarizing work on the creation of a Linux-friendly way of transferring pictures to and from home-made wearable computers, at a time when most cameras required the use of Microsoft Windows or Mac OS device drivers to transfer their pictures to a computer.
PTP was originally standardized as PIMA 15470 in 2000, while it was developed by the IT10 committee. Key contributors to the standard included Tim Looney and Tim Whitcher (Eastman Kodak Company) and Eran Steinberg (Fotonation).
Storage
PTP does not specify a way for objects to be stored – it is a communication protocol. Nor does it specify a transport layer. However, it is designed to support existing standards, such as
Exif
Exchangeable image file format (officially Exif, according to JEIDA/JEITA/CIPA specifications) is a standard that specifies formats for images, sound, and ancillary tags used by digital cameras (including smartphones), scanners and other syste ...
,
TIFF/EP,
DCF, and
DPOF, and is commonly implemented over the
USB and
FireWire
IEEE 1394 is an interface standard for a serial bus for high-speed communications and isochronous real-time data transfer. It was developed in the late 1980s and early 1990s by Apple in cooperation with a number of companies, primarily Sony a ...
transport layers.
Images on digital cameras are generally stored as files on a
mass storage device, such as a
memory card
A memory card is an electronic data storage device used for storing digital information, typically using flash memory. These are commonly used in digital portable electronic devices. They allow adding memory to such devices using a card in a soc ...
, which is formatted with a file system, most commonly
FAT12
File Allocation Table (FAT) is a file system developed for personal computers. Originally developed in 1977 for use on floppy disks, it was adapted for use on hard disks and other devices. It is often supported for compatibility reasons by ...
,
FAT16
File Allocation Table (FAT) is a file system developed for personal computers. Originally developed in 1977 for use on floppy disks, it was adapted for use on hard disks and other devices. It is often supported for compatibility reasons by c ...
or
FAT32
File Allocation Table (FAT) is a file system developed for personal computers. Originally developed in 1977 for use on floppy disks, it was adapted for use on hard disks and other devices. It is often supported for compatibility reasons by ...
, which may be laid out as per the
Design rule for Camera File system
Design rule for Camera File system (DCF) is a JEITA specification (number CP-3461) which defines a file system for digital cameras, including the directory structure, file naming method, character set, file format, and metadata format. It is cur ...
(DCF) specification. But none of these are required as PTP abstracts from the underlying representation.
By contrast, if a camera is mounted via
USB MSC, the physical file system and layout are exposed to the user.
Device control
Many modern digital cameras from Canon and Nikon can be controlled via PTP from a USB host enabled computing device (Smartphone, PC or
Arduino
Arduino () is an open-source hardware and software company, project, and user community that designs and manufactures single-board microcontrollers and microcontroller kits for building digital devices. Its hardware products are licensed und ...
for example). As is the norm for PTP, the communication takes place over a USB connection. When interacting with the camera in this manner, it is expected that the
USB endpoints are in (synchronous) Bulk Transfer Mode, for getting/setting virtually all the camera's features/properties (such as ISO, Aperture, Shutter speed and focus). Events raised by the camera, in response to specific actions performed by the host device, are sent back to the host via the USB asynchronous Interrupt endpoint.
In addition to changing the camera's settings and operating mode, it is possible to receive a through-the-lens view using "Live View". As described above, the storage objects of the camera's memory cards can be manipulated too.
By controlling a camera in this way it is possible to augment its capabilities. For example, if the controlling software was running on a Smartphone with
GPS
The Global Positioning System (GPS), originally Navstar GPS, is a satellite-based radionavigation system owned by the United States government and operated by the United States Space Force. It is one of the global navigation satellite sy ...
functionality, it would be possible to add the GPS coordinates to an image's
Exif
Exchangeable image file format (officially Exif, according to JEIDA/JEITA/CIPA specifications) is a standard that specifies formats for images, sound, and ancillary tags used by digital cameras (including smartphones), scanners and other syste ...
data, at the time of image capture - even if the camera itself had no GPS functionality.
Extensions
A number of protocols have been developed that extend PTP. PTP/IP, developed by
FotoNation
Xperi Holding Corporation (formerly Tessera Holding Corporation) is an American technology company that licenses technology and intellectual property in areas such as mobile computing, communications, memory and data storage, and three-dimensio ...
and first implemented in a round of
Wi-Fi
Wi-Fi () is a family of wireless network protocols, based on the IEEE 802.11 family of standards, which are commonly used for local area networking of devices and Internet access, allowing nearby digital devices to exchange data by radio w ...
digital cameras by
Nikon
(, ; ), also known just as Nikon, is a Japanese multinational corporation headquartered in Tokyo, Japan, specializing in optics and imaging products. The companies held by Nikon form the Nikon Group.
Nikon's products include cameras, camera ...
,
Canon, and
Eastman Kodak
The Eastman Kodak Company (referred to simply as Kodak ) is an American public company that produces various products related to its historic basis in analogue photography. The company is headquartered in Rochester, New York, and is incorpor ...
, allows data transfer over any
IP-based network.
Media Transfer Protocol
The Media Transfer Protocol (MTP) is an extension to the Picture Transfer Protocol (PTP) communications protocol that allows media files to be transferred automatically to and from portable devices. Whereas PTP was designed for downloading phot ...
(MTP), developed by
Microsoft
Microsoft Corporation is an American multinational corporation, multinational technology company, technology corporation producing Software, computer software, consumer electronics, personal computers, and related services headquartered at th ...
, allows for transfer over wireless or wired networks based in part on FotoNation's PTP/IP, but also allows users to transfer other media aside from pictures, as well as for tagging objects with extended
metadata (such as title, artist and similar).
Operating system support
Microsoft Windows has supported PTP from
Windows ME
Windows Millennium Edition, or Windows Me (marketed with the pronunciation of the pronoun "me"), is an operating system developed by Microsoft as part of its Windows 9x family of Microsoft Windows operating systems. It is the successor to Win ...
onwards (excluding
Windows CE
Windows Embedded Compact, formerly Windows Embedded CE, Windows Powered and Windows CE, is an operating system subfamily developed by Microsoft as part of its Windows Embedded family of products.
Unlike Windows Embedded Standard, which is ba ...
).
Microsoft
Microsoft Corporation is an American multinational corporation, multinational technology company, technology corporation producing Software, computer software, consumer electronics, personal computers, and related services headquartered at th ...
implements PTP on Windows through
Windows Image Acquisition. A disadvantage of PTP on Windows as compared to USB mass storage is that Windows does not assign
drive letters to PTP devices, so image files on them cannot be manipulated by scripts or standard Windows programs, only by Windows Explorer or applications with specially written PTP support. Also, Windows Explorer does not display file modification timestamps (though these are available via the file Properties popup).
PTP on
Linux
Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which i ...
and other
free
Free may refer to:
Concept
* Freedom, having the ability to do something, without having to obey anyone/anything
* Freethought, a position that beliefs should be formed only on the basis of logic, reason, and empiricism
* Emancipate, to procur ...
and
open-source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
operating systems is supported by a number of libraries, such as
libgphoto an
libptp used by applications such as
digiKam and
F-Spot. As on Microsoft Windows there is no native support on Linux, but by means of
GVfs the devices can easily be mounted and made available to applications that use standard
POSIX
The Portable Operating System Interface (POSIX) is a family of standards specified by the IEEE Computer Society for maintaining compatibility between operating systems. POSIX defines both the system- and user-level application programming inte ...
commands and library functions.
Android
Android may refer to:
Science and technology
* Android (robot), a humanoid robot or synthetic organism designed to imitate a human
* Android (operating system), Google's mobile operating system
** Bugdroid, a Google mascot sometimes referred to ...
has PTP support, although as with
MTP, a limitation is that when transferring photos from one's computer to the Android device, file timestamps are replaced with the time of the copy (with copies in the other direction, from device to computer, timestamps are preserved).
The
Poseidon
Poseidon (; grc-gre, Ποσειδῶν) was one of the Twelve Olympians in ancient Greek religion and myth, god of the sea, storms, earthquakes and horses.Burkert 1985pp. 136–139 In pre-Olympian Bronze Age Greece, he was venerated as a ch ...
USB stack on
Amiga
Amiga is a family of personal computers introduced by Commodore International, Commodore in 1985. The original model is one of a number of mid-1980s computers with 16- or 32-bit processors, 256 KB or more of RAM, mouse-based GUIs, and sign ...
includes ''ptp.class''.
Version 1.1
PTP v1.1 (ISO15740:2008) is an update to PTP published by
ISO.
This updated version of PTP is fully backward-compatible with PTP v1.0, and offers optional performance, compatibility, and feature enhancements including:
* A mechanism for handling streaming content
* A mechanism to support multiple vendor extension sets
* Support for objects larger than the 4GiB size limit set by PTP v1.0, by requiring 64 bits (8 bytes) for object size
* Support for retrieval of ''ObjectHandles'' in enumerated chunks. This may reduce long response times for some devices that possess large numbers of objects
* Support for arbitrary resizing prior to image transmission (responder scaling). In PTP v1.0, image sizes might be requested in full-resolution or thumbnail size only
* Support for arrays of datasets. This can be used to reduce the number of required transactions necessary for device characterization from being a function of the number of objects on the device down to one
* A fast file characterization operation that exploits dataset arrays to request, in a single transaction, only the minimum data required to characterize a typical filesystem
* A new standard ''ObjectFormatCode'' to support the
Digital Negative (DNG) file format
Drawbacks
* Renaming file objects directly is not possible without copying or rewriting them
* Modification of file contents is not supported (the file needs to be re-transferred completely)
* Some drawbacks are OS-specific — see
See also
*
Design rule for Camera File system
Design rule for Camera File system (DCF) is a JEITA specification (number CP-3461) which defines a file system for digital cameras, including the directory structure, file naming method, character set, file format, and metadata format. It is cur ...
*
PictBridge
PictBridge is a historical computing industry standard introduced in 2003 from the Camera & Imaging Products Association (CIPA) for direct printing. It allows images to be printed directly from digital cameras to a printer, without having to co ...
References
{{reflist
External links
PTP transport over USB specifications USB.org.
Microsoft and FotoNation Team to Support the Media Transfer Protocol For Wireless Digital Still Cameras Microsoft News Center.
Free software with PTP support
Digital photography
Network protocols