Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -37,4 +37,5 @@ yarn.lock
# test files
/public/examples/
/test-results/
/playwright-report/
/playwright-report/
.tmp-urdf-debug-*/
4 changes: 2 additions & 2 deletions NOTICE
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@ THIRD-PARTY SOFTWARE NOTICES
This product depends on third-party packages. Their licenses are reproduced
below or can be found in each package's LICENSE file under node_modules/.

@foxglove/rosbag, @foxglove/rosbag2-web, @foxglove/rosmsg,
@foxglove/rosbag, @foxglove/rosbag2, @foxglove/rosmsg,
@foxglove/rosmsg-serialization, @foxglove/rosmsg2-serialization,
@foxglove/message-definition, @foxglove/omgidl-parser,
@foxglove/omgidl-serialization, @foxglove/ros2idl-parser, @foxglove/sql.js
@foxglove/omgidl-serialization, @foxglove/ros2idl-parser, sql.js
Copyright 2021-2024 Foxglove Technologies Inc.
Licensed under the MIT License.
https://github.com/foxglove
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ export function FileLoader() {
|--------|-----------|-------|
| MCAP | `.mcap` | ROS 2 / robotics standard; zstd and lz4 compression |
| ROS 1 bag | `.bag` | ROS 1 recording format |
| ROS 2 SQLite | `.db3` | ROS 2 default recording (via `@foxglove/sql.js` WASM) |
| ROS 2 SQLite | `.db3` | ROS 2 default recording (via `sql.js` WASM) |
| HDF5 | `.h5`, `.hdf5` | Scientific data; partial read via `@ioai/hdf5` |
| BVH | `.bvh` | Skeletal motion capture animation |

Expand Down
2 changes: 1 addition & 1 deletion README.zh.md
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ export function FileLoader() {
|------|--------|------|
| MCAP | `.mcap` | ROS 2 / 机器人常用;zstd、lz4 压缩 |
| ROS 1 bag | `.bag` | ROS 1 录制格式 |
| ROS 2 SQLite | `.db3` | ROS 2 默认录制(`@foxglove/sql.js` WASM) |
| ROS 2 SQLite | `.db3` | ROS 2 默认录制(`sql.js` WASM) |
| HDF5 | `.h5`, `.hdf5` | 科学数据;`@ioai/hdf5` WASM 读取 |
| BVH | `.bvh` | 动作捕捉骨骼动画 |

Expand Down
8 changes: 4 additions & 4 deletions docs/ARCHITECTURE.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ ROS View is a **browser-native** playback and visualization tool for robotics re
|--------|-------------|
| **MCAP** | Preferred format. Chunk-indexed for efficient range queries. |
| **ROS1 `.bag`** | Chunk-indexed binary log format. |
| **ROS2 `.db3`** | SQLite-based format via `@foxglove/sql.js` WASM. |
| **ROS2 `.db3`** | SQLite-based format via `sql.js` WASM. |
| **HDF5** | via `@ioai/hdf5` WASM. |
| **BVH** | Motion-capture skeleton animation. |

Expand Down Expand Up @@ -55,7 +55,7 @@ ROS View is a **browser-native** playback and visualization tool for robotics re
|--------|---------|---------------|-------|
| **MCAP** | `@mcap/core` + `@foxglove/mcap-support` | Full (chunk index) | Preferred; efficient interval queries |
| **ROS1 `.bag`** | `@foxglove/rosbag` | Full (chunk index) | via `CachedFilelike` + `BrowserHttpReader` |
| **ROS2 `.db3`** | `@foxglove/rosbag2-web` + `@foxglove/sql.js` (WASM) | Local / remote requires full download | SQLite limitation; convert to MCAP for large remote files |
| **ROS2 `.db3`** | `@foxglove/rosbag2` + `sql.js` (WASM) | Local / remote requires full download | SQLite limitation; convert to MCAP for large remote files |

**Supported message encodings:**

Expand Down Expand Up @@ -242,12 +242,12 @@ Fixed-width sidebar (collapsible) on the left with three tabs:
| `@mcap/core` | MCAP file format read/write core (indexed + streaming) |
| `@foxglove/mcap-support` | MCAP channel parsing, schema-to-JS bridging, decompression handlers |
| `@foxglove/rosbag` | ROS1 `.bag` reader (BlobReader + remote CachedFilelike) |
| `@foxglove/rosbag2-web` | ROS2 `.db3` reader (`@foxglove/sql.js` WASM) |
| `@foxglove/rosbag2` | ROS2 `.db3` reader (SQLite queries + CDR decode) |
| `@foxglove/rosmsg` | ROS message definition parsing |
| `@foxglove/rosmsg-serialization` | ROS1 message deserialization |
| `@foxglove/rosmsg2-serialization` | ROS2 CDR deserialization |
| `comlink` ^4.4 | Web Worker bidirectional RPC (Transferable support) |
| `@foxglove/sql.js` | SQLite WASM runtime (for `.db3` files) |
| `sql.js` | SQLite WASM runtime (for `.db3` files) |

### 4.5 Visualization

Expand Down
13 changes: 5 additions & 8 deletions docs/ARCHITECTURE.zh.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
|------|--------|------------|------|
| **MCAP** | `@mcap/core` + `@foxglove/mcap-support` | 完整支持(索引读取) | 首选格式,有 chunk 索引可做高效区间查询 |
| **ROS1 .bag** | `@foxglove/rosbag` | 完整支持(chunk 索引) | 通过 `CachedFilelike` + `BrowserHttpReader` 实现 |
| **ROS2 .db3** | `@foxglove/rosbag2-web` + `@foxglove/sql.js` (WASM) | 本地支持 / 远程需整文件下载 | SQLite 格式限制,远程大文件建议转 MCAP |
| **ROS2 .db3** | `@foxglove/rosbag2` + `sql.js` (WASM) | 本地支持 / 远程需整文件下载 | SQLite 格式限制,远程大文件建议转 MCAP |
| **HDF5** | `@ioai/hdf5` (WASM) | 部分读取 | 科学数据;浏览器内解析 |
| **BVH** | 内置解析 | 不适用(非 ROS bag 类流) | 骨骼动作捕捉动画回放 |

Expand Down Expand Up @@ -235,12 +235,12 @@
| `@mcap/core` | MCAP 文件格式读写核心(索引读取 + 流式读取) |
| `@foxglove/mcap-support` | MCAP 通道解析、Schema 到 JS 对象的桥接、解压处理器 |
| `@foxglove/rosbag` | ROS1 .bag 文件读取(支持 BlobReader + 远程 CachedFilelike) |
| `@foxglove/rosbag2-web` | ROS2 .db3 文件读取(基于 `@foxglove/sql.js` WASM) |
| `@foxglove/rosbag2` | ROS2 .db3 文件读取(SQLite 查询 + CDR 解码) |
| `@foxglove/rosmsg` | ROS 消息定义解析 |
| `@foxglove/rosmsg-serialization` | ROS1 消息反序列化 |
| `@foxglove/rosmsg2-serialization` | ROS2 CDR 消息反序列化 |
| `comlink` ^4.4 | Web Worker 双向 RPC(支持 Transferable) |
| `@foxglove/sql.js` | SQLite WASM 运行时(用于 .db3 文件读取) |
| `sql.js` | SQLite WASM 运行时(用于 .db3 文件读取) |

### 4.5 可视化

Expand Down Expand Up @@ -878,11 +878,8 @@ rosview/
"@mcap/core": "^2.3.2",
"@foxglove/mcap-support": "workspace:*",
"@foxglove/rosbag": "^3.1.2",
"@foxglove/rosbag2-web": "^2.1.2",
"@foxglove/rosmsg": "^5.0.3",
"@foxglove/rosmsg-serialization": "^3.1.1",
"@foxglove/rosmsg2-serialization": "^3.0.3",
"@foxglove/sql.js": "^0.0.4",
"@foxglove/rosbag2": "^6.0.0",
"sql.js": "^1.14.1",

"comlink": "^4.4.2",

Expand Down
52 changes: 30 additions & 22 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 4 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@ioai/rosview",
"version": "1.2.6",
"version": "1.3.0",
"description": "High-performance robotics data visualization for MCAP, ROS bag, ROS2 db3, HDF5 and BVH — embeddable React component and standalone SPA",
"keywords": [
"ros",
Expand Down Expand Up @@ -92,7 +92,7 @@
"@foxglove/omgidl-serialization": "^1.2.3",
"@foxglove/ros2idl-parser": "^0.3.6",
"@foxglove/rosbag": "^0.4.1",
"@foxglove/rosbag2-web": "^5.0.0",
"@foxglove/rosbag2": "^6.0.0",
"@foxglove/rosmsg": "^5.0.5",
"@foxglove/rosmsg-serialization": "^2.0.4",
"@foxglove/rosmsg2-serialization": "^3.0.3",
Expand All @@ -115,6 +115,7 @@
"@types/node": "^25.6.0",
"@types/react": "^19.2.15",
"@types/react-dom": "^19.2.3",
"@types/sql.js": "^1.4.11",
"@types/three": "^0.173.0",
"@vitejs/plugin-react": "^6.0.1",
"autoprefixer": "^10.4.23",
Expand Down Expand Up @@ -146,6 +147,7 @@
"react-resizable-panels": "^4.10.0",
"rollup": "^4.52.5",
"sonner": "^2.0.7",
"sql.js": "^1.14.1",
"tailwind-merge": "^3.5.0",
"tailwindcss": "^3.4.17",
"three": "^0.173.0",
Expand Down
Loading
Loading