Date
1 - 6 of 6
.otio samples/unittests
Gonzalo Garramuño
I am looking for a set of .otio samples to test my adapter. Any chance of sharing some?
I already tested it with the scripts that come with examples/ directory of the source distribution. I am looking for tests with multiple timelines, gaps, transitions and retimings. -- Gonzalo Garramuño |
|
Gonzalo Garramuño
El 1/9/19 a las 17:28, Gonzalo Garramuño via Lists.Aswf.Io escribió:
I am looking for a set of .otio samples to test my adapter. Any chance of sharing some?Never mind. I found a bunch of edls in the source directory of opentimelineio. -- Gonzalo Garramuño |
|
Joshua Minor
Look at the sample fcp xml and AAF files too. otioconvert will turn them into .otio for you. They have more complex examples than the EDLs.
toggle quoted message
Show quoted text
-josh On Sep 2, 2019, at 11:18 AM, Gonzalo Garramuño <ggarra13@...> wrote:El 1/9/19 a las 17:28, Gonzalo Garramuño via Lists.Aswf.Io escribió:Never mind. I found a bunch of edls in the source directory of opentimelineio. |
|
Gonzalo Garramuño
El 2/9/19 a las 20:29, Joshua Minor escribió:
Look at the sample fcp xml and AAF files too. otioconvert will turn them into .otio for you. They have more complex examples than the EDLs.I am having trouble flattening most of the .aaf examples. OpenTimelineIO/examples/flatten_video_tracks.py utf8.aaf test.otio results in a stacktrace with wrong parents in the audio track.Read 1 video tracks and 1 audio tracks. Flattening 1 video tracks into one... Traceback (most recent call last): File "/media/gga/Datos/code/applications/mrv/dependencies/OpenTimelineIO/examples/flatten_video_tracks.py", line 52, in <module> newtimeline.tracks.extend(audio_tracks) File "/usr/lib/python3.6/_collections_abc.py", line 990, in extend self.append(v) File "/usr/lib/python3.6/_collections_abc.py", line 971, in append self.insert(len(self), value) File "/home/gga/.local/lib/python3.6/site-packages/opentimelineio/core/composition.py", line 688, in insert item._set_parent(self) File "/home/gga/.local/lib/python3.6/site-packages/opentimelineio/core/composable.py", line 105, in _set_parent self.parent() ValueError: Composable named 'TimelineMobSlot' is already in a composition named 'tracks', remove from previous parent before adding to new one. Composable: Track(TimelineMobSlot, [otio.schema.Clip(name='Clip_ABCXYZñç꜕∑´®†¥¨ˆøπ“‘åß∂ƒ©˙∆˚¬…æΩ≈ç√∫˜µ≤≥÷', media_reference=otio.schema.MissingReference(name=None, available_range=otio.opentime.TimeRange(start_time=otio.opentime.RationalTime(value=0, rate=24.0), duration=otio.opentime.RationalTime(value=10, rate=24.0)), metadata={'AAF': {'Name': 'Clip_ABCXYZñç꜕∑´®†¥¨ˆøπ“‘åß∂ƒ©˙∆˚¬…æΩ≈ç√∫˜µ≤≥÷', 'ClassName': 'MasterMob', 'ConvertFrameRate': False, 'MobAttributeList': {'_VERSION': 2, '_SAVED_AAF_AUDIO_RATE_NUM': 24, '_SAVED_AAF_AUDIO_RATE_DEN': 1, '_SAVED_AAF_AUDIO_LENGTH': 0, '_IMPORTSETTING': '__AttributeList', '_GEN': -1186676752, '_USER_POS': 0}, 'UserComments': {'SourceImageSize': '1024x428', 'comment': 'Spinning cube', 'deptLabel': 'SIM', 'dept': 'SIMULATION', 'status': 'unknown', 'simulation take#': '1', 'simulation contact': 'joshm', 'TID': '4618558', 'ShotTakeRange': 'ppjoshm_1 (1) 101 - 110', 'DepartmentDate': 'simulation 1 03/29/2019 11:46', 'FirstFrame': '101', 'LastFrame': '110', 'prod': 'ppjoshm', 'Storybeat': 'ppjoshm', 'Description': 'Spinning cube', 'Host': 'aaf04', 'User': 'joshm', 'unit': 'oreh', 'AAFCreationDate': 'Mar 29 2019 11:52:18', 'AAFCreationTool': 'aafMakeMedia Oct 26 2017 16:05:14', 'Profile': 'PixarRGB2005', 'RepeatCount': '1', 'VideoFormat': 'DnX36', 'SourceImages': '/shows/oreh/diskfarm/TAKES_ppjoshm_1/take_1_mov/TAKES_ppjoshm_1.take_1_mov.0.mov', 'GlobalTake': '1', 'CommandLine': '"/Applications/PixApps/Transmogrifier.app/Contents/Frameworks/FOLKit.framework/Versions/A/MacOS/aafMakeMedia" "-unit" "oreh" "-outFileName" "./ppjoshm_1.SIM1.aaf" "-shotName" "ppjoshm_1" "-slateType" "classic" "-makeLocatorOnFirstFrame" "1" "-baseName" "/shows/oreh/diskfarm/TAKES_ppjoshm_1/take_1_mov/TAKES_ppjoshm_1.take_1_mov.0.mov" "-baseNameIsFullName" "1" "-cropSlate" "1" "-dept" "SIMULATION" "-deptLabel" "SIM" "-deptTake" "1" "-comment" "Spinning cube" "-firstFrame" " 101" "-fps" "24.0" "-globalTake" "1" "-lastFrame" "110" "-prod" "ppjoshm" "-status" "unknown" "-suffix" "tif" "-user" "joshm" "-videoFormat" "DnX36" "-mobName" "ppjoshm_1 (SIM1)" "-fullHeight" "0" "-attributes" "simulation take#" "1" "simulation contact" "joshm" "TID" "4618558" "ShotTakeRange" "ppjoshm_1 (1) 101 - 110" "DepartmentDate" "simulation 1 03/29/2019 11:46" "FirstFrame" " 101" "LastFrame" "110" "prod" "ppjoshm" "Storybeat" "ppjoshm" -host "aaf04" -imageDirectory "" ', 'Take': '1', 'Comments': 'Comments_ABCXYZñç꜕∑´®†¥¨ˆøπ“‘åß∂ƒ©˙∆˚¬…æΩ≈ç√∫˜µ≤≥÷'}, 'Slots': {}, 'LastModified': '2019-04-04 19:12:37', 'CreationTime': '2019-03-29 18:52:18', 'MobID': 'urn:smpte:umid:060a2b34.01010101.01010f00.13000000.060e2b34.7f7f2a80.5c9e6962.cd005cc5'}}), source_range=otio.opentime.TimeRange(start_time=otio.opentime.RationalTime(value=0, rate=24.0), duration=otio.opentime.RationalTime(value=10, rate=24.0)), metadata={'AAF': {'Name': 'Clip_ABCXYZñç꜕∑´®†¥¨ˆøπ“‘åß∂ƒ©˙∆˚¬…æΩ≈ç√∫˜µ≤≥÷', 'ClassName': 'SourceClip', 'Length': 10, 'StartTime': 0, 'SourceMobSlotID': 2, 'SourceID': 'urn:smpte:umid:060a2b34.01010101.01010f00.13000000.060e2b34.7f7f2a80.5c9e6962.cd005cc5', 'DataDefinition': {'Identification': '01030202-0200-0000-060e-2b3404010101', 'Description': 'Sound Essence', 'Name': 'Sound'}}})], None, {'AAF': {'Name': 'TimelineMobSlot', 'ClassName': 'TimelineMobSlot', 'Origin': 0, 'EditRate': '24', 'Segment': {'Components': {}, 'Length': 10, 'DataDefinition': {'Identification': '01030202-0200-0000-060e-2b3404010101', 'Description': 'Sound Essence', 'Name': 'Sound'}}, 'PhysicalTrackNumber': 1, 'SlotID': 10, 'SlotName': '', 'MediaKind': 'Sound'}}), Composition: Stack(tracks, [otio.schema.Track(name='TimelineMobSlot', children=[otio.schema.Clip(name='Clip_ABCXYZñç꜕∑´®†¥¨ˆøπ“‘åß∂ƒ©˙∆˚¬…æΩ≈ç√∫˜µ≤≥÷', media_reference=otio.schema.MissingReference(name=None, available_range=otio.opentime.TimeRange(start_time=otio.opentime.RationalTime(value=86501, rate=24.0), duration=otio.opentime.RationalTime(value=10, rate=24.0)), metadata={'AAF': {'Name': 'Clip_ABCXYZñç꜕∑´®†¥¨ˆøπ“‘åß∂ƒ©˙∆˚¬…æΩ≈ç√∫˜µ≤≥÷', 'ClassName': 'MasterMob', 'ConvertFrameRate': False, 'MobAttributeList': {'_VERSION': 2, '_SAVED_AAF_AUDIO_RATE_NUM': 24, '_SAVED_AAF_AUDIO_RATE_DEN': 1, '_SAVED_AAF_AUDIO_LENGTH': 0, '_IMPORTSETTING': '__AttributeList', '_GEN': -1186676752, '_USER_POS': 0}, 'UserComments': {'SourceImageSize': '1024x428', 'comment': 'Spinning cube', 'deptLabel': 'SIM', 'dept': 'SIMULATION', 'status': 'unknown', 'simulation take#': '1', 'simulation contact': 'joshm', 'TID': '4618558', 'ShotTakeRange': 'ppjoshm_1 (1) 101 - 110', 'DepartmentDate': 'simulation 1 03/29/2019 11:46', 'FirstFrame': '101', 'LastFrame': '110', 'prod': 'ppjoshm', 'Storybeat': 'ppjoshm', 'Description': 'Spinning cube', 'Host': 'aaf04', 'User': 'joshm', 'unit': 'oreh', 'AAFCreationDate': 'Mar 29 2019 11:52:18', 'AAFCreationTool': 'aafMakeMedia Oct 26 2017 16:05:14', 'Profile': 'PixarRGB2005', 'RepeatCount': '1', 'VideoFormat': 'DnX36', 'SourceImages': '/shows/oreh/diskfarm/TAKES_ppjoshm_1/take_1_mov/TAKES_ppjoshm_1.take_1_mov.0.mov', 'GlobalTake': '1', 'CommandLine': '"/Applications/PixApps/Transmogrifier.app/Contents/Frameworks/FOLKit.framework/Versions/A/MacOS/aafMakeMedia" "-unit" "oreh" "-outFileName" "./ppjoshm_1.SIM1.aaf" "-shotName" "ppjoshm_1" "-slateType" "classic" "-makeLocatorOnFirstFrame" "1" "-baseName" "/shows/oreh/diskfarm/TAKES_ppjoshm_1/take_1_mov/TAKES_ppjoshm_1.take_1_mov.0.mov" "-baseNameIsFullName" "1" "-cropSlate" "1" "-dept" "SIMULATION" "-deptLabel" "SIM" "-deptTake" "1" "-comment" "Spinning cube" "-firstFrame" " 101" "-fps" "24.0" "-globalTake" "1" "-lastFrame" "110" "-prod" "ppjoshm" "-status" "unknown" "-suffix" "tif" "-user" "joshm" "-videoFormat" "DnX36" "-mobName" "ppjoshm_1 (SIM1)" "-fullHeight" "0" "-attributes" "simulation take#" "1" "simulation contact" "joshm" "TID" "4618558" "ShotTakeRange" "ppjoshm_1 (1) 101 - 110" "DepartmentDate" "simulation 1 03/29/2019 11:46" "FirstFrame" " 101" "LastFrame" "110" "prod" "ppjoshm" "Storybeat" "ppjoshm" -host "aaf04" -imageDirectory "" ', 'Take': '1', 'Comments': 'Comments_ABCXYZñç꜕∑´®†¥¨ˆøπ“‘åß∂ƒ©˙∆˚¬…æΩ≈ç√∫˜µ≤≥÷'}, 'Slots': {}, 'LastModified': '2019-04-04 19:12:37', 'CreationTime': '2019-03-29 18:52:18', 'MobID': 'urn:smpte:umid:060a2b34.01010101.01010f00.13000000.060e2b34.7f7f2a80.5c9e6962.cd005cc5'}}), source_range=otio.opentime.TimeRange(start_time=otio.opentime.RationalTime(value=86501, rate=24.0), duration=otio.opentime.RationalTime(value=10, rate=24.0)), metadata={'AAF': {'Name': 'Clip_ABCXYZñç꜕∑´®†¥¨ˆøπ“‘åß∂ƒ©˙∆˚¬…æΩ≈ç√∫˜µ≤≥÷', 'ClassName': 'SourceClip', 'Length': 10, 'ComponentAttributeList': {'_IMAGE_BOUNDS_OVERRIDE': '<?xml version="1.0" encoding="UTF-8" standalone="no" ?><Bounds> <Framing>-800/1 -450/1 1600/1 900/1</Framing> <Valid>-800/1 -450/1 1600/1 900/1</Valid> <Essence>-800/1 -450/1 1600/1 900/1</Essence> <Source>-800/1 -450/1 1600/1 900/1</Source></Bounds>'}, 'StartTime': 0, 'SourceMobSlotID': 1, 'SourceID': 'urn:smpte:umid:060a2b34.01010101.01010f00.13000000.060e2b34.7f7f2a80.5c9e6962.cd005cc5', 'DataDefinition': {'Identification': '01030202-0100-0000-060e-2b3404010101', 'Description': 'Picture Essence', 'Name': 'Picture'}}})], source_range=None, metadata={'AAF': {'Name': 'TimelineMobSlot', 'ClassName': 'TimelineMobSlot', 'Origin': 0, 'EditRate': '24', 'Segment': {'Components': {}, 'Length': 10, 'DataDefinition': {'Identification': '01030202-0100-0000-060e-2b3404010101', 'Description': 'Picture Essence', 'Name': 'Picture'}}, 'PhysicalTrackNumber': 1, 'SlotID': 9, 'SlotName': '', 'MediaKind': 'Picture'}}), otio.schema.Track(name='TimelineMobSlot', children=[otio.schema.Clip(name='Clip_ABCXYZñç꜕∑´®†¥¨ˆøπ“‘åß∂ƒ©˙∆˚¬…æΩ≈ç√∫˜µ≤≥÷', media_reference=otio.schema.MissingReference(name=None, available_range=otio.opentime.TimeRange(start_time=otio.opentime.RationalTime(value=0, rate=24.0), duration=otio.opentime.RationalTime(value=10, rate=24.0)), metadata={'AAF': {'Name': 'Clip_ABCXYZñç꜕∑´®†¥¨ˆøπ“‘åß∂ƒ©˙∆˚¬…æΩ≈ç√∫˜µ≤≥÷', 'ClassName': 'MasterMob', 'ConvertFrameRate': False, 'MobAttributeList': {'_VERSION': 2, '_SAVED_AAF_AUDIO_RATE_NUM': 24, '_SAVED_AAF_AUDIO_RATE_DEN': 1, '_SAVED_AAF_AUDIO_LENGTH': 0, '_IMPORTSETTING': '__AttributeList', '_GEN': -1186676752, '_USER_POS': 0}, 'UserComments': {'SourceImageSize': '1024x428', 'comment': 'Spinning cube', 'deptLabel': 'SIM', 'dept': 'SIMULATION', 'status': 'unknown', 'simulation take#': '1', 'simulation contact': 'joshm', 'TID': '4618558', 'ShotTakeRange': 'ppjoshm_1 (1) 101 - 110', 'DepartmentDate': 'simulation 1 03/29/2019 11:46', 'FirstFrame': '101', 'LastFrame': '110', 'prod': 'ppjoshm', 'Storybeat': 'ppjoshm', 'Description': 'Spinning cube', 'Host': 'aaf04', 'User': 'joshm', 'unit': 'oreh', 'AAFCreationDate': 'Mar 29 2019 11:52:18', 'AAFCreationTool': 'aafMakeMedia Oct 26 2017 16:05:14', 'Profile': 'PixarRGB2005', 'RepeatCount': '1', 'VideoFormat': 'DnX36', 'SourceImages': '/shows/oreh/diskfarm/TAKES_ppjoshm_1/take_1_mov/TAKES_ppjoshm_1.take_1_mov.0.mov', 'GlobalTake': '1', 'CommandLine': '"/Applications/PixApps/Transmogrifier.app/Contents/Frameworks/FOLKit.framework/Versions/A/MacOS/aafMakeMedia" "-unit" "oreh" "-outFileName" "./ppjoshm_1.SIM1.aaf" "-shotName" "ppjoshm_1" "-slateType" "classic" "-makeLocatorOnFirstFrame" "1" "-baseName" "/shows/oreh/diskfarm/TAKES_ppjoshm_1/take_1_mov/TAKES_ppjoshm_1.take_1_mov.0.mov" "-baseNameIsFullName" "1" "-cropSlate" "1" "-dept" "SIMULATION" "-deptLabel" "SIM" "-deptTake" "1" "-comment" "Spinning cube" "-firstFrame" " 101" "-fps" "24.0" "-globalTake" "1" "-lastFrame" "110" "-prod" "ppjoshm" "-status" "unknown" "-suffix" "tif" "-user" "joshm" "-videoFormat" "DnX36" "-mobName" "ppjoshm_1 (SIM1)" "-fullHeight" "0" "-attributes" "simulation take#" "1" "simulation contact" "joshm" "TID" "4618558" "ShotTakeRange" "ppjoshm_1 (1) 101 - 110" "DepartmentDate" "simulation 1 03/29/2019 11:46" "FirstFrame" " 101" "LastFrame" "110" "prod" "ppjoshm" "Storybeat" "ppjoshm" -host "aaf04" -imageDirectory "" ', 'Take': '1', 'Comments': 'Comments_ABCXYZñç꜕∑´®†¥¨ˆøπ“‘åß∂ƒ©˙∆˚¬…æΩ≈ç√∫˜µ≤≥÷'}, 'Slots': {}, 'LastModified': '2019-04-04 19:12:37', 'CreationTime': '2019-03-29 18:52:18', 'MobID': 'urn:smpte:umid:060a2b34.01010101.01010f00.13000000.060e2b34.7f7f2a80.5c9e6962.cd005cc5'}}), source_range=otio.opentime.TimeRange(start_time=otio.opentime.RationalTime(value=0, rate=24.0), duration=otio.opentime.RationalTime(value=10, rate=24.0)), metadata={'AAF': {'Name': 'Clip_ABCXYZñç꜕∑´®†¥¨ˆøπ“‘åß∂ƒ©˙∆˚¬…æΩ≈ç√∫˜µ≤≥÷', 'ClassName': 'SourceClip', 'Length': 10, 'StartTime': 0, 'SourceMobSlotID': 2, 'SourceID': 'urn:smpte:umid:060a2b34.01010101.01010f00.13000000.060e2b34.7f7f2a80.5c9e6962.cd005cc5', 'DataDefinition': {'Identification': '01030202-0200-0000-060e-2b3404010101', 'Description': 'Sound Essence', 'Name': 'Sound'}}})], source_range=None, metadata={'AAF': {'Name': 'TimelineMobSlot', 'ClassName': 'TimelineMobSlot', 'Origin': 0, 'EditRate': '24', 'Segment': {'Components': {}, 'Length': 10, 'DataDefinition': {'Identification': '01030202-0200-0000-060e-2b3404010101', 'Description': 'Sound Essence', 'Name': 'Sound'}}, 'PhysicalTrackNumber': 1, 'SlotID': 10, 'SlotName': '', 'MediaKind': 'Sound'}})], None, {}) -- Gonzalo Garramuño |
|
Gonzalo Garramuño
El 3/9/19 a las 20:33, Gonzalo Garramuño via Lists.Aswf.Io escribió:
I solved the above by doing copy.deepcopy(audio_tracks). -- Gonzalo Garramuño |
|
Joshua Minor
Yep, it looks like we didn't update the example code since adding checks to prevent accidental instancing. Your fix is correct. --- Joshua Minor (he-him) Pixar Studio Tools Story/Editorial/VR Previs Tech Lead joshm@...
|
|