Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/albansagouis/nossaflex

Functions to batch rename photo files with information rich names following the NOSSAFLEX standard and a function to save these metadata inside the exif slots of the scans
https://github.com/albansagouis/nossaflex

analog-photography data-management exif-metadata photography r weekend-project

Last synced: 2 months ago
JSON representation

Functions to batch rename photo files with information rich names following the NOSSAFLEX standard and a function to save these metadata inside the exif slots of the scans

Awesome Lists containing this project

README

        

---
output: github_document
---

```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
```

# nossaflex

[![R-CMD-check](https://github.com/AlbanSagouis/nossaflex/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/AlbanSagouis/nossaflex/actions/workflows/R-CMD-check.yaml)

The nossaflex package is the entry of the NOSSAFLEX file naming convention into the R
universe to help scientific, professional or amateur photographers to name their
picture files consistently and informatively.

When taking a picture with an analog camera, data such as aperture, shutter speed
or focal length are not automatically saved the way they are in a digital camera.
Many photographers write down these precious metadata in a notebook, we want to
help them improve their workflow and data quality.

## What is NOSSAFLEX?
Here is an explanation from the creators:

> It’s as easy as the name – NOSSAFLEX has all of the information in the title.
>
> NO = Number
> SS = Shutter Speed
> A = Aperture
> FL = Focal Length
> EX = Exposure

NOSSAFLEX file names looks like this: `NO03_SS250_A8_FL80_EX0.jpg` or this:
`NO34_SS30_A2.8_FL35_EX+1.tiff`!

Learn more on their [website]{https://nossaflex.io/the-system} or on their
[Youtube channel]{https://www.youtube.com/@NOSSAFLEX}.

## The package
Here are the two main functions in the package:

- `renaming_nossaflex` batch-renames picture files from uninformative `DSC_00345.jpg`
to information-rich NOSSAFLEX name based on data provided by the user, see {analog}
section: `NO03_SS250_A8_FL80_EX0.jpg`.
- `editing_exif` batch-saves the metadata of the pictures into the exif slots of
the scan files (jpg, tiff, etc).

## Analog or an other app

## The workflow

## Installation

You can install the development version of nossaflex from [GitHub](https://github.com/) with:

``` r
# install.packages("devtools")
# devtools::install_github("AlbanSagouis/nossaflex")
```

## Example

This is a basic example which shows you how to solve a common problem:

```{r renaming, eval = FALSE}
library(nossaflex)
files <- c("Pictures/2024/01 02 Winter in Berlin/DSC_001034",
"Pictures/2024/01 02 Winter in Berlin/DSC_001035",
"Pictures/2024/01 02 Winter in Berlin/DSC_001036")
filenames <- reading_nossaflex(path = "path_to_the_filenames.txt") # provided by the `analog` app
renaming_nossaflex(filenames = filenames, files = files)
```

Additionally you may want to safely save the shots metadata inside the scan files:

```{r exif_editing, eval = FALSE}
metadata <- reading_nossaflex(path = "path_to_the_filenames.txt") |> # provided by the `analog` app
parsing_nossaflex()
editing_exif(files, metadata)
```

## Related work
The package relies heavily on the great `exiftoolr`{https://github.com/JoshOBrien/exiftoolr/}
package by @JoshOBrien which itself depends on the great `exiftool`{https://exiftool.org/}
software by Phil Harvey.
Finally, jExifToolGUI{https://github.com/hvdwolf/jExifToolGUI} offers exif
editing and with a Graphical Interface, nice.