Open source software pro úpravu digitálních fotografií LightZone (Wikipedie) byl vydán v nové verzi 5.0.0. LightZone je dnes k dispozici pod licencí BSD. Původně se jednalo o proprietární software vyvíjený společností Light Crafts. Ta v prosinci 2012 souhlasila s uvolněním zdrojových kódů jako open source [Wayback Machine].
Byla vydána verze 0.84 telnet a ssh klienta PuTTY (Wikipedie). Podrobnosti v přehledu nových vlastností a oprav chyb a Change Logu.
Microsoft představil Azure Linux 4.0 a Azure Container Linux. Na konferenci Open Source Summit North America 2026 organizované konsorciem Linux Foundation a sponzorované také Microsoftem. Azure Linux 4.0 vychází z Fedora Linuxu. Azure Container Linux je založen na projektu Flatcar. Azure Linux (GitHub, Wikipedie) byl původně znám jako CBL-Mariner.
Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 165 (pdf).
Byla vydána verze 9.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a informačním videu.
Firefox 151 podporuje Web Serial API. Pro komunikaci s různými mikrokontroléry připojenými přes USB nebo sériové porty už není nutné spouštět Chrome nebo na Chromiu postavené webové prohlížeče.
Byla vydána nová stabilní verze 8.0 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 148. Přehled novinek i s náhledy v příspěvku na blogu.
Ve FreeBSD byla nalezena a opravena zranitelnost FatGid aneb CVE-2026-45250. Jedná se o lokální eskalaci práv. Neprivilegovaný uživatel se může stát rootem.
Společnost Flipper Devices oznámila Flipper One. Zcela nový Flipper postavený od nuly. Jedná se o open-source linuxovou platformu založenou na čipu Rockchip RK3576. Hledají se dobrovolníci pro pomoc s dokončením vývoje (ovladače, testování, tvorba modulů).
Vývojáři Wine oznámili vydání verze 2.0 knihovny vkd3d pro překlad volání Direct3D na Vulkan. Přehled novinek na GitLabu.
Riesenim tvojho problemu by som to nenazval, ale vzhladom na nenarocnost operacie (cas, vykon), to az tak zle nebude.
Moj navrh spociva v tom, ze prv si exif data ulozit do suboru, nasledne prekonvertovat raw do tiff a nahrat exif do toho tiff, ak si convert samotny teda nevie poradit. Balicek exiv2 funguje fajn, co sa tyka exportu a importu exif dat. A jednoduchym skriptom to pojde ako po masle.
PNG podporuje aj 16bit na kanal, ale aka je podpora vo vseobecnosti, to nemam paru. :)
Každý nění scriptař , tak co třeba sample ?
convert pagoda_sm.jpg -compress zip -quality 95 pagoda_sm.tif
exiftool -tagsFromFile pagoda_sm.jpg -All:All --IFD1:All pagoda_sm.tif
Pepe, suhlas. Ale musim poznamenat, ze som mu dal navrh riesenia a premyslal som, ci mu tam daco napisem alebo nie. Rozhodol som sa pre nie, bo az by eventualne chcel daco, tak som tu a rad pomozem. Takze to neboli len dristy, ako to spravit, ja som tu bol pripraveny mu s tym pomoct, pokial to bude v mojich moznostiach.
Tuna je moje riesenie:
#! /bin/bash
# deklaracia globalnych premennych
declare -a array_dirs array_pics
# uprav pre svoje potreby, ak potrebujes, co sa tyka volieb pre mogrify
# $1 - vystupny format obrazkov
# $2 - vystupna cesta, kam sa vysledok ulozi ( !!! mogrify sa nestara a prepise akykolvek subor ak sa zhoduju v nazve narozdiel od convert a preto to treba
# mat na zreteli !!! )
# $3 - vstup; obrazky alebo zoznam obrazkov pre konverziu
Mogrify(){
mogrify -format "$1" -path "$2" "$3"
}
Help(){
cat <<_EOF
Vyuzitie: Extrahuje exif data do suboru zo zdrojoveho obrazku pred konvertom formatov obrazkov a po ukonceni
ho nacita do uz prekonvertovaneho obrazku.
P.S.: Si to potreboval, ked convert stracal exif data pri konvertovani CR2 do tiff . :)
Volby:
-h, --help : pomoc
-r, --recursive : rekurzivne hladanie; ak nasleduje za touto volbou cislo, je brane ako uroven hlbky hladania
-i, --iextension : zdrojovy format obrazkov; ak adresar obsahuje viacero roznych formatov a my chceme len ten dany jeden
-o, --oextension : vystupny format obrazkov; POVINNY PARAMETER -> ERROR: MAGIC BALL IS NOT IMPLEMENTED YET. STAY TUNED.
-p, --path : cesta ku korenovemu adresaru hladania; POVINNY PARAMETER
Akekolvek nerozpoznane volby su brane ako obrazky samotne.
${0} --oextension [pripona] --path [cesta_k_adresaru]
_EOF
}
CheckApps(){
declare status=0
which mogrify &>/dev/null || { echo "Je nutne nainstalovat balicek imagemagick ."; status=1; }
which exiv2 &>/dev/null || { echo "Je nutne nainstalovat balicek exiv2 ."; status=1; }
# Verzia 0.23 a vyssie je nutna pre citanie a zapis CR2 formatu obrazkov, resp. ich exif dat.
version="$(exiv2 -V | head -n1 )"
version="${version#* }"
version="${version%% *}"
if [[ ${version%%.*} -gt 0 ]]
then
:
else
if [[ ${version##*.} -lt 23 ]]
then
echo -e "Je nutne updatnut balicek exiv2 na verziu 0.23 a vyssiu.\nNizsie verzie nepodporuju citanie a zapis CR2 formatu obrazkov exif dat."
status=1
fi
fi
[[ $status -eq 1 ]] && echo "Pred dalsim spustenim skriptu doinstalujte vyssie uvedene aplikacie." && exit 1
}
FindDirs()
{
declare dir
while read dir
do
array_dirs+=( "$dir" )
done< <(find "$path" $maxdepth -type d )
}
Convert(){
declare pic absdir
for pic in "${array_pics[@]}"
do
if [[ "$absdir" != "${pic%/*}" ]]
then
absdir="${pic%/*}"
newabsdir="${absdir}"/"${absdir##*/}_new"
mkdir "$newabsdir"
fi
exiv2 extract "$pic"
Mogrify "$oext" "$newabsdir" "$pic"
exvfile="${pic%.*}.exv"
picname="${pic##*/}"
picname="${picname%.*}"
mv "$exvfile" "$newabsdir"
exiv2 insert "${newabsdir}"/"${picname}.${oext}"
done
}
FindPics(){
declare absdir file newabsdir
for absdir in "$@"
do
for file in "$absdir"/*"$iext"
do
identify "$file" &>/dev/null && array_pics+=( "$file" )
done
done
}
####################################### MAIN ############################################
CheckApps
while [[ "$1" ]]
do
case "$1" in
-r | --recursive )
recursive='true'
regexp='^[0-9]+'
if [[ "$2" =~ $regexp ]]
then
declare maxdepth="-maxdepth $2"
shift 2
else
# vychodzie spravanie; spracuje len subory v aktualnom adresari
declare maxdepth="-maxdepth 0"
shift 1
fi
;;
-h | --help )
Help
exit 0
;;
-i | --iextension )
# nevieme, ci uzivatel zada k pripone bodku a ci nie, takze ju prv odstranime, ak daka bola zadana
# a nasledne ju pridame pred hodnotu
# Ak nie je zadany vstupny format obrazku, berieme vsetky obrazky nezavisle na pripone.
iext=".${2//.}"
shift 2
;;
-o | --oextension )
# tato volba je nutna, potrebujeme daco podsunut pre convert
oext="${2//.}"
shift 2
;;
-p | --path )
path="$(readlink -f "$2" 2>/dev/null )"
if [[ $? -eq 0 && -r "$path" ]]
then
:
else
# Iba jedna cesta moze byt zadana pre jeden beh skriptu, takze zadanim neexistujucej cesty alebo
# nemajuc opravnenie na citanie, skript nemoze splnit vsetky poziadavky uzivatela a sa ukonci s chybou.
echo -e "Nemozno spracovat zadanu cestu: $path.\nNeexistuje alebo nemam opravnenie na citanie."
exit 1
fi
shift 2
;;
* )
file="$(readlink -f "$1" 2>/dev/null )"
if [[ $? -eq 0 && -r "$file" ]]
then
if identify "$file" &>/dev/null
then
array_pics+=( "$file" )
else
echo -e "Nemozem spracovat $wannabe_pic .\nNeexistuje, nemam opravnenie na citanie alebo sa nenasiel ziaden obrazok."
exit 1
fi
fi
shift 1
;;
esac
done
if [[ -z "$oext" ]]
then
echo -e "Zadanie vystupneho formatu obrazku je nutna volba./nZadaj argument -o [pripona] alebo volbu --help."
exit 1
fi
if [[ "$recursive" == true ]]
then
FindDirs
FindPics "${array_dirs[@]}"
fi
if [[ "${#array_pics[@]}" -eq 0 ]]
then
echo "Ziadne obrazky na spracovanie./nPouzi volbu --path pre adresar alebo zadaj konkretny obrazok.\nVid $0 --help."
exit 1
fi
Convert
Skript som skusal na svojich fotografiach pri roznych scenaroch a fungoval. Ak sa ale vyskytne daka chyba, daj vediet a skusim to dat do poriadku. Skript je setrny na zdrojove subory a nemaze nic. Subory obsahuje exif data sa nachadzaju v podadresari povodneho adresara spolu s prekonvertovanymi obrazkami. Ak nieco nie je jasne, daj vediet, pomozem. Ak vidis daku chybu, alebo vies nieco lepsie, oprav a upovedom. Budem iba rad. Snad pomoze. Zatial.
name=$*
for file in $name
do
dcraw -c -T -6 $file | convert -quiet -compress zip - $file.tiff
echo $file converted
done
vytvoří to soubor s koncovkou .CR2.tiff
jakou upravu mám provést aby tam nebylo to cr2? např: _MG_869.tiff
Tiskni
Sdílej: