RU2599959C2 - Dram compression scheme to reduce power consumption in motion compensation and display refresh - Google Patents
Dram compression scheme to reduce power consumption in motion compensation and display refresh Download PDFInfo
- Publication number
- RU2599959C2 RU2599959C2 RU2014126348/08A RU2014126348A RU2599959C2 RU 2599959 C2 RU2599959 C2 RU 2599959C2 RU 2014126348/08 A RU2014126348/08 A RU 2014126348/08A RU 2014126348 A RU2014126348 A RU 2014126348A RU 2599959 C2 RU2599959 C2 RU 2599959C2
- Authority
- RU
- Russia
- Prior art keywords
- motion compensation
- data
- module
- compensation module
- display device
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/423—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
- H04N19/426—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements using memory downsizing methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/423—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
- H04N19/426—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements using memory downsizing methods
- H04N19/428—Recompression, e.g. by spatial or temporal decimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
- H04N9/80—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
- H04N9/804—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
- H04N9/8042—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
Description
Уровень техникиState of the art
Некоторые мобильные устройства могут иметь возможность воспроизведения видео из различных источников. Типичное решение для воспроизведения видео на мобильном устройстве может содержать использование технологий компенсации движения для декодирования видеоданных перед сохранением данных в буфере кадров DRAM (динамическая оперативная память), в котором контроллер устройства отображения может обрабатывать данные буфера кадров для вывода на устройство отображения. Традиционные попытки сокращения объема данных потребляемой памяти, используемой для операций компенсации движения, могут иметь отрицательные последствия для эффективности мощности памяти устройства отображения. Традиционные технологии снижения объема памяти устройства отображения, с другой стороны, могут представлять собой проблемы с точки зрения декодирования видео.Some mobile devices may be able to play videos from various sources. A typical solution for playing video on a mobile device may include the use of motion compensation technologies for decoding video data before storing data in a DRAM (dynamic random access memory) frame buffer, in which the display device controller can process the frame buffer data for output to the display device. Conventional attempts to reduce the amount of data consumed by the memory used for motion compensation operations can have negative consequences for the memory power efficiency of the display device. Conventional technologies for reducing the memory capacity of a display device, on the other hand, can be a problem in terms of video decoding.
Краткое описание чертежейBrief Description of the Drawings
Различные преимущества вариантов осуществления настоящего изобретения станут очевидны специалистам в данной области техники при прочтении последующего описания и приложенной формулы изобретения и обращении к следующим чертежи, на которых:Various advantages of embodiments of the present invention will become apparent to those skilled in the art upon reading the following description and the appended claims and referring to the following drawings, in which:
Фиг. 1А - блок-схема примера данных кадра, связанная с операцией декодирования видео в соответствии с вариантом осуществления;FIG. 1A is a flowchart of an example of frame data associated with a video decoding operation in accordance with an embodiment;
Фиг. 1В - блок-схема примера использования данных кадра в архитектуре воспроизведения видео в соответствии с вариантом осуществления;FIG. 1B is a block diagram of an example of using frame data in a video reproduction architecture in accordance with an embodiment;
Фиг. 2А - блок-схема примера порядка доступа к буферу кадра компенсации движения в соответствии с вариантом осуществления;FIG. 2A is a flowchart of an example of a buffer access order of a motion compensation frame in accordance with an embodiment;
Фиг. 2В - блок-схема примера порядка доступа к буферу выходного кадра устройства отображения в соответствии с вариантом осуществления;FIG. 2B is a flowchart of an example of a buffer access order of an output frame of a display device in accordance with an embodiment;
Фиг. 3 - блок-схема примера контроллера памяти, соответствующего варианту осуществления;FIG. 3 is a block diagram of an example memory controller according to an embodiment;
Фиг. 4 - пример схемы сжатия, соответствующей варианту осуществления;FIG. 4 is an example of a compression scheme according to an embodiment;
Фиг. 5 - блок-схема примера архитектуры сжатия/распаковки в соответствии с вариантом осуществления;FIG. 5 is a block diagram of an example compression / decompression architecture in accordance with an embodiment;
Фиг. 6А - блок-схема последовательности выполнения операций примера способа обработки запросов записи памяти в соответствии с вариантом осуществления;FIG. 6A is a flowchart of an example method for processing memory write requests in accordance with an embodiment;
Фиг. 6В - блок-схема последовательности выполнения операций примера способа обработки запросов считывания памяти в соответствии с вариантом осуществления;FIG. 6B is a flowchart of an example method for processing memory read requests in accordance with an embodiment;
Фиг. 7 - блок-схема примера системы, соответствующей варианту осуществления;FIG. 7 is a block diagram of an example system according to an embodiment;
Фиг. 8 - блок-схема примера системы, имеющей навигационный контроллер, соответствующей варианту осуществления; иFIG. 8 is a block diagram of an example system having a navigation controller in accordance with an embodiment; and
Фиг. 9 - блок-схема примера системы, имеющей малые конструктивные параметры, соответствующей варианту осуществления.FIG. 9 is a block diagram of an example system having small design parameters according to an embodiment.
Осуществление изобретенияThe implementation of the invention
Варианты осуществления могут содержать контроллер памяти, имеющий модуль сжатия для приема запроса записи от модуля компенсации движения, в котором запрос записи содержит видеоданные. Модуль сжатия может также проводить сжатие видеоданных, чтобы получать сжатые данные, и хранить сжатые данные в одном или более чипах памяти. В одном из примеров контроллера памяти также имеет модуль распаковки.Embodiments may include a memory controller having a compression module for receiving a recording request from a motion compensation module in which the recording request contains video data. The compression module may also compress video to receive compressed data and store the compressed data in one or more memory chips. In one example, the memory controller also has an unpacking module.
Варианты осуществления могут также содержать систему, содержащую устройство отображения, один или более чипов памяти и чип процессора с модулем компенсации движения и контроллером памяти. Контроллер памяти может содержать модуль сжатия для приема запроса записи от модуля компенсации движения, при этом запрос записи содержит видеоданные. Кроме того, модуль сжатия может проводить сжатие видеоданных, чтобы получать сжатые данные, и хранить сжатые данные по меньшей мере в одном или более чипах памяти.Embodiments may also comprise a system comprising a display device, one or more memory chips and a processor chip with a motion compensation module and a memory controller. The memory controller may include a compression module for receiving a recording request from the motion compensation module, wherein the recording request contains video data. In addition, the compression module may compress the video data to receive compressed data and store the compressed data in at least one or more memory chips.
Другие варианты осуществления могут содержать реализуемый компьютером способ работы контроллера памяти, причем запрос записи принимается от модуля компенсации движения. Запрос записи может содержать видеоданные, причем способ дополнительно содержит проведение сжатия видеоданных, чтобы получить сжатые данные, и хранение сжатых данных в одном или более чипах памяти.Other embodiments may comprise a computer-implemented method of operating a memory controller, wherein a write request is received from the motion compensation module. The write request may comprise video data, the method further comprising compressing the video data to obtain compressed data and storing the compressed data in one or more memory chips.
Дополнительно, варианты осуществления могут содержать осуществляемый компьютером способ действия контроллера памяти, в котором запрос записи принимается от модуля компенсации движения. Запрос записи может содержать видеоданные, причем способ дополнительно содержит проведение сжатия видеоданных, чтобы получить сжатые данные. Сжатие видеоданных может быть прозрачным для модуля компенсации движения. Способ может дополнительно обеспечивать хранение сжатых данных на одном или более чипах памяти и прием запроса считывания. Запомненные данные могут быть восстановлены по меньшей мере из одного или более чипов памяти в ответ на запрос считывания. Кроме того, может быть проведена распаковка хранящихся данных, чтобы получить распакованные данные. В одном из примеров распаковка является прозрачной для запрашивающего хранящиеся данные.Additionally, embodiments may comprise a computer-implemented method of operating a memory controller in which a write request is received from a motion compensation module. The write request may comprise video data, the method further comprising performing video compression to obtain compressed data. Video compression can be transparent to the motion compensation module. The method may further provide for storing compressed data on one or more memory chips and receiving a read request. The stored data may be recovered from at least one or more memory chips in response to a read request. In addition, the decompression of the stored data may be performed to obtain the decompressed data. In one example, unpacking is transparent to the requester of the stored data.
Обратимся теперь к фиг. 1А и 1В, где показаны данные кадров и архитектура 16 воспроизведения видео, соответственно, для видеоконтента, декодируемого на такой платформе, как мобильное устройство. В частности, система 26 памяти архитектуры 16 может содержать буфер 30 кадров DRAM, в котором содержатся реконструированные пиксели, восстановленные контроллером (не показан) устройства отображения, и которые выводятся на устройство 28 отображения в соответствии с видеопротоколом, таким как, например, протокол MPEG2 (например, Moving Picture Experts Group 2). В показанном примере данные кадра содержат I-кадр (внутрикодированный кадр) 10, набор В-кадров (двунаправленные предсказанные кадры) 12 (12а-12с), и Р-кадр (предсказанный кадр) 14. Каждый В-кадр 12 может декодироваться, используя I-кадр 10 в качестве опорного кадра, который происходит раньше по времени, и используя Р-кадр 14 в качестве опорного кадра, который происходит позже по времени. Таким образом, реконструкция В-кадров 12 может быть относительно интенсивно использующей память из-за необходимости неоднократного получения доступа как к I-кадру 10, так и к Р-кадру 14 данных со стороны системы 26 памяти.Turning now to FIG. 1A and 1B, where frame data and
Например, архитектура 16 воспроизведения видео может содержать декодер 18 переменной длины (“VLD”), подающий декодированные видеоданные как на модуль 20 обратного дискретного косинусного преобразования (“ГОСТ”), так и на модуль 22 компенсации движения (“МС”), причем модуль 22 МС может реконструировать кадры одного макроблока (например, 16×16 пикселей) во время использования векторов движения, которые, по существу, являются указателями координат пикселей в опорных кадрах (например, I-кадре и Р-кадре). Как будет обсуждаться более подробно, описанные здесь способы позволяют более эффективный доступ к буферу 30 кадров с точки зрения как модуля 22 МС, так и устройства 28 отображения, причем повышенная эффективность памяти может позволить снизить потребление энергии и увеличить время работы от батареи.For example, the
На фиг. 2А и 2В показаны порядки доступа к буферу кадров с точки зрения модуля компенсации движения и устройства отображения, соответственно. В частности, показанный порядок доступа к буферу кадров для модуля компенсации движения выполнен на основе макроблока 32, тогда как порядок доступа к буферу кадров для устройства отображения может быть выполнен на строчной 34 основе. Таким образом, может существовать рассогласованность между двумя порядками доступа, что может создавать трудности, которые устраняются описанными здесь способами.In FIG. 2A and 2B show access orders to the frame buffer from the point of view of the motion compensation module and the display device, respectively. In particular, the shown order of access to the frame buffer for the motion compensation module is based on the
В частности, на фиг. 3 показан контроллер 36 памяти, управляющий передачей видеоданных к одному или более чипам 38 DRAM и от них, в котором чипы 38 DRAM могут использоваться для реализации буфера кадров, такого как буфер 30 кадров (фиг. IB), уже обсуждавшийся. В показанном примере контроллер 36 памяти содержит логику 40 эффективности видео, имеющую модуль 42 сжатия, чтобы обрабатывать запросы 44 записи, поступающие (прямо или косвенно) от модуля 22 компенсации движения, и модуль 46 распаковки для обработки запросов 48 (48а, 48b) считывания, поступающие (прямо или косвенно) от модуля 22 компенсации движения и устройства 28 отображения. Таким образом, запросы 44 записи от модуля 22 компенсации движения и запросы 48b считывания от устройства 28 отображения могут содержать передачу видеоданных I-кадра 10, В-кадра 12 и Р-кадра 14 (фиг. 1А), тогда как запросы 48а считывания от модуля 22 компенсации движения могут содержать передачу данных I-кадра 10 и Р-кадра 14 (фиг. 1А) (например, в качестве опорных кадров).In particular, in FIG. 3, a
Показанный модуль 42 сжатия выполнен с возможностью приема запросов 44 записи от модуля 22 компенсации движения, проведения сжатия видеоданных, связанных с запросами 44 записи, и записи сжатых данных в чипы 38 DRAM по мере необходимости. Таким образом, модуль 42 сжатия может сжимать I-, В- и Р-кадры, принятые от модуля 22 компенсации движения на помакроблочной основе, причем сжатие может быть прозрачным для модуля 22 компенсации движения.The shown
На фиг. 4 показан подход к проведению сжатия, при котором используются процесс дифференциальной импульсно-кодовой модуляции (DPCM) и процесс кодирования Хаффмана. В частности, макроблочная строка из шестнадцати значений яркости (например, выраженных в 16 байтах) может быть выражена как “крутизны” DPCM, которые могут, в свою очередь, быть преобразованы в набор “дельт крутизны” DPCM. Процесс кодирования Хаффмана может поэтому формировать код 50, сжатый на 50%. Если требуется сжатие более, чем на 50%, один или более замыкающих коэффициентов АС (например, переменный ток, ненулевая частота) DCT могут усекаться, чтобы получить сжатие с потерями, причем усечение может быть редким и может быть незаметным для непрофессиональных зрителей.In FIG. 4 shows an approach to performing compression using a differential pulse code modulation (DPCM) process and a Huffman coding process. In particular, a macroblock string of sixteen brightness values (for example, expressed in 16 bytes) can be expressed as “steepnesses” of the DPCM, which can, in turn, be converted into a set of “steepness deltas” of the DPCM. The Huffman coding process can therefore generate 50 code, 50% compressed. If more than 50% compression is required, one or more AC closing factors (e.g., alternating current, non-zero frequency), DCTs can be truncated to produce lossy compression, and truncation can be rare and may not be visible to laypersons.
Возвращаясь к фиг. 3, показанный модуль 46 распаковки выполнен с возможностью приема запросов 48 считывания от модуля 22 компенсации движения 22 и устройства отображения, восстановления запомненных данные, полученных от чипов 38 DRAM, в ответ на запросы 48 считывания, и проведения распаковки хранящихся/восстановленных данных, чтобы получить распакованные данные. Если распакованные данные соответствуют запросу 48а считывания от модуля 22 компенсации движения, распакованные данные могут быть переданы модулю 22 компенсации движения, в котором в показанном примере распаковка запомненных данных прозрачна для модуля 22 компенсации движения. Если распакованные данные соответствуют запросу 48b считывания (например, обновление устройства отображения) от устройства 28 отображения, распакованные данные может быть переданы устройству 28 отображения, причем в показанном примере распаковка запомненных данных прозрачна для устройства 28 отображения. Процесс распаковки может, по существу, быть обратным процессу сжатия. Контроллер 36 памяти может также поддерживать другие передачи 49, не связанные с воспроизведением, к чипам 38 DRAM и от них.Returning to FIG. 3, the
На фиг. 5 показана архитектура 52 сжатия, в которой виртуальное представление 54 архитектуры памяти с точки зрения модуля компенсации движения и устройства отображения является данными, хранящимися и восстанавливаемыми в макроблоках. Фактическое представление 56 архитектуры памяти, однако, отражает, что видеоданные могут использовать значительно меньшую память. Уменьшенный объем использования памяти может, в свою очередь, обеспечить существенную экономию потребления энергии, связанной с доступами к памяти. Особо заметим, что представленный подход не требует дополнительных буферов в DRAM или дополнительных операций копирования в памяти. Таким образом, реализация представленного решения в контроллере памяти может позволить повысить эффективность доступа к памяти, причем решение может оставаться прозрачным для системных компонент, отличных от самой архитектуры памяти.In FIG. 5 shows a
На фиг. 6А показан способ 60 обработки запросов записи. Способ 60 может быть реализован в контроллере памяти как набор логических команд, хранящихся на машинном или считываемом компьютером носителе памяти, таком как RAM, постоянная память (ROM), программируемая ROM (PROM), флэш-память и т.д., в конфигурируемой логике, такой как, например, программируемые логические матрицы (PLA), программируемые логические интегральные схемы (FPGA), комплексные программируемые логические устройства (CPLD), в аппаратных средствах логики с фиксированной функциональностью, использующих такую схемотехническую технологию, как, например, специализированная интегральная схема (ASIC), технология комплиментарных структур металл-окисел-полупроводник (МОП) (CMOS) или технология транзисторных логических схем с транзисторными связями (TTL) или любая их комбинация. Например, управляющая программа компьютера, чтобы выполнить операции, показанные в способе 60, может быть записана в любой комбинации одного или более языков программирования, в том числе, на объектно-ориентированном языке программирования, таком как С++ и т.п., и на стандартных языках процедурного программирования, таких как язык программирования “С” или подобные языки программирования. Кроме того, способ 60 может быть реализован, используя любую из упомянутых выше схемотехнических технологий.In FIG. 6A shows a
Показанный блок 62 обработки обеспечивает прием запроса записи от модуля компенсации движения, в котором запрос записи может содержать видеоданные. Блок 64 может провести сжатие видеоданных, чтобы получить сжатые данные, в которых сжатие видеоданных прозрачно для модуля компенсации движения. Сжатые данные могут храниться в одном или более чипах памяти в блоке 66.The
На фиг. 6B представлен способ 68 обработки запросов считывания. Способ 60 может быть реализован в контроллере памяти как ряд логических команд, хранящихся на машинном или считываемом компьютером носителе памяти, таком как RAM, ROM, PROM, флэш-память и т.д., в конфигурируемой логике, такой как, например, PLA, FPGA, CPLD, в аппаратных средствах логики с фиксированной функциональностью, использующей такую схемотехническую технологию, как, например, ASIC, CMOS или транзисторные логические схемы с транзисторными связями (TTL), или любую их комбинацию. Показанный блок 70 обработки обеспечивает прием запроса считывания от системного компонента, такого как модуль компенсации движения или контроллер устройства отображения. Запомненные данные могут быть восстановлены по меньшей мере из одного из чипов памяти в блоке 72, причем блок 74 может провести распаковку запомненных данных. Распакованные данные могут затем быть переданы запросчику данных.In FIG. 6B illustrates a
Обратимся теперь к фиг. 7, где показана компьютерная система 76, разрешающая использование видео, в которой реализуются сжатие на основе контроллера памяти и распаковка. Компьютерная система 76 может быть устройством мобильной платформы таким как, например, ноутбук, PDA, беспроводной смартфон, медиаплейер, устройство получения изображений, MID, любое смарт-устройство, такое как смартфон, смарт-планшет и т.д, или любая их комбинация. Компьютерная система 76 может также быть частью фиксированной платформы, такой как персональный компьютер (PC), смарт-TV, сервер, рабочая станция и т.д. Показанная компьютерная система 76 содержит один или более процессоров 78, устройство 80 отображения, имеющее контроллер 82 устройства отображения, и системную память 84, которая может содержать, например, модули синхронного DRAM с двойной скоростью передачи данных (DDR) (SDRAM, например, DDR3 SDRAM по стандарту JEDEC JESD79-3C, апрель 2008). Модули системной памяти 84 могут содержаться в одном или более чипах, связанных с модулем памяти с однорядным расположением выводов (SIMM), модулем памяти с двухрядным расположением выводов (DIMM), малым внешним DIMM (SODLMM) и т.д.Turning now to FIG. 7, which shows a
Процессор 78 может иметь видеодекодер 86 и интегрированный контроллер 88 памяти и одно или более ядер процессора (не показаны), чтобы выполнять один или более драйверов, связанных с управляющей ОС (операционной системой) и/или прикладным программным обеспечением, в котором каждое ядро может быть полностью функциональным с помощью блоков вызова команд, декодерами команд, кэшем уровня один (L1), блоками исполнения и т.д. Процессор 78 альтернативно может связываться с вариантом контроллера 88 памяти вне чипа, также известным как северный мост, через системную шину. Показанный процессор 78 связывается с концентратором 90 контроллера платформы (РСН), также известным как южный мост, через шину концентратора. Контроллер 88 памяти/процессор 78 и РСН 90 иногда упоминается как чипсет. РСН может быть связан с сетевым контроллером 92 и/или запоминающим устройством 94 большой емкости (например, жестким диском/HDD, накопителем на оптических дисках и т.д.).The
Показанный контроллер 88 памяти содержит логику 96 эффективности, такую как уже обсуждавшаяся логика 40 эффективности (фиг. 3). Таким образом, контроллер 88 памяти может быть выполнен с возможностью приема запросов записи от модуля компенсации движения (не показан) декодера 86, сжатия видеоданных, связанных с запросами записи, и хранения сжатых данные в системной памяти 84. Кроме того, контроллер 88 памяти может быть выполнен с возможностью приема запросов считывания от модуля 86 компенсации движения декодера и контроллера 82 устройства отображения, восстановления запомненных данных из системной памяти 84 в ответ на запросы считывания и распаковки восстановленных данных перед передачей распакованных данных запросчику. Процессы сжатия и распаковки могут быть прозрачными для всех системных компонент, кроме контроллера 88 памяти и системной памяти 84.The
На фиг. 8 представлен вариант осуществления системы 700. В вариантах осуществления система 700 может быть медиасистемой, хотя система 700 не ограничивается этим контекстом. Например, система 700 может быть введена в персональный компьютер (PC), ноутбук, ультраноутбук, планшет, сенсорную панель, портативный компьютер, карманный компьютер, малый карманный компьютер, персональный цифровой секретарь (PDA), мобильный телефон, объединенный мобильный телефон/PDA, телевизор, смарт-устройство (например, смартфон, смарт-планшет или смарт-TV), мобильное интернет-устройство (MID), устройство передачи сообщений, устройство передачи данных и т.д.In FIG. 8 illustrates an embodiment of a
В вариантах осуществления система 700 содержит платформу 702, связанную с дисплеем 720. Платформа 702 может принимать контент от устройства контента, такого как устройство(-а) 730 служб контента или устройство(-а) 740 доставки контента или другие подобные источники контента. Навигационный контроллер 750, содержащий одну или более навигационных функций, может использоваться для взаимодействия, например, с платформой 702 и/или дисплеем 720. Каждый из этих компонент ниже описывается более подробно.In embodiments,
В вариантах осуществления платформа 702 содержать любую комбинацию чипсета 705, процессора 710, памяти 712, запоминающего устройства 714, графической подсистемы 715, приложений 716 и/или радиосредств 718. Чипсет 705 может осуществлять многостороннюю связь между процессором 710, памятью 712, запоминающим устройством 714, графической подсистемой 715, приложениями 716 и/или радиосредствами 718. Например, чипсет 705 может содержать адаптер запоминающего устройства (не показан), способный обеспечивать многостороннюю связь с запоминающим устройством 714.In embodiments,
Процессор 710 может быть реализован как процессор компьютера со сложной системой команд (CISC) или как процессор компьютера с сокращенной системой команд (RISC), как процессор, совместимый с системой команд х86, многоядерный или любой другой микропроцессорный блок или центральный процессор (CPU). В вариантах осуществления процессор 710 может содержать двухъядерный процессор(-ы), двухъядерный мобильный процессор(-ы) и т.д.The processor 710 can be implemented as a computer processor with a complex command system (CISC) or as a computer processor with an abbreviated system of commands (RISC), as a processor compatible with the x86 instruction system, multicore, or any other microprocessor unit or central processing unit (CPU). In embodiments, the processor 710 may comprise a dual-core processor (s), a dual-core mobile processor (s), etc.
Память 712 может быть реализована как устройство энергозависимой памяти такой как, в частности, оперативная память (RAM), динамическая оперативная память (DRAM), или статическая RAM (SRAM).The memory 712 may be implemented as a volatile memory device such as, in particular, random access memory (RAM), dynamic random access memory (DRAM), or static RAM (SRAM).
Запоминающее устройство 714 может быть реализовано как устройство энергонезависимой памяти, такое как, в частности, дисковод магнитного диска, оптический дисковод, лентопротяжное устройство, внутреннее запоминающее устройство, присоединенное запоминающее устройство, флэш-память, SDRAM с резервированием от батареи (синхронный DRAM) и/или сетевое доступное запоминающее устройство. В вариантах осуществления запоминающее устройство 714 может содержать технологию повышения улучшенной защиты характеристик запоминающего устройства для ценных цифровых медиаданных, когда имеется, например, множество жестких дисков.The storage device 714 can be implemented as a non-volatile memory device, such as, in particular, a magnetic disk drive, optical drive, tape drive, internal storage device, attached storage device, flash memory, battery backup SDRAM (synchronous DRAM) and / or network accessible storage device. In embodiments, the storage device 714 may comprise technology for enhancing improved protection of the performance of the storage device for valuable digital media when there are, for example, a plurality of hard drives.
Графическая подсистема 715 может выполнять обработку изображений, таких как фотографии или видео, для устройства отображения. Графическая подсистема 715 может быть, например, графическим процессором (GPU) или визуальный процессор (VPU). Аналоговый или цифровой интерфейс может использоваться для связи средствами связи графической подсистемы 715 и устройства 720 отображения. Например, интерфейс может быть любым мультимедийным интерфейсом высокой четкости, DisplayPort, беспроводным HDMI, и/или быть выполнен на основе беспроводных HD-совместимых технологий. Графическая подсистема 715 может быть интегрирована в процессор 710 или чипсет 705. Графическая подсистема 715 может быть автономной картой, средствами связи связанной с чипсетом 705.The graphics subsystem 715 may perform image processing, such as photographs or video, for the display device. The graphics subsystem 715 may be, for example, a graphics processor (GPU) or a visual processor (VPU). An analog or digital interface may be used for communication by communication of the
Технологии обработки графики и/или видеоданных, описанные здесь, могут быть реализованы в различной аппаратурной архитектуре. Например, графические и/или функциональные возможности могут быть интегрированы внутри чипсета. Альтернативно, могут использоваться дискретный графический процессор и/или видеопроцессор. Как еще один другой вариант осуществления, функции графики и/или видео могут быть реализованы процессором общего назначения, содержащим многоядерный процессор. В дополнительном варианте осуществления функции могут быть реализованы в устройстве бытовой электроники.The graphics and / or video processing techniques described herein may be implemented in various hardware architectures. For example, graphics and / or functionality can be integrated within the chipset. Alternatively, a discrete graphics processor and / or video processor may be used. As yet another embodiment, the graphics and / or video functions may be implemented by a general-purpose processor comprising a multi-core processor. In a further embodiment, the functions may be implemented in a consumer electronics device.
Радиосредства 718 могут содержать одно или более радиосредств, способных передавать и принимать сигналы, используя различные соответствующие технологии радиосвязи. Такие технологии могут содержать связь через одну или более беспроводных сетей. Примерные беспроводные сети содержат (в частности), беспроводные локальные сети (WLAN), беспроводные персональные сети (WPAN), беспроводные городские компьютерные сети (WMAN), сети сотовой и спутниковой связи. При связи по таким сетям радиосредства 718 могут работать в соответствии с одним или более применяемыми стандартами в любой версии.
В вариантах осуществления устройство 720 отображения может содержать любой монитор или устройство отображения типа телевизионного приемника. Устройство 720 отображения может содержать, например, экран компьютерного устройства отображения, устройство отображения сенсорного экрана, видеомонитор, устройство, подобное телевизионному приемнику и/или телевизор. Устройство 720 отображения может быть цифровым и/или аналоговым. В вариантах осуществления устройство 720 отображения может быть голографическим дисплеем. Кроме того, устройство 720 отображения может быть прозрачной поверхностью, которая может принимать визуальную проекцию. Такие проекции могут передавать различные формы информации, изображений и/или объектов. Например, такие проекции могут быть визуальным наложением для приложения мобильной дополненной реальности (MAR). Под управлением одного или более приложений 716 программного обеспечения платформа 702 может отображать интерфейс 722 пользователя на устройстве 720 отображения.In embodiments, the display device 720 may include any monitor or display device such as a television receiver. The display device 720 may comprise, for example, a screen of a computer display device, a touch screen display device, a video monitor, a device similar to a television receiver and / or television. The display device 720 may be digital and / or analog. In embodiments, the display device 720 may be a holographic display. In addition, the display device 720 may be a transparent surface that can receive a visual projection. Such projections can transmit various forms of information, images and / or objects. For example, such projections may be a visual overlay for a mobile augmented reality (MAR) application. Running one or more software applications 716,
В вариантах осуществления устройство(-а) 730 служб контента может управляться любой национальной, международной и/или независимой службой и, таким образом, быть доступным платформе 702, например, через Интернет. Устройство(-а) 730 служб контента может быть связано с платформой 702 и/или устройством 720 отображения. Платформа 702 и/или устройство(-а) 730 служб контента могут соединяться с сетью 760, чтобы осуществлять связь (например, передачу и/или прием) для передачи медиаинформации в сеть и из сети 760. Устройство(-а) 740 доставки контента также может быть связано с платформой 702 и/или устройством 720 отображения.In embodiments, the device (s) 730 content services can be controlled by any national, international and / or independent service and, thus, be available to the
В вариантах осуществления устройство(-а) 730 служб контента может содержать кабельную телевизионную стойку, персональный компьютер, сеть, телефон, устройства или аппаратура, позволяющие работу с Интернетом, способные передавать цифровую информацию и/или контент, и любые другие подобные устройства, способные однонаправлено или двунаправлено передавать контент между провайдерами контента и платформой 702 и/устройством 720 отображения через сеть 760 или напрямую. Следует понимать, что контент может передаваться однонаправлено и/или двунаправлено к любому одному из компонент системы 700 или от него и от провайдера контента через сеть 760. Примеры контента могут содержать любую медиаинформацию, содержащую, например, видео, музыку, медицинскую и игровую информацию и т.д.In embodiments, the content service device (s) 730 may include a cable television rack, personal computer, network, telephone, devices or equipment capable of working with the Internet, capable of transmitting digital information and / or content, and any other similar devices capable of unidirectional or bi-directionally transferring content between content providers and
Устройство(-а) 730 служб контента принимает контент, такой как кабельные телевизионные программы, содержащие медиаинформацию, цифровую информацию и/или другой контент. Примеры провайдеров контента могут содержать любые кабельные провайдеры или провайдеры спутникового телевидения или радио или провайдеры контента Интернета. Представленные примеры не предназначены ограничивать варианты осуществления изобретения.The device (s) 730 content services receives content, such as cable television programs containing media information, digital information and / or other content. Examples of content providers may include any cable providers or satellite television or radio providers or Internet content providers. The presented examples are not intended to limit embodiments of the invention.
В вариантах осуществления платформа 702 может принимать управляющие сигналы от навигационного контроллера 750, имеющего одну или более навигационных функций. Навигационные функции контроллера 750 могут использоваться, например, для взаимодействия с интерфейсом 722 пользователя. В вариантах осуществления навигационный контроллер 750 может быть указывающим устройством, которое может быть компонентом компьютерного оборудования (конкретно, устройством интерфейса пользователя), позволяющим пользователю вводить пространственные (например, непрерывные и многомерные) данные в компьютер. Многие системы, такие как графические интерфейсы пользователя (GUI), телевизионные приемники и мониторы, позволяют пользователю управлять и обеспечивать данные для компьютера или телевидения, используя физические жесты.In embodiments, the
Перемещения навигационных функций контроллера 750 могут отражаться на устройстве отображения (например, на устройстве 720 отображения), перемещая указатель, курсор, фокусирующее кольцо или другие визуальные индикаторы, отображаемые на устройстве отображения. Например, под управлением приложений 716 программного обеспечения, навигационные функции, расположенные на навигационном контроллере 750, могут отображаться в виртуальных навигационных функциях, отображаемых, например, на интерфейсе 722 пользователя. В вариантах осуществления контроллер 750 может не быть отдельным компонентом, а интегрироваться в платформу 702 и/или устройство 720 отображения. Варианты осуществления, однако, не ограничиваются описанными или показанными здесь элементами или контекстом.The movements of the navigation functions of the
В вариантах осуществления драйверы (не показаны) могут содержать технологию, позволяющую пользователям мгновенно включать и выключать платформу 702, такую как телевизор, например, нажатием кнопки после начальной загрузки, когда она разрешена. Программная логика может позволить платформе 702 потоковый контент к медиаадаптерам или другому устройству(-ам) служб 730 контента или устройству(-ам) 740 доставки контента, когда платформа выключается. Кроме того, чипсет 705 может содержать поддержку аппаратных средств и/или программную поддержку, например, для стереозвука в системе 5.1 и/или стереозвука высокой четкости в системе 7.1. Драйверы могут содержать графический драйвер для интегрированных графических платформ. В вариантах осуществления графический драйвер может содержать графическую карту Express для взаимодействия периферийных компонент (PCI).In embodiments, drivers (not shown) may include technology that allows users to instantly turn a
В различных вариантах осуществления один или более компонент, показанных в системе 700, могут быть интегрированы. Например, платформа 702 и устройство(-а) 730 служб контента могут быть интегрированы или могут быть интегрированы платформа 702 и устройство(-а) 740 доставки контента или платформа 702, устройство(-а) 730 служб контента и устройство(-а) 740 доставки контента могут, например, быть интегрированы. В различных вариантах осуществления платформа 702 и устройство 720 отображения может являться интегрированным блоком. Устройство 720 отображения и устройство(-а) 730 службы контента могут быть интегрированы или, например, устройство 720 отображения и устройство(-а) 740 доставки контента могут быть интегрированы. Эти примеры не предназначены для создания ограничения изобретения.In various embodiments, one or more of the components shown in
В различных вариантах осуществления система 700 может быть реализована как беспроводная система, проводная система или их комбинация. При реализации в виде беспроводной системы, система 700 может содержать компоненты и интерфейсы, пригодные для связи в беспроводной среде совместно пользования, такие как одна или более антенн, передатчики, приемники, приемопередатчики, усилители, фильтры, логика управления и т.д. Примером беспроводной среды совместного пользования могут являться участки спектра беспроводной связи, такого как радиочастотный спектр RF и т.д. При реализации в виде проводной системы, система 700 может содержать компоненты и интерфейсы, пригодные для связи в среде проводной связи, такие как адаптеры ввода/вывода (I/O), физические соединители для соединения с адаптером ввода-вывода с соответствующей проводной средой связи, сетевая карта (NIC), дисковый контроллер, видеоконтроллер, аудиоконтроллер и т.д. Примеры среды проводной связи могут содержать провод, кабель, металлические проводники, печатные платы (РСВ), кабельную укладку, многовходовую систему коммутации, полупроводниковый материал, витую проводную пару, коаксиальный кабель, волоконную оптику и т.д.In various embodiments, the
Платформа 702 может образовывать один или более логических или физических каналов передачи информации. Информация может содержать медиаинформацию и управляющую информацию. Медиаинформация может относиться к любым данным, представляющим контент, предназначенный для пользователя. Примеры контента могут содержать, например, данные речевого разговора, видеоконференцию, потоковое видео, сообщение электронной почты (“email”), сообщение голосовой почты, алфавитно-цифровые символы, графику, изображение, видео, текст и т.д. Данные речевого разговора могут быть, например, речевой информацией, периодами молчания, фоновым шумом, комфортным шумом, тональными сигналами и т.д. Управляющая информация может относиться к любым данным, представляющим команды или управляющие слова, предназначенные для автоматизированной системы. Например, управляющая информация может использоваться для направления медиаинформации через систему или для подачи команд на узел, чтобы обработать медиаинформацию заданным способом. Варианты осуществления, однако, не ограничиваются элементами или контекстом, показанными или описанными на фиг. 8.
Как описано выше, система 700 может быть реализована с различными физическими стилями или коэффициентами формы. На фиг.9 показаны варианты осуществления устройства 800 коэффициента миниатюрной формы, в которой может быть осуществлена система 700. В вариантах осуществления, например, устройство 800 может быть реализовано как мобильное вычислительное устройство, имеющее беспроводные возможности. Мобильное вычислительное устройство может относиться к любому устройству, имеющему систему обработки и мобильный источник энергии или питания, такой, как, например, одна или более батарей.As described above,
Как описано выше, примеры мобильного вычислительного устройства могут содержать персональный компьютер (PC), ноутбук, ультраноутбук, планшет, сенсорную панель, портативный компьютер, карманный компьютер, малый карманный компьютер, персональный цифровой секретарь (PDA), мобильный телефон, объединенный мобильный телефон/PDA, телевизор, смарт-устройство (например, смартфон, смарт-планшет или смарт-TV), мобильное интернет-устройство (MID), устройство передачи сообщений, устройство передачи данных и т.д.As described above, examples of a mobile computing device may include a personal computer (PC), laptop, ultra-laptop, tablet, touchpad, laptop computer, PDA, small handheld computer, personal digital assistant (PDA), mobile phone, integrated mobile phone / PDA , a TV, a smart device (e.g., smartphone, smart tablet or smart TV), a mobile Internet device (MID), a messaging device, a data device, etc.
Примеры мобильных вычислительных устройств также могут содержать компьютеры, выполненные с возможностью их ношения человеком, такие запястные компьютеры, пальцевые компьютеры, браслетные компьютеры, окулярные компьютеры, компьютеры для пристегивания к поясу, компьютеры для ношения на плече, компьютеры для обуви, компьютеры для одежды и другие носимые микрокомпьютеры. В вариантах осуществления, например, мобильное компьютерное устройство, может быть реализовано как смартфон, способный выполнять компьютерные приложения, а также передачи голосовых сообщений и/или передачи данных. Хотя некоторые варианты осуществления могут быть описаны с помощью мобильного вычислительного устройства, реализованного как смартфон, для примера, можно понять, что другие варианты осуществления могут быть реализованы, используя также другие беспроводные мобильные вычислительные устройства. Варианты осуществления в этом контексте не ограничиваются.Examples of mobile computing devices may also include computers configured to be worn by humans, such as wrist computers, finger computers, wristbands computers, ocular computers, computers for fastening to a belt, computers for carrying on a shoulder, computers for shoes, computers for clothes and others wearable microcomputers. In embodiments, for example, a mobile computer device may be implemented as a smartphone capable of executing computer applications, as well as transmitting voice messages and / or data. Although some embodiments may be described using a mobile computing device implemented as a smartphone, for example, it will be understood that other embodiments may be implemented using other wireless mobile computing devices as well. Embodiments in this context are not limited.
Как показано на фиг. 9, устройство 800 может содержать корпус 802, устройство отображения 804, устройство 806 ввода/вывода (I/O) и антенну 808. Устройство 800 также может содержать навигационные функции 812. Устройство 804 отображения может содержать любой соответствующий блок отображения для отображения информации, пригодной для мобильного вычислительного устройства. Устройство 806 ввода-вывода может содержать любое соответствующее устройство ввода-вывода для ввода информации в мобильное вычислительное устройство. Примеры устройства 806 ввода-вывода могут содержать буквенно-цифровую клавиатуру, цифровую клавиатуру, сенсорную панель, клавиши ввода, кнопки, переключатели, тумблера, микрофоны, громкоговорители, устройство распознавания речи и программное обеспечение и т.д. Информация также может быть введена в устройство 800 посредством микрофона. Такая информация может быть оцифрована устройством распознавания речи. Варианты осуществления не ограничиваются в этом контексте.As shown in FIG. 9, the
Различные варианты осуществления могут быть реализованы, используя аппаратные элементы, элементы программного обеспечения или их комбинацию. Примеры аппаратных элементов могут содержать процессоры, микропроцессоры, схемы, элементы схемы (например, транзисторы, сопротивления, конденсаторы, индуктивности и т.д), интегральные схемы, специализированные интегральные схемы (ASIC), программируемые логические устройства (PLD), цифровые сигнальные процессоры (DSP), программируемые логические интегральные схемы (FPGA), логические элементы, регистры, полупроводниковое устройство, микросхемы, микрокристаллы, чипсеты, и т.д. Примерами программного обеспечения могут быть компоненты программного обеспечения, программы, приложения, компьютерные программы, прикладные программы, системные программы, машинные программы, программное обеспечение операционной системы, промежуточное программное обеспечение, встроенное микропрограммное обеспечение, программные модули, стандартные программы, подпрограммы, функции, способы, процедуры, интерфейсы программного обеспечения, программные интерфейсы приложения (API), наборы команд, компьютерный код, управляющие программы, сегменты управляющей программы, сегменты машинного кода, слова, значения, символы или любая их комбинация. Определение, реализуется ли вариант осуществления, используя аппаратурные элементы и/или элементы программного обеспечения, может варьироваться в соответствии с любым набором факторов, таким как желаемая скорость вычислений, уровни мощности; допуски по теплу, бюджет цикла обработки, скорости входных данных, скорости выходных данных, ресурсы памяти, скорости шины данных и другие проектные ограничения или ограничения характеристик.Various embodiments may be implemented using hardware elements, software elements, or a combination thereof. Examples of hardware elements may include processors, microprocessors, circuits, circuit elements (e.g., transistors, resistances, capacitors, inductances, etc.), integrated circuits, specialized integrated circuits (ASICs), programmable logic devices (PLDs), digital signal processors ( DSP), programmable logic integrated circuits (FPGAs), gates, registers, semiconductor device, microcircuits, microcrystals, chipsets, etc. Examples of software may include software components, programs, applications, computer programs, application programs, system programs, machine programs, operating system software, middleware, firmware, program modules, standard programs, subprograms, functions, methods, procedures, software interfaces, application programming interfaces (APIs), instruction sets, computer code, control programs , The control program segments, computer code segments, words, values, symbols, or any combination thereof. Determining whether an embodiment is implemented using hardware elements and / or software elements may vary in accordance with any set of factors, such as the desired calculation speed, power levels; heat tolerances, budget processing cycle, input data rates, output data rates, memory resources, data bus speeds and other design or performance limitations.
Один или более аспектов по меньшей мере одного варианта осуществления могут быть реализованы представительными командами, хранящимися на машиночитаемом носителе, который представляет различную логику внутри процессора, который, когда считывается машиной, заставляет машину создавать логику, чтобы выполнить описанные здесь способы. Такие представления, известные как “ядра IP”, могут храниться на физическом машиночитаемом носителе и предоставляться различным клиентам или производственным средствам загрузки машин для создания, которые фактически создают логику или процессор.One or more aspects of the at least one embodiment may be implemented by representative instructions stored on a computer-readable medium that represents various logic within a processor that, when read by a machine, causes the machine to create logic to perform the methods described herein. Such representations, known as “IP cores," can be stored on a physical machine-readable medium and provided to various clients or production means of loading machines to create that actually create a logic or processor.
Способы, описанные здесь, могут поэтому обеспечить систему регулирования прямого действия, которая гарантирует как работу в реальном времени потребительского видеоканала, так и динамическое обновление рабочего канала, чтобы давать оптимальное визуальное перцепционное качество и опыт просмотра. В частности, дискретная система управления для видеоканала может динамически адаптировать рабочие точки, чтобы оптимизировать глобальную конфигурацию интерактивных компонентных модулей, которые связываются с телевизионным перцепционным качеством. В последовательной конфигурации модуль анализа перцепционного качества может быть помещен раньше канала обработки видеоданных и параметры, определенные для канала последующей обработки, могут использоваться для того же самого кадра. В случае распределенного вычисления блока анализа качества или когда необходимо выполнить перцепционный анализ качества в промежуточных точках в канале, параметры, определенные, используя данный кадр, могут быть применены к следующему кадру, чтобы гарантировать работу в реальном времени. Распределенное вычисление иногда предпочтительно для сокращения сложности, поскольку некоторые элементы для вычисления перцепционного качества могут уже быть вычислены в канале последующей обработки и могут использоваться повторно. Показанные подходы могут также быть совместимыми с управлением в замкнутом контуре, где перцепционный анализ качества используется повторно на выходе канала видеообработки, чтобы оценить выходное качество, которое также используется механизмом управления.The methods described here can therefore provide a direct-action control system that guarantees both real-time operation of the consumer video channel and dynamic updating of the working channel to provide optimal visual perceptual quality and viewing experience. In particular, a discrete control system for a video channel can dynamically adapt operating points to optimize the global configuration of interactive component modules that communicate with television perceptual quality. In a serial configuration, a perceptual quality analysis module may be placed before the video processing channel, and parameters determined for the subsequent processing channel may be used for the same frame. In the case of distributed computing of the quality analysis unit or when it is necessary to perform perceptual quality analysis at intermediate points in the channel, the parameters determined using this frame can be applied to the next frame to guarantee real-time operation. Distributed computing is sometimes preferable to reduce complexity since some elements for calculating perceptual quality can already be calculated in a post-processing channel and can be reused. The approaches shown may also be compatible with closed loop control, where perceptual quality analysis is reused at the output of the video processing channel to evaluate the output quality, which is also used by the control mechanism.
Варианты осуществления данного изобретения применимы для использования со всеми типами чипов полупроводниковых интегральных схем (“IС”). Примеры таких чипов IС содержат, в частности, процессоры, контроллеры, компоненты чипсетов, программируемые логические матрицы (PLA), чипы памяти, сетевые чипы и т.п.Кроме того, на некоторых чертежах линии проводников сигналов представляются линиями. Некоторые из них могут отличаться, чтобы указать больше составляющих путей прохождения сигнала, иметь метку с номером, указывать множество составляющих путей прохождения сигнала и/или иметь стрелки на одном или более концах, чтобы указывать направление потока первичной информации. Это, однако, не должно рассматриваться как ограничивающий фактор. Скорее такая добавленная деталь может использоваться в сочетании с одним или более примерными вариантами осуществления, чтобы облегчить и упростить понимание схемы. Любые представленные сигнальные линии, независимо от того, несут ли они дополнительную информацию, могут фактически содержать один или более сигналов, которые могут проходить во множестве направлений и могут быть реализованы любым соответствующим типом сигнальной схемы, например, цифровые или аналоговые линии, реализуются дифференциальными парами, оптоволоконными линиями и/или заканчивающимися на одном конце линиями.Embodiments of the present invention are applicable for use with all types of semiconductor integrated circuit (“IC”) chips. Examples of such IC chips include, but are not limited to, processors, controllers, chipset components, programmable logic arrays (PLAs), memory chips, network chips, etc. In addition, in some figures, the lines of signal conductors are represented by lines. Some of them may differ to indicate more components of the signal paths, have a label with a number, indicate many components of the signal paths and / or have arrows at one or more ends to indicate the direction of the flow of primary information. This, however, should not be construed as limiting. Rather, such an added part can be used in conjunction with one or more exemplary embodiments to facilitate and simplify the understanding of the circuit. Any presented signal lines, regardless of whether they carry additional information, can actually contain one or more signals that can pass in many directions and can be implemented by any appropriate type of signal circuit, for example, digital or analog lines are realized by differential pairs, fiber optic lines and / or terminating at one end of the lines.
Можно привести примеры размеров/моделей/значений/диапазонов, хотя варианты осуществления настоящего изобретения ими не ограничиваются. По мере того, как производственные технологии (например, фотолитография) развиваются со временем, ожидается, что смогут производиться устройства меньшего размера. Кроме того, хорошо известные подключения питания/земли к чипам IС и другим компонентам могут быть показаны или не показаны внутри чертежей для простоты иллюстрации и обсуждения и чтобы не закрывать собой определенные аспекты вариантов осуществления изобретения. Дополнительно, схемы могут быть показаны в форме блок-схем, чтобы избежать усложнения показа вариантов осуществления изобретения, а также с точки зрения того факта, что конкретные особенности в отношении реализации схем такой блок-схемы сильно зависят от платформы, в которой вариант осуществления должен быть реализован, то есть, такие конкретные особенности должны быть хороши в пределах компетенции специалистов в данной области техники. Там, где конкретные подробности (например, схемы) излагаются, чтобы описать примерные варианты осуществления изобретения, специалисту в данной области техники должно быть очевидным, что варианты осуществления изобретения могут осуществляться на практике без этих конкретных подробностей или с измененными такими подробностями. Описание должно, таким образом, рассматриваться как иллюстративное, а не как создающее ограничения.Examples of sizes / models / values / ranges may be given, although embodiments of the present invention are not limited to them. As manufacturing technologies (such as photolithography) evolve over time, it is expected that smaller devices can be produced. In addition, well-known power / ground connections to IC chips and other components may or may not be shown within the drawings for ease of illustration and discussion and so as not to obscure certain aspects of embodiments of the invention. Additionally, the circuits may be shown in the form of flowcharts in order to avoid complicating the display of the embodiments of the invention, as well as from the point of view of the fact that the particular features regarding the implementation of the circuits of such a flowchart are highly dependent on the platform in which the embodiment should be implemented, that is, such specific features should be good within the competence of specialists in this field of technology. Where specific details (e.g., schemes) are set forth to describe exemplary embodiments of the invention, it will be apparent to one skilled in the art that embodiments of the invention can be practiced without or with modified specific details. The description should therefore be regarded as illustrative and not as limiting.
Некоторые варианты осуществления могут быть реализованы, например, используя машинный или физический читаемый компьютером носитель или изделие, которые могут хранить команду или набор команд, которые, если выполняются машиной, могут заставить машину выполнять способ и/или операции в соответствии с вариантами осуществления. Такая машина может содержать, например, любую соответствующую платформу обработки, компьютерную платформу, компьютерное устройство, устройство обработки, компьютерную систему, систему обработки, компьютер, процессор и т.п., и может быть реализована, используя любую соответствующую комбинацию аппаратурных средств и/или программного обеспечения. Машиночитаемый носитель или изделие могут иметь, например, любой подходящий тип блока памяти, запоминающего устройства, изделия памяти, носителя памяти, устройства хранения, носителя для хранения данных, носителя и/или блока хранения данных, например, запоминающее устройство, съемный или несъемный носитель, стираемый или нестираемый носитель, записываемый или перезаписываемый носитель, цифровой или аналоговый носитель, жесткий диск, дискета, постоянное запоминающее устройство на компакт-диске (CD-ROM), записываемый компакт-диск (CD-R), перезаписываемый компакт-диск (CD-RW), оптический диск, магнитный носитель, магнитооптический носитель, съемные карты памяти или диски, различные типы цифрового универсального диска (DVD), лента, кассета и т.п.Команды могут содержать любой соответствующий тип кода, такой как исходный код, компилированный код, интерпретируемый код, исполняемый код, статический код, динамический код, зашифрованный код и т.п., реализуемый, используя любой подходящий язык программирования высокого уровня, объектно-ориентированный, визуальный, компилированный и/или интерпретируемый язык программирования.Some embodiments may be implemented, for example, using a computer-readable or physical computer-readable medium or article that can store a command or set of instructions that, if executed by a machine, can cause the machine to execute a method and / or operation in accordance with embodiments. Such a machine may comprise, for example, any suitable processing platform, computer platform, computer device, processing device, computer system, processing system, computer, processor, and the like, and may be implemented using any appropriate combination of hardware and / or software. The computer-readable medium or article may have, for example, any suitable type of memory unit, memory device, memory article, memory medium, storage device, data storage medium, medium and / or data storage unit, for example, a memory device, removable or non-removable medium, erasable or non-erasable media, recordable or rewritable media, digital or analogue media, hard disk, floppy disk, read-only memory device on a compact disc (CD-ROM), recordable compact disc (CD-R), rewritable writable compact disc (CD-RW), optical disc, magnetic media, magneto-optical media, removable memory cards or disks, various types of digital versatile disk (DVD), tape, tape, etc. Teams may contain any appropriate type of code, such as source code, compiled code, interpreted code, executable code, static code, dynamic code, encrypted code, etc., implemented using any suitable high-level programming language, object-oriented, visual, compiled and / or inter the claimed programming language.
Если конкретно не указано иначе, можно понимать, что такие термины, как “обработка”, “вычисление”, “вычислительная обработка”, “определение” и т.п., относятся к действию и/или процессам компьютера или компьютерной системы или подобного электронного компьютерного устройства, которое манипулирует и/или преобразует данные, представленные как физические значения (например, электронные) внутри регистров и/или памяти компьютерной системы в другие данные, подобным образом представленные как физические величины внутри памяти компьютерной системы, регистров или других таких информационных запоминающих устройств, устройств передачи или отображения. Варианты осуществления не ограничиваются в этом контексте.Unless specifically indicated otherwise, it can be understood that terms such as “processing”, “calculation”, “computational processing”, “definition”, etc., refer to the operation and / or processes of a computer or computer system or similar electronic a computer device that manipulates and / or converts data represented as physical values (e.g. electronic) inside the registers and / or memory of a computer system into other data similarly represented as physical quantities inside a computer memory systems, registers, or other such information storage devices, transmission or display devices. Embodiments are not limited in this context.
Термин “связанный” может использоваться здесь для обозначения любого типа взаимосвязи, прямой или косвенной, между компонентами, о которых идет речь, и может применяться к электрическим, механическим, по текучей среде, оптическим, электромагнитным или другим соединениям. Кроме того, термины “первый” “второй” и т.д. могут использоваться здесь только для облегчения обсуждения и не несут никакого конкретного временного или хронологического значения, если как-либо не указано иное.The term “coupled” can be used here to mean any type of relationship, direct or indirect, between the components in question, and can be applied to electrical, mechanical, fluid, optical, electromagnetic, or other compounds. In addition, the terms “first”, “second”, etc. may be used here only to facilitate discussion and do not bear any particular temporal or chronological significance, unless otherwise indicated.
Специалисты в данной области техники из приведенного выше описания должны понимать, что обширные технологии вариантов осуществления настоящего изобретения могут реализовываться в различных формах. Поэтому, хотя варианты осуществления настоящего изобретения были описаны в связи с конкретными их примерами, истинный объем вариантов осуществления изобретения не должен этим ограничиваться, поскольку специалистам в данной области техники после изучения чертежей, описания и последующей формулы изобретения должны стать очевидны и другие его модификации.Those of skill in the art from the above description should understand that the vast technologies of embodiments of the present invention can be implemented in various forms. Therefore, although embodiments of the present invention have been described in connection with their specific examples, the true scope of embodiments of the invention should not be limited to this, as specialists in the art after studying the drawings, description and the following claims, other modifications will become apparent.
Claims (21)
принимают с помощью модуля сжатия запрос записи от модуля компенсации движения, при этом запрос записи содержит видеоданные и принимается контроллером памяти как напрямую, так и косвенно от указанного модуля компенсации движения;
выполняют с помощью модуля сжатия сжатие видеоданных для получения сжатых данных, при этом сжатие видеоданных является прозрачным для модуля компенсации движения;
сохраняют с помощью модуля сжатия сжатые данные в одном или более чипах памяти;
принимают с помощью модуля распаковки запрос считывания, причем указанный запрос считывания поступает как напрямую, так и косвенно от модуля компенсации движения или устройства отображения;
восстанавливают с помощью модуля распаковки сохраненные данные по меньшей мере из одного или более чипов памяти в ответ на запрос считывания; и
выполняют с помощью модуля распаковки распаковку сохраненных данных для получения распакованных данных.1. A computer-implemented method of operating a memory controller comprising a compression module, comprising the steps of:
receive, using the compression module, a recording request from the motion compensation module, wherein the recording request contains video data and is received by the memory controller both directly and indirectly from the specified motion compensation module;
using the compression module, video data is compressed to obtain compressed data, while the video data compression is transparent to the motion compensation module;
save compressed data in one or more memory chips using a compression module;
receive a read request using the unpacking module, the specified read request arriving either directly or indirectly from the motion compensation module or the display device;
using the decompression module, the stored data from at least one or more memory chips is restored in response to a read request; and
using the decompression module, unpacking the stored data to obtain the decompressed data is performed.
модуль сжатия, выполненный с возможностью
приема запроса записи от модуля компенсации движения, при этом запрос записи содержит видеоданные и принимается контроллером памяти как напрямую, так и косвенно от указанного модуля компенсации движения,
выполнения сжатия видеоданных для получения сжатых данных, и
хранения сжатых данных в одном или более чипах памяти и модуль распаковки, выполненный с возможностью приема запроса считывания;
восстановления сохраненных данных по меньшей мере из одного из одного или более чипов памяти, в ответ на запрос считывания, причем указанный запрос считывания поступает как напрямую, так и косвенно от модуля компенсации движения или устройства отображения; и
выполнения распаковки сохраненных данных для получения распакованных данных.5. A memory controller containing:
a compression module configured to
receiving a recording request from the motion compensation module, wherein the recording request contains video data and is received by the memory controller both directly and indirectly from the specified motion compensation module,
performing video compression to obtain compressed data, and
storing the compressed data in one or more memory chips and an unpacking module configured to receive a read request;
restoring the stored data from at least one of the one or more memory chips in response to a read request, said read request being received either directly or indirectly from a motion compensation module or display device; and
performing decompression of the stored data to obtain the decompressed data.
устройство отображения;
один или более чипов памяти; и
чип процессора, содержащий модуль компенсации движения и контроллер памяти, причем контроллер памяти содержит модуль сжатия, выполненный с возможностью
приема запроса записи от модуля компенсации движения, при этом запрос записи содержит видеоданные и принимается как напрямую, так и косвенно от указанного модуля компенсации движения,
выполнения сжатия видеоданных для получения сжатых данных, и
сохранения сжатых данных по меньшей мере в одном или более чипах памяти, и
модуль распаковки, выполненный с возможностью
приема запроса считывания, причем указанный запрос считывания поступает как напрямую, так и косвенно от модуля компенсации движения или устройства отображения;
восстановления сохраненных данных по меньшей мере из одного из одного или более чипов памяти, в ответ на запрос считывания; и
выполнения распаковки сохраненных данных для получения распакованных данных.12. A data compression system comprising:
display device;
one or more memory chips; and
a processor chip comprising a motion compensation module and a memory controller, the memory controller comprising a compression module configured to
receiving a recording request from the motion compensation module, wherein the recording request contains video data and is received both directly and indirectly from the specified motion compensation module,
performing video compression to obtain compressed data, and
storing compressed data in at least one or more memory chips, and
an unpacking module configured to
receiving a read request, wherein said read request comes both directly and indirectly from the motion compensation module or the display device;
restoring stored data from at least one of the one or more memory chips in response to a read request; and
performing decompression of the stored data to obtain the decompressed data.
принимают с помощью модуля сжатия запрос записи от модуля компенсации движения, при этом запрос записи содержит видеоданные и принимается контроллером памяти как напрямую, так и косвенно от указанного модуля компенсации движения;
выполняют с помощью модуля сжатия сжатие видеоданных для получения сжатых данных, и
сохраняют с помощью модуля сжатия сжатые данные в одном или более чипах памяти;
принимают запрос считывания, причем указанный запрос считывания поступает как напрямую, так и косвенно от модуля компенсации движения или устройства отображения;
восстанавливают сохраненные данные по меньшей мере из одного или более чипов памяти в ответ на запрос считывания; и
выполняют распаковку сохраненных данных для получения распакованных данных.17. A computer-implemented method of operating a memory controller comprising a compression module, comprising the steps of:
receive, using the compression module, a recording request from the motion compensation module, wherein the recording request contains video data and is received by the memory controller both directly and indirectly from the specified motion compensation module;
using the compression module, video data is compressed to obtain compressed data, and
save compressed data in one or more memory chips using a compression module;
receiving a read request, wherein said read request is received both directly and indirectly from the motion compensation module or the display device;
recovering the stored data from at least one or more memory chips in response to a read request; and
decompress the stored data to obtain the decompressed data.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2011/066556 WO2013095448A1 (en) | 2011-12-21 | 2011-12-21 | Dram compression scheme to reduce power consumption in motion compensation and display refresh |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2014126348A RU2014126348A (en) | 2016-01-27 |
RU2599959C2 true RU2599959C2 (en) | 2016-10-20 |
Family
ID=48638976
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2014126348/08A RU2599959C2 (en) | 2011-12-21 | 2011-12-21 | Dram compression scheme to reduce power consumption in motion compensation and display refresh |
Country Status (9)
Country | Link |
---|---|
US (1) | US9268723B2 (en) |
EP (1) | EP2795896A4 (en) |
JP (1) | JP5639144B2 (en) |
KR (2) | KR101605047B1 (en) |
CN (1) | CN103179393B (en) |
IN (1) | IN2014CN03371A (en) |
RU (1) | RU2599959C2 (en) |
TW (1) | TWI524326B (en) |
WO (1) | WO2013095448A1 (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2795896A4 (en) | 2011-12-21 | 2015-05-20 | Intel Corp | Dram compression scheme to reduce power consumption in motion compensation and display refresh |
US20140355665A1 (en) * | 2013-05-31 | 2014-12-04 | Altera Corporation | Adaptive Video Reference Frame Compression with Control Elements |
US9864536B2 (en) | 2013-10-24 | 2018-01-09 | Qualcomm Incorporated | System and method for conserving power consumption in a memory system |
US20150121111A1 (en) * | 2013-10-24 | 2015-04-30 | Qualcomm Incorporated | System and method for providing multi-user power saving codebook optmization |
US10080028B2 (en) | 2014-11-26 | 2018-09-18 | Samsung Display Co., Ltd. | System and method of compensating for image compression errors |
KR102373544B1 (en) | 2015-11-06 | 2022-03-11 | 삼성전자주식회사 | Memory Device and Memory System Performing Request-based Refresh and Operating Method of Memory Device |
US9721640B2 (en) * | 2015-12-09 | 2017-08-01 | Intel Corporation | Performance of additional refresh operations during self-refresh mode |
US10168909B1 (en) * | 2016-03-29 | 2019-01-01 | Amazon Technologies, Inc. | Compression hardware acceleration |
CN110457235B (en) * | 2019-08-20 | 2021-10-08 | Oppo广东移动通信有限公司 | Memory compression method, device, terminal and storage medium |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2119727C1 (en) * | 1993-03-01 | 1998-09-27 | Сони Корпорейшн | Methods and devices for processing of transform coefficients, methods and devices for reverse orthogonal transform of transform coefficients, methods and devices for compression and expanding of moving image signal, record medium for compressed signal which represents moving image |
US6157740A (en) * | 1997-11-17 | 2000-12-05 | International Business Machines Corporation | Compression/decompression engine for enhanced memory storage in MPEG decoder |
EP0782345B1 (en) * | 1995-12-27 | 2003-03-05 | Thomson Consumer Electronics, Inc. | Memory management for a video decoder |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08116539A (en) | 1994-10-17 | 1996-05-07 | Hitachi Ltd | Dynamic image coder and dynamic image coding method |
US5812791A (en) * | 1995-05-10 | 1998-09-22 | Cagent Technologies, Inc. | Multiple sequence MPEG decoder |
US5668599A (en) * | 1996-03-19 | 1997-09-16 | International Business Machines Corporation | Memory management for an MPEG2 compliant decoder |
US6278735B1 (en) | 1998-03-19 | 2001-08-21 | International Business Machines Corporation | Real-time single pass variable bit rate control strategy and encoder |
US6628714B1 (en) * | 1998-12-18 | 2003-09-30 | Zenith Electronics Corporation | Down converting MPEG encoded high definition sequences to lower resolution with reduced memory in decoder loop |
US6510178B1 (en) * | 1999-12-15 | 2003-01-21 | Zenith Electronics Corporation | Compensating for drift in the down conversion of high definition sequences to lower resolution sequences |
US20020176507A1 (en) * | 2001-03-26 | 2002-11-28 | Mediatek Inc. | Method and an apparatus for reordering a decoded picture sequence using virtual picture |
KR100598093B1 (en) * | 2003-01-29 | 2006-07-07 | 삼성전자주식회사 | Apparatus and method with low memory bandwidth for video data compression |
KR100771401B1 (en) * | 2005-08-01 | 2007-10-30 | (주)펄서스 테크놀러지 | Computing circuits and method for running an mpeg-2 aac or mpeg-4 aac audio decoding algorithm on programmable processors |
JP4384130B2 (en) * | 2006-03-28 | 2009-12-16 | 株式会社東芝 | Video decoding method and apparatus |
JP5245794B2 (en) | 2008-12-15 | 2013-07-24 | 富士通株式会社 | Image processing apparatus and method |
JP5504885B2 (en) | 2009-12-25 | 2014-05-28 | 富士通株式会社 | Image processing apparatus and image processing method |
EP2795896A4 (en) | 2011-12-21 | 2015-05-20 | Intel Corp | Dram compression scheme to reduce power consumption in motion compensation and display refresh |
-
2011
- 2011-12-21 EP EP11878021.2A patent/EP2795896A4/en not_active Ceased
- 2011-12-21 IN IN3371CHN2014 patent/IN2014CN03371A/en unknown
- 2011-12-21 KR KR1020147016821A patent/KR101605047B1/en active IP Right Grant
- 2011-12-21 KR KR1020157017371A patent/KR20150081373A/en not_active Application Discontinuation
- 2011-12-21 WO PCT/US2011/066556 patent/WO2013095448A1/en active Application Filing
- 2011-12-21 US US13/995,575 patent/US9268723B2/en active Active
- 2011-12-21 RU RU2014126348/08A patent/RU2599959C2/en not_active IP Right Cessation
-
2012
- 2012-12-19 TW TW101148342A patent/TWI524326B/en active
- 2012-12-20 JP JP2012277881A patent/JP5639144B2/en not_active Expired - Fee Related
- 2012-12-21 CN CN201210599172.6A patent/CN103179393B/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2119727C1 (en) * | 1993-03-01 | 1998-09-27 | Сони Корпорейшн | Methods and devices for processing of transform coefficients, methods and devices for reverse orthogonal transform of transform coefficients, methods and devices for compression and expanding of moving image signal, record medium for compressed signal which represents moving image |
EP0782345B1 (en) * | 1995-12-27 | 2003-03-05 | Thomson Consumer Electronics, Inc. | Memory management for a video decoder |
US6157740A (en) * | 1997-11-17 | 2000-12-05 | International Business Machines Corporation | Compression/decompression engine for enhanced memory storage in MPEG decoder |
Also Published As
Publication number | Publication date |
---|---|
CN103179393A (en) | 2013-06-26 |
RU2014126348A (en) | 2016-01-27 |
TWI524326B (en) | 2016-03-01 |
EP2795896A1 (en) | 2014-10-29 |
WO2013095448A1 (en) | 2013-06-27 |
KR20140099501A (en) | 2014-08-12 |
TW201404158A (en) | 2014-01-16 |
JP5639144B2 (en) | 2014-12-10 |
US9268723B2 (en) | 2016-02-23 |
IN2014CN03371A (en) | 2015-07-03 |
KR101605047B1 (en) | 2016-03-21 |
US20140204105A1 (en) | 2014-07-24 |
JP2013132056A (en) | 2013-07-04 |
KR20150081373A (en) | 2015-07-13 |
EP2795896A4 (en) | 2015-05-20 |
CN103179393B (en) | 2016-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2599959C2 (en) | Dram compression scheme to reduce power consumption in motion compensation and display refresh | |
US9524536B2 (en) | Compression techniques for dynamically-generated graphics resources | |
TWI513316B (en) | Transcoding video data | |
JP6242029B2 (en) | Technology for low power image compression and display | |
US9749636B2 (en) | Dynamic on screen display using a compressed video stream | |
CN112437345B (en) | Video double-speed playing method and device, electronic equipment and storage medium | |
US10484690B2 (en) | Adaptive batch encoding for slow motion video recording | |
US20140003789A1 (en) | Playback of video content based on frame-level ratings | |
US10846142B2 (en) | Graphics processor workload acceleration using a command template for batch usage scenarios | |
US9351011B2 (en) | Video pipeline with direct linkage between decoding and post processing | |
US10158851B2 (en) | Techniques for improved graphics encoding | |
US20140307808A1 (en) | Protection against packet loss during transmitting video information | |
KR102582121B1 (en) | System of transmitting display data and method thereof | |
US20090154570A1 (en) | Method and system to stream and render video data on processing units of mobile devices that have limited threading capabilities | |
WO2017101065A1 (en) | Decoder for playing big frames |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20171222 |