LoginSignup
0
0

More than 3 years have passed since last update.

SDカードでうまく録画できないと思ってたらFAT32が2種類あった

Last updated at Posted at 2019-06-22

最近SDカードによって動画がうまく撮れたり撮れなかったり(撮れてはいるけどプレイヤーでロードがめちゃめちゃ長い)したので調査メモです。直ったわけではない。
FSまわりって未だに面倒くさい(小並感

環境

  • MacBook Pro / Majave 10.14.5
  • SDカード1: ノーブランド / 8GB / MBR-FAT32 (出荷時状態のまま)
  • SDカード2: T○SHIBA製 / 16GB / MBR-FAT32 (出荷時状態のまま)
  • SDカードリーダ: どこかの安いやつ

2種類のFAT32

パーティション種類をみると、FAT32の識別子が2種類ありました。

  • 0x0B(or 0x1B) => 従来のFAT32
  • 0x0C(or 0x1C) => LBA対応済のFAT32

LBA...
LogicalBlockAddressing。データがストレージのどこにあるか指定する方法。LBAでないものはCHSなど。ハード別に記録場所が異なるのを吸収する。

これをdiskutil listすると、それぞれ

/dev/disk2 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *8.0 GB     disk2
   1:                 DOS_FAT_32 NO NAME                 8.0 GB     disk2s1
/dev/disk3 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *16.0 GB    disk3
   1:             Windows_FAT_32 NO NAME                 16.0 GB    disk3s1

DOS_FAT_32(0x0Bの方) と Windows_FAT_32(0x0Cの方) という2種類のタイプ名で分かれて書かれるみたいです。
disk2がSDカード1、disk3がSDカード2(T○SHIBA製)のやつです。
後者のdisk3がうまく撮れてませんでした。
どこかのLBAマップ時にエラーになってるんでしょうか?謎です。

DOS_FAT_32にフォーマットにしてみる

とりあえずちゃんと動いている方に合わせてみる。

diskutil eraseDisk FAT32 "NO NAME" MBR /dev/disk3

この結果、

diskutil list

(...略...)

/dev/disk3 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *16.0 GB    disk3
   1:                 DOS_FAT_32 NO NAME                 16.0 GB    disk3s1

正しくDOS_FAT_32にできました。
コマンド中のMBRはオプションなので、指定しなくても大丈夫なのですが、指定しないとGPTになっちゃうので注意が必要です。
このあともう一度動画撮り直しましたが結果変わりませんでした。残念。関係なかったけどコマンド覚えられたからおk

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