Skip to content

Suggestion: real-time transport mode (AsyncApi?) #55

@rinode

Description

@rinode

Just to provide some extra context and avoid misunderstanding: this suggestion concerns high frequency updates of graphics properties while it's on air and if OGraf should play a role here.

Last meeting got me thinking... @axelboberg raised a very interesting point about transport, whether we have ever considered using WebSockets. Generally, HTTP/3 (using QUIC, based on UDP) should provide a boost in performance over 'traditional' HTTP over TCP, with only one round-trip for the handshake and lost packets being non-blocking. However... Have we ever benchmarked this, especially for high framerate scenarios?

Should the need arise for low-latency communication, would it be an idea to adopt AsyncApi, but using the OpenApi schema? See: https://www.asyncapi.com/docs/tutorials/getting-started/coming-from-openapi, they seem quite clear about this:

AsyncAPI is compatible with OpenAPI schemas.

Perhaps this is a nice performance profiling/benchmark task, a cross-comparison of framerates and transport modes:

  • Framerates: 23.976, 25fps, 29.97fps, 30fps, 50fpx, 59.94fps, 60fps, 120fps
  • Transport: REST over HTTP/2 (TCP), REST over HTTP/3 (QUIC/UDP), WebSockets (TCP), WebTransport (HTTP/3)

Would love to hear your input! Let's get technical 🤓

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions