Windows 10の画面を90度回転させて縦持ち用にするショートカット キーを作る方法について

この記事を書いた背景

私がメインで使っているLG gram 13やサブのUMPCとして使っているGPD Pocket2はタッチパネル対応なので、ビューワーなどとして画面を縦持ちで使いたくなることがよくあります。

どちらのデバイスもジャイロセンサーは持っていないので、画面の回転は手動で行う必要があるんですね。

Windowsタブレットだとアクション センターから画面の回転ロックが制御できるのですが、当たり前ながらこれも表示されず。

ほんの少し前までは、画面の回転はIntel製のグラフィックス ドライバーの機能でキーボードのショートカットでコントロールできていたんですが、Windows 10の「設定」から回転ができるようになったためか、Intelのドライバーからこの機能が省かれてしまいました。
※CTRL+ALT+カーソルキーで制御できた

そこで、Windows 10の画面を簡単に90度回転させる方法について考えたので記事にしました。

私の持ってる該当のマシン


LG Gram Laptop - 13.3
LG Gram Laptop – 13.3″ Full HD Display, Intel 8th Gen Core i7, 16GB RAM, 256GB SSD, 20.5 Hour Battery Life, Thunderbolt 3 – 13Z990-R.AAS7U1 (2019)


[セット品] GPD Pocket2 8GB/128GB版 [オリジナル液晶保護フィルム, Pocket2専用ケース etc] (Windows10 /7.0inch /IPS液晶) (Gorilla Glass 4 /UMPC)
[セット品] GPD Pocket2 8GB/128GB版 [オリジナル液晶保護フィルム, Pocket2専用ケース etc] (Windows10 /7.0inch /IPS液晶) (Gorilla Glass 4 /UMPC)

理想の状態と実現方法の検討

もともとIntel製のグラフィクス ドライバーでできていた状態と同じ、キーボード ショートカットで回転ができることが理想的な状態です。

これを実現するために思いついたのは次の2つです。

  1. PowerShellで回転用のスクリプトを作り、キーボード ショートカットを割り当てる
  2. なんらかのフリーソフトで実現する

まず、PowerShellによる実現は諦めました。

Set-DisplayResolutionあたりでできると思っていたのですが、どうにも回転についての情報を見つけられなかったのが理由です。

続いてフリーソフトを探したところ、Display Changer IIというのが私の用途にピッタリのものでした。

Display Changer IIは、現在のディスプレイの設定情報をXMLに書き出すこと、書き出したXMLを利用してディスプレイの設定に反映すること、ができます。

Display Changer II – 12noon

Display Changer IIによる実現方法

大まかな流れは次の3ステップです。

  1. 横状態のディスプレイの設定をXMLファイルに保存する
  2. (ファイルをコピーしてから)回転した状態を設定する(→縦状態のXMLファイルができる)
  3. 横状態、縦状態のXMLファイルを使いたいタイミングで読み込ませる

続いてDisplay Changer IIの利用方法について次にまとめます。

Display Changer IIのダウンロード

Display Changer II – 12noonからダウンロードし、適当なフォルダーに展開します

コマンド プロンプトを開き、展開したフォルダーに移動します。

現在のディスプレイ設定を書き出す

次のコマンドを実行することで、monitor_settings.xmlに現在のディスプレイ設定が書き出されます。

>dc2.exe -create="monitor_settings.xml"

参考までに、LG gram 13の書き出されたXMLファイルの内容を載せておきます。

<monitors app-version="1.7.0.32" version="3" topology="Internal">
    <!--The version identifies the format of the configuration file.-->
    <!--topology=-->
    <!--Internal, Clone, Extend, External-->
    <!--The monitor ID attribute must be specified.-->
    <monitor active="true" virtual="false" id="265988" id-FFFF="true" adapterHigh="0" adapterLow="53547">
        <name></name>
        <!--source: the origin of the video signal-->
        <source id="0">
            <name>\\.\DISPLAY1</name>
            <path>\\?\PCI#VEN_8086&DEV_5917&SUBSYS_03021854&REV_07#3&11583659&1&10#{5b45201d-f2f2-4f3b-85bb-30ff1f953599}</path>
        </source>
        <size width="1920" height="1080"/>
        <position left="0" top="0"/>
        <!--8bpp, 16bpp, 24bpp, 32bpp, Non-GDI-->
        <color value="32bpp"/>
        <!--Identity, 90-degreesCW, 180-degreesCW, 270-degreesCW-->
        <rotation value="Identity"/>
        <!--Identity, Centered, Stretched, Aspect Ratio Centered Max, Custom, Preferred-->
        <scaling value="Aspect Ratio Centered Max"/>
        <!--A value of 0/0 represents the optimal refresh rate. Scan-line-order must be Unspecified.-->
        <refresh numerator="138650000" denominator="2310880"/>
        <!--Unspecified, Progressive, Interlaced (upper field first), Interlaced (lower field first)-->
        <scanlineorder value="Progressive"/>
    </monitor>
</monitors>

画面の回転部分について、XMLファイルを書き換える

前の手順で書き出したファイルをコピーし、vertical_settings.xmlと言う名前で保存します。

このファイルの回転に関する部分(rotationノードのvalue属性の値)を次のように書き換えます。

        <!--Identity, 90-degreesCW, 180-degreesCW, 270-degreesCW-->
        <rotation value="90-degreesCW"/>

以上の作業で、必要な設定ファイルが完成しました。

ちなみに、GPD Pocket2は元々縦仕様の液晶を採用しているため、横持ち時の値が「270-degreesCW」です。
なので、縦置き時の指定は「Identity」となりますね。

画面の切り替え方法

上記までの作業で作成したXMLファイルを用いて画面を回転させるには、
コマンド プロンプトで次のコマンドを実行し、読み込ませたいXMLファイルを指定します。

>dc2.exe -configure="vertical_settings.xml"

上記の例では横持ち用のXMLファイルを直接変更しました。

これで通常のXMLと縦持ち用のXMLを切り替えて使えば良いですね。

ショートカート キーで画面の回転をできるようにする

コマンドで画面の切り替えができるようになったらば、これをショートカットキーで使えるように設定しましょう。

大まかな流れは次の2ステップです。

  1. コマンドをbatファイルで実行できるようにする
  2. ショートカットファイルをプログラムメニュー内に作成する

続いて詳細を次にまとめます。

コマンドをbatファイルで実行できるようにする

まずは、先ほどのコマンドを実行するbatファイルを用意します。

次の様な内容にします。dc2へのパスは環境に合わせて指定してください。

@echo off
cd C:\path\to\dc2
dc2.exe -configure="normal_settings.xml"

ショートカットファイルをプログラムメニュー内に作成する

コマンドをbatファイルに保存したら、ショートカットを作成し、プログラム メニューに移動します。

プログラム メニューのフォルダーを開くには「ファイル名を指定して実行(Win+R)」ダイアログを指定し、「shell:programs」を入力するなどが簡単です。

移動する理由は、ショートカット ファイルにはショートカット キーを設定する機能があるのですが、この機能が有効になるのはショートカット ファイルがデスクトップかプログラム メニューのフォルダー内に存在していることが条件になっているためです。

参考:ショートカットのショートカット キーが機能しない

移動したショートカット ファイルのプロパティを開き、次の2点を設定しましょう。

  • 「ショートカット キー」を任意に指定する
  • 「実行時の大きさ」を「最小化」

画面の回転を実行するショートカット

以上で、自分で指定したショートカット キーで画面の切り替えを制御できるはずです。

まとめ

GPD Pocket2だとこんな感じで縦持ちモードになるのを簡単に制御できるようになりました!

GPD Pocket 2の縦持ち状態

今回使用したフリーソフトのdc2には、画面表示の設定変更後に特定のアプリを実行するなどの機能もあります。
例えば、TouchMousePointerのような仮想タッチパッドをデフォルトで表示させたりするなどの欲も出てきてしまいます(笑)

ちょっと書こうと思った記事が想像以上に書くことになってしまいましたが、参考になれば。

ちゃんと動いた私のPCたち


LG Gram Laptop - 13.3
LG Gram Laptop – 13.3″ Full HD Display, Intel 8th Gen Core i7, 16GB RAM, 256GB SSD, 20.5 Hour Battery Life, Thunderbolt 3 – 13Z990-R.AAS7U1 (2019)


[セット品] GPD Pocket2 8GB/128GB版 [オリジナル液晶保護フィルム, Pocket2専用ケース etc] (Windows10 /7.0inch /IPS液晶) (Gorilla Glass 4 /UMPC)
[セット品] GPD Pocket2 8GB/128GB版 [オリジナル液晶保護フィルム, Pocket2専用ケース etc] (Windows10 /7.0inch /IPS液晶) (Gorilla Glass 4 /UMPC)

え?Webサイトのバックアップ、してないの!?

いざという時には復旧までしてくれる

『ワードプレス外部バックアップサービス』

■3つの特長

・自分でやらなくて良い

・いざという時の復旧付き

・外部サーバーにバックアップ

Windows版のMySQLで、CSVファイルをインポートしてからSQLファイルとしてエクスポートする手順

この記事を書いた背景

Windows版のMySQLで、大量のテストデータを用意する作業が発生しました。

テストデータを作れるWebサービスは色々とあるものの出力形式がCSVなので、そのファイルをMySQLでインポートする操作と、
複数のPCにインストールされたMySQLに横展開したいので、インポートしたDBをSQLとしてエクスポートする操作があるので、それを記事としてまとめました。

ちょっとずつハマったので・・

手順

作業全体の流れ

操作自体は次の3ステップです。

  1. テストデータを作る
  2. MySQLにテストデータをインポートする
  3. MySQLのデータベースをエクスポートする

注意点などを含めた詳細な手順を次に載せます。

1. テストデータを作る

テストデータは次のWebサービスを利用して作りました。
CSVファイルで出力しています。

SmartData

2. MySQLにテストデータをインポートする

MySQLにはLOAD DATA LOCAL INFILEという外部ファイルからのデータ取り込み機能があります。

しかし、セキュリティの観点からローカルファイルの利用がデフォルトでは無効になっているため、次のどちらかの方法でローカルファイルの利用を許可する必要があります。

mysqlコマンドにオプションを付ける方法

mysqlコマンドの起動オプションに「–local-infile=1」を付ける方法です。

MySQL Command Line Client – Unicodeのショートカットに直接追記するか、コマンド プロンプトで起動する際にオプションで指定します。

ショートカットに追記する際は、オプションを「”–local-infile=1″」のように「”」で加工ようにしてください。

my.iniで設定する方法

my.iniで有効にする場合には、次の記述を書き加えてmysqlを再起動してください。

[client]
loose-local-infile=1

インポートの記述

インポートを実行するコマンドは次の構文で記述します。

mysql> LOAD DATA LOCAL INFILE 'C:/path/to/file.csv' INTO TABLE tablename FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\r\n';

オプションの意味は次の通りです。

TERMINATED BY ‘,’
「,」をカラムを区切りに指定(デフォルトは「タブ(\t)」)
OPTIONALLY ENCLOSED BY ‘”‘
「,」を含むデータを囲む文字の指定
LINES TERMINATED BY ‘\r\n’
改行コードにCR/LFを指定(Excelなど多くのWindowsアプリケーションのデフォルト値)
LOAD DATA LNFILEの設定のデフォルトでは改行コードをLFとして扱うので、最終カラムの末尾にCRが付いた状態でインポートされてしまうのを防ぐために指定します。

3. MySQLのデータベースをエクスポートする

作成したデータは、データベースの単位でダンプすることでエクスポートします。

コマンドラインやPowerShellで次のコマンド実行します。

>path\to\mysql\bin\mysqldump -u -root -p databasename > export.sql

export.sqlの出力先によっては(Program Filesの下とか)コマンドプロンプトを管理者権限で立ち上げないと、ファイルの書込権限がなくてエラーします。

新規データベースにインポートする

先の手順で作成したエクスポートファイル(export.sql)を利用する際は、直接SQLを実行する方法と、コマンドプロンプトを利用する方法があります。

直接SQLを実行する方法

直接SQLを実行する場合、MySQL Command Line Client – Unicodeなどを起動して、SQLの中身をコピペします。

SQLが大きい場合、画面がスクロールして時間がかかるかも知れません。

コマンドを利用する方補う

コマンド プロンプトを利用する場合、SQLを実行するには事前に受け入れ先のデータベースを用意しておく必要があります。

MySQL Command Line Client – Unicodeなどを起動して、次のコマンドでデータベースを用意します。

mysql> CREATE DATABASE targetdb

続いてコマンド プロンプトを起動して、次のコマンドでエクスポートファイルを読み込ませます。

>path\to\mysql\bin\mysql -u root -p targetdb < export.sql

まとめ

けっして難しい作業ではないのですが、細々とミスりそうなポイントがあるのに注意しないとですね!

え?Webサイトのバックアップ、してないの!?

いざという時には復旧までしてくれる

『ワードプレス外部バックアップサービス』

■3つの特長

・自分でやらなくて良い

・いざという時の復旧付き

・外部サーバーにバックアップ

Windows版のMySQLで、CSVファイルをインポートしてからSQLファイルとしてエクスポートする手順

この記事を書いた背景

Windows版のMySQLで、大量のテストデータを用意する作業が発生しました。

テストデータを作れるWebサービスは色々とあるものの出力形式がCSVなので、そのファイルをMySQLでインポートする操作と、
複数のPCにインストールされたMySQLに横展開したいので、インポートしたDBをSQLとしてエクスポートする操作があるので、それを記事としてまとめました。

ちょっとずつハマったので・・

手順

作業全体の流れ

操作自体は次の3ステップです。

  1. テストデータを作る
  2. MySQLにテストデータをインポートする
  3. MySQLのデータベースをエクスポートする

注意点などを含めた詳細な手順を次に載せます。

1. テストデータを作る

テストデータは次のWebサービスを利用して作りました。
CSVファイルで出力しています。

SmartData

2. MySQLにテストデータをインポートする

MySQLにはLOAD DATA LOCAL INFILEという外部ファイルからのデータ取り込み機能があります。

しかし、セキュリティの観点からローカルファイルの利用がデフォルトでは無効になっているため、次のどちらかの方法でローカルファイルの利用を許可する必要があります。

mysqlコマンドにオプションを付ける方法

mysqlコマンドの起動オプションに「–local-infile=1」を付ける方法です。

MySQL Command Line Client – Unicodeのショートカットに直接追記するか、コマンド プロンプトで起動する際にオプションで指定します。

ショートカットに追記する際は、オプションを「”–local-infile=1″」のように「”」で加工ようにしてください。

my.iniで設定する方法

my.iniで有効にする場合には、次の記述を書き加えてmysqlを再起動してください。

[client]
loose-local-infile=1

インポートの記述

インポートを実行するコマンドは次の構文で記述します。

mysql> LOAD DATA LOCAL INFILE 'C:/path/to/file.csv' INTO TABLE tablename FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\r\n';

オプションの意味は次の通りです。

TERMINATED BY ‘,’
「,」をカラムを区切りに指定(デフォルトは「タブ(\t)」)
OPTIONALLY ENCLOSED BY ‘”‘
「,」を含むデータを囲む文字の指定
LINES TERMINATED BY ‘\r\n’
改行コードにCR/LFを指定(Excelなど多くのWindowsアプリケーションのデフォルト値)
LOAD DATA LNFILEの設定のデフォルトでは改行コードをLFとして扱うので、最終カラムの末尾にCRが付いた状態でインポートされてしまうのを防ぐために指定します。

3. MySQLのデータベースをエクスポートする

作成したデータは、データベースの単位でダンプすることでエクスポートします。

コマンドラインやPowerShellで次のコマンド実行します。

>path\to\mysql\bin\mysqldump -u -root -p databasename > export.sql

export.sqlの出力先によっては(Program Filesの下とか)コマンドプロンプトを管理者権限で立ち上げないと、ファイルの書込権限がなくてエラーします。

新規データベースにインポートする

先の手順で作成したエクスポートファイル(export.sql)を利用する際は、直接SQLを実行する方法と、コマンドプロンプトを利用する方法があります。

直接SQLを実行する方法

直接SQLを実行する場合、MySQL Command Line Client – Unicodeなどを起動して、SQLの中身をコピペします。

SQLが大きい場合、画面がスクロールして時間がかかるかも知れません。

コマンドを利用する方補う

コマンド プロンプトを利用する場合、SQLを実行するには事前に受け入れ先のデータベースを用意しておく必要があります。

MySQL Command Line Client – Unicodeなどを起動して、次のコマンドでデータベースを用意します。

mysql> CREATE DATABASE targetdb

続いてコマンド プロンプトを起動して、次のコマンドでエクスポートファイルを読み込ませます。

>path\to\mysql\bin\mysql -u root -p targetdb < export.sql

まとめ

けっして難しい作業ではないのですが、細々とミスりそうなポイントがあるのに注意しないとですね!

え?Webサイトのバックアップ、してないの!?

いざという時には復旧までしてくれる

『ワードプレス外部バックアップサービス』

■3つの特長

・自分でやらなくて良い

・いざという時の復旧付き

・外部サーバーにバックアップ

RAD Serverの拡張パッケージ クラスはリクエスト毎にロードされるみたい

RAD Serverの拡張パッケージ クラスはリクエスト毎にロードされるのかどうかを検証するため、次のコードを作ってみました。

※該当部分のコードを抜粋
type
  [ResourceName('Test')]
  TTestResource = class
  public
     n: Integer;
     constructor Create;
  published
    procedure Get(const AContext: TEndpointContext; const ARequest: TEndpointRequest; const AResponse: TEndpointResponse);
    [ResourceSuffix('{item}')]
    procedure GetItem(const AContext: TEndpointContext; const ARequest: TEndpointRequest; const AResponse: TEndpointResponse);
  end;
implementation

constructor TTestResource.Create;
begin
  n := 0;
end;

procedure TTestResource.GetItem(const AContext: TEndpointContext; const ARequest: TEndpointRequest; const AResponse: TEndpointResponse);
var
  LItem: string;
begin
  LItem := ARequest.Params.Values['item'];
  n := n + 1;
  AResponse.Body.SetValue(TJSONString.Create('Test ' + LItem + '-' + n.ToString), True)
end;

RAD Serverを起動してブラウザーから次のURLでアクセスすると、

http://localhost:8080/Test/hoge

変数nはコンストラクタで初期化した値のままです。

"Test hoge-1"

結論としては、RAD Serverの拡張パッケージ クラスはリクエスト毎にロードされるということでしょうか。

え?Webサイトのバックアップ、してないの!?

いざという時には復旧までしてくれる

『ワードプレス外部バックアップサービス』

■3つの特長

・自分でやらなくて良い

・いざという時の復旧付き

・外部サーバーにバックアップ

Intel NUC8i5BEHにV-NAND SSD SAMSUNG 970 EVO Plus NVMe M.2載せてCrystalDiskMarkベンチマーク取った

SAMSUNG 970 EVO Plus NVMe M.2

この記事を書いた背景

Intel NUC8i5BEHにV-NAND SSD SAMSUNG 970 EVO Plus NVMe M.2を載せてCrystalDiskMarkベンチマークを取ったので、その結果を載せておきます。

Intel NUC8i5BEHのメモリスロットは2つあるのですが、1枚刺しの場合は上側がメモリスロット1なので上側に挿しましょう。注意です。
私、最初に下側に付けてメモリエラーで起動しませんでした(苦笑)

購入したパーツは次の通りです。

Intel NUC8i5BEH

SAMSUNG 970 EVO Plus NVMe M.2

CrystalDiskMarkベンチマークの結果

公称値通り、R/Wが3,400/2,400ときちんとした速度を出しています。
SATA接続ではひっくり返っても出ない数値なのが素晴らしい。

体感でも速いですよ。

Intel NUC8i5BEH SAMSUNG 970 EVO Plus

-----------------------------------------------------------------------
CrystalDiskMark 6.0.2 x64 (C) 2007-2018 hiyohiyo
                          Crystal Dew World : https://crystalmark.info/
-----------------------------------------------------------------------
* MB/s = 1,000,000 bytes/s [SATA/600 = 600,000,000 bytes/s]
* KB = 1000 bytes, KiB = 1024 bytes

   Sequential Read (Q= 32,T= 1) :  3434.206 MB/s
  Sequential Write (Q= 32,T= 1) :  2399.975 MB/s
  Random Read 4KiB (Q=  8,T= 8) :   576.202 MB/s [ 140674.3 IOPS]
 Random Write 4KiB (Q=  8,T= 8) :   974.309 MB/s [ 237868.4 IOPS]
  Random Read 4KiB (Q= 32,T= 1) :   310.425 MB/s [  75787.4 IOPS]
 Random Write 4KiB (Q= 32,T= 1) :   511.660 MB/s [ 124917.0 IOPS]
  Random Read 4KiB (Q=  1,T= 1) :    37.071 MB/s [   9050.5 IOPS]
 Random Write 4KiB (Q=  1,T= 1) :   104.552 MB/s [  25525.4 IOPS]

  Test : 1024 MiB [C: 15.0% (34.8/232.3 GiB)] (x5)  [Interval=5 sec]
  Date : 2019/06/16 14:02:51
    OS : Windows 10 Professional [10.0 Build 18362] (x64)

まとめ

ひとくくりにSSDと言っても、だんだんと種類が増えてきて間違えそうです(笑)

今回購入したものは、同製品の1TBのものよりも遅いようですが、このクラスになるとまったく気にならないみたいです。

Windows 10もほんの数秒で立ち上がりますし、すべての操作がキビキビと反応するのでストレスがありません。

久しぶりに自宅PCを新調しましたが、また数年はこれを使っていけそうです。

購入したもの

え?Webサイトのバックアップ、してないの!?

いざという時には復旧までしてくれる

『ワードプレス外部バックアップサービス』

■3つの特長

・自分でやらなくて良い

・いざという時の復旧付き

・外部サーバーにバックアップ

iPhone DJI GO 4アプリがiPhoneの容量をやけに食っている!!:解決

この記事を書いた背景

最近iPhoneのストレージがどうにも容量不足だと思っていたら、Mavic Airの操作用に入れたDJI GO 4アプリが3GB近くも容量を食っていました。

元のアプリのサイズが500MB弱ですから、さすがにおかしい。

調べてみるとキャッシュが原因のようなので、削除することにしました。

そのメモです。

アプリの容量の確認方法

アプリが使っているデータの容量は次の手順で確認できます。

  1. 「設定|一般|iPhoneストレージ|DJI GO 4」を開く
  2. 表示された画面の「書類とデータ」にアプリ本体以外で利用している容量が表示される

DJI GO 4アプリのキャッシュを削除する方法

DJI GO 4アプリのキャッシュの削除は次の手順で実行できます。

  1. DJI GO 4アプリを開く
  2. 「マイページ」タブを選択し、ギア アイコンをクリックする
  3. 「キャッシュを削除する」を選択する
  4. 不要な項目(ビデオキャッシュなど)を選択し、確認ダイアログで消去を実行する

まとめ

Mavic Airが飛行中に撮影したデータはすべてドローン本体側のメモリに保存されていると思い込んでいたため、iPhoneの容量をこんなに使っているとは気付きませんでした。

とりあえずこれで写真や動画を撮影できるようになったので良かった~

え?Webサイトのバックアップ、してないの!?

いざという時には復旧までしてくれる

『ワードプレス外部バックアップサービス』

■3つの特長

・自分でやらなくて良い

・いざという時の復旧付き

・外部サーバーにバックアップ

iPhone DJI GO 4アプリがiPhoneの容量をやけに食っている!!:解決

この記事を書いた背景

最近iPhoneのストレージがどうにも容量不足だと思っていたら、Mavic Airの操作用に入れたDJI GO 4アプリが3GB近くも容量を食っていました。

元のアプリのサイズが500MB弱ですから、さすがにおかしい。

調べてみるとキャッシュが原因のようなので、削除することにしました。

そのメモです。

アプリの容量の確認方法

アプリが使っているデータの容量は次の手順で確認できます。

  1. 「設定|一般|iPhoneストレージ|DJI GO 4」を開く
  2. 表示された画面の「書類とデータ」にアプリ本体以外で利用している容量が表示される

DJI GO 4アプリのキャッシュを削除する方法

DJI GO 4アプリのキャッシュの削除は次の手順で実行できます。

  1. DJI GO 4アプリを開く
  2. 「マイページ」タブを選択し、ギア アイコンをクリックする
  3. 「キャッシュを削除する」を選択する
  4. 不要な項目(ビデオキャッシュなど)を選択し、確認ダイアログで消去を実行する

まとめ

Mavic Airが飛行中に撮影したデータはすべてドローン本体側のメモリに保存されていると思い込んでいたため、iPhoneの容量をこんなに使っているとは気付きませんでした。

とりあえずこれで写真や動画を撮影できるようになったので良かった~

え?Webサイトのバックアップ、してないの!?

いざという時には復旧までしてくれる

『ワードプレス外部バックアップサービス』

■3つの特長

・自分でやらなくて良い

・いざという時の復旧付き

・外部サーバーにバックアップ

RAD Studio 10.3.1 Rioの起動時に「パッケージ dclfrxtee26.bpl を読み込めません」が表示された:解決

RAD Studio / Delphi 10.3.1 Rioの起動時に「パッケージ dclfrxtee26.bpl を読み込めません。」が表示されたのでその解決方法について。

指定されたモジュールが見つかりません。
次にプロジェクトを読み込むときにもこのパッケージを読み込みますか?」

が表示されています。

GetItパッケージ マネージャでFastReport VCLをインストールすると出る場合があります。

この原因はFastReport VCLがTeeChartのパッケージを参照していることです。

ですので、次の手順でインストールしましょう。

  1. RAD Studioを起動して「ツール|プラットフォームの管理」メニューから「プラットフォームの選択」ダイアログを表示する
  2. 「追加オプション」タブ、「TeeChart Standard」にチェックを入れる
  3. 「適用」ボタンをクリックしてRAD Studioを再起動する

以上でエラーダイアログもなくなり、FastReportが利用できるようになります。

え?Webサイトのバックアップ、してないの!?

いざという時には復旧までしてくれる

『ワードプレス外部バックアップサービス』

■3つの特長

・自分でやらなくて良い

・いざという時の復旧付き

・外部サーバーにバックアップ

DJI Mavic Airドローンで4K動画を撮影するためのmicroSDカードの選び方

ドローン撮影用にmicroSDカードを新調しましたヽ(^o^)丿

購入したカードのスペック

今回、購入したカードのスペックは、
SDXC、C10、UHS-1 U3、V30対応の128GBです!
※スタバの呪文のようですね(笑)

購入したのはこちら。

【5年保証】microSDXC 128GB SanDisk サンディスク Extreme UHS-1 U3 V30 4K Ultra HD アプリ最適化 A2対応 SDアダプター付 [並行輸入品]
【5年保証】microSDXC 128GB SanDisk サンディスク Extreme UHS-1 U3 V30 4K Ultra HD アプリ最適化 A2対応 SDアダプター付 [並行輸入品]

商品選択のポイント

用途はタイトルの通りで、条件はDJI Mavic Airで4K動画を撮る際、コマ落ち無く保存できることです。

コマ落ちなく、に必須の条件は「書き込み速度」と「容量」です。

書き込み速度

まず書き込み速度ですが、最大画質の4K Ultra HD/30fpsだと100Mbpsの転送速度が必要です。

参考:MAVIC AIRスペック

単純計算で、100Mbps/8bit=12.5MB/秒の転送速度が必要になります。

ここでSDカードの転送速度の規格をみてみます。

SDカードにその速度が記載されているのですが、4Kで撮影する場合、先の計算から12.5MB/sec以上の速度が求められるため、規格としては30MB/sec以上のものを購入する必要があります。

真ん中3列のマークがSDカードに書かれているものなのですが、30MB/sec以上を保証してくれるのはU3かV30以上のものである必要なんですね。

スペックのところに書いた、C10(スピードクラス)、UHS-1 U3(UHSスピードクラス)、V30(ビデオスピードクラス)と言うのは、上記表の30MB/secのスピードクラスに対応した表記だったんです。

SDカードは後述する容量別の規格で下位互換性があるので、U3対応のSDカードはC10にも対応できます。

容量

次に「容量」です。

4K動画を1分間保存するのに必要な容量は次の通りです。

12.5MB/sec×60s=750MB/m

Mavic Airはカタログスペックでバッテリー1本につき21分間の飛行が可能ですので、飛行中のすべてを録画する場合、次の容量が必要となります。

750MB/m×21m=15.75GB

つまり、16GBのSDカードであれば、バッテリー1本分の動画を保存できることになります。

私はバッテリーを3本持っているので、抜き差しせずに保存するなら48GB必要、商品としては64GBのSDカードを購入すれば良いのですが、コスパの面から128GBを購入しました。

容量別の規格

SDカードには容量に応じた次の3つの規格が存在しています。

  • SD:~2GB
  • SDHC:~32GB
  • SDXC:~2TB

今回私が購入したのは128GBなので、SDXC規格のものです。

アプリケーションパフォーマンスクラス

最近増えた規格にアプリケーションパフォーマンスクラスというものがあります。

詳細はSD Associationのアプリケーションパフォーマンスクラスの項目を参照いただきたいのですが、これは、スマートフォンや携帯ゲーム機でアプリケーションやデータをSDカード側に置く場合において、そのパフォーマンスの改善を享受できる規格です。

現状この規格はA1とA2のみですが、よりパフォーマンスの高いA2に対応しているので、あとでスマートフォンなどに入れて使うのもアリですね。

CrystalDiskMarkでベンチマークを取ってみた

参考までに、CrystalDiskMarkのベンチマーク結果を載せておきます。

Write性能は72MB/s越えていて十分4Kに対応していることがわかりますね。

CrystalDiskMark 6.0.2 x64 (C) 2007-2018 hiyohiyo
Crystal Dew World : https://crystalmark.info/
MB/s = 1,000,000 bytes/s [SATA/600 = 600,000,000 bytes/s]
KB = 1000 bytes, KiB = 1024 bytes
Sequential Read (Q= 32,T= 1) : 82.312 MB/s
Sequential Write (Q= 32,T= 1) : 72.645 MB/s
Random Read 4KiB (Q= 8,T= 8) : 5.485 MB/s [ 1339.1 IOPS]
Random Write 4KiB (Q= 8,T= 8) : 2.578 MB/s [ 629.4 IOPS]
Random Read 4KiB (Q= 32,T= 1) : 6.034 MB/s [ 1473.1 IOPS]
Random Write 4KiB (Q= 32,T= 1) : 2.594 MB/s [ 633.3 IOPS]
Random Read 4KiB (Q= 1,T= 1) : 3.725 MB/s [ 909.4 IOPS]
Random Write 4KiB (Q= 1,T= 1) : 2.278 MB/s [ 556.2 IOPS]
Test : 1024 MiB <a href="https://blog.dreamhive.co.jp/yama/wp-admin/x5">E: 0.0% (0.0/119.1 GiB)</a> [Interval=5 sec]
Date : 2019/02/08 18:10:14
OS : Windows 10 <a href="https://blog.dreamhive.co.jp/yama/wp-admin/x64">10.0 Build 17763</a>

まとめ

ドローンで利用するSDカードは、値段や容量だけで決めてはならないことがおわかりいただけたでしょうか。

色々種類が多くて商品を撰ぶのも面倒に感じるかも知れませんが、せっかくですからこういったアクセサリ類についても楽しめると良いですね。

購入したSDカード

購入したのはこちら。

【5年保証】microSDXC 128GB SanDisk サンディスク Extreme UHS-1 U3 V30 4K Ultra HD アプリ最適化 A2対応 SDアダプター付 [並行輸入品]
【5年保証】microSDXC 128GB SanDisk サンディスク Extreme UHS-1 U3 V30 4K Ultra HD アプリ最適化 A2対応 SDアダプター付 [並行輸入品]

え?Webサイトのバックアップ、してないの!?

いざという時には復旧までしてくれる

『ワードプレス外部バックアップサービス』

■3つの特長

・自分でやらなくて良い

・いざという時の復旧付き

・外部サーバーにバックアップ

LG gram 13Z970のバッテリーを交換してみた

LG gram 13(13Z970)が今の愛機なのですが、購入してから1年以上経った今、バッテリーがへたってきたのが感覚的にもわかるようになりました。

フルで使うと3時間ぐらいで残量が20%を切ってしまうのです。

最新のLG gram 13(13Z980)の購入も考えたのですが、マイナーチェンジな上に重くなると言う理由から却下。

LG ノートパソコン gram 965g/Core-i5/13.3インチ/Windows 10/メモリ 8GB/SSD 256GB/USB Type-C搭載/ダークシルバー/13Z980-GA56J
LG ノートパソコン gram 965g/Core-i5/13.3インチ/Windows 10/メモリ 8GB/SSD 256GB/USB Type-C搭載/ダークシルバー/13Z980-GA56J

ということで、バッテリー交換です(笑)

型番からネットを漁ってみると、大体50USDぐらいからあります。

型番:LBP7221E 7.7V 4495mAh

日本でも売っていますので、多少値が張ってもサポート付きで早く手に入れたいのであればそっちを購入してみても良いかも知れません。

私は海外のサイトで買ったため、到着までに2週間ぐらいかかりました。

以下、交換時の写真です。

LG gram 13Z970 新バッテリー

到着したバッテリーは静電防止シート・クッション・ダンボールの3重構造で送られてきました。
必要十分な包装だと思います。

LG gram 13Z970 底面パネル

LG gram本体の分解は、底面パネルのゴム足など9箇所の下にあるネジを外すし、スナップフィット的に底面パネルを剥がせばOKです。

LG gram 13Z970 バッテリー

露出したバッテリーは、ケーブル1本でマザーボードと繋がっています(バッテリーの下中央のフラットケーブル)。
バッテリー自体も6箇所ネジ止めされているので外します(左右下側に1箇所ずつと、左右肩部分に2箇所ずつ)。

交換したら元通りに組み立てるだけです。
ちなみに私はバッテリーのみを仮組みして動作試験しました。

充電中なのでまだバッテリーの回復具合は分かりませんが、楽しみです(^^)

え?Webサイトのバックアップ、してないの!?

いざという時には復旧までしてくれる

『ワードプレス外部バックアップサービス』

■3つの特長

・自分でやらなくて良い

・いざという時の復旧付き

・外部サーバーにバックアップ

あなたの IT の疑問・不安をすべて解決するコンシェルジュ サービス