1. A method for synchronization between and among a plurality of tasks, the method comprising: (a) selecting a data processing task, of the plurality of tasks, for synchronization; (b) determining a boundary condition in a data stream for commencement of the selected data processing task; (c) from the boundary condition determination, generating a timing marker for the commencement of the selected data processing task, the timing marker determined relative to the data stream; (d) communicating the timing marker to the selected data processing task.