Skip to content

Commit bcfd7bb

Browse files
committed
handle int64_t constraint/ ImageSequenceReference
1 parent e698b90 commit bcfd7bb

File tree

2 files changed

+84
-3
lines changed

2 files changed

+84
-3
lines changed

src/opentimelineio/imageSequenceReference.cpp

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -120,13 +120,22 @@ ImageSequenceReference::ImageSequenceReference(std::string const& target_url_bas
120120
}
121121

122122
bool ImageSequenceReference::read_from(Reader& reader) {
123+
124+
int64_t start_frame_value = 0;
125+
int64_t frame_step_value = 0;
126+
int64_t frame_zero_padding_value = 0;
127+
123128
auto result = reader.read("target_url_base", &_target_url_base) &&
124129
reader.read("name_prefix", &_name_prefix) &&
125130
reader.read("name_suffix", &_name_suffix) &&
126-
reader.read("start_frame", &_start_frame) &&
127-
reader.read("frame_step", &_frame_step) &&
131+
reader.read("start_frame", &start_frame_value) &&
132+
reader.read("frame_step", &frame_step_value) &&
128133
reader.read("rate", &_rate) &&
129-
reader.read("frame_zero_padding", &_frame_zero_padding);
134+
reader.read("frame_zero_padding", &frame_zero_padding_value);
135+
136+
_start_frame = static_cast<int>(start_frame_value);
137+
_frame_step = static_cast<int>(frame_step_value);
138+
_frame_zero_padding = static_cast<int>(frame_zero_padding_value);
130139

131140
std::string missing_frame_policy_value;
132141
result && reader.read("missing_frame_policy", &missing_frame_policy_value);

tests/sample_data/big_int.otio

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
{
2+
"OTIO_SCHEMA": "Timeline.1",
3+
"metadata": {},
4+
"name": "testdata",
5+
"global_start_time": null,
6+
"tracks": {
7+
"OTIO_SCHEMA": "Stack.1",
8+
"metadata": {},
9+
"name": "tracks",
10+
"source_range": null,
11+
"effects": [],
12+
"markers": [],
13+
"children": [
14+
{
15+
"OTIO_SCHEMA": "Track.1",
16+
"metadata": {},
17+
"name": "",
18+
"source_range": null,
19+
"effects": [],
20+
"markers": [],
21+
"children": [
22+
{
23+
"OTIO_SCHEMA": "Clip.1",
24+
"metadata": {
25+
"foobar": {
26+
"maxint32": 2147483647,
27+
"toobig": 2147483648,
28+
"verybig": 3450100000
29+
}
30+
},
31+
"name": "black",
32+
"source_range": {
33+
"OTIO_SCHEMA": "TimeRange.1",
34+
"duration": {
35+
"OTIO_SCHEMA": "RationalTime.1",
36+
"rate": 24.0,
37+
"value": 24.0
38+
},
39+
"start_time": {
40+
"OTIO_SCHEMA": "RationalTime.1",
41+
"rate": 24.0,
42+
"value": 1.0
43+
}
44+
},
45+
"effects": [],
46+
"markers": [],
47+
"media_reference": {
48+
"OTIO_SCHEMA": "ExternalReference.1",
49+
"metadata": {},
50+
"name": "",
51+
"available_range": {
52+
"OTIO_SCHEMA": "TimeRange.1",
53+
"duration": {
54+
"OTIO_SCHEMA": "RationalTime.1",
55+
"rate": 24.0,
56+
"value": 240.0
57+
},
58+
"start_time": {
59+
"OTIO_SCHEMA": "RationalTime.1",
60+
"rate": 24.0,
61+
"value": 1.0
62+
}
63+
},
64+
"target_url": "black.mov"
65+
}
66+
}
67+
],
68+
"kind": "Video"
69+
}
70+
]
71+
}
72+
}

0 commit comments

Comments
 (0)