HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ImfFramesPerSecond.h
Go to the documentation of this file.
1 //
2 // SPDX-License-Identifier: BSD-3-Clause
3 // Copyright (c) Contributors to the OpenEXR Project.
4 //
5 
6 #ifndef INCLUDED_IMF_FRAMES_PER_SECOND_H
7 #define INCLUDED_IMF_FRAMES_PER_SECOND_H
8 
9 //-----------------------------------------------------------------------------
10 //
11 // Convenience functions related to the framesPerSecond attribute
12 //
13 // Functions that return the exact values for commonly used frame rates:
14 //
15 // name frames per second
16 //
17 // fps_23_976() 23.976023...
18 // fps_24() 24.0 35mm film frames
19 // fps_25() 25.0 PAL video frames
20 // fps_29_97() 29.970029... NTSC video frames
21 // fps_30() 30.0 60Hz HDTV frames
22 // fps_47_952() 47.952047...
23 // fps_48() 48.0
24 // fps_50() 50.0 PAL video fields
25 // fps_59_94() 59.940059... NTSC video fields
26 // fps_60() 60.0 60Hz HDTV fields
27 //
28 // Functions that try to convert inexact frame rates into exact ones:
29 //
30 // Given a frame rate, fps, that is close to one of the pre-defined
31 // frame rates fps_23_976(), fps_29_97(), fps_47_952() or fps_59_94(),
32 // guessExactFps(fps) returns the corresponding pre-defined frame
33 // rate. If fps is not close to one of the pre-defined frame rates,
34 // then guessExactFps(fps) returns Rational(fps).
35 //
36 //-----------------------------------------------------------------------------
37 
38 #include "ImfExport.h"
39 #include "ImfNamespace.h"
40 
41 #include "ImfRational.h"
42 
44 
45 inline Rational
47 {
48  return Rational (24000, 1001);
49 }
50 inline Rational
52 {
53  return Rational (24, 1);
54 }
55 inline Rational
57 {
58  return Rational (25, 1);
59 }
60 inline Rational
62 {
63  return Rational (30000, 1001);
64 }
65 inline Rational
67 {
68  return Rational (30, 1);
69 }
70 inline Rational
72 {
73  return Rational (48000, 1001);
74 }
75 inline Rational
77 {
78  return Rational (48, 1);
79 }
80 inline Rational
82 {
83  return Rational (50, 1);
84 }
85 inline Rational
87 {
88  return Rational (60000, 1001);
89 }
90 inline Rational
92 {
93  return Rational (60, 1);
94 }
95 
96 IMF_EXPORT Rational guessExactFps (double fps);
98 
100 
101 #endif
Rational fps_29_97()
#define OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_EXIT
Definition: ImfNamespace.h:83
Rational fps_47_952()
Rational fps_59_94()
Rational fps_25()
OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_ENTER Rational fps_23_976()
Rational fps_50()
Rational fps_48()
Rational fps_60()
#define IMF_EXPORT
Definition: ImfExport.h:54
Rational fps_24()
Rational fps_30()
#define OPENEXR_IMF_INTERNAL_NAMESPACE_HEADER_ENTER
Definition: ImfNamespace.h:80
IMF_EXPORT Rational guessExactFps(double fps)