AVCHDのファイルの更新日時 (タイムスタンプ)の修正

AVCHDファイルをPCに取り込むと、ファイルの作成日時,更新日時が取り込んだ日時に変更されてしまいます。それを撮影日時に修正するアプリを作成しました。

スポンサーリンク

AVCHD(m2ts)の取扱い

AVCHDは動画ファイルの一種です。
ビデオカメラだけでなくデジタルカメラでもこの形式で撮影できるものがあります。

現在僕が使っているカメラは…

  • Sony DCS-HX5
  • Panasonic DMC-FZ1000
  • Canon PowerShot S120
  • ZOOM Q2HD

の4台です。
パナソニックソニーは規格策定者と言うこともありAVCHDで撮影できます。
他はMP4です。

AVCHDで撮影した動画はメーカー製アプリを利用してパソコンに取り込みしています。メモリーカードから直接コピーしても再生はできるのですが、撮影情報などが付かない生データになってしまいます。撮影情報を残したままパソコンに取り込むためメーカー製アプリを使う必要があるのです。例えばソニーのDSC-HX5VだとGPS情報が利用できます。

動画のタイムスタンプ(更新日時)の問題

ですが、このメーカー製アプリを使うことでいささか問題が発生します。取り込んだ動画の更新日時が「パソコンに取り込んだ日時」に変更されてしまうのです。メモリーカードから直接コピーをすれば、通常更新日時は撮影されたときの日時です。

ちなみに更新日時が変更されたとしてもメーカー製アプリで動画を管理していれば何の問題もありません。静止画も動画も撮影日時順に並んで表示されます。

画像ビューア「XnView」で撮影日時順に並ばない

過去にもいろいろなメーカーのデジカメを使ってきたため、特定のメーカー製アプリで画像を管理することができません。静止画は良いのですが、メーカー製アプリは基本的に他社のデジカメで撮影された動画は再生できません。

そのためメーカーを問わずコーデックさえあれば全て再生できる画像ビューア、XnViewを使っています。XnViewでは撮影日時順に並べるためにファイルの更新日時を利用してますが、その更新日時が変更されてしまっていては都合が悪いのです。静止画だけならEXIFで良いのですが動画にはEXIFが無いため更新日時頼りなのです。

結果的に撮影日時順に並べることができなくなってしまうのです。

更新日時を撮影日時に修正する

メーカー製アプリで取り込んだAVCHDファイルは、以下のようにファイル名が撮影日時になります。

DCS-HX5V,DSC-WX5で撮影しPlayMemories Homeで取り込んだファイル
20110123135626.m2ts
20110123135626.m2ts.modd
20110123135626.m2ts.moff

DMC-GX1,DMC-FZ200で撮影しPHOTOfunSTUDIOで取り込んだファイル
20140315173634.m2ts
20140315173634.m2ts.modd

DMC-FZ1000で撮影しPHOTOfunSTUDIOで取り込んだファイル
2016-01-30_124718.cont
2016-01-30_124718.m2ts
2016-01-30_124718.pmpd
2016-01-30_124718.tmb

このファイル名を利用して、ファイルの更新日時を書きかえてやれば問題は解決しそうです。
また上記のように、1本の動画で複数のファイルが作成されますが、整合性が取れるよう全てのファイルの日時を書きかえることとします。

タイムスタンプ修正アプリを作りました

拡張子でファイルをピックアップしてから、ファイル名が更新日時として妥当かどうかチェックします。
妥当なものは更新日時を修正します。
(現在のバージョンは作成日時にも同じものをセットするようになっています。)
「更新エラーファイル」は実際はエラーではなくてファイル名ではじかれたものが表示されています。
拡張子「.modd」は静止画の連射したものにも作られますが、ファイル名が日時ではないのでエラー扱いになります。

指定したフォルダのサブフォルダも修正対象となります。

タイムスタンプ修正

これで安心してXnViewが使えるようになりました。

動作確認機種

ソニー DSC-HX5V
ソニー DSC-WX5
パナソニック DMC-GX1
パナソニック DMC-FZ200
パナソニック DMC-FZ1000

利用者の方から動作報告をいただいた機種

ソニー DSC-HX50V
ソニー DSC-TX300V
ソニー DSC-HX90V

ファイルの内部を見るような高度なことはしていません。ファイル名を使っているだけなので、動作確認が取れていない機種でもファイル名の形式が上記モデルと同じなら動作します。

「上記以外の機種で使っているよ」という方がいらっしゃいましたら、機種名をコメントに書いていただけると嬉しいです。動作確認機種に、お名前ともに紹介させていただきたいと思っています。

ダウンロード

同じ問題に悩んでいる方も多いようなので公開します。
Windows7, VB2010Expressで開発しています。
.NET Framework 4環境であれば動くと思います。

Ver1.10

“タイムスタンプ修正アプリ” をダウンロード AVCHDTIME.zip – 825 回のダウンロード – 10 KB

使用にあたっては自己責任でお願いします。
ご利用になる場合は必ずテストデータを用意して動作を確認をしてください。
サイトポリシーをご覧いただいた上でご利用ください。

また、旧サイトの掲示板にて「ウィルス検知のアラートが出た」との報告を受けています。

旧サイトの掲示板

本来システムが扱うべき日付を強制的に書き換えてるので引っかかっているのでは?と考えています。

当方ではウイルスバスタークラウド、Microsoft Security Essentialsがインストールされた2台のPCで検証しましたが異常はありませんでした。
自分でも使っているのでパソコンを壊すようなことは無いかと思いますが、何らかの不具合を起こしたとしても責任はとれません。

拡張子MTS対応版

“タイムスタンプ修正アプリ(Ver1.10a)” をダウンロード AVCHDTIMEa.zip – 188 回のダウンロード – 10 KB

コメントにてSONY HDR-CX670のファイルへの対応依頼があったため作成したものです。バージョン表記は「Ver1.10a」となっています。

通常版との違いは、SONYの修正対象拡張子に「MTS」を追加しただけです。

例:20110123135626.mts

※HDR-CX670を持っていないため実機ファイルテストができません。
 そのため暫定版扱いとさせていただきます。

【追記】
当記事コメントより…
HDR-CX670でもPlayMemories Homeを利用してAVCHDを取り込むと、「m2ts」「m2ts.modd」「m2ts.moff」が作成されるとのことです。
したがって、従来バージョンでも更新日時の修正ができるものと思われます。
スポンサーリンク
アドセンス(PC)
アドセンス(PC)

フォローする

この記事が気に入ったら
いいね!してくれると嬉しいです
こんな記事も読まれてます
スポンサーリンク
アドセンス(PC)

コメント

  1. ぽんこ より:

    旧サイトにてコメントさせていただいたぽんこと申します。素早い対応ありがとうございました。子供の動画ばかりだったので、撮影日時順に並べることができ、とてもうれしいです。
    すばらしいソフト、使わせていただきますね!新しいサイト、応援しています。

    • ゆうぱぱ より:

      ぽんこさん

      あたたかいお言葉ありがとうございます。
      お役にたてたようで良かったです。
      今後ともよろしくお願いします。

  2. しそ より:

    私もsony製デジカメの動画のタイムスタンプに悩んでおり、
    このようなソフトを探していました。

    私の求めていたものまさにそのもです。
    ありがとうございました。

    • ゆうぱぱ より:

      しそさん

      お役に立てたようで良かったです。
      書き込みありがとうございました。

      今後ともよろしくお願いします。

  3. はくたか より:

    ソニーHDR-CX670を使っています。ファイルの拡張子がm2tsではなく、mtsであるためなのか、指定フォルダ内全ファイルに表示されません。Googleフォトに上げるときに日付がおかしくなるので、このソフトを使いたいと思ったのですが・・・

    • ゆうぱぱ より:

      はくたかさん
      対応しているファイルは、ファイル名,拡張子とも当ページに記載されているものになります。

      記載されているものと同じようにHDR-CX670のファイル名、拡張子を教えていただければ対応できるかもしれません。
      ただし、あくまでも自分用のアプリを公開しているだけなので、対応をお約束できるわけではありません。

      また、ファイル名に撮影日時が含まれていなければ対応できません。
      (ファイル名から日時を取り出しているからです)
      SONYのカメラの場合は基本的にPlayMemories Homeでパソコンに取り込んだものが対象となります。

      よろしくお願いします。

  4. はくたか より:

    お返事ありがとうございます。
    HDR-CX670で撮影したファイルは「20161228070854.MTS」のように拡張子がMTSになっています。ファイル名には撮影日時が入っています。
    お手数をお掛けいたします。もし、対応いただければうれしいです。

    • ゆうぱぱ より:

      はくたかさん
      SONY側の修正対象にMTSを加えた物を作ってみました。
      この記事の最下部よりダウンロードできます。

      簡単なテストは行っていますが、HDR-CX670を持っていないので実ファイルでのテストはできていません。
      大切なファイルを壊さないようにテストしながら使ってみてください。

      よろしくお願いします。

  5. はくたか より:

    ゆうぱぱさん

    ご対応いただいたのに、お返事遅くなりました。
    HDR-CX670からPlayMemories Homeにて取り込んだファイル(拡張子mts)にて、正常動作を確認しました。ありがとうございました。

    PlayMemories Homeを介さない取り込み(mtsファイルのみのコピーでmodd、moffファイルがない場合)だと動かなかったので、動作確認に時間が掛かってしまいました。

    こちらの希望にご対応いただいてありがとうございます。助かりました。

  6. はくたか より:

    ゆうぱぱさん

    HDR-CX670から取り込み、タイムスタンプ修正アプリの動作についての動作報告についての訂正です。

    【PlayMemories Homeから取り込んだ場合】
    拡張子「m2ts」「m2ts.modd」「m2ts.moff」ファイルがコピーされます。タイムスタンプ修正アプリが正常に動作します。

    【PlayMemories Homeを介さない取り込みの場合】
    mtsファイルのみがコピーされます。タイムスタンプ修正アプリ(Ver1.10a)で「更新開始」をクリックすると、「更新エラーファイル」に表示され、日付は変わりません。

    私がPlayMemories Homeを使わずに取り込んでいたことがうまく動作しないことの原因だったようです。HDR-CX670でもPlayMemories Homeから取り込むと「m2ts」「m2ts.modd」「m2ts.moff」ができますので、おそらく以前のバージョンでも動作すると思います。

    いろいろとご迷惑をお掛けしました。今後は、PlayMemories Homeで取り込んで、当アプリを使わせていただこうと思います。申し訳ありませんでした。ありがとうございました。

    • ゆうぱぱ より:

      はくたかさん
      ご丁寧な返信ありがとうございます。

      ソニー製品はデジカメ、ビデオカメラを問わず同じファイルが作られるようですね。
      これからこのアプリを使われる方の参考にもなると思います。
      情報提供ありがとうございました。

      今後ともよろしくお願いします。

  7. 匿名希望 より:

    下記カメラで撮影したファイル(拡張子m2ts)で、うまくタイムスタンプできました。
     ソニー DSC-HX50V
     ソニー DSC-TX300V
     ソニー DSC-HX90V
    (すべてPlayMemories HomeでPCへ取り込み)

    このページは検索でたどり着きましたが、まさにこういのがあれば助かると思っていたアプリでした。
    どうも有難うございました。

    • ゆうぱぱ より:

      動作報告ありがとうございます。
      さっそく動作確認機種に入れさせていただきました。

      お役に立てたことと、このように動作報告をいただけたことがとてもうれしいです。
      ありがとうございました。