GoPro HERO3 BEの撮影が途中で止まっちゃう現象を解決したくて色々と奮闘中。 色々と問題を切り分けて行ったら、Sandisk SDXC UHS-I の64GBカード使うと数秒で撮影が止まる現象だけが解決できないまま残ってしまった。。。

っていうか、購入から最初の数日は何の問題も出なかった。当初はふつうに撮影できたモードでも、数秒で止まるようになってしまった。SD カードとの相性のような問題は、最初は何も発生していなかったのに・・・・。
噂に聞いていた現象が、自分のトコでも発症してしまった orz

注意:
以下、色々頑張っていますが内容不十分です。このページは個人的な予測が書いてあります。検証も不十分です。

内容を3行で

完全に予測なんだけど、アライメントがずれたのかなあ?それともフラッシュメモリ特有の劣化かなあ?書き込み100回位までは速度低下しないと思っていたけど、実際は10回前後から速度低下が始まっちゃうのかなあ・・・?

追記 2013.3.16

64GB SDカードが壊れちゃう原因っぽい情報を、米Amazonで発見しました。
GoPro Hero3でmicroSDXC 64GBカード(UHS-1) が録画失敗しちゃう理由
▲詳細は上記。正確な情報かどうかは分かりませんが、Hero3 BEのシャットダウン方法に問題があるらしいく、UHS-1カードにダメージを与えるようです。

さらに追記 2013.5.15

このページに書いてあるような現象は、GoPro本体のファームウェアをアップデートする事でかなり解消されるように感じます。(ファームウェアアップデート後は、録画ストップの頻度が激減。カードの劣化も激しくない。)
とはいえ、長時間録画(70~80℃の高熱がヤバイ)を繰り返したり、電池切れ・電力不足のエラーを発生させるとSDカードにダメージが蓄積されるのは避けられない見たいです。
あと、完全に劣化したカードはGoProのファームをアップデートしても高ビットレートで記録するのは無理です(^_^;

 

以下は古い情報になります。
私は、「microSDXC UHS-1ってスゲー耐性が低いのかな?」とか「フォーマット方法がマズかったのかな?」ってな予測をしていましたが、原因は違うところにあるのかもしれないです。

はじめに: Sandiskの UHS-I ラインナップ

以下を発見。今まで知らなかった
 ・Sandisk (モバイル用) microSDXC UHS-I 64GB・・・約60ドル
 ・Sandisk (HD動画記録用) microSDXC UHS-I 64GB・・・約56ドル
SanDiskの UHS-I 64GBは、2種類存在していました。
私が買ったのはSDSDQUA-064G、モバイル用です。値段はほぼ同じなので、中身に違いは無いと思う。けどモバイル用のSDカードを選んだのは間違いだったんだろうか。

現在のカードの速度

購入したカードの書き込み速度を計測。
異変に気が付いてから撮影テストとフォーマット変更を繰り返したため、この数日で酷く悪化しています(画像は、既にカード全体書き込みを20~30回した後)
HDTune PRO
▲クリックで拡大: HD Tune Pro(15日間試用バージョン)
UHS-Iカードのファイルベンチを取ってみた図。 オレンジが書き込み速度。
 ・シーケンシャルライトのブレが大きい。
 ・30~5MB/s (240~40Mbps)の間で推移。
  すでに、部分的にClass10の速度が出ていない。

この状態では、45Mbps必要なモード (2.7K や 1080P 60FPS の Protune 利用時に) ビットレート足りない局面が出てきても仕方がない。補正できない位のバッファアンダーフロー出るわこれ。
いつからこんな状態になってしまったのだろう。購入時は、どれくらいの書き込み速度があったんだろう。キチンと調べておけば良かった。

いつから?

タイミング的には
 ・カード全体に書き込み (長時間撮影テストまたはフォーマット) を計7~8回
 ・GoPro側でフォーマットを行った
 ・GoPro アプリ(iPhone用)導入 (ファームアップは別カード利用)
あたりで発生。細かい記録とってないのでこれ以上は覚えてない。
普通に考えれば書き込み回数が原因だろうか?フォーマットでアライメントがずれたのだろうか?
速度保証した書き込み回数の上限を早くも突破しちゃったのかなあ・・・
(ちなみに問題のカードは、購入初日にCrystalDiskMark3でハングさせるという無茶をやらかしています。その辺も原因かも。。。)

購入時との差

購入時のベンチは CrystalDiskMark のみ。同ソフトで現状との比較
購入直後
64GB マイクロSDカード
▲50MBのシーケンシャル20MB/s出てた。
100MBシーケンシャルは12MB/s程度だった
現在
現在
▲13MB/sまで落ちてる・・・
参考(3~4 日前)
20MB/s
▲「数秒で止まる」現象に異変を感じはじめた頃。この頃はまだ20MB/sあった。
空欄
なんか1週間の酷使で、すげー速度落ちました('Α`)

そして実際には、以下に書いた各種フォーマットをかける前は 16MB/s ありました。現在進行形で劣化中なのかな・・・?

速度回復を頑張ってみる1

アライメントの調整について
参考リンク:
 ・NAND/AFTにおけるパーティションアラインメント問題のまとめ - Lansenの現実逃避日記
 ・こだわりのMONO: SSDとパーティションアラインメント
まだ理解しきれていない。あと、調整してもシーケンシャルライトは改善しない気もする。

調査してみた。Win+Rで[msinfo32]するだけの簡単なお仕事だった。
msinfo32の結果
▲クリックで拡大
パーティション開始オフセット16,777,216バイト(16MB、4096x4096)
ちゃんと4096の整数倍になっている。狂ってない。

速度回復を頑張ってみる2

0fillで埋めたり、1fillで埋めたりすれば効果があるかなあ・・・とか思いつつ、以下を実施。ちなみに完全フォーマットしたり0fillなどでデータを埋め尽くす際の負荷でもSDカードの寿命は縮むので、試したい人はその辺の覚悟をして行う事 。

以下効果なし
  • Windows標準の完全フォーマットしてみる
  • SD Formatterで倫理サイズ調整してみる
    (ここで特に速度が落ちた)
  • SD Formatterで上書きフォーマットしてみる
  • MiniTool Partition Wizard Home Editionで0fill してみる
  • MiniTool Partition Wizard Home Editionで1fill してみる
    1fill 後、もう一度SD Formatter 試す。(倫理サイズなし・クイックフォーマット) で16Mbpsまで速度が戻った(最低速度部分が45Mbps以下なのは変わらず)
これから行う
  • アロケーションユニットのサイズ変更を行ってみる
    (128KB固定で問題ないと思う。ちょっとやる気なくなって来た。。。)

上記テストで改善効果は全く無し。むしろ速度低下しか起きていない。
SD Formatterで倫理サイズ調整した際、劣化がさらに酷くなった気がする。

ちなみに、1回の完全フォーマットや埋め尽くしには2時間10分ほどかかる。45Mbpsのフル撮影は3時間かかるので、その1.5倍の速度で埋め尽くし出来ているようだけど、45Mbps撮影時はやっぱり止まる。

数秒で止まったファイルの特徴

カードの話から少し外れるけど、特徴みつけた。

録画失敗したファイルのみを集めてみた画像
録画失敗したファイルのみを集めてみた画像
▲クリックで拡大
見事なくらいにファイルサイズが23~24MB台に集中していた。
全てのファイルが、3.8~4.0秒の間でストップしている。
このタイミングで何かの負荷が大きくなっているんだろうか。

10分以上撮影できた場合でもこんな感じ
録画が止まったときのファイル
▲クリックで拡大
無事に5分~10分と撮影が進んでいっても、録画が途中で止まると最後のファイルは23~24MB台。約4秒分。

画像では「2.7K Protune」と書いているけど、テストを続けていると4Kや1080P 60FPSでも発生するようになってしまった。Wi-Fi無効にしても、バッテリー暖かい状態でも、コンセント1.5AUSB給電しても、64GBカード使うと発生する。。。

今の所、発生するのは45Mbpsの録画モードだけ。64GBのカードだけ。
このままどんどん速度が落ちていくんだろうか?
32GBカードもテストを繰り返すと、同じ症状が発生しちゃうんだろうか?

ちなみに32GBのカードの方は64GBカードより酷使しているけど問題発生なし。こちらは耐久性は結構ありそう。だけど、、、心配になってきた。。。

その他メモ

Sandisk SDXC UHS-I の64GBを「ディスクの管理」から覗いてみると、良く解らない未割り当て領域がある事に気が付いた。
謎の領域
▲クリックで拡大
いつから存在しているんだろう?購入当初から?
UHS-I カードには最初から付いているモノ?インデックス領域?エラー訂正用の予備領域?色々推測してみるが全く解らず。。。

ちなみにこのページ上部で行っているフォーマットの際は、この領域に手をつけないようにしている。

 

まだまだ解らない事だらけで中途半端な内容だけど、今回はとりあえずここまで。

あとがき

このmicroSDXC 64GB はテスト用として使い倒す事にします。
5千円以上もしたSDカードを、実践投入の無いまま現役引退させる事になるとは。。。切ない ('Α`)

敗因

やっぱ書き込み速度落ちるよなあ。。。('Α`)

 

実践投入の際は、新しいSDカード買うことにします。32GB選んで、長時間撮影は1080P 30fpsにしときます。。。
それとも確認用にもう一枚64GB買おうか・・・・もう少し価格が下がり、かつGoPro HERO3の新しいファームが出る頃でも良いかなあ・・・・迷う。