An integrated multimedia encoding system is disclosed. Multimedia encoders
which are capable of adjusting bit rates receive multimedia data to
compress the data. After compressing the data, the multimedia encoders
adjust the bit rates of the elementary streams responsive to a control
input. Bit rates are increased or decreased using delays or, for video
data, by allocating more or less bits to each macroblock, frame or group
of frames. A unified memory module is coupled to the multimedia encoders
to store the multimedia elementary stream data, the Program or Transport
stream data, and data from other sources as needed. The unified memory is
capable of adjusting storage allocations responsive to the realtime
requirements of the incoming multimedia streams and the outgoing Program
or Transport stream data. A stream processor is coupled to the unified
memory module and the multimedia encoders for multiplexing the elementary
streams into a single stream, and monitoring the actual bit rate of the
combined multimedia stream. Monitoring the actual bit rate as a function
of number of bits passed over a period of time provides accurate feedback
as to the system throughput. A multimedia processor then determines the
bit rates of the elementary streams, and generating a control signal to
adjust the bit rates of the encoder to ensure that an optimal bit rate is
continuously achieved by the system. The stream processor also operates
using dedicated instructions which allow the stream processor to
efficiently multiplex the incoming streams together.
Se divulga un sistema de codificación integrado de las multimedias. Los codificadores de las multimedias que son capaces de ajustar índices binarios reciben datos de las multimedias para comprimir los datos. Después de comprimir los datos, los codificadores de las multimedias ajustan los índices binarios de las corrientes elementales responsivas a una entrada del control. Se aumentan los índices binarios o el usar disminuido retrasa o, para los datos de video, asignando más o menos pedacitos a cada macroblock, marco o grupo de bastidores. Un módulo unificado de la memoria se junta a los codificadores de las multimedias para almacenar los datos elementales de la corriente de las multimedias, los datos de la corriente del programa o del transporte, y los datos de otras fuentes según lo necesitado. La memoria unificada es capaz de ajustar las asignaciones de almacenaje responsivas a los requisitos en tiempo real de las corrientes entrantes de las multimedias y de los datos de la corriente saliente del programa o del transporte. Un procesador de la corriente se junta al módulo unificado de la memoria y a los codificadores de las multimedias para multiplexar las corrientes elementales en una sola corriente, y supervisando el índice binario real de las multimedias combinadas fluya. La supervisión del índice binario real en función del número de los pedacitos pasados durante tiempo proporciona la regeneración exacta en cuanto a el rendimiento de procesamiento de sistema. Un procesador de las multimedias entonces determina los índices binarios de las corrientes elementales, y de generar una señal de control de ajustar los índices binarios del codificador para asegurarse de que un índice binario óptimo es alcanzado continuamente por el sistema. El procesador de la corriente también funciona con las instrucciones dedicadas que permiten que el procesador de la corriente multiplexe eficientemente las corrientes entrantes juntas.