20200226のMacに関する記事は4件です。

MacでAVCHD(.MTS)ファイルを扱う|複数のMTSファイルをmp4に変換する

はじめに

  • 個人的なメモです(誰かの役に立つと嬉しい)
  • 撮影機材:ミラーレス一眼カメラPanasonic LUMIX DMC G7
  • FullHD 60fpsの場合mp4形式で撮影すると29分59秒で一度録画が切れてしまう
  • AVCHD形式で撮影する場合は電源とSDカードの容量が許す限り無限に動画が撮影できる
  • 動画撮影中に切のいいところで撮影を停止することを繰り返すと複数のMTSファイルが残る

解決したいこと

  • MacでMTSファイルを取り出す方法
  • MTSファイルを1本のmp4ファイルに結合したい

※動画編集ソフトでも動画ファイルの結合から書き出しは可能だが、エンコードに時間がかかりCPUパワーも必要なためNG、この方法だとコマンドを打てば数秒で動画の結合から書き出しまで完了する。

MacでMTSファイルを取り出す方法

録画データはSDカードに入っているのでMacPCにアダプターなどを使ってMacPCに接続する。

MacOSのFinderでAVCHDファイルを開こうとすると1つのファイルのように見える。
スクリーンショット 2020-02-26 20.55.15.png

そのファイルを右クリックするとパッケージ内容を表示のメニューが表示されるのでクリックすると中身のファイルを表示することができる。
スクリーンショット 2020-02-26 20.56.40.png

そのファイル中にはBDMVファイルがあり同じようにそのファイルを右クリックするとパッケージ内容を表示のメニューが表示されるのでクリックすると中身のファイルを表示する。

スクリーンショット 2020-02-26 20.59.02.png

BDMVファイルを開くとようやくMTSファイルが表示される。
スクリーンショット 2020-02-26 21.01.34.png

このままではffmpegからアクセスするとエラーを吐くので、適当なディレクトリにコピーする。
今回はホームディレクトリのムービーディレクトリの中にコピー
/Users/merarli/Movies/AVCHD_FILE/AVCHD_mac_test2/00000.MTS
/Users/merarli/Movies/AVCHD_FILE/AVCHD_mac_test2/00001.MTS

MTSファイルを1本のmp4ファイルに結合したい

今回はわかりやすいようにMTSファイルと同じディレクトリにlist.txtを作成
スクリーンショット 2020-02-26 21.05.50.png

以下のように結合したい順番に動画ファイルパスを記述
/Users/merarli/Movies/AVCHD_FILE/AVCHD_mac_test2/list.txt

list.txt
file '/Users/merarli/Movies/AVCHD_FILE/AVCHD_mac_test2/00000.MTS'
file '/Users/merarli/Movies/AVCHD_FILE/AVCHD_mac_test2/00001.MTS'

ffmpegでmp4に変換する

ffmpegはターミナルで以下のコマンドを入力することでインストールできる。
すでにインストール済みの方はスキップしてOK

brew install ffmpeg

最後にlist.txtに記入した動画ファイルを結合する。
以下のコマンドで/Users/merarli/Movies/AVCHDtomp4/のディレクトリにmov.mp4ファイルが出力される。

ffmpeg -safe 0 -f concat -i '/Users/merarli/Movies/AVCHD_FILE/AVCHD_mac_test2/list.txt' -c copy '/Users/merarli/Movies/AVCHDtomp4/mov.mp4'

以下のようにmp4ファイルが確認できたら成功です!!
スクリーンショット 2020-02-26 21.14.46.png

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

MAX OS CatalinaでiPhoneの通信をキャプチャする方法

MAC OSがCatalinaになってからiPhoneの通信キャプチャの方法が変わったのでメモがてら

今回使用したデバイス

MacBook Pro [10.15.2 Catalina]
iPhone X

使用ソフト

WireShark

キャプチャの手順

手順1 iPhoneとMACを接続

LightingケーブルでiPhoneとMACを接続します。
このiPhoneは信頼しますか?的なのが出てくるので、とりあえず信頼しておきましょう。

手順2 iPhone UUIDのコピー(Catalina以前のOSの場合異なる)

Catalinaからは、iTunesではなく、Finderを使用していきます。

まずFinderを開き、さっき信頼したiPhoneを選択する(ここでも信頼しておきましょう)
スクリーンショット 2020-02-26 18.09.59.png

次に、写真の部分をクリックします。
スクリーンショット_2020-02-26_18_10_41.png

クリックすると、シリアル、UUIDなどが表示されるので、右クリック→コピーしましょう
スクリーンショット_2020-02-26_18_11_03.png

手順3 ターミナルから、iPhoneを仮想認識させる(Catalina以前のOSの場合異なる)

ターミナルを開き、以下を入力しEnterします。(Catalinaの場合)
※UUIDUUIDUUIDUUIDUUIDUUIDUUIDUUIDUUID部分はさっきコピーしたUUIDが入ります。
sudo /Library/Apple/usr/bin/rvictl -s UUIDUUIDUUIDUUIDUUIDUUIDUUIDUUIDUUID

EnterするとPCのパスを聞かれるので入力してください。
成功すると[SUCCEEDED]が表示されます。

一応、Catalina以前のOSの場合のコマンド
rvictl -s UUIDUUIDUUIDUUIDUUIDUUIDUUIDUUIDUUID
方法は同じです。

手順4 WireSharkを起動しキャプチャする

手順3が無事成功したあとに、WireSharkを起動します。
成功している場合、以下のrvi0を選択するとiPhoneのコマンドをキャプチャできます。
スクリーンショット_2020-02-26_18_16_52.png

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

MAC OS CatalinaでiPhoneの通信をキャプチャする方法

MAC OSがCatalinaになってからiPhoneの通信キャプチャの方法が変わったのでメモがてら

今回使用したデバイス

MacBook Pro [10.15.2 Catalina]
iPhone X

使用ソフト

WireShark

キャプチャの手順

手順1 iPhoneとMACを接続

LightingケーブルでiPhoneとMACを接続します。
このiPhoneは信頼しますか?的なのが出てくるので、とりあえず信頼しておきましょう。

手順2 iPhone UUIDのコピー(Catalina以前のOSの場合異なる)

Catalinaからは、iTunesではなく、Finderを使用していきます。

まずFinderを開き、さっき信頼したiPhoneを選択する(ここでも信頼しておきましょう)
スクリーンショット 2020-02-26 18.09.59.png

次に、写真の部分をクリックします。
スクリーンショット_2020-02-26_18_10_41.png

クリックすると、シリアル、UUIDなどが表示されるので、右クリック→コピーしましょう
スクリーンショット_2020-02-26_18_11_03.png

手順3 ターミナルから、iPhoneを仮想認識させる(Catalina以前のOSの場合異なる)

ターミナルを開き、以下を入力しEnterします。(Catalinaの場合)
※UUIDUUIDUUIDUUIDUUIDUUIDUUIDUUIDUUID部分はさっきコピーしたUUIDが入ります。
sudo /Library/Apple/usr/bin/rvictl -s UUIDUUIDUUIDUUIDUUIDUUIDUUIDUUIDUUID

EnterするとPCのパスを聞かれるので入力してください。
成功すると[SUCCEEDED]が表示されます。

一応、Catalina以前のOSの場合のコマンド
rvictl -s UUIDUUIDUUIDUUIDUUIDUUIDUUIDUUIDUUID
方法は同じです。

手順4 WireSharkを起動しキャプチャする

手順3が無事成功したあとに、WireSharkを起動します。
成功している場合、以下のrvi0を選択するとiPhoneのコマンドをキャプチャできます。
スクリーンショット_2020-02-26_18_16_52.png

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

macOS Catalina でanyenvを入れようとして詰まった話

はじめに(茶番)

ワイ「おっ anyenvなるものがあるんやな」
ワイ「便利そうやん 早速入れてみよ」
ワイ「あ、でもその前にCatalinaにアップデートしたろ」
ワイ「クリーンインストールもしてピカピカや!!」

…………………………………………

ワイ「よっしゃ終わったで」
ワイ「ほな早速anyenv入れてこか」
ワイ「なになに……anyenv + macOS環境構築か」
ワイ「このサイト見ながらやったるで!……ってもうバイトの時間や!」

…………………………………………

ワイ「疲れたわあ……」
ワイ「ほなら早速構築していきましょか」

…………………………………………

ワイ「うまくいかん!! なんでや!!!」

※ 参考にしたanyenv + macOS環境構築に問題があるわけではありません。

macOS Catalinaの重要な変更点

上のは茶番です。

さて、macOS Catalinaには、重要な変更点がありました。
それは、デフォルトシェルがbashからzshに変わったということです。
これが今回の問題と直接関係しているかはわかりませんが、無関係ということはない気がします。

クリーンインストールする前に、初期設定をシェルスクリプトに書いておき、
それを実行して初期設定を行ったのですが、このときに.bashrcを作成していました。

その後ずるずるとanyenvの設定を.bashrcで行ったため、zshに変わっていたと気づくのが遅くなりました。

問題発生

参考にした元記事のほうがbashでの設定方法だったのですが、
Catalinaになっているためzshで行う必要があります。

$ brew install anyenv
$ anyenv init
# Load anyenv automatically by adding
# the following to ~/.zshrc:

eval "$(anyenv init -)"

と表示されます。そのため、

$ echo 'eval "$(anyenv init -)"' >> ~/.zshrc
$ exit

を実行し、起動し直します。ここまではいいのですが

$ anyenv init
# Load anyenv automatically by adding
# the following to ~/.zshrc:

eval "$(anyenv init -)"

と、なぜかまた出てきます。

$ exec $SHELL -l

を実行してもだめでした。

解決

何をやっても、何回アンインストールを繰り返してもだめなので、いっそガン無視して

$ anyenv install --init

を実行しました。

Manifest directory doesn’t exist: /Users/haruto/.config/anyenv/anyenv-install
Do you want to checkout ? [y/N]: y
Cloning https://github.com/anyenv/anyenv-install.git master to /Users/haruto/.config/anyenv/anyenv-install...
Cloning into '/Users/haruto/.config/anyenv/anyenv-install'...
remote: Enumerating objects: 48, done.
remote: Total 48 (delta 0), reused 0 (delta 0), pack-reused 48
Unpacking objects: 100% (48/48), 6.65 KiB | 170.00 KiB/s, done.

Completed!

と、成功してくれるので、

$ exec $SHELL -l
$ anyenv install nodenv
/var/folders/28/cmsn2nz17yd2sw_qgfn488780000gn/T/nodenv.20200225233257.9916 ~
Cloning https://github.com/nodenv/nodenv.git master to nodenv...
Cloning into 'nodenv'...

# 中略

Install nodenv succeeded!
Please reload your profile (exec $SHELL -l) or open a new session.

$ exec $SHELL -l
$ anyenv versions
nodenv:
Warning: no Node detected on the system

と出てきて、成功です!

その後は、

$ nodenv install 13.9.0
$ exec $SHELL -l
$ anyenv versions
nodenv:
  13.9.0

となりました。

おわりに

ワイ「は〜 なんやこれ」
ワイ「めっちゃ舌打ちしてもうたわ」
ワイ「ま、とりあえずできたのでオールオッケーや!」

と、無事成功しましたが、原因など詳しくはないので、
どなたかわかる方がいらっしゃいましたらコメントで教えていただけると幸いです。

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む