US 11,743,479 B2
Methods and apparatuses for encoding and decoding a bytestream
Ivan Makeev, London (GB); Balázs Keszthelyi, London (GB); Stergios Poularakis, London (GB); Michele Sanna, London (GB); and Robert Ettinger, London (GB)
Assigned to V-NOVA INTERNATIONAL LIMITED
Appl. No. 16/770,226
Filed by V-NOVA INTERNATIONAL LIMITED, London (GB)
PCT Filed Dec. 6, 2018, PCT No. PCT/GB2018/053546
§ 371(c)(1), (2) Date Jun. 5, 2020,
PCT Pub. No. WO2019/111004, PCT Pub. Date Jun. 13, 2019.
Claims priority of application No. 17386046 (EP), filed on Dec. 6, 2017; application No. 18386002 (EP), filed on Feb. 8, 2018; application No. 1812407 (GB), filed on Jul. 30, 2018; and application No. 1815437 (GB), filed on Sep. 21, 2018.
Prior Publication US 2021/0274225 A1, Sep. 2, 2021
Int. Cl. H04N 19/96 (2014.01); H04N 19/436 (2014.01); H04N 19/119 (2014.01); H04N 19/167 (2014.01); H04N 19/176 (2014.01); H04N 19/30 (2014.01); H04N 19/46 (2014.01); H04N 19/129 (2014.01); H04N 19/44 (2014.01); H04N 19/182 (2014.01); H04N 19/91 (2014.01)
CPC H04N 19/436 (2014.11) [H04N 19/119 (2014.11); H04N 19/129 (2014.11); H04N 19/167 (2014.11); H04N 19/176 (2014.11); H04N 19/182 (2014.11); H04N 19/30 (2014.11); H04N 19/44 (2014.11); H04N 19/46 (2014.11); H04N 19/91 (2014.11); H04N 19/96 (2014.11)] 20 Claims
OG exemplary drawing
 
1. A method of decoding a received set of encoded data, the method comprising:
receiving the encoded data set representing information that has been compressed;
identifying from the encoded data set an ordered set of interspersed node symbols and data symbols;
retrieving a plurality of entropy decoding parameters, each entropy decoding parameter associated with a respective type of symbol;
applying an entropy decoding operation to the encoded data set to decode a symbol of a first type of symbol using parameters associated with the first type of symbol;
determining an expected type of symbol by analysing at least one previously decoded symbol of the first type of symbol to identify the type of symbol expected in the encoded data set;
updating the entropy decoding operation to use parameters associated with the expected type of symbol;
constructing an ordered tree having a root node and a predetermined number of layers from the ordered set of identified node symbols and data symbols,
wherein each node symbol comprises a set of indicator elements which indicate whether or not a further symbol is expected later in the dataset for a branch in the tree, such that the ordered set of identified node symbols determines the tree and such that, based on the indicator elements, the data symbols are arranged in data locations in the tree and no data symbols are arranged at data locations in the tree where an indicator element indicates no further symbol is expected later in the dataset for a respective branch in the tree,
wherein a data location is a terminal node of the tree, and
wherein each data symbol represents one or more values associated with the information that has been compressed; and
reconstructing the information that has been compressed using the values represented by the data symbols based on location of the data symbols in the ordered tree and using a predetermined value when the node symbols indicate that no data symbol is included in the data set corresponding to a particular location included in the ordered tree.