0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

RViz2上でROSBAG2を記録・再生するプラグイン - rviz2_bag

0
Last updated at Posted at 2026-02-23

ROSBAG2の記録や再生をする時、RViz2とターミナルを行ったり来たり……面倒ではないですか?

ということで、RViz2上でROSBAG2を記録・再生するプラグインを作ってみました。

インストール方法

cd (ROS2のワークスペース)/src
git clone https://github.com/shikishima-TasakiLab/rviz2_bag.git
cd ..
colcon build
source ./install/setup.bash

RViz2へのパネル追加

  1. RViz2を起動する

    rviz2
    
  2. PanelsAdd New Panelからパネル追加のダイアログを開く

  3. rviz2_bag/Playerまたはrviz2_bag/Recorderを選択する

Player

player.jpg

Player UIの各機能と、標準の ros2 bag play CLIコマンドとの対応表です。

GUIコントロール 概要 対応する ros2 bag play 引数・キー
Open 再生する ROS 2 bag ディレクトリを選択 -
/clock /clock トピックを特定の周波数(Hz)で配信(Time Source用) --clock [HZ]
Rate 再生速度の倍率を指定 -r RATE / --rate RATE
Loop ループ再生を有効化 -l / --loop
Play 選択したバッグファイルの再生を開始 ros2 bag play <bag_path>
Pause 再生を一時停止 Space
Stop 再生を停止(プロセス終了) Ctrl + C
Rewind 再生位置を先頭に戻す -
Next Message 次のメッセージまで1ステップ進める . (一時停止中)
Spinbox / Slider 再生位置(シーク)を調整 --start-offset <SECONDS>
Select All 全てのトピックを配信対象にする -
Deselect All 全てのトピックを選択解除 -
Topic Checkbox 配信するトピックを個別に選択 --topics <TOPICS>

Recorder

Recorder Recorder Setting

Recorder UIの各設定項目と、標準の ros2 bag record CLIコマンドとの対応表です。

Record タブ (基本設定)

GUIコントロール 概要 対応する ros2 bag record 引数・キー
Output dir 保存先ディレクトリ -o OUTPUT, --output OUTPUT
Name 出力するROSBAG名。接頭辞、タイムスタンプの有無、接尾辞を指定可能 -o OUTPUT, --output OUTPUT
Record 録画を開始 ros2 bag record
Pause 録画を一時停止 Space
Stop 録画を停止 Ctrl + C
use Sim Time /clock を購読しシミュレーション時間を使用。最初の /clock を受信するまで記録は開始されません。 --use-sim-time
Select All 全てのトピックを録画対象にする -
Deselect All 全てのトピックを選択解除 -
Reload トピック一覧を更新 -
Topic Checkbox 録画するトピックを選択 [topics]

Setting タブ (詳細設定)

GUIコントロール 概要 対応する ros2 bag record 引数
Storage 使用するストレージ形式(デフォルトは 'sqlite3') -s, --storage
Serialization Format メッセージのシリアル化形式(デフォルトは使用中のRMW形式) -f, --serialization-format
No Discovery 録画中のトピック自動検知を無効化。開始時に存在するトピックのみ録画。 --no-discovery
Polling Interval 新規トピックを確認する間隔(ms)。No Discovery有効時は無視されます。 -p, --polling-interval
Max Bag Size バッグファイルの最大分割サイズ(bytes)。0は分割なし。 -b, --max-bag-size
Max Bag Duration バッグファイルの最大録画時間(秒)。0は分割なし。 -d, --max-bag-duration
Max Cache Size メモリ上のキャッシュ最大サイズ(bytes)。ダブルバッファのため最大で設定値の2倍を消費。 --max-cache-size
Compression Mode 圧縮単位('file' または 'message') --compression-mode
Compression Format 圧縮アルゴリズム(zstd等) --compression-format
Compression Queue Size 圧縮待ちキューの最大数。 --compression-queue-size
Compression Threads 並列圧縮に使用するスレッド数。0は全CPUコアを使用。 --compression-threads
Log Level ログ出力レベル(debug, info, warn, error, fatal) --log-level
Name Delimiter 出力名(Prefix/Timestamp/Suffix)の区切り文字。 -
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?