• Herzlich willkommen im "neuen" DSLR-Forum!

    Wir hoffen, dass Euch das neue Design und die neuen Features gefallen und Ihr Euch schnell zurechtfindet.
    Wir werden wohl alle etwas Zeit brauchen, um uns in die neue Umgebung einzuleben. Auch für uns ist das alles neu.

    Euer DSLR-Forum-Team

  • In eigener Sache!

    Liebe Mitglieder, liebe Besucher und Gäste
    ich weiß, es ist ein leidiges Thema, aber ich muss es ansprechen: Werbung, Werbeblocker und Finanzierung des Forums.
    Bitte hier weiterlesen ...

  • DSLR-Forum Fotowettbewerb neu erfunden!
    Nach wochenlanger intensiver Arbeit an der Erneuerung des Formates unseres internen Fotowettbewerbes ist es Frosty als Moderator
    und au lait als Programmierer gelungen, unseren Wettbewerb auf ein völlig neues Level zu heben!
    Lest hier alle Infos zum DSLR-Forum Fotowettbewerb 2.0
    Einen voll funktionsfähigen Demowettbewerb kannst du dir hier ansehen.
  • Neuer Partner: AkkuShop.de
    Akkus, Ladegeräte und mehr (nicht nur) für Digitalkameras und Drohnen
  • Neuer Gutscheincode unseres Partners Schutzfolien24:
    DSLR-Forum2024
    Dauerhaft 10% Rabatt auf alle Displayschutzfolien der Eigenmarken "Upscreen", "Brotec", "Savvies".
    Der Code ist für alle Geräteklassen gültig.
  • Stimmt ab über die Sieger des DSLR-Forum Fotowettbewerbs April 2024.
    Thema: "Sprichwörtlich"

    Nur noch bis zum 30.04.2024 23:59!
    Jeder darf abstimmen!
    Zur Abstimmung und Bewertung hier lang
WERBUNG

Bildbearbeitung mit darktable - Hilfe, Tipps & Tricks

Hallo,
ich habe eine Frage an die Darktable-Programmierer in diesem Forum.

Ich setze mich seit einiger Zeit mit XMP auseinander, mit dem Ziel einmal einen XMP-Converter fertigzustellen (Lightroom zu Capture One und darktable). Ich entwickle mit Python 3.6.

Zur Zeit versuche ich zu verstehen, wie darktable die params, z.B. des Moduls basecurve, de/kodiert.
Ich finde es ein wenig unglücklich, dass die Einstellungen in darktable XMP nicht direkt menschenlesbar sind.

Dem Quelltext kann ich entnehmen, dass darktable allgemein die Parameter base64 kodiert und einige zusätzlich komprimiert.
Beispiel aus dem Modul basecurve:
Code:
darktable:params="gz09eJxjYIAAM6vnNnqyn22ubL1my301126K4TG7ikR7ezsOR/uPe8vtGRgaoHgUDCXAhsRmwpCFxCkAwyYQgw=="
gz09 steht für GZIP mit Kompressionstufe 9?
Wenn ich den auf gz09 folgenden String dekomprimiere und dann eine base64-Dekodierung anstoße, sind die Hex-Bytes nicht alle gleichlang.
Kann mir ein erfahrener Entwickler aus dem Forum ein paar Hinweise geben?

Notiz: mir ist klar, dass die Frage in einem Programmiererforum besser aufgehoben sein könnte. Ich erinnere mich aber, dass dieses Forum auch ein darktable Entwickler unterstützt, der mir vielleicht den fehlenden Hinweis geben kann.
Danke!

t4r
 
Ein Entwickler hat eine (anonyme) Umfrage für darktable-User eingerichtet, wie darktable genutzt wird, von wem und wofür...
Die Ergebnisse sollen auf die zukünftige Entwicklung Einfluss nehmen.

http://www.poll-maker.com/QSDGDNJ
 
Hallo,
ich habe eine Frage an die Darktable-Programmierer in diesem Forum.

Ich setze mich seit einiger Zeit mit XMP auseinander, mit dem Ziel einmal einen XMP-Converter fertigzustellen (Lightroom zu Capture One und darktable). Ich entwickle mit Python 3.6.

Zur Zeit versuche ich zu verstehen, wie darktable die params, z.B. des Moduls basecurve, de/kodiert.
Ich finde es ein wenig unglücklich, dass die Einstellungen in darktable XMP nicht direkt menschenlesbar sind.

Dem Quelltext kann ich entnehmen, dass darktable allgemein die Parameter base64 kodiert und einige zusätzlich komprimiert.
Beispiel aus dem Modul basecurve:
Code:
darktable:params="gz09eJxjYIAAM6vnNnqyn22ubL1my301126K4TG7ikR7ezsOR/uPe8vtGRgaoHgUDCXAhsRmwpCFxCkAwyYQgw=="
gz09 steht für GZIP mit Kompressionstufe 9?
Wenn ich den auf gz09 folgenden String dekomprimiere und dann eine base64-Dekodierung anstoße, sind die Hex-Bytes nicht alle gleichlang.
Kann mir ein erfahrener Entwickler aus dem Forum ein paar Hinweise geben?

Notiz: mir ist klar, dass die Frage in einem Programmiererforum besser aufgehoben sein könnte. Ich erinnere mich aber, dass dieses Forum auch ein darktable Entwickler unterstützt, der mir vielleicht den fehlenden Hinweis geben kann.
Danke!

t4r

Ich bin zwar kein Darktable-Entwickler, aber soweit ich den Quellcode verstehe, wird beim Schreiben zuerst komprimiert und dann base64 codiert. Beim Dekodieren muss es dann umgekehrt passieren. Also zuerst base64 und dann dekomprimieren.

Und ja "gz"+faktor - steht im Quellcode (src/common/exif.cc) drin.

Aber ob das Ganze dadurch lesbar wird, da habe ich noch Zweifel. Ich vermute, dass die C-Datenstrukturen einfach binär geschrieben werden.
 
Ich bin zwar kein Darktable-Entwickler, aber soweit ich den Quellcode verstehe, wird beim Schreiben zuerst komprimiert und dann base64 codiert. Beim Dekodieren muss es dann umgekehrt passieren. Also zuerst base64 und dann dekomprimieren.

Und ja "gz"+faktor - steht im Quellcode (src/common/exif.cc) drin.

Aber ob das Ganze dadurch lesbar wird, da habe ich noch Zweifel. Ich vermute, dass die C-Datenstrukturen einfach binär geschrieben werden.

Jupp, danke.

Ich stand an der Stelle der Kompression und konnte das Rätsel zwischenzeitlich auflösen.
Code:
darktable:params="gz09eJxjYIAAM6vnNnqyn22ubL1my301126K4TG7ikR7ezsOR/uPe8vtGRgaoHgUDCXAhsRmwpCFxCkAwyYQgw=="
Die Irritation entsteht über den Vorspann "gz09", was auf den GZip Algorithmus hinweist. Allerdings kennt die Software GZip keine Kompressionsraten.
Tatsächlich handelt es sich um eine patentfreie ZLib-Implementierung des GZip-Algorithmus. Faktisch gibt es zlib nur als Bibliothek, z.B. in Programmen wie qpdf oder in Python.
Als Ergebnis erhält man einen Folge von Hex-Bytes, die noch entpackt werden müssen und dann Gleitkommazahlen ergeben.

Zur Probe für die Linux/Cygwin-Nutzer:
Code:
echo 'eJxjYIAAM6vnNnqyn22ubL1my301126K4TG7ikR7ezsOR/uPe8vtGRgaoHgUDCXAhsRmwpCFxCkAwyYQgw==' | base64 --decode | zlib-flate -uncompress | hexdump

Python:
Code:
b64encoded_deflated_string = params_string_without_gzXX
inflated_string=zlib.decompress(base64.b64decode(b64encoded_deflated_string))
inflated_string_iter=struct.iter_unpack('<f',inflated_string)
for e in inflated_string_iter:
	print("%s" % (e) )

Ich habe auch ein npm-Paket gefunden, dass die darktable XMP dekodieren kann: https://npm.taobao.org/package/@wmakeev/darkroom-xmp-tools

Ich denke, dass ist vielleicht für den einen oder anderen darktable Nutzer interessant.
 
Zuletzt bearbeitet:
Ist das Modul "Grundlegende Anpassungen" (Basic Adjustments) eigentlich im Linear RGB Modus?

Es ist ein RGB-Modul, aber ich bin nicht sicher, ob alle Operationen darin linear sind. Das Modul benötigt man eigentlich auch nicht, wenn man nicht unbedingt diese Zusammenfassung von Reglern benötigt.
Mit Belichtung und Farbbalance hat man ja schon so gut wie alles zusammen.
 
Darktable zeigt komisch Farbmasken beim Leuchttisch

Hallo zusammen,

ich bin noch neu hier im Forum und als zunehmend interessierter Hobbyfotograf habe ich mir Darktable als RAW-Entwickler ausgesucht. Mir gefällt das gut, ich lerne immer mehr dazu. Nach dem Import all meiner RAW-Dateien habe ich jetzt allerdings ein Problem:

Darktable zeigt schon am Leuchttisch alle Bilder mit roten, blauen und manchmal auch grünen Flecken. Also die Bilder werden normal angezeigt, jedoch so, als wären sie mit einer Maske belegt. Wenn ich das Bild dann in der Dunkelkammer öffne, sind die "Masken" noch da - allerdings an anderen Flächen. Beim Zoomen verschiebt es sich wieder...

Kann mir jemand helfen, wie ich das wieder deaktiviere? So ist Darktable für mich unbenutzbar. Leider bringen auch die Funktionen unten rechts in der Dunkelkammer (Überbelichtungswarnung etc.) nichts. Zumal ja auch "Masken" an den Leuchttisch-Thumbnails angezeigt werden...

Ich verwende Darktable 3.0.2 auf Mac. Bitte helft mir, bevor ich verzweifle :angel:

Vielen lieben Dank schon mal!

EDIT: Kann bei Bedarf gerne einen Screenshot posten.
 
Zuletzt bearbeitet:
Oh, danke schon mal! Ja, genau so sieht es aus!!! Am Leuchttisch und in der Dunkelkammer. Weißt Du wie man es deaktiviert? Muss aus versehen drangekommen sein...

EDIT: Stand ja in dem Link: Ctrl+Shift+F => Jetzt passt wieder alles!!! Vielen herzlichen Dank :)
 
Auf dem Mac versuche ich mich in Darktable einzuarbeiten, hierbei wäre es hilfreich zu den Grundeinstellungen zurückzufinden, insbesondere in der Dunkelkammer, wie ist dies möglich :confused:

Der Einfachheit halber wurde Darktable deinstalliert und neu aufgespielt, natürlich wurden vorher "alle" Programmdateien aus der MAC-Library entfernt, doch Darktable startet nicht in der Grundeineinstellung. Wie lässt sich Darktable rückstandsfrei vom Mac löschen :confused:

Kurz: wie komme ich zu einem jungfräulichen Darktable ?
 
Zuletzt bearbeitet:
Hallo! Ich hatte danach schon im Herbst gefragt... habe das jetzt nicht weiter verfolgt ... aber Problem stellt sich aktuell wieder daher wollte ich mich kurz erkundigen, ob darktable mittlerweise CR3 RAWs einlesen kann?
 
Schade. Kann mir Jemand einen DNG Konverter für Linux empfehlen, der CR3 umwandeln kann? Ich habe einen ausprobiert auf den Tipp (damals im Herbst) hin, aber der konnte mit CR3 auch nichts anfangen, nützt also nix
 
WERBUNG
Zurück
Oben Unten