Compare commits
6
Commits
1.0
...
305c6bcd96
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
305c6bcd96 | ||
|
|
464ce8987c | ||
|
|
85668bb29f | ||
|
|
07230ac0cd | ||
|
|
58da213080 | ||
|
|
fb24c60c1e |
@@ -19,3 +19,4 @@ martre;marten
|
||||
martre des pins;pine marten
|
||||
bouquetin;ibex
|
||||
mammifère;mammal
|
||||
oiseau;bird
|
||||
|
||||
|
Executable
BIN
Binary file not shown.
+268
-40
@@ -19,7 +19,12 @@ reg=("Bourgogne" "Burgundy" "Bourgogne Franche-Comté" "Côte d'or")
|
||||
#others=("lanscape" "animal")
|
||||
others=()
|
||||
|
||||
# tags -t mammifere foret animal
|
||||
# Display Instagram AND/OR Flickr tags
|
||||
insta=true
|
||||
flickr=true
|
||||
|
||||
gps=0
|
||||
opt_gps=true
|
||||
|
||||
opt_others=false
|
||||
opt_lens=false
|
||||
@@ -29,15 +34,52 @@ opt_nature=false
|
||||
opt_wildlife=false
|
||||
opt_all=true
|
||||
|
||||
long_path=`pwd`"/"`basename "$0"` # /Users/bruno/Documents/Scripts/kymsu2/keywords2insta.sh
|
||||
# long: /Users/bruno/Documents/GitHub/GooFuzz/keywords2insta.sh
|
||||
#long_path=$(realpath "$0") # vide
|
||||
|
||||
dir=$(dirname "$0") # /Users/bruno/Documents/Scripts/keywords2insta
|
||||
|
||||
|
||||
trim () {
|
||||
read -rd '' $1 <<<"${!1}"
|
||||
}
|
||||
|
||||
alpha_name=
|
||||
alpha () {
|
||||
|
||||
array=()
|
||||
#declare -A ilce=( ['ILCE-7M3']="Alpha 7 III" ['ILCE-7M4']="α7 IV" ['ILCE-7MRM5']="α7R V" ['ILCE-7SM3']="Alpha 7S III" ['ILCE-7RM4']="α7R IV" ['ILCE-7RM3']="α7R III" ['ILCE-7C']="Alpha 7C" )
|
||||
declare -A ilce
|
||||
|
||||
if [ -f $dir/sony.csv ]; then
|
||||
|
||||
#echo "Loading Sony APNs..."
|
||||
|
||||
while IFS=';' read -ra array;
|
||||
do
|
||||
key="${array[0]}"
|
||||
value="${array[1]}"
|
||||
ilce["$key"]="$value"
|
||||
done < $dir/sony.csv
|
||||
|
||||
fi
|
||||
|
||||
for val in "${!ilce[@]}"
|
||||
do
|
||||
[[ ${val} == "$model" ]] && alpha_name="${ilce[$val]}"
|
||||
done
|
||||
}
|
||||
|
||||
showHelp() {
|
||||
echo -e "${greenbold}keywords2insta${reset} v1.0"
|
||||
echo -e "${greenbold}keywords2insta${reset} v2.1"
|
||||
echo -e "Bruno <bruno<clicclac.info>"
|
||||
echo -e "Read exif and keywords from an image file, and copy them to the clipboard, "
|
||||
echo -e " ready for Instagram and Flickr."
|
||||
echo
|
||||
echo -e "${yellow}USAGE:${reset}"
|
||||
echo -e "${green}keyword2insta [-Options...] -f <file>${reset}"
|
||||
echo -e "If no option is chosen, all tags are added (default). "
|
||||
echo -e "If no option is chosen, all tags are added (default)."
|
||||
echo -e "Keywords taken from exifs are automatically added."
|
||||
echo -e "You can add keywords permanently by adding them to the ${underline}others array${reset} at the start of the script. (See others=())"
|
||||
echo -e "The images files are not modified."
|
||||
@@ -89,7 +131,7 @@ do
|
||||
nature) opt_nature=true;;
|
||||
region) opt_region=true;;
|
||||
file)
|
||||
file="${!OPTIND}"; OPTIND=$(( $OPTIND + 1 ))
|
||||
file="${!OPTIND}"; OPTIND=$(( OPTIND + 1 ))
|
||||
;;
|
||||
file=*)
|
||||
file=${OPTARG#*=}
|
||||
@@ -152,20 +194,24 @@ fi
|
||||
|
||||
[ ! -f "$file" ] && echo -e "${bold}${red}No input file !${reset}" && exit 2
|
||||
|
||||
echo -e "\n${greenbold}keywords2insta${reset} v2.0"
|
||||
|
||||
# dico français / anglais
|
||||
|
||||
fr=()
|
||||
en=()
|
||||
array=()
|
||||
array2=()
|
||||
declare -A dico
|
||||
|
||||
if [ -f ./keywords.csv ]; then
|
||||
if [ -f $dir/keywords.csv ]; then
|
||||
|
||||
while IFS=';' read -ra array;
|
||||
echo "Loading keyword dictionary..."
|
||||
|
||||
while IFS=';' read -ra array2;
|
||||
do
|
||||
fr+=("${array[0]}")
|
||||
en+=("${array[1]}")
|
||||
done < keywords.csv
|
||||
fr+=("${array2[0]}")
|
||||
en+=("${array2[1]}")
|
||||
done < $dir/keywords.csv
|
||||
|
||||
j=0
|
||||
for i in "${fr[@]}"
|
||||
@@ -178,26 +224,112 @@ fi
|
||||
|
||||
|
||||
echo -e "\n${bold}Reading $file exif...${reset}"
|
||||
exif=$(exiftool -Canon -s -Keywords "$file")
|
||||
|
||||
# The exiftool application exits with a status of 0 on success, or 1 if an
|
||||
# error occurred, or 2 if all files failed the -if condition (for any of
|
||||
# the commands if -execute was used).
|
||||
|
||||
|
||||
#exif=$(exiftool -Canon -s -Keywords -j "$file")
|
||||
exif=$(exiftool -j "$file")
|
||||
# The exiftool application exits with a status of 0 on success, or 1 if an
|
||||
# error occurred, or 2 if all files failed the -if condition (for any of
|
||||
# the commands if -execute was used).
|
||||
|
||||
# exif
|
||||
|
||||
#make=$(echo "$exif" | jq -e '.[] | has("Make") | .Make')
|
||||
|
||||
make=$(echo "$exif" | jq -j '.[] | .Make | select( . != null )')
|
||||
model=$(echo "$exif" | jq -j '.[] | .Model | select( . != null )')
|
||||
date_original=$(echo "$exif" | jq -j '.[] | .DateTimeOriginal | select( . != null )')
|
||||
speed=$(echo "$exif" | jq -j '.[] | .ShutterSpeed | select( . != null )')
|
||||
aperture=$(echo "$exif" | jq -j '.[] | .Aperture | select( . != null )')
|
||||
iso=$(echo "$exif" | jq -j '.[] | .ISO | select( . != null )')
|
||||
lens=$(echo "$exif" | jq -j '.[] | .Lens | select( . != null )')
|
||||
lensID=$(echo "$exif" | jq -j '.[] | .LensID | select( . != null )')
|
||||
lensModel=$(echo "$exif" | jq -j '.[] | .LensModel | select( . != null )')
|
||||
focal=$(echo "$exif" | jq -j '.[] | .FocalLength | select( . != null )')
|
||||
latitude=$(echo "$exif" | jq -j '.[] | .GPSLatitude | select( . != null )')
|
||||
longitude=$(echo "$exif" | jq -j '.[] | .GPSLongitude | select( . != null )')
|
||||
altitude=$(echo "$exif" | jq -j '.[] | .GPSAltitude | select( . != null )')
|
||||
|
||||
echo
|
||||
if [[ -n $iso ]] && [[ -n $speed ]] && [[ -n $aperture ]]; then
|
||||
printf " %-10s %-35s \n" "Speed:" "${speed}"
|
||||
printf " %-10s %-35s \n" "Aperture:" "f/${aperture}"
|
||||
printf " %-10s %-35s \n" "ISO:" "${iso}"
|
||||
printf " %-10s %-35s \n" "Date:" "${date_original}"
|
||||
printf " %-10s %-35s \n" "Maker:" "${make}"
|
||||
if [[ "$make" =~ ^SONY ]]; then
|
||||
alpha
|
||||
printf " %-10s %-35s \n" "APN:" "$alpha_name (${model})"
|
||||
else
|
||||
printf " %-10s %-35s \n" "APN:" "${model}"
|
||||
fi
|
||||
printf " %-10s %-35s \n" "Focal:" "${focal}"
|
||||
if [[ -n $lensID ]]; then
|
||||
printf " %-10s %-35s \n" "LensID:" "${lensID}"
|
||||
l="$lensID"
|
||||
elif [[ -n $lensModel ]]; then
|
||||
printf " %-10s %-35s \n" "LensModel:" "${lensModel}"
|
||||
l="$lensModel"
|
||||
else
|
||||
printf " %-10s %-35s \n" "Lens:" "${lens}"
|
||||
l="$lens"
|
||||
fi
|
||||
if [[ -n $latitude ]] && [[ -n $longitude ]]; then
|
||||
printf " %-10s %-35s \n" "Latitude:" "${latitude}"
|
||||
printf " %-10s %-35s \n" "Longitude:" "${longitude}"
|
||||
printf " %-10s %-35s \n" "Altitude:" "${altitude}"
|
||||
gps=1
|
||||
fi
|
||||
echo
|
||||
|
||||
fi
|
||||
|
||||
# gps
|
||||
if [ $opt_gps = true ]; then
|
||||
if [ $gps -eq 1 ]; then
|
||||
echo "GPS data available !"
|
||||
|
||||
a=$(echo -e "Do you want to ${bold}erase GPS data${reset} ? (k)eep or (e)rase ")
|
||||
read -p "$a" choice
|
||||
|
||||
if [ "$choice" == "e" ] || [ "$choice" == "E" ]; then
|
||||
echo "Erasing GPS data..."
|
||||
exiftool -gps:all= "$file"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
# erase GPS data
|
||||
echo "Erasing GPS data..."
|
||||
exiftool -gps:all= "$file"
|
||||
fi
|
||||
|
||||
|
||||
# keywords
|
||||
k=$(echo "$exif" | sed -n '/^Keywords/p' | awk -F":" '{print $2}' | sed 's/^ *//g')
|
||||
k=$(echo "$exif" | jq --compact-output --raw-output '.[] | .Keywords[]?' | tr "\n" "," | sed 's/\,$//')
|
||||
#k=$(echo "$exif" | sed -n '/^Keywords/p' | awk -F":" '{print $2}' | sed 's/^ *//g')
|
||||
|
||||
if [ -z "$k" ]; then
|
||||
echo -e "${bold}${red}No Keywords found !${reset}"
|
||||
echo "Quit."
|
||||
exit 5
|
||||
echo -e "\n${bold}${red}No Keywords found !${reset}"
|
||||
echo
|
||||
fi
|
||||
|
||||
|
||||
IFS="," read -a key <<< "$k"
|
||||
|
||||
|
||||
for i in "${key[@]}"
|
||||
do
|
||||
ii=$(echo "$i" | xargs) # trim $i
|
||||
#echo "@$i@"
|
||||
# @ bouton d'or@
|
||||
# xargs: unterminated quote
|
||||
|
||||
ii="$i"
|
||||
trim ii
|
||||
|
||||
if [[ ! "$ii" =~ ^_ ]]; then
|
||||
|
||||
if [[ ${dico["$ii"]} ]] ; then
|
||||
@@ -208,6 +340,7 @@ do
|
||||
|
||||
k_fr="$ii"
|
||||
|
||||
|
||||
if [ -n "$k_en" ]; then
|
||||
[[ "$k_fr" = *" "* ]] && keyword_flickr+="\"${k_fr}\" " || keyword_flickr+="${k_fr} "
|
||||
[[ "$k_en" = *" "* ]] && keyword_flickr+="\"${k_en}\" " || keyword_flickr+="${k_en} "
|
||||
@@ -216,28 +349,72 @@ do
|
||||
[[ "$k_fr" = *" "* ]] && keyword_flickr+="\"${k_fr}\" " || keyword_flickr+="${k_fr} "
|
||||
keyword_insta+="#${k_fr// /} "
|
||||
fi
|
||||
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
# model
|
||||
# Canon EOS R6 Canon EOS 5D Mark III Canon EOS-1D Mark IV Canon EOS 20D
|
||||
m=$(echo "$exif" | sed -n '/^Model/p' | awk -F":" '{print $2}' | xargs)
|
||||
mod=("${m}") # Canon EOS R6
|
||||
#m=$(echo "$exif" | sed -n '/^Model/p' | awk -F":" '{print $2}' | xargs)
|
||||
#mod=("${m}") # Canon EOS R6
|
||||
|
||||
if [[ "$m" =~ ^Canon ]]; then
|
||||
# "Make": "OM Digital Solutions",
|
||||
# "Model": "OM-5", "OM-1"
|
||||
# "Make": "SONY",
|
||||
# "Model": "ILCE-7M3", "ILCE-7M4"
|
||||
# "Make": "FUJIFILM",
|
||||
# "Model": "X-T5",
|
||||
# "Make": "Panasonic",
|
||||
# "Model": "DC-S5",
|
||||
|
||||
# "Make": "LEICA CAMERA AG",
|
||||
# "Model": "LEICA Q3", "LEICA SL2-S"
|
||||
# "Make": "NIKON CORPORATION",
|
||||
# "Model": "NIKON D850",
|
||||
# "Make": "NIKON CORPORATION",
|
||||
# "Model": "NIKON Z 9",
|
||||
# "Make": "Canon",
|
||||
# "Model": "Canon EOS R7",
|
||||
|
||||
if [[ "$make" =~ ^Panasonic ]] || [[ "$make" =~ ^FUJI ]]; then
|
||||
mod=("${make} ${model}")
|
||||
mod+=("${make}")
|
||||
mod+=("${model}")
|
||||
mod+=("${make,,}photography")
|
||||
elif [[ "$make" =~ ^SONY ]]; then
|
||||
mod=("${make} ${model}")
|
||||
mod+=("${make}")
|
||||
mod+=("${model}")
|
||||
# convertir α en Alpha
|
||||
q=$(echo "${alpha_name}" | sed 's/α/Alpha /')
|
||||
mod+=("$q")
|
||||
mod+=("${make,,}photography")
|
||||
elif [[ "$make" =~ ^"OM Digital Solutions" ]]; then
|
||||
mod=("${make} ${model}") # OM Digital Solutions OM-5
|
||||
mod+=("Olympus") # Olympus
|
||||
mod+=("${model}") # OM-5
|
||||
elif [[ "$model" =~ ^NIKON ]] || [[ "$model" =~ ^LEICA ]]; then
|
||||
mod=("${make}")
|
||||
z=$(echo "${make,,}" | awk '{print $1}') ## nikon
|
||||
y=$(echo "${make}" | awk '{print $1}') ## NIKON
|
||||
mod+=("${z}photography") # nikonphotography leicaphotography
|
||||
mod+=("${y}") # NIKON LEICA
|
||||
mod+=("${model}") # NIKON Z 9 LEICA Q3
|
||||
w=$(echo "${model}" | awk '{$1=""; print $0}' | xargs)
|
||||
mod+=("${w}")
|
||||
elif [[ "$model" =~ ^Canon ]]; then
|
||||
mod+=("Canon")
|
||||
mod+=("canonphotography")
|
||||
[[ "$m" = *EOS* ]] || mod+=("EOS") # EOS
|
||||
z=$(echo "$m" | sed 's/Canon\ //g' | xargs)
|
||||
y=$(echo "$m" | sed 's/EOS//g' | sed 's/[ ][ ]*/ /g' | xargs)
|
||||
mod+=("${make,}photography")
|
||||
[[ "$model" = *EOS* ]] || mod+=("EOS") # EOS
|
||||
z=$(echo "$model" | sed 's/Canon\ //g' | xargs)
|
||||
y=$(echo "$model" | sed 's/EOS//g' | sed 's/[ ][ ]*/ /g' | xargs)
|
||||
mod+=("${z}") # EOS R6
|
||||
mod+=("${y}") # Canon R6
|
||||
fi
|
||||
|
||||
for i in "${mod[@]}"
|
||||
do
|
||||
model+="${i} "
|
||||
if [[ "$i" = *" "* ]]; then
|
||||
model_flickr+="\"${i}\" "
|
||||
else
|
||||
@@ -248,7 +425,53 @@ done
|
||||
|
||||
|
||||
#lens
|
||||
l=$(echo "$exif" | sed -n '/^Lens/p' | awk -F":" '{print $2}' | sed 's/\///g' | xargs)
|
||||
|
||||
# "LensModel": "E 28-200mm F2.8-5.6 A071",
|
||||
# "Lens": "E 28-200mm F2.8-5.6 A071",
|
||||
# "LensID": "Tamron 28-200mm F2.8-5.6 Di III RXD",
|
||||
# "LensModel": "FE 35mm F2.8 ZA",
|
||||
# "Lens": "FE 35mm F2.8 ZA",
|
||||
# "LensID": "FE 35mm F2.8 ZA"
|
||||
|
||||
# LensID": "OLYMPUS M.12-45mm F4.0"
|
||||
# "LensModel": "OLYMPUS M.12-45mm F4.0",
|
||||
# "Lens": "OLYMPUS M.12-45mm F4.0",
|
||||
# "LensModel": "OLYMPUS M.300mm F4.0",
|
||||
# "Lens": "OLYMPUS M.300mm F4.0",
|
||||
# "LensID": "OLYMPUS M.300mm F4.0"
|
||||
|
||||
# "Lens": "OLYMPUS M.300mm F4.0", "Lens": "OLYMPUS M.12-45mm F4.0",
|
||||
# "LensModel": "OLYMPUS M.300mm F4.0", "LensModel": "OLYMPUS M.12-45mm F4.0",
|
||||
|
||||
# Leica no Lens no LensID
|
||||
# "LensModel": "SUMMILUX 1:1.7/28 ASPH.", "Leica APO-Summicron-SL 35mm f/2 ASPH",
|
||||
|
||||
# "LensModel": "Leica APO-Summicron-SL 35mm f/2 ASPH",
|
||||
# "Lens": "Leica APO-Summicron-SL 35mm f/2 ASPH",
|
||||
# "LensID": "Leica APO-Summicron-SL 35mm f/2 ASPH"
|
||||
|
||||
# "Lens": "Fujifilm Fujinon XF18mmF1.4 R LM WR",
|
||||
# "LensModel": "Fujifilm Fujinon XF18mmF1.4 R LM WR",
|
||||
# LensID": "LUMIX S 20-60mm F3.5-5.6"
|
||||
|
||||
# "Lens": "LUMIX S 20-60/F3.5-5.6",
|
||||
# "LensModel": "LUMIX S 20-60/F3.5-5.6",
|
||||
# "LensID": "Fujifilm Fujinon XF18mm F1.4 R LM WR"
|
||||
|
||||
# "Lens": "400mm f/2.8",
|
||||
# "LensID": "AF-S VR Nikkor 400mm f/2.8G ED",
|
||||
# Nikon si LensModel vide => LensID
|
||||
|
||||
# "LensModel": "VR 300mm f/2.8G",
|
||||
# "Lens": "300.0 mm f/2.8",
|
||||
# "LensID": "VR 300mm f/2.8G"
|
||||
|
||||
# "LensModel": "EF600mm f/4L IS III USM",
|
||||
# "LensID": "Canon EF 600mm f/4L IS III USM"
|
||||
# "Lens": "EF600mm f/4L IS III USM",
|
||||
|
||||
# 1 LensID puis 2 LendModel
|
||||
|
||||
lens_flickr="\"${l}\" "
|
||||
lens_insta="$(echo "$l" | sed 's/ //g' | sed -r 's/[^ ]+/#&/g') "
|
||||
|
||||
@@ -260,7 +483,6 @@ do
|
||||
else
|
||||
wildlife_flickr+="${i} "
|
||||
fi
|
||||
#wildlife_insta+="#"$(echo "${i}" | iconv -f UTF-8-MAC -t ascii//translit | sed 's/[^a-zA-Z 0-9]//g' | sed 's/ //g')" "
|
||||
wildlife_insta+="#$(echo "${i}" | iconv -f UTF-8-MAC -t ascii//translit | sed 's/[^a-zA-Z 0-9]//g' | sed 's/ //g') "
|
||||
done
|
||||
|
||||
@@ -398,29 +620,35 @@ if ! command -v gawk &> /dev/null; then
|
||||
echo -e " - brew install gawk"
|
||||
echo -e ""
|
||||
else
|
||||
#keywords_flickr=$(echo "$keywords_flickr" | gawk -v RS="[ \n]" -v ORS=" " '!($0 in a){print;a[$0]}')
|
||||
keywords_insta=$(echo "$keywords_insta" | gawk -v RS="[ \n]" -v ORS=" " '!($0 in a){print;a[$0]}')
|
||||
fi
|
||||
|
||||
|
||||
# copy tags to clipboard
|
||||
|
||||
if [[ "$OSTYPE" == "linux-gnu" ]] && [ -x "$(command -v xsel)" ]; then
|
||||
if [ "$insta" = true ]; then
|
||||
|
||||
if [[ "$OSTYPE" == "linux-gnu" ]] && [ -x "$(command -v xsel)" ]; then
|
||||
xsel -b <<< "$keywords_insta"
|
||||
elif [[ "$OSTYPE" == "darwin"* ]] && [ -x "$(command -v pbcopy)" ]; then
|
||||
elif [[ "$OSTYPE" == "darwin"* ]] && [ -x "$(command -v pbcopy)" ]; then
|
||||
pbcopy <<< "$keywords_insta"
|
||||
fi
|
||||
|
||||
echo -e "\n${bold}The Instagram's tags are available in your clipboard !${reset}"
|
||||
echo "$keywords_insta"
|
||||
|
||||
echo -e "\nPress <Enter> to get the Flickr' tags..."
|
||||
read -p ""
|
||||
|
||||
fi
|
||||
|
||||
echo -e "\n${bold}The Instagram's tags are available in your clipboard !${reset}"
|
||||
echo "$keywords_insta"
|
||||
|
||||
echo -e "\nPress <Enter> to get the Flickr' tags..."
|
||||
read -p ""
|
||||
|
||||
if [[ "$OSTYPE" == "linux-gnu" ]] && [ -x "$(command -v xsel)" ]; then
|
||||
if [ "$flickr" = true ]; then
|
||||
if [[ "$OSTYPE" == "linux-gnu" ]] && [ -x "$(command -v xsel)" ]; then
|
||||
xsel -b <<< "$keywords_flickr"
|
||||
elif [[ "$OSTYPE" == "darwin"* ]] && [ -x "$(command -v pbcopy)" ]; then
|
||||
elif [[ "$OSTYPE" == "darwin"* ]] && [ -x "$(command -v pbcopy)" ]; then
|
||||
pbcopy <<< "$keywords_flickr"
|
||||
fi
|
||||
fi
|
||||
|
||||
echo -e "\n${bold}Here the Flickr's tags too !${reset}"
|
||||
echo "$keywords_flickr"
|
||||
[ "$insta" = true ] && echo -e "\n${bold}Here the Flickr's tags too !${reset}" || echo -e "\n${bold}The Flickr's tags are available in your clipboard !${reset}"
|
||||
echo "$keywords_flickr"
|
||||
fi
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
ILCE-7M3;Alpha 7 III
|
||||
ILCE-7M4;α7 IV
|
||||
ILCE-7RM5;α7R V
|
||||
ILCE-7SM3;Alpha 7S III
|
||||
ILCE-7RM4;α7R IV
|
||||
ILCE-7RM3;α7R III
|
||||
ILCE-7C;Alpha 7C
|
||||
ILCE-7M2;Alpha 7 II
|
||||
ILCE-7RM2;Alpha 7R II
|
||||
ILCE-7R;α7R
|
||||
ILCE-7RM4A;α7R IV
|
||||
ILCE-7RM3;Alpha 7R III
|
||||
ILCE-7;α7
|
||||
ILCE-7SM2;α7S II
|
||||
ILCE-7S;α7S
|
||||
ILCE-7M3K;Alpha 7 III
|
||||
ILCE-7M4K;α7 IV
|
||||
ILCE-7M2K;Alpha 7 II
|
||||
ILCE-7CL;Alpha 7C
|
||||
ILCE-7K;α7
|
||||
ILCE-1;Alpha 1
|
||||
ILCE-9M2;Alpha 9 II
|
||||
ILCE-9;Alpha 9
|
||||
ILCE-6000;α6000
|
||||
ILCE-6400;Alpha 6400
|
||||
ILCE-6600;Alpha 6600
|
||||
ILCE-6500;α6500
|
||||
ILCE-6100;Alpha 6100
|
||||
ILCE-6300;α6300
|
||||
ILCE-6700;α6700
|
||||
ILCE-6400L;Alpha 6400
|
||||
ILCE-6400M;Alpha 6400
|
||||
ILCE-6600M;Alpha 6600
|
||||
ILCE-3000;ILCE-3000
|
||||
ILCE-3500J;ILCE-3500J
|
||||
ILCE-3000K;ILCE-3000K
|
||||
ILCE-5100L;α5100
|
||||
ILCE-5100Y;α5100
|
||||
ILCE-5100Y;α5100
|
||||
ILCE-5000;α5000
|
||||
ILCE-5000;ILCE-5000
|
||||
ILCE-5000L;α5000L
|
||||
|
Reference in New Issue
Block a user