Icy9ptcl's diary

ものづくりってたのしい。

適当になんか書いていきます

H.264 と H.265 を試してみる (未熟ver.)

2021.8 - 追記 - この情報はかなり古くなっていて Google フォトの無制限アップロードができなくなっています。

 

 動画のエンコードとかなんとか

 ... Google フォト に動画をバックアップしようとしている「ぼく」だけど、
なんとなくクラウドの容量を節約したいなぁ、って思ってたりしたわけで。

どうにかしてファイルサイズを小さくできないかな、と
エンコードに挑戦してみた、っていうおはなし。

 

( H.264 と H.265 の違いしかないので、目当てのものじゃない人は戻ったほうがよさそうです)

 

すぐに結果が欲しい人は下まで飛ばしてください。

 

(ちょっとそれる)Google フォト のはなし

 Google フォト に写真をアップロードするときには2つの方法があって、

 ・画質

  無制限にアップロードできる けれど。

  > 画像であれば....

   画素数16 メガピクセル(16,000,000 = 1600万画素)を超えていると 16MPに縮小 されちゃう。
   (最近のスマホのカメラの「17M」とか「23M」だとひっかかる)

 

  > 動画であれば...

   画素数が 1080 p (1920 x 1080) を超えていると縮小されちゃう。
   (スマホのカメラだと、ほぼひっかかる)
   そうじゃなくても再圧縮はかかっちゃう。(でも、あんまり違いはない)

 

 ・の画質
  
Google アカウントの容量を使うけれど、
  画像でも動画でも、もともとのファイルと同じ解像度になる。

 

使っているスマホの SH-04H だと動画を 3840 x 2176 の画質で撮れるから、

「高画質」でアップロードすると縮小されちゃう。

 

でも、なんとかして使う容量を節約したいなぁ、と思って

AviUtl を使って編集することにしてみた。

(花火の動画だから、ある程度トリミングはできるし.....)

 

 エンコードによるファイルサイズ(とか)の違い

あるとき撮った花火の動画を編集し終わって(クリッピングだけ...)さっそく出力(エンコード)しよう、と。

どのコーデックを使えばいいかわからなかったから、
なんとなく有名な H.264 と H.265 でくらべてみました。

 

ちなみに、再生した環境は Windows 10  の VLC media player で、

CPUは Intel i-4712HQ (2.3 GHz × 8コア)です。

(HWD は ハードウェアデコーディング を勝手に略しました)

 

・もともとのファイル (SH-04H の「SHカメラ」で撮った、 .mp4 ファイル)

エンコードしたあとのファイル(下のほう)とは画素数が違います。

長さ 1分 3秒
FPS 29.68 FPS
サイズ 242 MB
素数

3840 × 2176(4K2K) = 8.3 MP

ビットレート 32265 kbps
HWDあり CPU 90 %
GPU負荷 35 %
HWDあり CPU 90 %
GPU負荷 36 %

けっこうカクカクしてました。
でも、これが普通の動画です。

 (逆に、このファイルをふつうに再生できる Android はどうなってるんだろう)

 

H.264 エンコードしたもの

長さ 1分 3秒
FPS 29.68 FPS
サイズ 131 MB
素数

2850 × 2160 = 6.1 MP

ビットレート 17452 kbps
HWDなし CPU 29 %
GPU負荷 7 %
HWDあり CPU 1 %
GPU負荷 12 %
エンコードにかかった時間 8分

H.264エンコードしたら半分のサイズになりました。
再生するときのCPUへの負荷もなかなか小さいので、
スペックのそんなに高くないPCでも再生できるかも?

 

・H.265 エンコードしたもの

長さ 1分 3秒
FPS 29.68 FPS
サイズ 38 MB
素数

2850 × 2160 = 6.1 MP

ビットレート 5044 kbps
HWDなし CPU 36 %
GPU負荷 7 %
HWDあり CPU 55 %
GPU負荷 99 %
エンコードにかかった時間 15分

 ファイルサイズが 1/6 くらいにものすごく小さくなってました。
ただ、再生するときの CPU と GPU への負荷が
ある程度あるので、ちょっとカクカクしてしまうパソコンもあるかも。

ハードウェアデコードと相性が悪いと GPU か CPU が100%になってしまって再生できませんでした(クラッシュしちゃった)。

 

まとめ 

・基本はエンコードしたほうがいい。でも再生できないものもある...

 

H.264エンコードしたものは、

  ・CPU 負荷が少なく再生できるデバイスも多い

  ・H.265 に比べればファイルサイズは大きい

  ・エンコードはわりと早い

 

・H.265 でエンコードしたものは、

  ・CPU 負荷が大きく、再生できるデバイスまだ少ない

  ・ファイルサイズがかなり小さい

  ・エンコードは遅い

  ・Google フォトでなぜか再生できない場合があった

 

花火の動画だから大きく差が出たのかもしれないけれど、
別の動画でも検証してみるといいかも?

 

(ちなみに、撮った写真)

f:id:HiSeshi_ptcl:20180812164226j:plainきれいだった。

Ubuntuでもadbをつかいたい

Ubuntu で adb (Android Debug Bridge)をつかいたい

ナビゲーションバーをカスタマイズできる SystemUI Tuner とか

SDカード内のファイルをPCから操作したくなったので、

USB にインストールしてる Ubuntu に ADB を入れてデバッグしてみました。

 

Ready?

 

Phase 0 - 環境

筆者の環境は

PC - FUJITSU FMV AH77/S
CPU Intel(R) Core i7-4712HQ CPU @ 2.30GHz x 8
メモリ 8GB x 1
HDD なし
Ubuntuの動作環境 BUFFALO USB Flash Disk 16.1GB
ext4FAT32パーティションで分けています。システムは13.9GB
スマートフォン - Android
端末名 SHARP SH-04H

 の通りです。

 

Ⅰ - インストールする

Ubuntu 17.10 ならばカンタンにインストールできます。

~$ sudo apt update

~$ sudo apt install android-tools-adb

これだけ。

 

 Ⅱ - つなぐ

今回はダイソーの100円のUSB通信/充電ケーブルを使ってみました が

通信対応のケーブルならどれでもいいです。たぶん。

 

接続されている Androidバイスの確認は

~$ sudo adb devices

でできます。

 

さっそくUSBケーブルをつないでみる、と

f:id:HiSeshi_ptcl:20180430224341p:plain

ない。

だいたいそうみたいです。

 

が 認識できたらクリア。

 筆者の環境ではだめでした。

 

 Ⅱ.1 - USBの確認

~$ lsusb 

を実行してUSB機器のリストを表示する.... 何かが出てくるかも。

( Bus 001 Device 001: ID 04dd:**** Sharp Corp. など)

そうしたら 端末のデバイスの「ID AAAA:BBBB」の「AAAA」をメモ。

 

次は設定ファイルを開いて、

~$ sudo gedit /etc/udv/rules.d/51-android.rules

テキストエディタには

「SUBSYSTEM=="usb", ATTR{idVendor}=="(ID「AAAA」のところ)", MODE="0666", GROUP="(グループ名。Dev とか)"」

例としては

SUBSYSTEM=="usb", ATTR{idVendor}=="04dd", MODE="0666", GROUP="Dev"
など。 SHARP はベンダーIDとして「04dd」を使っているそうなので、このままコピペしても動くかもしれません が保証はできません...

 を入力。   (かっこ の部分は自分の環境に置き換えてください)

保存をわすれずに。

 

できたら adb 自体を再起動します。

  ~$ sudo adb kill-server

  ~$ sudo adb start-server

 

が 筆者の環境だとうまくいかなかったので

  ~$ sudo udevadm control --reload-rules

も実行してから Android 自体を再起動しました。

ここまで来ると接続できると思います。

(できなかったら再起動を試すといいかも?)

 

Ⅲ - それでもダメなら

adb devices で出てくるものが

(ID)            unauthorized

だったら、 Android端末のロックを解除し、USBデバッグを ON にして

USBケーブルをつなぎなおしてみる と

「この端末からのデバッグを許可しますか?」 みたいなダイアログが出るので

「許可」をタップします。

もう一度 adb devices をして

(ID)             device

になっていれば成功です。

Windows 10 でマウスとキーボードを同時に操作する

2018.08.01 - 修正
NTUSER.DAT のアカウントのえらびかたと説明追加。

2021.08.24 - 修正
「A」を押しながらデスクトップのアイコンクリックしたら「A」と名前のつくファイルがたくさん選択されてしまうので、関係なさそうな「* (アスタリスク)」に修正。
現在のバージョンで動作しているかは不明。なぜか同時押しできる。

 

なんだか Windows 10 Creators Update とかで

「設定」->「マウスとタッチパッド」->「入力中に誤ってカーソルを動かさないように、クリックが作動するまでの待ち時間を変更します」

の項目が消えてた。

 

Minecraft とかマウスとキーボードを同時に使うときとかにすごく不便だから、いろいろ方法を探したら

レジストリをいじるらしい。

 

参照 - > ( https://support.microsoft.com/ja-jp/help/2907018/button-clicks-for-internal-touchpads-and-pointing-sticks-are-not-respo )

 

注意

普通じゃないことをします。

復元ポイントがあったほうが、いいかも?

 それか regedit からレジストリのキーをエクスポートするとか

NTUSER.DAT をコピーするとか......

 

いじってみよう

 ※設定を適用するアカウントからはサインアウトして、別のアカウント(Administrator がよさそう)から操作しないと NTUSER.DAT が開けないので注意。

  1.  エクスプローラで、上のリボンの[表示]->[オプション]->[表示]->「(一番下の)オペレーティングシステムで保護されたフォルダやファイルを表示しない」のチェックを外してから。
  2. 「Win+R」を押して「regedit」と入力して[Enter]

    f:id:HiSeshi_ptcl:20180404082755p:plain

  3. レジストリエディタが開くので、「HKEY_LOCAL_MACHINE」をクリックする(このときキーを開かないこと)
  4. 「HKEY_LOCAL_MACHINE」が選ばれていることをよーく確認したら、「ファイル」->「ハイブの読み込み」をクリックf:id:HiSeshi_ptcl:20180404083053p:plain
  5. 「ハイブの読み込み」のアドレスバーに「C:\Users\」を入力して、自分のユーザー名を選ぶ
    ・ユーザー名は、たとえば Microsoft アカウント を最初に適用したら、メールアドレスの最初のほう。
    ・ローカルアカウントだったらアカウントの名前。
    ・Default を選ぶと、次から作るすべてのユーザーに同じ設定が適用されるみたい。f:id:HiSeshi_ptcl:20180404083202p:plain
  6. NTUSER.DAT」を開く
  7. 「ハイブの読み込み」の「キー名」に、「NTUSER」と入力

    f:id:HiSeshi_ptcl:20180404083341p:plain

  8. こんなのができる

    f:id:HiSeshi_ptcl:20180404083358p:plain

あとちょっと。

 

8.「NTUSER」->「Software」->「Microsoft」->「Windows」->「CurrentVersion」->「PrecisionTouchPad」までたどる。

f:id:HiSeshi_ptcl:20180404083704p:plain

9.「AAPThreshold」を選んでダブルクリック

f:id:HiSeshi_ptcl:20180404083843p:plain

10.「DWORD(32 ビット)値の編集」から「値のデータ」に「0」と入力する

f:id:HiSeshi_ptcl:20180404083922p:plain

11.[Enter]キー。

※ ちなみに、同じキー内にある値は...

  > EnableEdgy ... タッチパッドのはしっこを使うか 

  > LeaveOnWithMouse ... マウスがあるときにタッチパッドを使うか

  > RightClickZoneEnabled ... タップ時に右クリックをする範囲を有効にするか


基本 (1=はい、0=いいえ) だけれど、大きい値になっていることが多いので
編集はしんちょうに。(ぜんぶ [設定]から編集できる....AAPThreshold 以外で)

 

12.「HKEY_LOCAL_MACHINE」->「NTUSER」を選びなおして、ふたたび、上の「ファイル」->「ハイブのアンロード」を選ぶ

f:id:HiSeshi_ptcl:20180404084159p:plain

13.「このキーとサブキーをすべてアンロードしますか?」と聞かれるので

「HKEY_LOCAL_MACHINE」->「NTUSER」が選ばれていることを確認して「はい」をクリック。

f:id:HiSeshi_ptcl:20180404084210p:plain

14.おしまい。

 

試しに、デスクトップのアイコンを

「*」キーを押しながらクリックしてみるといいかも。

 

「SSHDをやりなおす」 Phase.Ⅰ

"Something Happened"

SSHDを買ってから (このとき)

だいたい1ヶ月経ったけど.....

f:id:HiSeshi_ptcl:20180127140604p:plain

 

f:id:HiSeshi_ptcl:20180127141332p:plain

こんなにはやく【注意】レベルになっちゃった...ってことは、

 

初期.....不良.....?

 

特定したいだけだけど

イベントビューアを立ち上げたら、

 

f:id:HiSeshi_ptcl:20180127141429p:plain

...あれ?

2017/12/23 17:00 あたりって.....はじめてWindowsをインストールして

やっと起動できた頃だよね....

 

まさか。

 

するしかない

Amazonから買ってもらったので、

もうしわけないけど、返品処理をして

あたらしいものをもらうしかない。

 

そのためには...

f:id:HiSeshi_ptcl:20180127140608p:plain

f:id:HiSeshi_ptcl:20180127141825p:plain

インストールディスクをつくって、

f:id:HiSeshi_ptcl:20180127142407p:plain

f:id:HiSeshi_ptcl:20180127142446p:plain

ディスクとGoogle Driveにバックアップして、

 

f:id:HiSeshi_ptcl:20180127141626p:plain

f:id:HiSeshi_ptcl:20180127142617p:plain

HDAT2を焼いて準備して、

USBにUbuntuを焼いて.....

 

...どうなるのかな。

2018年のおおそうじ

「おおそうじ」

つづき。

 

hiseshi-atdev.hateblo.jp

 ...のつづき、です。

 

PCのおおそうじ

あたらしい年になったので、

PCのファイルも整理しようとおもったので...

 

「My Files」なんてフォルダ。

プログラミングでできたモノとか

いろんなツールとかを保存してる...

 

f:id:HiSeshi_ptcl:20180101214643p:plain

(去年の9月のバックアップを圧縮したもの)

f:id:HiSeshi_ptcl:20180101214636p:plain

(今)

けっこうな量のファイルがたまってたから

重複ファイルとか、圧縮とかをいろいろつかって

6.5GBくらい減らせたみたい。

 

それ以外にも、いろいろ。

 

f:id:HiSeshi_ptcl:20180101215834p:plain

f:id:HiSeshi_ptcl:20180101215837p:plain

f:id:HiSeshi_ptcl:20180101220300p:plain

f:id:HiSeshi_ptcl:20180102220006p:plain

 

FileMany とか、ファイルの重複をチェックしてくれるものをつかうと

いっきに容量がへらせるから、

ためしてみるといいかも...?

 

 圧縮してみよう

どうしても消したいファイルがないときは

圧縮する、っていうのも、あり? 

 

たとえば、

2GBくらいあるフォルダを

CAB圧縮してみると、

f:id:HiSeshi_ptcl:20180102221244p:plain

f:id:HiSeshi_ptcl:20180102221245p:plain

39%くらい、ちいさくなった。

CAB圧縮、すごい。

 

かんたんにしてくれた、LhaForge に、感謝です。