Metadaten
Viele Dateien enthalten interessante Informationen über ihren Inhalt. Diese werden als „Metadaten“ bezeichnet. Transloadit extrahiert diese Metadaten automatisch für alle hochgeladenen, importierten und verarbeiteten Dateien.
Jede Datei enthält mindestens Informationen wie die folgenden:
{
"id": "ae52b7f8c1b3426e8c29ea0a9daf8306",
"name": "straw-apple.jpg",
"basename": "straw-apple",
"ext": "jpg",
"size": 92230,
"mime": "image/jpeg",
"type": "image",
"field": "test_file",
"url": "http://tmp.maynard.transloadit.com/upload/1324a798a99fce7f5f8289a95a74f02b.jpg",
"original_id": "4af24fb2595f44809f3adc2f77bc9bfa",
"meta": {
// …
}
}
Welche Informationen wir extrahieren können, hängt von der Mediendatei, ihrem Typ und auch davon ab, wer sie erstellt hat. Wenn sie mit einem
iPhone erstellt wurde, enthält sie wahrscheinlich latitude zur geografischen Positionsbestimmung. Zu den häufiger vorkommenden Schlüsseln gehören
height und duration.
Um zu sehen, welche Informationen wir aus den Dateien extrahieren können, die Sie uns übermitteln, können Sie eine unserer Demos (English) ausprobieren und unsere Antwort prüfen, nachdem Sie dort eine Datei hochgeladen haben.
id-
Eine zufällige und eindeutige ID, die Transloadit intern zur Nachverfolgung der Datei verwendet.
name-
Der Name der Datei. Transloadit ändert die für dieses Feld verwendete Dateiendung, wenn die Datei bei der Verarbeitung in ein anderes Format umgewandelt wird.
basename-
Der Name der Datei ohne Dateiendung.
ext-
Die Dateiendung. Kann
nullsein, wenn keine Dateiendung ermittelt wurde, oder eine leere Zeichenfolge bei einem Namen ohne Dateiendung. size-
Die Größe der Datei in Bytes.
mime-
Der ermittelte MIME-Typ dieser Datei.
type-
Eine abstrakte Kategorie, die die Datei beschreibt. Bekannte Werte sind
"audio","document","image","office","pdf","swf","video","xls"odernull, wenn keine Kategorie erkannt wurde. Verarbeitende Anwendungen sollten auch andere Zeichenfolgen akzeptieren, damit künftige Kategorien kompatibel bleiben. field-
Der Name des Formularfelds, das zum Übermitteln dieser Datei verwendet wurde.
url-
Eine URL, über die die Datei heruntergeladen werden kann, oder
null, wenn keine Auslieferungs-URL verfügbar ist. Temporäre URLs auf unseren Servern laufen nach einigen Stunden ab; exportieren Sie Dateien zur späteren Verwendung in einen Speicher. Ergebnisse aus privatem Speicher von/transloadit/storegeben sowohl fürurlals auch fürssl_urlden Wertnullzurück. Bewahren Sie den zurückgegebenen Workspace sowieasset_idundversion_idals dauerhafte Referenz auf, vorbehaltlich der Zugriffs- und Aufbewahrungsregeln./transloadit/importakzeptiertasset_idmit einer optionalenversion_idoder einen veränderlichenpath. Weder eine temporäre URL noch dieidder verarbeiteten Datei ist eine dauerhafte Speicherreferenz. original_id-
Die eindeutige ID der ursprünglich hochgeladenen Datei, aus der diese Datei erzeugt wurde. Damit lässt sich nach mehreren Steps der Verarbeitung ermitteln, welche Datei eines Uploads mit mehreren Dateien zur Erzeugung einer bestimmten Datei verwendet wurde.
meta-
Ein Objekt mit zusätzlichen Metadaten, die aus der Datei extrahiert wurden, wie unten gezeigt. Wiederholte Datums-Tags können als Listen ihrer ursprünglichen Werte zurückgegeben werden. Prüfen Sie den Typ des Werts, bevor Sie ihn als einzelnen Zeitstempel verwenden.
Bildmetadaten
Auch wenn es von der jeweiligen Datei abhängt, können Dateien, deren type den Wert image hat, typischerweise Daten
wie die folgenden in der Eigenschaft meta enthalten:
width-
Die Breite des Mediums in Pixeln. Bei Videos, deren Anzeigeseitenverhältnis von ihrem Pixelseitenverhältnis abweicht, ist dies die vorgesehene Anzeigebreite.
height-
Die Höhe des Mediums in Pixeln.
aspect_ratio-
Das Seitenverhältnis des Bildes, also seine Breite geteilt durch seine Höhe. Ist 0, wenn die Bildhöhe aus irgendeinem Grund 0 ist.
date_recorded-
Das Datum und die Uhrzeit, zu denen das Medium aufgenommen wurde. Ein einzelner gültiger Zeitstempel in Zeichenfolgenform wird auf
YYYY/MM/DD HH:MM:SSnormalisiert. Wenn eine Zeitzone vorhanden ist, wird der Zeitstempel in UTC/GMT umgerechnet und endet aufGMT. Nicht parsebare Zeitstempel in Zeichenfolgenform werden zunull. Numerische Zeitstempel und Listen wiederholter Datums-Tags behalten ihre ursprünglichen Werte. date_file_created-
Der von den Medienmetadaten gemeldete Erstellungszeitstempel, sofern verfügbar.
date_file_modified-
Der vom Dateisystem oder den eingebetteten Medienmetadaten gemeldete Änderungszeitstempel.
title-
Der Titel dieses Bildes, zum Beispiel
"Tree". keywords-
Aus den Metadaten der Datei extrahierte Schlüsselwörter: eine Zeichenfolge, eine endliche Zahl oder ein Array, dessen Einträge Zeichenfolgen, endliche Zahlen oder boolesche Werte sein können. Zum Beispiel
["tree", "nature"]. Das Feld kann fehlen odernullsein. Prüfen Sie vor dem Iterieren seinen Typ; Array-Einträge sind nicht unbedingt Zeichenfolgen. description-
Eine Beschreibung dieses Bildes, zum Beispiel
"This tree is very old.". location-
Der Ort, an dem dieses Bild aufgenommen wurde, in der Regel die Straße, zum Beispiel
"Zingster Str. 32". creator-
Der Urheber, der das Bild aufgenommen hat.
author-
Der Autor, der das Bild aufgenommen hat. Manche Kameras befüllen dieses Feld anstelle von
creator. copyright-
Das Metadatenfeld für das Urheberrecht.
copyright_notice-
Das Metadatenfeld für den Urheberrechtsvermerk.
city-
Die Stadt, in der dieses Bild aufgenommen wurde, zum Beispiel
"Berlin". state-
Das Bundesland, in dem dieses Bild aufgenommen wurde, zum Beispiel
"Berlin". country-
Das Land, in dem dieses Bild aufgenommen wurde, zum Beispiel
"Germany". country_code-
Der Ländercode des Landes, in dem dieses Bild aufgenommen wurde, zum Beispiel
"de". aperture-
Die Blendeneinstellung für dieses Bild, zum Beispiel
5.7. exposure_compensation-
Die Belichtungskorrektur für dieses Bild, zum Beispiel
"+4/3". exposure_mode-
Der Belichtungsmodus für dieses Bild, zum Beispiel
"Auto". exposure_time-
Die Belichtungszeit für dieses Bild, zum Beispiel
"1/30". flash-
Die Blitzeinstellungen für dieses Bild, zum Beispiel
"Off, Did not fire". focal_length-
Die Brennweite für dieses Bild, zum Beispiel
"55.0 mm". f_number-
Die Blendenzahl für dieses Bild, zum Beispiel
5.6. iso-
Der ISO-Wert für dieses Bild, zum Beispiel
800. light_value-
Der Lichtwert für dieses Bild, zum Beispiel
6.9. metering_mode-
Der Belichtungsmessmodus für dieses Bild, zum Beispiel
"Multi-segment". shutter_speed-
Die Verschlusszeit für dieses Bild, zum Beispiel
"1/32". white_balance-
Die Weißabgleicheinstellung für dieses Bild, zum Beispiel
"Manual". device_name-
Der Name des Geräts, mit dem das Medium aufgenommen wurde, zum Beispiel
"iPhone 3GS". device_vendor-
Der Hersteller des Geräts, mit dem das Medium aufgenommen wurde, zum Beispiel
"Apple". device_software-
Die Softwareversion des Geräts, mit dem das Medium aufgenommen wurde, zum Beispiel
"3.1.2". latitude-
Der Breitengrad, an dem das Medium aufgenommen wurde, zum Beispiel
52.5374. longitude-
Der Längengrad, an dem das Medium aufgenommen wurde, zum Beispiel
13.4034. thumb_index-
Der Index des aktuellen Vorschaubildes, beginnend bei 0. Dieser Schlüssel ist nur bei Ergebnissen von 🤖/video/thumbs vorhanden.
thumb_offset-
Der zeitliche Versatz des aktuellen Vorschaubildes in Sekunden. Dieser Schlüssel ist nur bei Ergebnissen von 🤖/video/thumbs vorhanden.
frame_count-
Die Anzahl der Einzelbilder in einer animierten GIF-Datei. Bei allen anderen Bildtypen ist dieser Wert standardmäßig
1. colorspace-
Der erkannte Farbraum des Mediums, zum Beispiel
"sRGB"oder"Gray". Der Farbraum eines Videos ist verfügbar, wenn er bei aktivierter Metadatenextraktion erkannt wird; dafür istoutput_meta.colorspace: truenicht erforderlich. Die Einstellungoutput_meta: falsedeaktiviert die Metadatenextraktion. has_clipping_path-
Ist
true, wenn das Bild einen Freistellungspfad enthält, andernfallsfalse. average_color-
Nicht mit der dominanten Farbe zu verwechseln, die eine einzelne, am häufigsten vorkommende Pixelfarbe erfasst und nur begrenzt einsetzbar ist. Die durchschnittliche Farbe wird berechnet, indem das Eingabebild zunächst auf 1 Pixel skaliert wird.
has_transparency-
Ob das Bild transparente Bereiche hat. Setzen Sie
output_meta.has_transparencyauftrue, um eine Prüfung auf Transparenz anzufordern. Werte, die bekanntermaßen den booleschen Wert false haben, etwafalsefür JPEG-Bilder, können auch dann zurückgegeben werden, wenn diese Option weggelassen wird oderfalseist. Wennoutput_metaselbst auffalsegesetzt wird, wird die zusätzliche Metadatenextraktion übersprungen; grundlegende Prüfungen des Dateityps und der Dateigröße können weiterhin ausgeführt werden. dominant_colors-
Gibt ein Array mit bis zu 10 dominanten Bildfarben als Hexadezimalwerte zurück. Lassen Sie
output_meta.dominant_colorsweg, um diese Extraktion zu überspringen. Die Angabe dieser Eigenschaft, auch mitfalse, fordert die Extraktion an und kann zusätzliche Nutzungsgebühren verursachen, wenn Farben zurückgegeben werden. Wennoutput_metaselbst auffalsegesetzt wird, wird die zusätzliche Metadatenextraktion deaktiviert; grundlegende Prüfungen des Dateityps und der Dateigröße können weiterhin ausgeführt werden.
Videometadaten
Auch wenn es von der jeweiligen Datei abhängt, können Dateien, deren type den Wert video hat, typischerweise Daten
wie die folgenden in der Eigenschaft meta enthalten:
width-
Die Breite des Mediums in Pixeln. Bei Videos, deren Anzeigeseitenverhältnis von ihrem Pixelseitenverhältnis abweicht, ist dies die vorgesehene Anzeigebreite.
height-
Die Höhe des Mediums in Pixeln.
framerate-
Die Bildrate des Videos, zum Beispiel
29.5. video_bitrate-
Die Videobitrate des Videos, zum Beispiel
500000. video_codec-
Der Videocodec des Videos, zum Beispiel
"ffh264". audio_bitrate-
Die Audiobitrate in Bits pro Sekunde über alle Kanäle hinweg, zum Beispiel
128000. audio_samplerate-
Die Audioabtastrate in Hertz, zum Beispiel
44100. audio_channels-
Die Anzahl der Audiokanäle, typischerweise
2für Stereo. audio_codec-
Der Audiocodec, zum Beispiel
"faad". Siehe die unterstützten Audiocodecs. seekable-
Ob das Videoformat das Springen zu einer bestimmten Wiedergabeposition unterstützt, zum Beispiel
true. interlaced-
Ob das Video dem Anschein nach das Zeilensprungverfahren verwendet:
truefür Videos mit Zeilensprungverfahren oderfalsefür progressive Videos. Setzen Sieoutput_meta.interlacedauftrue, um die Erkennung anzufordern. Dieser Schlüssel kann mit dem Wertnullvorhanden sein, wenn keine Erkennung angefordert wurde oder wenn die angeforderte Erkennung kein eindeutiges Ergebnis lieferte. Das Vorhandensein des Felds allein zeigt nicht, dass eine Erkennung ausgeführt wurde. field_order-
Die von FFprobe gemeldete Halbbildreihenfolge, zum Beispiel
"tt","bb","tb","bt"oder"progressive". Setzen Sieoutput_meta.interlacedauftrue, um die Erkennung anzufordern, die dieses Diagnosefeld befüllt. Dieser Schlüssel kann mit dem Wertnullvorhanden sein, wenn keine Erkennung angefordert wurde oder die Halbbildreihenfolge nicht verfügbar war. Verwenden Sieinterlacedfür eine einfache Fallunterscheidung zwischen Videos mit Zeilensprungverfahren und progressiven Videos. interlace_detection-
Diagnosedetails aus der Zeilensprungerkennung von Transloadit. Dieses Objekt kann
sampled_frames,tff,bff,progressive,undetermined,confidence,methodundffprobe_field_orderenthalten. Setzen Sieoutput_meta.interlacedauftrue, um die Erkennung anzufordern. Dieser Schlüssel kann mit dem Wertnullvorhanden sein, wenn keine Erkennung angefordert wurde; prüfen Sie, ob ein Objekt vorliegt, das nicht null ist, bevor Sie seine Eigenschaften lesen. colorspace-
Der erkannte Farbraum des Mediums, zum Beispiel
"sRGB"oder"Gray". Der Farbraum eines Videos ist verfügbar, wenn er bei aktivierter Metadatenextraktion erkannt wird; dafür istoutput_meta.colorspace: truenicht erforderlich. Die Einstellungoutput_meta: falsedeaktiviert die Metadatenextraktion. date_recorded-
Das Datum und die Uhrzeit, zu denen das Medium aufgenommen wurde. Ein einzelner gültiger Zeitstempel in Zeichenfolgenform wird auf
YYYY/MM/DD HH:MM:SSnormalisiert. Wenn eine Zeitzone vorhanden ist, wird der Zeitstempel in UTC/GMT umgerechnet und endet aufGMT. Nicht parsebare Zeitstempel in Zeichenfolgenform werden zunull. Numerische Zeitstempel und Listen wiederholter Datums-Tags behalten ihre ursprünglichen Werte. date_file_created-
Der von den Medienmetadaten gemeldete Erstellungszeitstempel, sofern verfügbar.
date_file_modified-
Der vom Dateisystem oder den eingebetteten Medienmetadaten gemeldete Änderungszeitstempel.
device_name-
Der Name des Geräts, mit dem das Medium aufgenommen wurde, zum Beispiel
"iPhone 3GS". device_vendor-
Der Hersteller des Geräts, mit dem das Medium aufgenommen wurde, zum Beispiel
"Apple". device_software-
Die Softwareversion des Geräts, mit dem das Medium aufgenommen wurde, zum Beispiel
"3.1.2". latitude-
Der Breitengrad, an dem das Medium aufgenommen wurde, zum Beispiel
52.5374. longitude-
Der Längengrad, an dem das Medium aufgenommen wurde, zum Beispiel
13.4034.
Sie können beispielsweise Videos mit Zeilensprungverfahren in einem Step für den Import oder Upload erkennen und nur diese Dateien an einen nachfolgenden Step weiterleiten:
{
"steps": {
":original": {
"robot": "/upload/handle",
"output_meta": {
"interlaced": true
}
},
"only_interlaced": {
"use": ":original",
"robot": "/file/filter",
"accepts": [["${file.meta.interlaced}", "==", "true"]]
}
}
}
Audiometadaten
Auch wenn es von der jeweiligen Datei abhängt, können Dateien, deren type den Wert audio hat, typischerweise Daten
wie die folgenden in der Eigenschaft meta enthalten:
duration-
Die Länge der Audiodatei in Sekunden.
audio_bitrate-
Die Audiobitrate in Bits pro Sekunde über alle Kanäle hinweg, zum Beispiel
128000. audio_samplerate-
Die Audioabtastrate in Hertz, zum Beispiel
44100. audio_channels-
Die Anzahl der Audiokanäle, typischerweise
2für Stereo. audio_codec-
Der Audiocodec, zum Beispiel
"faad". Siehe die unterstützten Audiocodecs. artist-
Viele Anwendungen, die Audio erzeugen, schreiben zusätzliche Informationen in die Audiodatei, zum Beispiel
artist,year,album,genre. mean_volume-
Die mittlere Lautstärke der Audiodatei. Setzen Sie
output_meta.mean_volumeauftrue, um eine Messung anzufordern. Dieser Schlüssel kann mit dem Wertnullvorhanden sein, wenn keine Messung angefordert wurde oder der Wert nicht verfügbar war. Das Vorhandensein des Felds allein zeigt nicht, dass eine Messung ausgeführt wurde.