Guest User

Untitled

a guest
Jul 16th, 2018
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.33 KB | None | 0 0
  1. import os
  2. import xml.etree.ElementTree as ET
  3.  
  4. xml_path = os.path.normpath("/path/timeline_300x200.xml")
  5.  
  6. tree = ET.parse(xml_path)
  7. root = tree.getroot()
  8.  
  9. sequence_width = int(root.findtext(".//media/video/format/samplecharacteristics/width"))
  10. sequence_height = int(root.findtext(".//media/video/format/samplecharacteristics/height"))
  11.  
  12. for clip in root.iter('clipitem'):
  13. clip_pathurl = clip.find('file').findtext('pathurl')
  14. clip_source_frame_in = clip.findtext('in')
  15. clip_source_frame_out = clip.findtext('out')
  16. clip_rec_frame_in = clip.findtext('start')
  17. clip_rec_frame_out = clip.findtext('end')
  18.  
  19. clip_source_width = int(clip.find('file').find('media').find('video').find('samplecharacteristics').findtext('width'))
  20. clip_source_height = int(clip.find('file').find('media').find('video').find('samplecharacteristics').findtext('height'))
  21.  
  22. clip_scale = float(clip.findtext(".//parameter[name='Scale']/value")) / 100
  23. clip_rec_width = clip_source_width * clip_scale
  24. clip_rec_height = clip_source_height * clip_scale
  25.  
  26. # Anchor Point
  27. clip_x_anchor_horiz_relative = float(clip.findtext(".//parameter[name='Anchor Point']/value/horiz"))
  28. clip_y_anchor_vert_relative = float(clip.findtext(".//parameter[name='Anchor Point']/value/vert"))
  29. clip_x_anchor_horiz_absolute = clip_x_anchor_horiz_relative * clip_source_width
  30. clip_y_anchor_vert_absolute = clip_y_anchor_vert_relative * clip_source_height
  31.  
  32. # Anchor Point shown in Premiere Pro GUI
  33. clip_x_anchor_horiz_absolute_from_left = clip_x_anchor_horiz_absolute + (clip_source_width / 2)
  34. clip_y_anchor_vert_absolute_from_left = clip_y_anchor_vert_absolute + (clip_source_height / 2)
  35.  
  36. # Center
  37. clip_x_center_horiz_relative = float(clip.findtext(".//parameter[name='Center']/value/horiz"))
  38. clip_y_center_vert_relative = float(clip.findtext(".//parameter[name='Center']/value/vert"))
  39. clip_x_center_horiz_absolute_source = clip_x_center_horiz_relative * clip_source_width
  40. clip_y_center_vert_absolute_source = clip_y_center_vert_relative * clip_source_height
  41.  
  42. # Center shown in Premiere Pro GUI
  43. clip_x_center_from_seq_left = (sequence_width / 2) + clip_x_center_horiz_absolute_source + clip_x_anchor_horiz_absolute
  44. clip_y_center_from_seq_top = (sequence_height / 2) + clip_y_center_vert_absolute_source + clip_y_anchor_vert_absolute
  45.  
  46. break
Add Comment
Please, Sign In to add comment