- 26 Aug, 2019 4 commits
-
-
David Flynn authored
-
David Flynn authored
-
David Flynn authored
-
This commit provides a set of MPEG::PCC perl modules that may be used to parse TMC13 log files. An example script collect-tmc13.pl demonstrates their use.
-
- 14 Aug, 2019 1 commit
-
-
David Flynn authored
-
- 12 Aug, 2019 22 commits
-
-
David Flynn authored
basketball_player_vox11 and dancer_vox11 are reduced to 64 frames.
-
This avoids artefacts during trisoup generation by checking whether the original slice partition interval is an integer multiple of the block size W=2^(trisoup_node_size_log2). If not, the partition interval is rounded up to the nearest integer that is exactly divisible by the block size.
-
This commit adds a process to limit the number of points per slice to be within a hard upper limit and soft lower limit.
-
Adjust the operation sequence of slice partition and geometry quantization. We do geometry quantization first and then do the slice partition, so that the point number of each slice would be kept in the predefined range under lossless/lossy geometry coding conditions.
-
Rather than code bypass bins using a simplified mode of the arithmetic coder, this commit adds the ability to signal bypass bins in a separate byte-reversed sub-stream.
-
In order to implement the reversed bypass stream, it is necessary that the arithmetic encoder outputs an independently decodable stream that does not rely upon bounded read operations that insert 0xff bytes when the entire aec sub-stream input is consumed (since there will be no indication of the sub-stream length).
-
This commit allow individual QP offsets to be specified for each LoD/RAHT layer in attribute coding.
-
David Flynn authored
This placeholder is for any encoder-specific per-attribute parameters that do not belong in the SPS, APS, etc.,
-
This commit implements the recolouring method described in m47800, which notably uses a distance-weighted average rather than the previous unweighted average.
-
This commit exploits the use of fixed quantisation step sizes (due to QP) to perform quantisation using multiplication by the reciprocal step size.
-
David Flynn authored
In order to simplify the introduction of quantisation using the multiplicative inverse, the existing quantiser state is refactored into a Quantizer class that represents the current step size.
-
David Flynn authored
The quantization functions are applied to both fixed-point and unitary precision data using the same QP. This commit moves the implicit conversion adjustment out of the quantiser and into the calling code.
-
-
David Flynn authored
For each 2×2×2 block, a predicted block is produced by upconverting the previous transform level. The prediction is transformed and subtracted from the transformed attributes at the encoder.
-
In order to support transform domain prediction of AC coefficients using upsampled previously reconstructed transform levels, this commit replaces the existing RAHT implementation with a descent based RAHT tree traversal for both encoder and decoder with the transform performed in units of 2×2×2 blocks.
-
-
David Flynn authored
-
This adoption permits removal of an arithmetic coding dependency in the predicting lod scheme when lifting_adaptive_prediction_threshold is equal to 0.
-
This functionality is now handled by the unified generation process.
-
This adoption permits the unification of the single and multi level-of-detail generation processes by always solving ties in sorting predictors with identical weights according to relative buffer position.
-
David Flynn authored
A 64 bit integer can represent a three dimensional 21 bit position with one spare bit. In order te allow the computation of abs(a-b), a signed representation should be used, making use of the full 64 bits.
-
This commit makes all lod layers order points in a consistent, ascending, morton order.
-
- 05 Aug, 2019 5 commits
-
-
This adoption fixes an issue whereby intra lod prediction is not applied to the top layer. By fixing this, intra lod prediction will be used for the single-layer case.
-
-
-
David Flynn authored
-
David Flynn authored
This updates Makefile.tmc13-step to be compatible with pc_error v0.13
-
- 24 Apr, 2019 3 commits
-
-
David Flynn authored
-
David Flynn authored
This commit fixes an error whereby current the slice and tile ids would be reset to zero at the start of each geometry slice, causing the slice and tile ids set by the partitioning method to be overwritten.
-
David Flynn authored
Maintains contexts for: 64->6: 0n, ud, 1n, 2nh, 2nv, 3n 64->6->5: 0n, ud+1n, 2nh, 2nv, 3n 64->6->3: 0n, ud+1n+2nh, 2nv+3n Where ud = up/down, 1n = single neighbour 2nh = two horizontal neighbours 2nv = two vertical neighbours 3n = three neighbours 0n = no neighbours
-
- 16 Apr, 2019 5 commits
-
-
David Flynn authored
-
David Flynn authored
When the same geom_box_log2_scale is used for all slices, it is not necessary to store them in slice headers. This commit permits signalling of the common value in the GPS.
-
This commit introduces prediction by previously coded points within the same level of detail using the predicting attribute coder. The feature is controlled using --intraLodPredictionEnabled=0|1.
-
David Flynn authored
This method has been replaced by an LoD decimation method.
-
This LoD generation (subsampling) method uses the Morton-based ordering of points that is used to determine prediction neighbours. Each LoD level comprises 3/4 of the points of the previous.
-