AcademySoftwareFoundation / AcademySoftwareFoundation/openexr

timecodeRate attribute from ACES Container would be useful but needs clear use case

Open
#1,390 0 comments 0 reactions 0 assignees View on GitHub
needs attention
Dominant language
C
Stars
1.8k
Forks
700
Avg merge
3d 12h
Merged PRs (30d)
29

Description

The ACES Container File Format standard (SMPTE ST 2065-4:2023) defines a `timecodeRate` attribute, but does so without giving a use case:

> The `timecodeRate` attribute shall be of type `int` and shall specify the nominal playback rate in frames per second, rounded to the nearest integer value. When the nominal playback rate corresponds exactly to the midpoint of two integer values, the timecode rate shall be equal to the value of the nominal playback rate rounded to the nearest higher integer.

The motivation for this attribute is unclear. Does it exist solely to have a different rounding mode than the default IEEE 754 one (where the argument to the rounding operator is the value of the `framesPerSecond` attribute controlling playback) and if so, why is that rounding so important as to need to attach a new temporal attribute?

Note that this attribute is *not* defined in SMPTE's [camdkit](https://github.com/SMPTE/ris-osvp-metadata-camdkit) proposal, only in the ACES container spec and software applications or libraries implementing that spec.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the ACES Container File Format standard's definition of timecodeRate alongside the referenced SMPTE camdkit proposal and the framesPerSecond behavior described in the issue. Determine and document a concrete use case or clarify why the attribute is required; the issue identifies no repository file or test to run.

Written by the indexing model from the issue text.

Assessment

Domain
documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.