1. A media processor for the processing of media based upon instructions, comprising: a plurality of processing layers wherein each processing layer has at least one processing unit, at least one program memory, and at least one data memory, each of said processing unit, program memory, and data memory being in communication with one another; at least one processing unit in at least one of said processing layers performing line echo cancellation functions on received data; at least one processing unit in at least one of said processing layers performing encoding or decoding functions on received data; and a task scheduler adapted to receive a plurality of tasks from a source and distributing said tasks to said processing layers.