Protokół przesyłania obrazu

Protokół przesyłania obrazu
Skrót PTP
Status Opublikowany
Rok się rozpoczął 2000 ; 23 lata temu ( 2000 )
Ostatnia wersja
ISO 15740:2013 2013 ; 10 lat temu ( 2013 )
Organizacja I3A , ISO
Komisja IT10, ISO/TC 42
Autorski Tim Looney i Tim Whitcher ( Eastman Kodak Company ), Eran Steinberg ( Fotonation ) i inni
Powiązane standardy PIMA 15470
Domena Fotografia cyfrowa , Protokoły sieciowe
Strona internetowa www .iso .org /standard /63602 .html

Picture Transfer Protocol ( PTP ) to protokół opracowany przez Międzynarodowe Stowarzyszenie Przemysłu Obrazowania w celu umożliwienia przesyłania obrazów z aparatów cyfrowych do komputerów i innych urządzeń peryferyjnych bez konieczności stosowania dodatkowych sterowników urządzeń . Protokół został znormalizowany zgodnie z normą ISO 15740.

Jest on dalej standaryzowany dla USB przez Forum Implementatorów USB jako klasa urządzeń do przechwytywania nieruchomych obrazów . USB jest domyślnym sieciowym nośnikiem transportu dla urządzeń PTP. USB PTP jest powszechną alternatywą dla klasy urządzeń pamięci masowej USB (USB MSC) jako protokół połączenia aparatu cyfrowego. Niektóre aparaty obsługują oba tryby.

Opis

PTP określa sposób tworzenia, przesyłania i manipulowania obiektami , które są typowo fotograficznymi obrazami, takimi jak plik JPEG . Choć obiekty obsługiwane przez PTP często traktuje się jako pliki , są to abstrakcyjne byty identyfikowane wyłącznie na podstawie 32-bitowego identyfikatora obiektu. Obiekty te mogą jednak mieć rodziców i rodzeństwo , dzięki czemu można utworzyć widok zawartości urządzenia przypominający system plików.

Historia

Do czasu standaryzacji protokołu PTP dostawcy aparatów cyfrowych stosowali różne zastrzeżone protokoły do ​​sterowania aparatami cyfrowymi i przesyłania obrazów do komputerów i innych urządzeń hosta. Termin „Picture Transfer Protocol” i akronim „PTP” zostały ukute przez Steve’a Manna w celu podsumowania prac nad stworzeniem przyjaznego dla Linuksa sposobu przesyłania zdjęć do i z domowych komputerów przenośnych w czasach, gdy większość aparatów wymagała wykorzystanie sterowników urządzeń Microsoft Windows lub Mac OS do przesyłania zdjęć do komputera.

PTP został pierwotnie znormalizowany jako PIMA 15470 w 2000 r., podczas gdy został opracowany przez komitet IT10. Do kluczowych autorów standardu należeli Tim Looney i Tim Whitcher ( Eastman Kodak Company ) oraz Eran Steinberg ( Fotonation ).

Składowanie

PTP nie określa sposobu przechowywania obiektów – jest to protokół komunikacyjny. Nie określa też warstwy transportowej. Został jednak zaprojektowany do obsługi istniejących standardów, takich jak Exif , TIFF/EP , DCF i DPOF i jest powszechnie wdrażany w warstwach transportowych USB i FireWire .

Obrazy w aparatach cyfrowych są zazwyczaj przechowywane jako pliki na urządzeniu pamięci masowej , takim jak karta pamięci , sformatowanym w systemie plików, najczęściej FAT12 , FAT16 lub FAT32 , który może być ułożony zgodnie z zasadami projektowania plików aparatu specyfikacja systemu (DCF). Jednak żaden z nich nie jest wymagany, ponieważ PTP czerpie z podstawowej reprezentacji.

Z drugiej strony, jeśli kamera jest zamontowana za pośrednictwem USB MSC , fizyczny system plików i układ są widoczne dla użytkownika.

Kontrola urządzenia

Wiele nowoczesnych aparatów cyfrowych firm Canon i Nikon można sterować za pośrednictwem protokołu PTP z urządzenia komputerowego obsługującego host USB ( na przykład smartfon, komputer PC lub Arduino ). Jak zwykle w przypadku protokołu PTP, komunikacja odbywa się za pośrednictwem połączenia USB. Podczas interakcji z kamerą w ten sposób oczekuje się, że punkty końcowe USB znajdują się w (synchronicznym) trybie przesyłania zbiorczego, umożliwiającym uzyskanie/ustawienie praktycznie wszystkich funkcji/właściwości aparatu (takich jak czułość ISO, przysłona, czas otwarcia migawki i ostrość). Zdarzenia wywoływane przez kamerę, w odpowiedzi na określone działania wykonywane przez urządzenie hosta, są wysyłane z powrotem do hosta za pośrednictwem asynchronicznego punktu końcowego przerwania USB.

Oprócz zmiany ustawień aparatu i trybu pracy istnieje możliwość odbioru widoku przez obiektyw za pomocą funkcji „Live View”. Jak opisano powyżej, obiektami przechowywanymi na kartach pamięci aparatu również można manipulować.

Sterowanie kamerą w ten sposób pozwala zwiększyć jej możliwości. Na przykład, jeśli oprogramowanie sterujące działało na smartfonie wyposażonym w GPS , możliwe byłoby dodanie współrzędnych GPS do danych Exif obrazu w momencie jego przechwytywania – nawet jeśli sam aparat nie posiada funkcji GPS.

Rozszerzenia

Opracowano wiele protokołów rozszerzających protokół PTP. PTP/IP , opracowany przez FotoNation i po raz pierwszy wdrożony w szeregu aparatów cyfrowych Wi-Fi firm Nikon , Canon i Eastman Kodak , umożliwia przesyłanie danych przez dowolną sieć opartą na protokole IP .

Protokół Media Transfer Protocol (MTP), opracowany przez firmę Microsoft , umożliwia przesyłanie w sieciach bezprzewodowych lub przewodowych w oparciu częściowo o PTP/IP FotoNation, ale umożliwia także użytkownikom przesyłanie innych multimediów oprócz zdjęć, a także oznaczanie obiektów rozszerzonymi metadanymi ( takie jak tytuł, wykonawca i podobne).

Obsługa systemu operacyjnego

Microsoft Windows obsługuje PTP od Windows ME i nowszych (z wyjątkiem Windows CE ). Firma Microsoft wdraża PTP w systemie Windows poprzez pozyskiwanie obrazu systemu Windows . Wadą protokołu PTP w systemie Windows w porównaniu z pamięcią masową USB jest to, że system Windows nie przypisuje liter dysków do urządzeń PTP, więc plikami obrazów na nich nie można manipulować za pomocą skryptów ani standardowych programów Windows, jedynie za pomocą Eksploratora Windows lub aplikacji ze specjalnie napisaną obsługą PTP. Ponadto Eksplorator Windows nie wyświetla znaczników czasu modyfikacji plików (chociaż są one dostępne w wyskakującym okienku Właściwości pliku).

PTP w systemie Linux i innych bezpłatnych systemach operacyjnych typu open source jest obsługiwany przez wiele bibliotek, takich jak libgphoto i libptp , używanych przez aplikacje takie jak digiKam i F-Spot . [ potrzebne źródło ] Podobnie jak w systemie Microsoft Windows, nie ma natywnej obsługi systemu Linux, ale za pomocą GVfs urządzenia można łatwo montować i udostępniać aplikacjom korzystającym ze standardowych poleceń POSIX i funkcji bibliotecznych.

Android obsługuje PTP, chociaż podobnie jak w przypadku protokołu MTP ograniczeniem jest to, że podczas przesyłania zdjęć z komputera na urządzenie z systemem Android znaczniki czasu plików są zastępowane czasem kopii (w przypadku kopii w odwrotnym kierunku, z urządzenia na komputer, znaczniki czasu są zachowane).

Stos USB Poseidon na Amidze zawiera ptp.class . [ wymagany cytat ]

Wersja 1.1

PTP v1.1 (ISO 15740:2008) to aktualizacja PTP opublikowana przez ISO .

Ta zaktualizowana wersja PTP jest w pełni kompatybilna wstecz z PTP v1.0 i oferuje opcjonalne ulepszenia wydajności, kompatybilności i funkcji, w tym:

  • Mechanizm obsługi treści przesyłanych strumieniowo
  • Mechanizm obsługujący zestawy rozszerzeń wielu dostawców
  • Obsługa obiektów większych niż limit rozmiaru 4GiB ustawiony przez PTP v1.0, wymagając 64 bitów (8 bajtów) dla rozmiaru obiektu
  • Obsługa pobierania uchwytów obiektów w wyliczonych fragmentach. Może to skrócić długi czas reakcji w przypadku niektórych urządzeń zawierających dużą liczbę obiektów
  • Obsługa dowolnej zmiany rozmiaru przed transmisją obrazu (skalowanie respondenta). W PTP v1.0 żądane mogą być rozmiary obrazów tylko w pełnej rozdzielczości lub w rozmiarze miniatury
  • Obsługa tablic zestawów danych. Można to wykorzystać do zmniejszenia liczby wymaganych transakcji niezbędnych do scharakteryzowania urządzenia z funkcji liczby obiektów na urządzeniu do jednego
  • Szybka operacja charakteryzowania plików, która wykorzystuje tablice zbiorów danych do zażądania w pojedynczej transakcji tylko minimalnych danych wymaganych do scharakteryzowania typowego systemu plików
  • Nowy standard ObjectFormatCode obsługujący format plików Digital Negative (DNG).

Wady

  • Bezpośrednia zmiana nazwy obiektów plikowych nie jest możliwa bez ich kopiowania lub przepisywania
  • Modyfikacja zawartości pliku nie jest obsługiwana (plik wymaga całkowitego ponownego przesłania)
  • Niektóre wady zależą od systemu operacyjnego — patrz § Obsługa systemu operacyjnego

Zobacz też

Linki zewnętrzne