controller._append_nodes_for_inputs_list() performs as what controller.start() was performing, controller.start() now calls controller._append_nodes_for_inputs_list() once or multiple time (based on whether the input is multiperiod or not) to append more Transcoder and Packager nodes. #change the name of this method.
In ProcessStatusRunning is assigned to a greater value than Finished.
periodconcat_node.py added, it contains a new ThreadedNode that is appended after all the Transcoder and Packager nodes here, it checks whether all the Packager nodes have finished or not every while (3s) in the PeriodConcatNode._thread_single_pass(), if all of them are finished, it starts the period concatenation. For DASH, xml module is used to parse the .mpd files and extract the periods and duration information, for HLS we might use m3u8.
@joeyparrish
For the last point mentioned above, when doing periods in LIVE, do we need to mention the 'start' attribute for each Period for dash players to play it correctly, or we can just omit it safely.
Changes:
ConflictingFields
error raised wheninputs
andmultiperiod_inputs_list
fields are present at the same time in theinput_config.yaml
.MissingRequiredExclusiveFields
error raised when neitherinputs
field normultiperiod_inputs_list
field is present.InputConfig.__init__()
pre-checks for the presence or absence of these fields mentioned above and raises error accordingly.SinglePeriod
class added.controller._append_nodes_for_inputs_list()
performs as whatcontroller.start()
was performing,controller.start()
now callscontroller._append_nodes_for_inputs_list()
once or multiple time (based on whether the input is multiperiod or not) to append more Transcoder and Packager nodes. #change the name of this method.ProcessStatus
Running
is assigned to a greater value thanFinished
.periodconcat_node.py
added, it contains a new ThreadedNode that is appended after all the Transcoder and Packager nodes here, it checks whether all the Packager nodes have finished or not every while (3s
) in thePeriodConcatNode._thread_single_pass()
, if all of them are finished, it starts the period concatenation. For DASH,xml
module is used to parse the.mpd
files and extract the periods and duration information, for HLS we might usem3u8
.