Dynamic 3D Gaussian splats (3DGS) model time-varying scenes using a separate Gaussian set per frame. While neighboring video frames are highly correlated due to smooth motion, Gaussian representations retain this correlation to varying degrees, depending on whether the estimator tracks them across time. Some 3DGS compression methods integrate the estimation to exploit temporal redundancy; here, we focus on robust compression regardless of the estimator. We concatenate groups of frames into one Gaussian set, augment each Gaussian with a frame index, and pass it to a static (i.e., non-temporal) 3DGS codec, converting temporal redundancy into spatial redundancy. Concatenated sets are spatially partitioned to limit memory. Our technique requires neither a motion model nor knowledge of the training method. Averaged over six N3DV sequences, all six static codecs achieve gains on tracked sets (-42.0% to -71.8% BD-rate) over per-frame coding. On untracked sets, all codecs except HGSC, which appears incompatible with our technique, remain competitive with per-frame coding (-3.5% to +5.0%). We further replace D-FCGS's I-frame coding with our technique while retaining its P-frame coding, yielding an overall BD-rate of -46.2%. We propose to visualize "trackedness" using an inter-frame similarity metric. The project is available at https://wcjj1236.github.io/d3dgs-benchmark.
Figures & tables
Figure 1: Overview of the proposed method. Left: GoF concatenation is passed to a geometry- or video-based static GS codec; on tracked input, the figure illustrates the concatenation branch of our D-GPCC which replaces the D-FCGS’s intra branch while retaining P-frame motion coding. Right: N3DV-average G-PCC rate–distortion curves at GoF-150, comparing concatenation with per-frame coding branches.
Figure 2: Pairwise inter-frame similarity matrices for Flame Steak , one example per correlation pattern we observed depending on the estimation method. Brighter entries denote greater similarity: tracked and semi-tracked sequences retain clear temporal structure, whereas the untracked sequence does not.
Figure 3: Rate vs. distortion compression results with six codecs at GoF-30, averaged over the N3DV dataset. Distortion is measured in PSNR with respect to the views rendered from the estimated Gaussians before compression. The three rows show examples of tracked, semi-tracked, and untracked estimators. Each panel compares concatenation with per-frame coding and reports BD-rate.
Figure 4: Rate–distortion results averaged over N3DV dataset with 3DGStream (tracked) input using concatenation. GSCodec-D, D-GPCC, and D-FCGS require tracked input and are inherently lossy.
GoF
BD-rate % ↓
Enc T (s/f) ↓
Dec T (s/f) ↓
Concat (GB) ↓
Encode (GB) ↓
Delay (s) ↓
1
Baseline
11.7
9.0
0.06
1.29
0.03
5
−47.72
9.3
7.3
0.16
3.19
0.17
10
−55.87
8.9
7.0
0.30
3.43
0.33
30
−63.42
8.6
6.9
0.80
3.49
1.0
75
−64.59
8.7
6.9
1.73
3.70
2.5
150
−65.05
8.6
6.8
3.38
3.75
5.0
Table 1: Full GoF-length sweep, 3DGStream Flame Steak. Concat is the pass that holds the whole GoF, Encode the coder on one slice.
Appendix figures & tables22 assets
Supplementary material from the paper’s appendix.
Appendix
Resource
Contents
Appendix
notes on statements of the main text; sequences and estimators; evaluation protocol; how each static GS codec handles a concatenated set; implementation of the inter-frame similarity; mechanisms behind the gains; frame-index overhead; construction of D-GPCC; per-sequence BD-rates; an end-to-end comparison with published results
Code repository
estimator training and export recipes; pinned upstream version and every modification of each codec; codec configurations and rate points; coding drivers; scoring code; the coding time and peak memory of every run; all result tables with their provenance, and a script that recomputes the numbers of the paper
Project page
every rate–distortion curve for each sequence, codec, estimator and GoF length; PSNR in RGB, YUV and per plane, SSIM, and the ground-truth reference; the BD-rate of each curve against its own per-frame branch; inter-frame similarity matrices of all four estimators
Appendix
Table 2: The three resources and what each contains.
Codec
Frame index
Tracked
Semi-tracked
Untracked
L-GSC
not charged
−74.7
−67.7
+2.9
4.91 bits
−71.8
−63.4
+5.0
8 bits
−70.0
−60.8
+6.3
LGSCV
not charged
−46.7
−54.6
−7.2
4.91 bits
−42.0
−49.2
−1.4
8 bits
−39.0
−45.9
+2.2
Appendix
Table 3: Six-sequence BD-rate (%) of concatenation against per-frame coding at GoF- 30 , with the concatenated branch charged no frame index, 4.91 bits per Gaussian (as in Fig. 3 ), or 8 bits.
Estimator
Pattern
Gaussians per frame
Export loss (dB)
3DGStream, base stream
tracked
357k–708k
0.27+0.80
4DGaussians
tracked
118k–132k
2.39
QUEEN
semi-tracked
248k–445k
0.88
INRIA 3DGS, per frame
untracked
281k–845k
—
Appendix
Table 4: Estimators. Gaussian counts are ranges over all frames of the six sequences; a tracked sequence keeps one count. Export loss is the PSNR against the captured images of the held-out camera that is lost between the estimator’s own rendering and its exported frame-wise Gaussian sets, averaged over the six sequences.
Edit
Sequences
Extent
SH degree 1→3 zero-padding; quaternion sign canonicalized
3DGStream, all
layout, sign
Non-finite values: ±∞→±60 , NaN →0
3DGStream, all
<10−6 of values
SH degree 2→3 zero-padding
QUEEN, all
layout
Degenerate Gaussians removed (log-scale >2 )
QUEEN, all
≈0.2% of Gaussians
Gaussians with non-finite values removed
QUEEN, Coffee Martini
1 per frame in 127 frames
Lower G-PCC input scale †
4DGaussians, Coffee Martini , Flame Salmon ; QUEEN, Coffee Martini
none
Appendix
Table 5: Every edit applied to the exported frames before coding.
Figure 5: The same four runs of G-PCC on 3DGStream Flame Steak , scored against the two references. Against the input, the rate points span 30 dB and the two branches stay apart, so a BD-rate between them is well posed. Against the held-out camera, both branches run into the quality of the estimator itself and flatten within a few tenths of a decibel of each other, which leaves almost no quality interval to integrate over.
Figure 6: The two memory columns of Table 1 . Only Concat grows with the group; Encode is bounded by the slice budget and stops. The two meet at GoF- 150 , where a slice first reaches the cap.
Codec
Family
Coding
Rate points
Frame recovery
G-PCC
geometry
TMC13 v23.0-rc2 with our Gaussian splat coding profile: octree geometry, RAHT for SH, predictive transform for opacity, scale and rotation
5: four attribute QP settings, attributes at unit step
frame index coded losslessly as an 8 -bit attribute
HGSC
geometry
G-PCC geometry, anchors by farthest-point sampling, two levels of detail predicted from coded neighbours
4: position qp∈{18,…,15} with LoD bit depths
frame index coded losslessly as an 8 -bit attribute of its geometry
Morton sort of the encoder replayed on the input positions ∗
SPZ
geometry
per-Gaussian quantization, zstd
5: SH bit depths
order preserved; split by per-frame counts
LGSCV
video
Morton ordering and MiniPLAS into 2D maps, SH reduced by PCA, HEVC
5: released QP settings
map permutation recorded at the encoder ∗
GSCodec-S
video
PLAS sorting into 2D maps, all-intra HEVC
4: released QP settings
sort permutation recorded at the encoder ∗
Appendix
Table 6: Static GS codecs. Rate points are swept identically in both branches. Frame recovery states how each decoded Gaussian of a concatenated set is assigned to its frame; ∗ marks encoder-side information that is not transmitted; the rate is charged log230 bits per Gaussian in its place (Apps. B.1 and E.1 ).
Estimator
Pattern
ρ
Range of D
QUEEN
semi-tracked
1.571
0.362 – 1.046
3DGStream
tracked
1.292
0.776 – 1.087
4DGaussians
tracked
1.179
0.432 – 0.552
INRIA 3DGS
untracked
1.002
1.295 – 1.442
Appendix
Table 7: Temporal structure of Flame Steak for the four estimators, over all 300 frames.
Figure 7: The same 30 frames of 3DGStream Flame Steak , coded one by one and coded as one set, by G-PCC at its coarsest rate point. Ring areas are proportional to the totals in their centres. Every stream shrinks; the frame index is the one the concatenated run adds.
Figure 8: The two failures have different shapes on untracked Flame Steak . Concatenation moves HGSC down, spending quality no rate point buys back, and moves G-PCC right, spending only rate. Both panels share a vertical axis.
Figure 9: Every Gaussian of the first GoF- 30 group of Flame Steak as one point, with no opacity: it is the positions that set a coder’s range. The scene is nearly the same size in both panels, 52 and 49 world units across, but it covers 6% of the range the untracked group makes a coder span and 73% of the tracked one. The two panels are at different scales.
HGSC
G-PCC
Position step
bounding box of the coded set /2qp
lossless on a grid derived per slice
Attribute step
residual range /2bitdepth
absolute QP per attribute
Attribute predictor
nearest already-coded Gaussian
RAHT for SH (no prediction); three candidates for opacity, scale, rotation
Rate
−0.5 MB per frame
+0.5 MB per frame
Quality
−8.9 dB
+0.9 dB
BD-rate
+27.8%
+0.2%
Appendix
Table 8: Why concatenation costs HGSC quality and G-PCC only rate on untracked input. The last two rows compare the concatenated with the per-frame branch at the finest rate point of each codec, on Flame Steak .
Figure 10: Where the rate of a concatenated G-PCC group goes, on the first GoF- 30 group of Flame Steak at the coarsest rate point. The rings carry the same streams in the same order and colour, so a wedge can be read across the three inputs; the centre gives the total the shares are taken of. The frame index is the only stream that is not scene content, and is the only wedge pulled out. Slice headers are under 0.02% and not visible.
Figure 11: The index costs the same bytes at every lossy rate point, so its share falls as the rest of the bitstream grows, and sits highest on the input whose Gaussians carry the fewest SH coefficients.
Codec
Index
Input
Total (MB/f)
Index (MB/f)
Share (%)
Bits/Gaussian
G-PCC
in the bitstream
tracked
1.60 – 3.08
0.368
11.9 – 23.0
8.26
semi-tracked
0.96 – 4.48
0.240 – 0.242
5.4 – 25.1
7.72 – 7.79
untracked
3.72 – 18.72
0.300 – 0.302
1.6 – 8.1
7.67 – 7.72
HGSC
in the bitstream
tracked
2.26 – 4.88
0.437 – 0.439
9.0 – 19.4
9.81 – 9.85
semi-tracked
2.20 – 11.38
0.303 – 0.304
2.7 – 13.8
9.78 – 9.81
untracked
7.85 – 28.66
0.351 – 0.352
1.2 – 4.5
8.98 – 9.00
Appendix
Table 9: What the frame index costs every codec, on Flame Steak at GoF- 30 , over the rate points of each codec. G-PCC and HGSC carry the index inside their bitstreams, so their two rate columns are measured on the first group and the share is exact within it; the three codecs that reorder their Gaussians are charged a separate index stream at log230 bits each (App. B.1 ), and their columns are the whole sequence. SPZ preserves the order and the count, so it needs none. A range is over the rate points; a single value means the column does not move with the rate.
Figure 12: What replacing the intra codec moves. Left: the two codecs at matched quality, six-sequence mean at GoF- 10 (D-FCGS at λ=2×10−4 , D-GPCC at its third G-PCC rate point). The three P streams move little ( −17% ; same network and checkpoint, each coded against its own decoded I-frames), and 84% of the −42% is the I segment alone, which falls by 57% . Right: the same split down the sweep of Table 10 ; a longer GoF buys fewer I-frames, and past GoF- 30 the P side grows faster than the I side shrinks. Figures above the bars are MB per frame on the left and PSNR in dB on the right.
GoF
I-frames
Rate (MB/f) ↓
PSNR (dB) ↑
5
60
1.339
39.86
10
30
0.935
37.81
15
20
0.821
36.21
30
10
0.755
33.02
50
6
0.839
30.58
100
3
1.528
27.52
Appendix
Table 10: GoF length of D-FCGS on 3DGStream Flame Steak , at its cheapest checkpoint ( λ=16×10−4 ). The rate includes all I- and P-frames; PSNR is measured against the input and averaged over frames.
GoP
BD-rate % ↓
Enc T (s/f) ↓
Dec T (s/f) ↓
Delay (s) ↓
1
Baseline
8.4
0.7
0.03
16
−82.80
16.2
0.3
0.53
30
−85.35
17.2
0.3
1.0
50
−84.74
12.2
0.3
1.67
100
−84.82
14.9
0.3
3.33
Appendix
Table 11: GoP length of GSCodec-D on 3DGStream Flame Steak . Enc T is the wall-clock time of eight parallel HEVC encoders and is not comparable with Table 1 ; delay is structural, at 30 frames per second.
Figure 13: Our end-to-end results against the N3DV numbers printed in the cited papers, all six sequences averaged, quality against the held-out camera. GPCC and the I-frames of D-GPCC are both the concatenation branch. D-GPCC and D-FCGS are drawn as the one operating curve the main text uses, three points at GoF- 10 and three at GoF- 5 . The stars are estimators at their own operating point, measured on the representation they train, before the per-frame export every codec here is given; exporting it costs further quality. Each point is a complete system, estimator and codec together.
Figure 14: Left: on QUEEN Flame Steak two of L-GSC’s three rate points land on each other in both branches. Right: what each preset reaches on each of the six sequences; the last preset costs 2.5 – 6.4 dB everywhere else and 0.06 dB here.
Figure 15: The two cells of Table 13 that no BD-rate describes. The two branches never reach the same quality, so there is no interval to integrate over; the band is the gap.
Pattern
Codec
CM
CS
CRB
FSa
FSt
SS
Average
Tracked
G-PCC
−68.9
−67.6
−64.2
−69.9
−63.4
−62.7
−66.9
(3DGStream)
HGSC
−69.4
−67.4
−62.9
−69.3
−62.5
−62.9
−66.4
L-GSC
−76.0
−71.1
−68.1
−76.8
−67.0
−68.5
−71.8
SPZ
−38.4
−50.0
−49.8
−38.2
−48.3
−48.7
−43.0
LGSCV
−41.8
−44.7
−38.8
−42.6
−39.8
−39.8
−42.0
GSCodec-S
−49.9
−46.5
−46.7
−49.7
−46.2
−46.5
−47.5
Appendix
Table 12: BD-rate (%) of GoF- 30 concatenation against per-frame coding, per sequence. The last column is the BD-rate between the six-sequence average curves of Fig. 3 , which is not the mean of the row. CM: Coffee Martini , CS: Cook Spinach , CRB: Cut Roasted Beef , FSa: Flame Salmon , FSt: Flame Steak , SS: Sear Steak . † Two of L-GSC’s three rate points are one operating point on this sequence and are merged before the fit, which is then a line through two points (App. K.1 ).
3D Gaussian Splatting (3DGS) enables high-quality, real-time novel view synthesis but requires significant storage and transmission resources. Mapping Gaussian attributes to 2D representations enables efficient compression using mature image codecs. However, Gaussian representations that achieve comparable rendering quality are generally treated similarly during optimization, despite substantial differences in coding rate, leading to limited rate-distortion (R-D) performance after compression. To address this limitation, we propose RDCompGS, a 3DGS compression method that enables overall R-D optimization of Gaussian representations with respect to subsequent coding. A differentiable estimate of the coding rate is incorporated into the R-D optimization with rendering distortion. The rate constraint adjustment model further regulates the R-D trade-off across different compression conditions. Extensive experiments on three benchmark datasets demonstrate that RDCompGS achieves average Bjøntegaard Delta Rate reductions of 37.84% and 49.31% with H.265/HEVC and JPEG XL, respectively. The estimated rate also shows a strong correlation with the actual bit-rate under different compression conditions.
Huiping Ren, Shuai Wan, Luqian Bai +2
School of Electronics and Information, Northwestern Polytechnical University, Xi’an 710129, China · Department of Computer Science, City University of Hong Kong, Hong Kong SAR, China · School of Telecommunication Engineering, Xidian University, Xi’an 710071, China
Video-based 3D Gaussian Splatting (3DGS) compression methods provide a practical route by representing Gaussian attributes as 2D maps and coding them with standard video codecs. Among these maps, high-dimensional non-DC spherical harmonics (SH-AC) maps contain the largest number of channels and account for a dominant portion of the bitstream. However, their statistics differ substantially from those of natural images, and the nonlinear dependencies among SH-AC coefficients remain insufficiently exploited. To address these issues, we propose CCT-GS, a Codec-Compatible learned Transform framework for 3DGS compression. CCT-GS first learns a generalized SH-AC transform that captures cross-scene regularities and converts SH-AC maps into compact codec-friendly bottleneck maps. It further introduces LoRA-based scene adaptation to recover scene-specific appearance details with lightweight side information. Experiments on MPEG GSC sequences demonstrate that CCT-GS consistently outperforms representative video-based baselines, achieving an average BD-rate reduction of 51.30% over the video-based anchor.
Feiyang Yu, Qi Yang, Wenjie Huang +3
Shanghai Jiao Tong University, Shanghai, China · University of Missouri-Kansas City, Kansas City, USA
Dynamic 3D Gaussian Splatting (3DGS) holds great promise as a 3D video streaming technology since it can represent complex 3D scenes with high fidelity. In this approach, every frame in a 3D video represents the environment as a collection of Gaussians with position and other attributes such as scale, rotation, opacity, and color. Frames capture fine details, permit views from any arbitrary perspective, but are an order of magnitude, or more, larger than 2D video frames. A line of recent work has explored how to compress dynamic 3DGS frames, but these approaches are often slow, in part because their compression techniques are not amenable to efficient acceleration. GS-NFS accelerates dynamic 3DGS compression and decompression on a GPU, to the point where it can encode and decode at full frame rate. It achieves this by developing novel GPU-based parallelizations of existing algorithms for encoding both positions and attributes of Gaussians. As a result, it is 1-2 orders of magnitude faster than the state-of-the-art in encoding and decoding a frame, while offering competitive compression performance and rendering quality.