macOS पर HEIC फ़ोटो के एक फ़ोल्डर को JPEG में बदलने और उनके EXIF मेटाडेटा को बनाए रखने के लिए, JPEG बनाने हेतु sips का उपयोग करें, फिर प्रत्येक मूल फ़ाइल से मेटाडेटा कॉपी करने के लिए ExifTool का उपयोग करें। HEIC फ़ाइलों को अछूता रखें और नई फ़ाइलों को एक अलग फ़ोल्डर में सहेजें। यह दो-चरणीय प्रक्रिया मेटाडेटा ट्रांसफ़र को स्पष्ट बनाती है; केवल एक सफल इमेज रूपांतरण यह साबित नहीं करता कि सभी EXIF फ़ील्ड JPEG में शामिल हो गए हैं।
रूपांतरित करने से पहले आपको क्या जानना आवश्यक है
JPEG एक नई इमेज एन्कोडिंग है, इसलिए इमेज डेटा फिर से कंप्रेस होता है। इसे इमेज-क्वालिटी में बिना किसी बदलाव के रूपांतरित नहीं किया जा सकता है। मेटाडेटा एक अलग विषय है: कैमरा विवरण, कैप्चर तिथि और GPS टैग मूल फ़ाइल में संग्रहीत हो सकते हैं, लेकिन प्रत्येक HEIC फ़ील्ड का ऐसा समकक्ष नहीं होता जिसे JPEG संग्रहीत कर सके। इसलिए मेटाडेटा कॉपी करना इस बात का वादा नहीं है कि प्रत्येक फ़ील्ड अपरिवर्तित रहेगा। यदि कोई विशिष्ट टैग महत्वपूर्ण है, तो परिणाम की जांच करें।
macOS Preview किसी एक इमेज या कई चयनित इमेजों को JPEG के रूप में निर्यात कर सकता है: इमेजों को एक विंडो में खोलें, उन्हें साइडबार में चुनें और फ़ाइल > निर्यात करें चुनें। Apple फ़ॉर्मेट और गुणवत्ता नियंत्रणों का दस्तावेजीकरण करता है, लेकिन यह दस्तावेजित नहीं करता कि बैच निर्यात सभी EXIF फ़ील्ड को सुरक्षित रखता है। यदि मेटाडेटा प्रतिधारण एक आवश्यकता है, तो नीचे दिए गए स्पष्ट कॉपी-और-जांच वर्कफ़्लो का उपयोग करें। Apple का Preview रूपांतरण गाइड
Terminal के साथ मेटाडेटा रूपांतरित और कॉपी करें
यह वर्कफ़्लो प्रत्येक इमेज को रूपांतरित करने के लिए Apple के sips कमांड का उपयोग करता है, फिर उसकी संबंधित मूल फ़ाइल से मेटाडेटा कॉपी करने के लिए ExifTool का उपयोग करता है। इसके आधिकारिक इंस्टॉलेशन निर्देशों का उपयोग करके पहले ExifTool इंस्टॉल करें। एक स्रोत फ़ोल्डर बनाएं जिसमें HEIC फ़ाइलें हों और एक खाली गंतव्य फ़ोल्डर बनाएं। उदाहरण में, फ़ोल्डर ~/Pictures/HEIC-Originals और ~/Pictures/JPEG-Converted हैं; यदि आपके पथ भिन्न हैं तो उन्हें बदलें।
Terminal खोलें और इस संपूर्ण Bash उदाहरण को चलाएं। यह फ़ोल्डर और फ़ाइल नामों में स्पेस को संभालता है, कैपिटलाइज़ेशन की परवाह किए बिना .heic और .heif एक्सटेंशन को पहचानता है, और JPEG को अलग गंतव्य फ़ोल्डर में लिखता है।
src="$HOME/Pictures/HEIC-Originals"
out="$HOME/Pictures/JPEG-Converted"
mkdir -p "$out"
find "$src" -maxdepth 1 -type f \( -iname '*.heic' -o -iname '*.heif' \) -print0 |
while IFS= read -r -d '' file; do
name=$(basename "${file%.*}")
jpg="$out/$name.jpg"
if sips -s format jpeg "$file" --out "$jpg"; then
exiftool -TagsFromFile "$file" -all:all -overwrite_original "$jpg"
else
printf 'Conversion failed: %s\n' "$file" >&2
fi
done
sips कमांड JPEG बनाता है; ExifTool के -TagsFromFile और -all:all विकल्प निर्दिष्ट मूल फ़ाइल से मेटाडेटा कॉपी करते हैं। -overwrite_original विकल्प ExifTool को प्रत्येक JPEG की बैकअप प्रति छोड़ने से रोकता है। ExifTool का दस्तावेज़ीकरण मेटाडेटा कॉपी करने का वर्णन करता है और नोट करता है कि एक गंतव्य फ़ॉर्मेट जिन टैग्स को रख सकता है वे उस फ़ॉर्मेट पर निर्भर करते हैं। ExifTool एप्लिकेशन दस्तावेज़ीकरण
स्क्रिप्ट केवल स्रोत फ़ोल्डर के शीर्ष स्तर पर देखती है। यदि आपकी फ़ोटो नेस्टेड फ़ोल्डरों में हैं, तो इसे प्रत्येक फ़ोल्डर पर अलग से चलाएं या खोज और गंतव्य पथों को अनुकूलित करें ताकि समान नाम वाली फ़ाइलें एक-दूसरे को ओवरराइट न करें। सुनिश्चित करें कि गंतव्य खाली है या उसके फ़ाइल नाम मौजूदा फ़ाइलों से टकरा नहीं सकते हैं। जब तक आप आउटपुट की जांच न कर लें, मूल फ़ाइलों को अपने पास रखें।
जांचें कि क्या JPEG में वह मेटाडेटा है जिसकी आपको आवश्यकता है
रूपांतरित JPEG का उसके स्रोत के साथ निरीक्षण करने के लिए ExifTool का उपयोग करें। नमूना फ़ाइल नाम को अपने बैच के किसी एक नाम से बदलें:
exiftool -a -G1 -s "$HOME/Pictures/HEIC-Originals/IMG_0001.HEIC"
exiftool -a -G1 -s "$HOME/Pictures/JPEG-Converted/IMG_0001.jpg"
उन फ़ील्ड की तुलना करें जिनकी आपको परवाह है, जैसे DateTimeOriginal, कैमरा मेक और मॉडल, और GPS निर्देशांक। यदि कोई फ़ील्ड HEIC में दिखाई देता है लेकिन JPEG में नहीं, तो रूपांतरण या मेटाडेटा कॉपी ने इसे प्रयोग करने योग्य रूप में सुरक्षित नहीं रखा है; केवल इसलिए यह न मान लें कि यह सुरक्षित है क्योंकि Finder एक तारीख प्रदर्शित करता है या JPEG खुल जाता है। ExifTool कई इमेज फ़ॉर्मेट से मेटाडेटा पढ़ सकता है, लेकिन समर्थित टैग और लिखने योग्य फ़ील्ड फ़ॉर्मेट के अनुसार भिन्न होते हैं। ExifTool का फ़ॉर्मेट और टैग दस्तावेज़ीकरण
सामान्य समस्याएं और सीमाएं
यदि sips रिपोर्ट करता है कि वह किसी फ़ाइल को नहीं पढ़ सकता है, तो जांचें कि यह एक समर्थित इमेज है और फ़ाइल नाम एक्सटेंशन फ़ाइल से मेल खाता है। यदि Terminal कहता है exiftool: command not found, तो ExifTool इंस्टॉल नहीं है या आपके शेल के पथ पर नहीं है। यदि दो मूल फ़ाइलों का फ़ाइल नाम स्टेम समान है, तो स्क्रिप्ट समान JPEG नाम को लक्षित करेगी; उन फ़ाइलों को अलग-अलग गंतव्य फ़ोल्डरों में संभालें या रूपांतरित करने से पहले उनका नाम बदलें।
EXIF कॉपी करना मूल फ़ोटो से जुड़ी हर प्रॉपर्टी को सुरक्षित नहीं रखता है। एक JPEG केवल-HEIC डेटा का प्रतिनिधित्व नहीं कर सकता है, और टैग कॉपी करने से JPEG के पिक्सेल HEIC की डिकोड की गई इमेज के समान नहीं हो जाते हैं। महत्वपूर्ण अभिलेखागार (archives) के लिए, मूल HEIC फ़ाइलों को बनाए रखें और JPEG को अनुकूलता प्रतियों के रूप में मानें। जब लक्षित उपयोग के लिए केवल एक त्वरित फ़ॉर्मेट परिवर्तन की आवश्यकता होती है और मेटाडेटा महत्वहीन होता है, तो Preview का प्रलेखित बैच निर्यात सरल होता है; जब विशिष्ट EXIF फ़ील्ड मायने रखते हैं, तो उन्हें रूपांतरित करें, कॉपी करें और उनका निरीक्षण करें।
स्रोत
Mac पर Preview का उपयोग करके इमेज फ़ाइल प्रकारों को रूपांतरित करें — Apple सहायता
ExifTool एप्लिकेशन दस्तावेज़ीकरण — ExifTool
ExifTool टैग नाम — ExifTool
ExifTool इंस्टॉल करना — ExifTool