Das Skript wird nicht mehr benötigt, da eine Funktion zur Erzeugung der Datei badpixel.bin in CHDK eingebaut wurde - erreichbar im RAW-Menü.
***********************************************************************************************************************************************************************
Mit dem neuesten Update kann nun auch die für die DNG-Unterstützung notwendige Datei badpixel.bin per Skript erzeugt werden.
ewavr hat dazu die entsprechende Vorarbeit geleistet.

Das Skript kann ab rev. 623 genutzt werden.
Es macht ein Foto (Motiv ist völlig egal) mit einer Verschlusszeit von 0,5s und berechnet daraus die Datei badpixel.bin. Dieser Vorgang wird zum Vergleich wiederholt. Stimmt der Vergleich, kann der Vorgang mit dem Abspeichern der Datei abgeschlossen werden. Ansonsten muss das Skript erneut gestartet werden.
Das ganze dauert etwas. Also nicht gleich in Panik verfallen, wenn nichts passiert. Ca. 30 Sekunden sollten eingeplant werden.
Syntax: [ Download ] [ Verstecken ]
Benutze Lua Syntax Highlighting
--[[
@title Create badpixel.bin
]]
function get_bad_count()
a=get_raw()
set_raw(255)
set_tv96_direct(96)
shoot()
b=get_raw()
set_raw(a)
return b
end
repeat
if get_mode() == false then
cls()
print("Kein Aufnahmemodus!")
print("Skript wird zum")
print("Umschalten gestoppt.")
print("Nach Umschalten Skript")
print("mit [PRINT] neu starten.")
sleep(3500)
exit_alt()
sleep(1000)
end
until get_mode() == true
cls()
print("Erzeuge die Datei")
print("badpixel.bin.")
print("Bitte warten...")
sleep(2000)
x1=get_bad_count()
x2=get_bad_count()
if (x1==x2) then
cls()
print("Fehl-Pixel-Zahl:", x1)
print("[SET] Datei speichern")
print("[andere Taste] beenden")
wait_click(0)
if is_pressed "set" then
os.remove("A/CHDK/badpixel.bin")
os.rename("A/CHDK/bad_tmp.bin", "A/CHDK/badpixel.bin")
cls()
print("Die Datei badpixel.bin")
print("wurde gespeichert.")
end
os.remove("A/CHDK/bad_tmp.bin")
else
cls()
print("Datei konnte nicht")
print("erzeugt werden.")
print("Bitte Skript neu starten!")
end
@title Create badpixel.bin
]]
function get_bad_count()
a=get_raw()
set_raw(255)
set_tv96_direct(96)
shoot()
b=get_raw()
set_raw(a)
return b
end
repeat
if get_mode() == false then
cls()
print("Kein Aufnahmemodus!")
print("Skript wird zum")
print("Umschalten gestoppt.")
print("Nach Umschalten Skript")
print("mit [PRINT] neu starten.")
sleep(3500)
exit_alt()
sleep(1000)
end
until get_mode() == true
cls()
print("Erzeuge die Datei")
print("badpixel.bin.")
print("Bitte warten...")
sleep(2000)
x1=get_bad_count()
x2=get_bad_count()
if (x1==x2) then
cls()
print("Fehl-Pixel-Zahl:", x1)
print("[SET] Datei speichern")
print("[andere Taste] beenden")
wait_click(0)
if is_pressed "set" then
os.remove("A/CHDK/badpixel.bin")
os.rename("A/CHDK/bad_tmp.bin", "A/CHDK/badpixel.bin")
cls()
print("Die Datei badpixel.bin")
print("wurde gespeichert.")
end
os.remove("A/CHDK/bad_tmp.bin")
else
cls()
print("Datei konnte nicht")
print("erzeugt werden.")
print("Bitte Skript neu starten!")
end
Erstellt in 0.009 Sekunden, mit GeSHi 1.0.8.9
Bitte Testen. Das Skript soll in das CHDK-Paket integriert werden.
Gruß msl