Difference between revisions of "X3D Binary Compression Capabilities and Plans"

From Web3D.org
Jump to: navigation, search
m (Call For Contributions)
m (Call For Contributions)
Line 4: Line 4:
  
 
==Call For Contributions==
 
==Call For Contributions==
 +
 +
'''What is happening here.'''
 
X3D solutions currently support a wide range of author requirements.   
 
X3D solutions currently support a wide range of author requirements.   
 
Further improvements and standards-based partnerships are possible for achieving broader industry interoperability.   
 
Further improvements and standards-based partnerships are possible for achieving broader industry interoperability.   

Revision as of 15:36, 5 April 2013

Motivation. Lots of work has already been accomplished using the X3D Compressed Binary Encoding (CBE) standard. X3D has numerous coherent approaches already available that meet author requirements for a general Web-based 3D transmission format. We are working to demonstrate and standardize multiple interoperable improvements in 2013.

Call For Contributions

What is happening here. X3D solutions currently support a wide range of author requirements. Further improvements and standards-based partnerships are possible for achieving broader industry interoperability.

A new X3D Compressed Binary Encoding Call For Contributions (CFC) is being drafted to accomplish these achievable goals. We are now building our next-generation standard to further advance these technical capabilities for X3D.

  • We will issue a Call For Contributions in April, review frequently, then review submissions at the Web3D 2013 Conference in June
  • Our strategic goal is to accomplish all of these X3D efforts during calendar year 2013.

Prior work is essential, useful and relevant.

All submitters must meet certain requirements prior to consideration.

  • The Intellectual Property Rights (IPR) protections for X3D specification.
  • Patented technologies can be considered, but only when eventual use will be royalty free for X3D use (if eventually accepted).
  • Submitters can restrict access to patented submissions during member-only working group review, if desired.

Defining example Use Cases helps evaluate the value of each contribution.

  • Work-flow authoring requirements for compressed X3D scenes is helpful, providing useful criteria for evaluating technical capabilities. Use cases enable us to determine whether each possible improvement effectively meets a declared need.
  • X3D authors are asked to help us document common workflow practices. We will extend the requirements to build an updated set of use cases to help evaluation.

Existing Compression Usage for X3D and VRML97

A solid foundation exists for continued progress.

  • Approved ISO standard Compressed Binary Encoding (CBE) for X3D.
  • Optional, alternative gzip compression and MIME Type definitions for X3D.
  • Optional, alternative gzip compression for VRML97.
    • Original compression technique of applying gzip to .wrl compressed VRML97 files was called .wrz.
    • This emerged as a common practice when gzip was originally used. No formal specification of .wrz or corresponding mime type was produced.
    • Occasionally authors might also gzip .wrl files while retaining the .wrl file extension.

Polygon Reduction and Geometric Compression

Formal specifications:

Best practices and examples:

  • CAD Distillation Filter (CDF) technique allowing successive refinement of large X3D scenes into tighter X3D scenes.
  • A highly effective exemplar algorithm for Coding Polygon Meshes as Compressable ASCII is demonstrated in the Experimental Binary Compression examples.
  • Multiple CAD Distillation Filter (CDF) algorithms implemented in Xj3D and X3D-Edit as open-source.
  • The Chisel VRML Optimisation Tool has an excellent set of data-reduction tools for VRML that are worth repeating for X3D.
  • Multiple other conversion and translation tools available with supporting capabilities.
  • Following submission of candidate technologies, we will build a table of 3D graphics compression benchmark results, providing a full comparison of existing tools (compression ratio, computational complexity, memory usage, etc.)
  • MPEG4 capabilities are welcome, if IPR prerequisites are met. Discussion to date has indicated that Royalty Free (RF) solutions are not available.
  • Related efforts reported in academic papers and Web3D conferences need to be reviewed and reflected here

Data-Centric Binary Encodings

The X3D Compressed Binary Encoding (CBE) uses the ISO Fast Infoset (FI) standard to compress XML information, which is how the CBE maintains equivalent expressive power with other X3D scene encodings.

Network Streaming

  • Multiple capabilities are already available in X3D for flexible network transmission.
    • Anchor, Inline, LOD, LoadSensor, Script and Prototype nodes support successive retrieval of content once initial model is displayed.
  • Progressive-mesh geometric streaming technologies hold definite interest. Mesh-compression algorithms that can be applied to existing X3D polygonal data will be the most valuable.
  • Need to demonstrate whether http/https and local-file url retrieval are sufficient for a network protocol for use cases of interest.
    • Other network protocols (Web sockets, P2P channels, etc.) might be possible or needed, but only if security restrictions and implementation/deployment can be handled satisfactorily.
  • Javascript Object Notation (JSON) might be suitable for simple streaming of X3D scene-graph data via Script node or external HTML page, which can be useful for progressive mesh and other incremental network-update approaches.
    • Support in clients and servers is becoming widely available.
    • JSON might have other uses as well, see Khronos work on Collada2JSON and glTF. This is an active area of work.

X3D Implementations and Benchmark Testing

The following tools implement the X3D Compressed Binary Encoding (CBE) standard.

Existing assets can be improved to establish a comprehensive X3D compression benchmark suite.

  • Such a suite can facilitate testing of new contributed capabilities.
  • We plan to automate conversions and comparisons, using Xj3D XIOT and other submissions, for cross-check interoperability and validation testing.
  • It will be easy to automate such a suite using our many example scenes and the already-existing nightly build (continuous integration) processes.
  • This will automate the production of results summarized in the compression performance tables constructed as part of the call for technologies.
  • Primary metrics are file size, conversion speed and memory requirements. Visual inspection of result quality will also be provided.

Looking Ahead

  • Web3D's X3D and CAD Working Groups each have member commitments to pursue this continued innovative work in 2013.
  • We are keen to consider common, sharable technical strategies with MPEG-4 and Collada. Web3D Consortium has been waiting for a response from The Khronos Group and MPEG standards SC 29 committee since a joint meeting at SIGGRAPH conference August 2012. To date, formal MPEG4 communications have indicated that a royalty-free solution is not possible.
  • There will be an open meeting on 3D Transmission Formats and responses to the X3D Call for Contributions. This will be a useful way to compare candidate technologies to complete these capabilities. We are preparing to hold this collaboration workshop immediately preceding the Web3D 2013 conference on Wednesday 19 June 2013 in San Sebastian Spain.