Reply To: HARKで出力したcsvファイルと現実の時刻を同期させたい

HARK FORUM HARKで出力したcsvファイルと現実の時刻を同期させたい Reply To: HARKで出力したcsvファイルと現実の時刻を同期させたい

#2797

> 方法1の場合, 取得できる時刻はPC内の時刻だと考えております.
> 方法2の場合はどこの時刻を取得しているのでしょうか. また, NTPサーバーからの時刻の取得は可能でしょうか

どのケースにおいても HARK を実行している PC のシステム時刻になります。
フレーム単位の時刻に関しましても PC が NTP で同期している場合は、取得した時点の時刻となります。
つまり、 HARK の実行中に NTP で大きな時刻修正が入ると時刻がジャンプしたり戻るなどが発生する可能性が御座います。

> (方法1で行うとしたら, webカメラをPCに接続すれば簡易的に動画の時刻を取得できるかなと考えております.)

web カメラが PC の時刻に同期している場合は、 HARK が出力する時刻と一致します。
一方でネットワークカメラのように単体で時刻を保持する機器が NTP 同期をしている場合は、個々のデバイスで同期する時刻が僅かにずれる可能性が御座います。
なお、計算が面倒なことになるのでロケール(世界標準時なのか日本標準時なのかなど)の設定にはご注意ください。

蛇足ですが、 AudioStreamFromMic ノードの出力端子の具体的な仕様は次の通りです。
もし、ノードの出力を直接扱う C++ のコードを書かれる場合は下記をご参照ください。

  • TIME 端子:
    std::chrono::system_clock::time_point time; をメンバー変数として持つクラス Time() へのポインタが渡されている。
    std::chrono::system_clock::now() から LENGTH – ADVANCE 分の時間を差し引いた値(フレームの末尾時刻)が設定されている。
  • TIMESTAMP 端子:
    struct timeval time; をメンバー変数として持つクラス TimeStamp() へのポインタが渡されている。
    std::chrono::system_clock::now() から LENGTH – ADVANCE 分の時間を差し引いた値(フレームの末尾時刻)を timeval 型に変換した値が設定されている。

以上、宜しくお願い致します。
HARK Support Team.