Convert images into ones suitable for digital photo frames.
Project description
gaaqoo
Convert images into ones suitable for digital photo frames.
- Reduce file size to save SD card spaces: Scale down images to fit just to the screen size of your digital photo frame.
- Ajdust orientation: Rotate images based on EXIF
Orientation. - Overlay shooting datetime: Overlay EXIF
DataTimeOriginal. - Convert smart: Detect new or updated images in src directory recursively, and convert those into dst directory.
'gaaqoo' was named after 'gaku' which means 'frame' in Japanese.
Install
$ pip install gaaqoo
Usage
$ gaaqoo --help
usage: gaaqoo [-h] [-V] [-f FILE.yml]
Convert images into ones suitable for digital photo frames.
optional arguments:
-h, --help show this help message and exit
-V, --version show program's version number and exit
-f FILE.yml, --config FILE.yml
config YAML file (default:
~/.config/gaaqoo/default.yml)
$
Config (YAML)
~/.config/gaaqoo/default.yml (have to create by yourself for now.)
# -*- coding: utf-8 -*-
SRC_DIR: ~/Pictures/gaaqoo-src
DST_DIR: ~/Pictures/gaaqoo-dst
SUFFIX: ['.jpg', '.JPG', '.jpeg', '.JPEG']
# exclude if filepath contains there
EXCLUDE: ['_EXCLUDE_', '_NG_']
DST_IMG_SIZE: [800, 480]
FONT: /usr/share/fonts/truetype/dejavu/DejaVuSans.ttf
FONT_SIZE: 30
Example
Nagoya Castle :-)
| image | width x height | orientation | |
|---|---|---|---|
| src | 4320x3240 | [EXIF] Orientation=6 (Rotate 90 CW) | |
| dst | 360x480 (fits for 800x480) | Horizontal (normal) |
License
MIT License
Dependencies
- Pillow (>= 10.0.0)
- PyYAML (>= 6.0)
For developers
EXIF orientation example images
Image rotation based on EXIF orientation when tools show it
Without rotation, so suitable for debugging:
display(ImageMagick)
With rotation:
display -auto-orientnautilus(file manager)eog
EXIF tools
- ExifTool
exiftool example.jpg
- jhead:
jhead example.jpgjhead -autorot example.jpg
- Exiv2:
exiv2 -pv example.jpg
$ jhead -autorot example.jpg
$ jhead -mkexif example.jpg # keep DateTimeOriginal. drop GPS, Orientation, and others.
$ exiftool example.jpg
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gaaqoo-1.0.1.tar.gz.
File metadata
- Download URL: gaaqoo-1.0.1.tar.gz
- Upload date:
- Size: 8.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d85bb90da5a1cc9e35bd43b902f3bf2302d5161fb810c954fee48032d1d4ca1e
|
|
| MD5 |
22d90826a097f782e8c0eb7cae0fadb9
|
|
| BLAKE2b-256 |
eba00c06977db292d10d93777f118e3293deb0a47d2828b0940d12e2f3b2c0f7
|
File details
Details for the file gaaqoo-1.0.1-py3-none-any.whl.
File metadata
- Download URL: gaaqoo-1.0.1-py3-none-any.whl
- Upload date:
- Size: 7.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1ff1a28a0caade5db9efd189004154edca48786a91296142fcc7f38f8546ed2a
|
|
| MD5 |
c3eb04826e8c0e0d0627e9a859584803
|
|
| BLAKE2b-256 |
8dff40b9b13af545c913def3244cf5021eb08471c66c24414d7575f3ebd9aad7
|