To download this article click here
The CIPA standard "CIPA DC-001" (Hereafter "PictBridge") provides a direct connect solution for image input devices and output devices by standardising the application services for these devices. The first release of PictBridge focuses on the direct print services between a digital still camera (Hereafter "DSC") and a printer. This "WhitePaper" explains the background, the outline, and the features of PictBridge.
The popularity of DSCs in recent years has enabled consumers to use and enjoy digital imaging technology. However, it is not always easy for the general consumer to obtain prints from their DSC. PC familiarity and knowledge as well as the complexity of photo application software can often be a barrier for many of these consumers. There are some examples of camera to printer direct connect solutions on the market by some companies but these are limited to only a few specific models of DSCs and printers. In addition, most of these solutions are limited to only work within a few models of a single manufacturer. None of these proprietary solutions are widespread as a standard solution. PictBridge is a smart way to enable direct printing from any PictBridge compliant DSC to any PictBridge compliant printer, regardless of the manufacturer.
The main features of PictBridge are:
- The ability to quickly print the image displayed by interacting with the DSC
- Provide a way for customers to have a very easy to use solution
- A standard that will provide for wide interoperability
- A vender can easily adopt PictBridge
- The specification is independent of the physical interface or transport layer protocol
- Allow for future enhancements that will contribute continuing to build a digital photo culture
(1) Any DSC <--> Any Printer
Direct printing is enabled between any PictBridge compliant DSC and any PictBridgecompliant printer regardless of the manufacturer.
(2) How versatile and attractive printing for DSC users is achieved
The PictBridge compliant system provides for the following features
- Print an image displayed on the DSC
- Print two or more images selected from the display on the DSC
- Automatic printing of images using the DPOF specification
- Index print of all images
- Print all images
Additional features using the advanced print setup
- Print part of image by specifying a clip area
- Multiple copies of a single image
- Print images with a date stamp
- Specify the exact size of a print
Printer status information displayed on the DSC
- Connection establishment
- Printer error
- Printing progress
- End of print job
- Cable can be safely disconnected
Additional print job control
- Discontinue a print job
- Restart from recoverable errors
5.PictBridge System Architecture
(1) Connection of PictBridge compliant devices
In PictBridge, the DSC is connected directly to a printer via a USB cable as shown in Fig.2. The DSC operates as a USB "Device" and the printer works as a USB "Host".
(DSCPrinterUSB I/FUSB DeviceUSB Host
(2) Communication protocol architecture
Fig.3 shows the communication protocol architecture. In PictBridge, USB is used as a physical layer, and PTP is used as the transport layer protocol. The newly defined DPS layer is located between PTP and the DPS application layer. The DPS layer translates DPS operations and events into PTP operations and events, and vice versa. PictBridge defines the interface between the DPS layer and the DPS application layer. PictBridge does not make any changes or additions to the standard transport layer and below.
(3) Software components
As shown in Fig.3, PictBridge defines several software components, which include a print Server/Client and a storage Server/Client at the DPS application layer, and DPS discovery at the DPS layer. In PictBridge the storage client is indirectly initiated by user operations and therefore is not visible to the user. The storage client requests image data to the storage server when the printer executes a print job upon the request of the DSC. The operations and events of the DPS applications are executed based on a Server/Client model. A DPS Operation consists of a request from a client to a server and followed by a response from the server to the client. A DPS Event consists of a request from a server to the client followed by a response from the client to the server.
(4) Communication flow
Fig.4 shows an example of DPS Job flow between PictBridge devices. This figure shows a sequential diagram for a single page print job between PictBridge compliant devices.
The DPS discovery function confirms if each device supports PictBridge. If PictBridge is available in each device then control is transferred to the DPS applications. In PictBridge, after the USB cable is connected, DPS discovery is initiated after PTP communication is established.
After DPS applications start, a DPS_ConfigurePrintService operation is issued. The DPS_ConfigurePrintService operation communicates which services each device provides. The DSC notifies the printer that it has the storage server function and the print client function. The printer notifies the DSC that it has the print server function and the storage client function. Using this negotiation, connection is established between the server and the client for print and storage respectively. All DPS operations and events are executed between these client and server combinations. PictBridge defines a scenario where the user creates the intended print job on the DSC and then sends a print job to the print server, which then pulls the image files from the storage server on the DSC.
The DSC inquires about the capability of the printer by issuing a DPS_GetCapability operation. The capability returned from the printer will direct the UI features displayed on the DSC. The user can then select the options they want from the features presented and initiate their print job.
When the user initiates a print, the DSC issues a DPS_StartJob operation. This sends the printer the information it needs to print what the user requested.
When the printer begins to process a job it first issues a DPS_GetFileInfo operation. This operation retrieves details of the image file. This information is used to get the actual image data by a DPS_GetFile operation. The image data is transferred and printed.
After printing is finished the printer notifies the DSC of the result of the print job by issuing a DPS_NotifyDeviceStatus event.
Step 1) through 3) are used to discover and configure PictBridge devices before the first print job. Steps 4) through 6) are used whenever a print job is initiated.
6. PictBridge logo certification
"PictBridge" is a promotion name of this standard. CIPA authorizes products to use the name and the logo of PictBridge, if the products developed using PictBridge specification and meet all the conditions that are specified in the PictBridge logo certification guideline document. CIPA will authorize a third party of "PictBridge" logo certification (Hereafter "the third party"). Please refer to the document for the detail.
A general flow of the logo citification is as follows.
- Purchase "Logo Compliance Test Suite" approved by CIPA
- Test a product by using the tool and confirm the product passing all the test case specified by the tool.
- Submit an application to the third party and get an approval from CIPA.
- Pay the following fee to the third party.
1. Logo license fee
2. CIPA handling fee
3. The third party handling fee
7. Information on PictBridge
In order to get the PictBridge specification, guideline documents and further information of PictBridge are available at the following web page: http://www.cipa.jp/pictbridge/
References[USB] Universal Serial Bus Specification Revision 2.0, 27 April 2000.[PTP] Picture Transfer Protocol for Digital Still Photography Devices,PIMA 15740:2000,5 July 2000
Published by Camera Imaging Products Association.