mirror of
https://github.com/iluvcapra/pycmx.git
synced 2025-12-31 08:50:54 +00:00
Some infrastructure for CmxTransitions
This commit is contained in:
@@ -1,11 +1,12 @@
|
||||
class CmxEvent:
|
||||
def __init__(self,title,number,clip_name,source_name,channels,source_start,source_finish,
|
||||
def __init__(self,title,number,clip_name,source_name,channels, transition,source_start,source_finish,
|
||||
record_start, record_finish, fcm_drop, remarks = [] , unrecognized = []):
|
||||
self.title = title
|
||||
self.number = number
|
||||
self.clip_name = clip_name
|
||||
self.source_name = source_name
|
||||
self.channels = channels
|
||||
self.transition = transition
|
||||
self.source_start = source_start
|
||||
self.source_finish = source_finish
|
||||
self.record_start = record_start
|
||||
@@ -14,4 +15,11 @@ class CmxEvent:
|
||||
self.remarks = remarks
|
||||
self.unrecgonized = unrecognized
|
||||
|
||||
def accept_statement(statement):
|
||||
return
|
||||
|
||||
|
||||
class CmxTransition:
|
||||
def __init__(self, transition, transition_operand):
|
||||
self.transition = ""
|
||||
self.transition_operand = transition_operand
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
# (c) 2018 Jamie Hardt
|
||||
|
||||
from .parse_cmx_statements import parse_cmx3600_statements
|
||||
from .cmx_event import CmxEvent, CmxTransition
|
||||
from collections import namedtuple
|
||||
|
||||
from re import compile, match
|
||||
@@ -129,11 +130,6 @@ def parse_cmx3600(file):
|
||||
return event_list(title, parser)
|
||||
|
||||
|
||||
CmxEvent = namedtuple('CmxEvent',['title','number','clip_name',
|
||||
'source_name','channels','source_start','source_finish','record_start',
|
||||
'record_finish','fcm_drop'])
|
||||
|
||||
|
||||
def event_list(title, parser):
|
||||
state = {"fcm_drop" : False}
|
||||
|
||||
@@ -155,6 +151,7 @@ def event_list(title, parser):
|
||||
this_event = {'title': title, 'number': raw_event.event, 'clip_name': None ,
|
||||
'source_name': raw_event.source,
|
||||
'channels': channels,
|
||||
'transition': CmxTransition(raw_event.trans, raw_event.trans_op),
|
||||
'source_start': raw_event.source_in,
|
||||
'source_finish': raw_event.source_out,
|
||||
'record_start': raw_event.record_in,
|
||||
|
||||
@@ -16,6 +16,7 @@ StmtAudioExt = namedtuple("AudioExt",["audio3","audio4"])
|
||||
StmtClipName = namedtuple("ClipName",["name"])
|
||||
StmtSourceFile = namedtuple("SourceFile",["filename"])
|
||||
StmtRemark = namedtuple("Remark",["text"])
|
||||
StmtEffectsName = namedtuple("EffectsName",["name"])
|
||||
StmtTrailer = namedtuple("Trailer",["text"])
|
||||
StmtUnrecognized = namedtuple("Unrecognized",["content"])
|
||||
|
||||
@@ -58,6 +59,8 @@ def parse_cmx3600_line(line):
|
||||
return parse_remark( line[1:].strip())
|
||||
elif line.startswith(">>>"):
|
||||
return parse_trailer_statement(line)
|
||||
elif line.startswith("EFFECTS NAME IS"):
|
||||
return parse_effects_name(line)
|
||||
else:
|
||||
return parse_unrecognized(line)
|
||||
|
||||
@@ -98,6 +101,10 @@ def parse_remark(line):
|
||||
else:
|
||||
return StmtRemark(text=line)
|
||||
|
||||
def parse_effects_name(line):
|
||||
name = line[16:].strip()
|
||||
return StmtEffectsName(name=name)
|
||||
|
||||
def parse_unrecognized(line):
|
||||
return StmtUnrecognized(content=line)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user