diff --git a/internal/__snapshots__/exportTypeScriptSchemas.test.ts.snap b/internal/__snapshots__/exportTypeScriptSchemas.test.ts.snap
index 6ef1c5e..3f652d4 100644
--- a/internal/__snapshots__/exportTypeScriptSchemas.test.ts.snap
+++ b/internal/__snapshots__/exportTypeScriptSchemas.test.ts.snap
@@ -187,13 +187,13 @@ import { Time } from "./Time";
/** A single frame of a compressed video bitstream */
export type CompressedVideo = {
- /** Timestamp of image */
+ /** Timestamp of video frame */
timestamp: Time;
- /** Frame of reference for the image. The origin of the frame is the optical center of the camera. +x points to the right in the image, +y points down, and +z points into the plane of the image. */
+ /** Frame of reference for the video. The origin of the frame is the optical center of the camera. +x points to the right in the video, +y points down, and +z points into the plane of the video. */
frame_id: string;
- /** Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame). */
+ /** Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame). Note: Foxglove Studio does not support video streams that include B frames because they require lookahead. */
data: Uint8Array;
/**
diff --git a/internal/schemas.ts b/internal/schemas.ts
index 446eeca..5e2d689 100644
--- a/internal/schemas.ts
+++ b/internal/schemas.ts
@@ -798,19 +798,19 @@ const CompressedVideo: FoxgloveMessageSchema = {
{
name: "timestamp",
type: { type: "primitive", name: "time" },
- description: "Timestamp of image",
+ description: "Timestamp of video frame",
},
{
name: "frame_id",
type: { type: "primitive", name: "string" },
description:
- "Frame of reference for the image. The origin of the frame is the optical center of the camera. +x points to the right in the image, +y points down, and +z points into the plane of the image.",
+ "Frame of reference for the video. The origin of the frame is the optical center of the camera. +x points to the right in the video, +y points down, and +z points into the plane of the video.",
},
{
name: "data",
type: { type: "primitive", name: "bytes" },
description:
- "Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame).",
+ "Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame). Note: Foxglove Studio does not support video streams that include B frames because they require lookahead.",
},
{
name: "format",
diff --git a/ros_foxglove_msgs/ros1/CompressedVideo.msg b/ros_foxglove_msgs/ros1/CompressedVideo.msg
index 991c967..d764f43 100644
--- a/ros_foxglove_msgs/ros1/CompressedVideo.msg
+++ b/ros_foxglove_msgs/ros1/CompressedVideo.msg
@@ -3,13 +3,13 @@
# Generated by https://github.com/foxglove/schemas
-# Timestamp of image
+# Timestamp of video frame
time timestamp
-# Frame of reference for the image. The origin of the frame is the optical center of the camera. +x points to the right in the image, +y points down, and +z points into the plane of the image.
+# Frame of reference for the video. The origin of the frame is the optical center of the camera. +x points to the right in the video, +y points down, and +z points into the plane of the video.
string frame_id
-# Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame).
+# Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame). Note: Foxglove Studio does not support video streams that include B frames because they require lookahead.
uint8[] data
# Video format
diff --git a/ros_foxglove_msgs/ros2/CompressedVideo.msg b/ros_foxglove_msgs/ros2/CompressedVideo.msg
index 03379ff..6eea099 100644
--- a/ros_foxglove_msgs/ros2/CompressedVideo.msg
+++ b/ros_foxglove_msgs/ros2/CompressedVideo.msg
@@ -3,13 +3,13 @@
# Generated by https://github.com/foxglove/schemas
-# Timestamp of image
+# Timestamp of video frame
builtin_interfaces/Time timestamp
-# Frame of reference for the image. The origin of the frame is the optical center of the camera. +x points to the right in the image, +y points down, and +z points into the plane of the image.
+# Frame of reference for the video. The origin of the frame is the optical center of the camera. +x points to the right in the video, +y points down, and +z points into the plane of the video.
string frame_id
-# Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame).
+# Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame). Note: Foxglove Studio does not support video streams that include B frames because they require lookahead.
uint8[] data
# Video format
diff --git a/schemas/README.md b/schemas/README.md
index 05ba776..c9b8da9 100644
--- a/schemas/README.md
+++ b/schemas/README.md
@@ -634,7 +634,7 @@ time
-Timestamp of image
+Timestamp of video frame
|
@@ -647,7 +647,7 @@ string
-Frame of reference for the image. The origin of the frame is the optical center of the camera. +x points to the right in the image, +y points down, and +z points into the plane of the image.
+Frame of reference for the video. The origin of the frame is the optical center of the camera. +x points to the right in the video, +y points down, and +z points into the plane of the video.
|
@@ -660,7 +660,7 @@ bytes
-Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame).
+Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame). Note: Foxglove Studio does not support video streams that include B frames because they require lookahead.
|
diff --git a/schemas/flatbuffer/CompressedVideo.fbs b/schemas/flatbuffer/CompressedVideo.fbs
index de3a482..714be1a 100644
--- a/schemas/flatbuffer/CompressedVideo.fbs
+++ b/schemas/flatbuffer/CompressedVideo.fbs
@@ -6,13 +6,13 @@ namespace foxglove;
/// A single frame of a compressed video bitstream
table CompressedVideo {
- /// Timestamp of image
+ /// Timestamp of video frame
timestamp:Time;
- /// Frame of reference for the image. The origin of the frame is the optical center of the camera. +x points to the right in the image, +y points down, and +z points into the plane of the image.
+ /// Frame of reference for the video. The origin of the frame is the optical center of the camera. +x points to the right in the video, +y points down, and +z points into the plane of the video.
frame_id:string;
- /// Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame).
+ /// Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame). Note: Foxglove Studio does not support video streams that include B frames because they require lookahead.
data:[uint8];
/// Video format
diff --git a/schemas/jsonschema/CompressedVideo.json b/schemas/jsonschema/CompressedVideo.json
index 21f167b..e33cc95 100644
--- a/schemas/jsonschema/CompressedVideo.json
+++ b/schemas/jsonschema/CompressedVideo.json
@@ -18,16 +18,16 @@
"maximum": 999999999
}
},
- "description": "Timestamp of image"
+ "description": "Timestamp of video frame"
},
"frame_id": {
"type": "string",
- "description": "Frame of reference for the image. The origin of the frame is the optical center of the camera. +x points to the right in the image, +y points down, and +z points into the plane of the image."
+ "description": "Frame of reference for the video. The origin of the frame is the optical center of the camera. +x points to the right in the video, +y points down, and +z points into the plane of the video."
},
"data": {
"type": "string",
"contentEncoding": "base64",
- "description": "Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame)."
+ "description": "Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame). Note: Foxglove Studio does not support video streams that include B frames because they require lookahead."
},
"format": {
"type": "string",
diff --git a/schemas/jsonschema/index.ts b/schemas/jsonschema/index.ts
index c168153..47dcd8b 100644
--- a/schemas/jsonschema/index.ts
+++ b/schemas/jsonschema/index.ts
@@ -351,16 +351,16 @@ export const CompressedVideo = {
"maximum": 999999999
}
},
- "description": "Timestamp of image"
+ "description": "Timestamp of video frame"
},
"frame_id": {
"type": "string",
- "description": "Frame of reference for the image. The origin of the frame is the optical center of the camera. +x points to the right in the image, +y points down, and +z points into the plane of the image."
+ "description": "Frame of reference for the video. The origin of the frame is the optical center of the camera. +x points to the right in the video, +y points down, and +z points into the plane of the video."
},
"data": {
"type": "string",
"contentEncoding": "base64",
- "description": "Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame)."
+ "description": "Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame). Note: Foxglove Studio does not support video streams that include B frames because they require lookahead."
},
"format": {
"type": "string",
diff --git a/schemas/omgidl/foxglove/CompressedVideo.idl b/schemas/omgidl/foxglove/CompressedVideo.idl
index 3b39e1c..fcaf97b 100644
--- a/schemas/omgidl/foxglove/CompressedVideo.idl
+++ b/schemas/omgidl/foxglove/CompressedVideo.idl
@@ -6,13 +6,13 @@ module foxglove {
// A single frame of a compressed video bitstream
struct CompressedVideo {
- // Timestamp of image
+ // Timestamp of video frame
Time timestamp;
- // Frame of reference for the image. The origin of the frame is the optical center of the camera. +x points to the right in the image, +y points down, and +z points into the plane of the image.
+ // Frame of reference for the video. The origin of the frame is the optical center of the camera. +x points to the right in the video, +y points down, and +z points into the plane of the video.
string frame_id;
- // Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame).
+ // Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame). Note: Foxglove Studio does not support video streams that include B frames because they require lookahead.
sequence data;
// Video format
diff --git a/schemas/proto/foxglove/CompressedVideo.proto b/schemas/proto/foxglove/CompressedVideo.proto
index 9d61961..f411a49 100644
--- a/schemas/proto/foxglove/CompressedVideo.proto
+++ b/schemas/proto/foxglove/CompressedVideo.proto
@@ -8,13 +8,13 @@ package foxglove;
// A single frame of a compressed video bitstream
message CompressedVideo {
- // Timestamp of image
+ // Timestamp of video frame
google.protobuf.Timestamp timestamp = 1;
- // Frame of reference for the image. The origin of the frame is the optical center of the camera. +x points to the right in the image, +y points down, and +z points into the plane of the image.
+ // Frame of reference for the video. The origin of the frame is the optical center of the camera. +x points to the right in the video, +y points down, and +z points into the plane of the video.
string frame_id = 2;
- // Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame).
+ // Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame). Note: Foxglove Studio does not support video streams that include B frames because they require lookahead.
bytes data = 3;
// Video format
diff --git a/schemas/ros1/CompressedVideo.msg b/schemas/ros1/CompressedVideo.msg
index 991c967..d764f43 100644
--- a/schemas/ros1/CompressedVideo.msg
+++ b/schemas/ros1/CompressedVideo.msg
@@ -3,13 +3,13 @@
# Generated by https://github.com/foxglove/schemas
-# Timestamp of image
+# Timestamp of video frame
time timestamp
-# Frame of reference for the image. The origin of the frame is the optical center of the camera. +x points to the right in the image, +y points down, and +z points into the plane of the image.
+# Frame of reference for the video. The origin of the frame is the optical center of the camera. +x points to the right in the video, +y points down, and +z points into the plane of the video.
string frame_id
-# Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame).
+# Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame). Note: Foxglove Studio does not support video streams that include B frames because they require lookahead.
uint8[] data
# Video format
diff --git a/schemas/ros2/CompressedVideo.msg b/schemas/ros2/CompressedVideo.msg
index 03379ff..6eea099 100644
--- a/schemas/ros2/CompressedVideo.msg
+++ b/schemas/ros2/CompressedVideo.msg
@@ -3,13 +3,13 @@
# Generated by https://github.com/foxglove/schemas
-# Timestamp of image
+# Timestamp of video frame
builtin_interfaces/Time timestamp
-# Frame of reference for the image. The origin of the frame is the optical center of the camera. +x points to the right in the image, +y points down, and +z points into the plane of the image.
+# Frame of reference for the video. The origin of the frame is the optical center of the camera. +x points to the right in the video, +y points down, and +z points into the plane of the video.
string frame_id
-# Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame).
+# Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame). Note: Foxglove Studio does not support video streams that include B frames because they require lookahead.
uint8[] data
# Video format
diff --git a/schemas/typescript/CompressedVideo.ts b/schemas/typescript/CompressedVideo.ts
index 8e7032f..21e1542 100644
--- a/schemas/typescript/CompressedVideo.ts
+++ b/schemas/typescript/CompressedVideo.ts
@@ -5,13 +5,13 @@ import { Time } from "./Time";
/** A single frame of a compressed video bitstream */
export type CompressedVideo = {
- /** Timestamp of image */
+ /** Timestamp of video frame */
timestamp: Time;
- /** Frame of reference for the image. The origin of the frame is the optical center of the camera. +x points to the right in the image, +y points down, and +z points into the plane of the image. */
+ /** Frame of reference for the video. The origin of the frame is the optical center of the camera. +x points to the right in the video, +y points down, and +z points into the plane of the video. */
frame_id: string;
- /** Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame). */
+ /** Compressed video frame data. For packet-based video codecs this data must begin and end on packet boundaries (no partial packets), and must contain enough video packets to decode exactly one image (either a keyframe or delta frame). Note: Foxglove Studio does not support video streams that include B frames because they require lookahead. */
data: Uint8Array;
/**