カテゴリー : Mac

[Mac] YouTube に音声ファイルをアップロードするために FFmpeg を使って mp3 を mp4 に変換する

YouTube に音声ファイルをアップロードするために Mac で mp3 と画像ファイルを合成して、動画ファイル mp4 に変換する方法をご紹介します。

FFmpeg のインストール

まず、HomeBrew を使って FFmpeg をインストールします。

FFmpeg は動画と音声を変換することのできるフリーソフトウェアです。

brew install ffmpeg

音声ファイル mp3 + 画像ファイル jpg => 動画ファイル mp4

入力ファイルとして、

  • 画像ファイル: image.jpg
  • 音声ファイル: audio.mp3

を準備しておいて、下記のコマンドを実行すると out.mp4 という動画ファイルが作成できます。

ffmpeg -loop 1 -i image.jpg -i audio.mp3 \
-c:v libx264 -tune stillimage \
-c:a aac -strict experimental -b:a 192k -pix_fmt yuv420p \
-shortest out.mp4

最初は音声ファイルを動画ファイルに変換してくれるアプリを探していたのですが、良いアプリが見つからす CLI 上で作業しました。

とてもカンタンだったのでアプリとか探さずに最初から FFmpeg を使うべきでしたね・・・。


参考情報

[Mac] ウイルスに感染して search-quick.com がデフォルトページに設定されてしまう

知人から「Mac がウイルスに感染して search-quick.com がデフォルトページに設定されてしまうので助けて!」という相談を受けました。

下記のYahoo!知恵袋へ投稿されている相談内容と似たようなケースです。

まず、下記の2つを試してもらいました。

さらに、AdwareMedic というアプリを使ってもらって、解決できたみたいです。

この知人は Adobe Flash Player のアップデートみたいな偽サイトに引っ掛かったみたいです。

怪しいアプリや広告などには気をつけたいですね。

[Mac] Yosemite で brew コマンドが動かないときの解決方法

Mac OS X Yosemite で brew コマンドを実行しようとするとエラーが発生しました。

エラー内容

% brew -h
/usr/local/bin/brew: /usr/local/Library/brew.rb: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby: bad interpreter: No such file or directory
/usr/local/bin/brew: line 21: /usr/local/Library/brew.rb: Undefined error: 0

brew コマンド復活の手順

まず、下記のように ruby の path を 1.8 から current へ変更します。

git diff
 
diff --git a/Library/brew.rb b/Library/brew.rb
index 4fa22b4..ee05650 100755
--- a/Library/brew.rb
+++ b/Library/brew.rb
@@ -1,4 +1,4 @@
-#!/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby -W0
+#!/System/Library/Frameworks/Ruby.framework/Versions/current/usr/bin/ruby -W0
 # encoding: UTF-8
 
 std_trap = trap("INT") { exit! 130 } # no backtrace thanks

次に brew の git repository へ移動して、修正内容を commit します。

cd $(brew --prefix)
git add .
git commit -m 'Change the path for ruby'
brew update

最後に git commit をしておかないと brew update したときに下記のようにエラーでアップデートできません。

% brew update
 
error: Your local changes to the following files would be overwritten by merge:
	Library/Formula/mongodb.rb
Please, commit your changes or stash them before you can merge.
error: Your local changes to the following files would be overwritten by merge:
	Library/brew.rb
Please, commit your changes or stash them before you can merge.
Aborting
Error: Failure while executing: git pull -q origin refs/heads/master:refs/remotes/origin/master

brew update で盛大に conflict したときは手元の修正は捨てて、

git reset --hard HEAD
git merge -Xtheirs origin/master

してしまえば OK です。


参考情報

[Mac] -bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory

Mac の Terminal アプリから外部サーバへ ssh すると -bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory という Warning メッセージが表示されました。

$ ssh codenote.net
-bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory

この状態だと mongo shell に入るときもエラーが発生するので export LC_ALL=C する必要があってちょっと面倒なんですよね。

$ mongo mydb
Failed global initialization: BadValue Invalid or no user locale set. 
Please ensure LANG and/or LC_* environment variables are set correctly.

Set locale environment variables on startup のチェックボックスを外せば Warning メッセージは表示されなくなります。

Terminal-Profiles-Set-locale-env

僕は Mac の言語設定を日本語から英語に変更したタイミングでこのようなエラーが発生するようになりました。

同じような問題に悩まされた方は Terminal アプリの設定を確認してみるといいかもしれません。


参考情報

Mac から Ubuntu に ssh ログインするとなんかロケール云々で怒られるやつ – 休刊 ボルシチは食べ物です。

[Mac] QuickTime Player での画面録画の手順

Mac の QuickTime Player を使って画面を録画する手順をまとめました。

事前準備

Sony の USB マイクを Mac に接続します。

Amazon.co.jp: SONY エレクトレットコンデンサーマイクロホン PCV80U ECM-PCV80U: 楽器

QuickTime Player で画面を録画する

  1. QuickTime Player を起動する
  2. [ファイル] – [新規画面収録] をクリックする
  3. [画面収録] ウィンドウにて [マイク] から UAB-80 を選択する
    QuickTimePlayer-1
  4. 赤丸の録画ボタンをクリックする
  5. クリックするとフルスクリーンで収録されます。… というメッセージが表示される
    QuickTimePlayer-2

    • フルスクリーン収録: クリック
    • 部分収録: ドラッグ
  6. メニューバーの ■ ボタンをクリックして収録を停止する
    QuickTimePlayer-3
  7. 収録停止後、 Command + S でファイルを忘れずに保存する

以上です。


参考情報

Mac標準ソフトQuickTimeで、パソコン画面を音声込みで動画録画する方法

[Homebrew] brew missing, imagemagick: xz

Homebrew で brew doctor したら xz というライブラリがインストールされてないというエラーが出ました。

$ brew doctor 
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry and just ignore them. Thanks!
 
Warning: Some installed formula are missing dependencies.
You should `brew install` the missing dependencies:
 
    brew install xz
 
Run `brew missing` for more details.

brew missing すると詳細が分かるということだったので、やってみたら ImageMagick の依存ライブラリとのことでした。

$ brew missing
imagemagick: xz

xz を brew install します。

$ brew install xz
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/xz-5.0.7.yosemite.bottle.tar.gz
######################################################################## 100.0%
==> Pouring xz-5.0.7.yosemite.bottle.tar.gz
  /usr/local/Cellar/xz/5.0.7: 58 files, 1.5M

もう一度、brew doctor でチェックします。

$ brew doctor
Your system is ready to brew.

正常に戻りました。

[Mac] MacBook や iMac 同士を LAN ケーブルで接続する

1台の外付けハードディスクを2台の iMac で共有するために iMac 同士をLANケーブルで接続しました。

Mac 同士をLANケーブルで接続するためには、ネットワークの設定から手動で IP アドレスを割り振らないといけないと思っていました。

実際にやってみるとLANケーブルを繋ぐだけで DHCP サーバを利用して、自動で IP 割り振ってくれたので非常に楽でした。

他にも MacBook Air と iMac 同士を接続するには ギガビットEthernetアダプタ を使って接続するだけです。

[Mac] MPEG Streamclip で動画を結合する

Mac で使える動画編集フリーソフト「MPEG Streamclip」を使って、動画を結合することができます。

Squared 5 – MPEG Streamclip video converter for Mac and Windows

動画結合方法

  1. 起動した画面に、動画ファイルを複数選択してドラッグ・アンド・ドロップ
  2. 画面下の時間が、ファイルの合計時間になっていることを確認
  3. File → Save as で、元のファイル形式で結合保存される!

サクッと動画を繋いでくれるので便利です。

ただ、動画のサイズが異なる場合は結合できないので、そういう場合は iMovie などで動画編集する必要があります。


参考情報

mpeg4(H.264)動画の結合: macな日々

[Mac] 特定のportを使用しているプロセスを確認するコマンド lsof -i

Mac で、特定のポートを使用しているプロセスを確認するコマンド lsof -i の使い方をメモ。

例えば、mongod が利用している port を確認したい場合は、

% lsof -i | grep mongod
mongod      365 bakorer    9u  IPv4 0xd006e2ded5999795      0t0  TCP localhost:28017 (LISTEN)
mongod      365 bakorer   10u  IPv4 0xd006e2deda2a3f7d      0t0  TCP localhost:27017 (LISTEN)

のような感じで 28017 番を利用していることが分かる。


参考情報

lsof – Wikipedia

開いているファイルのプロセスを特定(lsofコマンド) – Qiita

@IT:特定のポートをオープンしているプロセスを調べるには

[Mac] Wi-Fi(無線LAN)に繋がらないときの解決方法

Mac で、Wi-Fi(無線LAN)に繋がらないときに解決するのに参考になった記事をメモ。

MacのWi-Fiが無線LAN接続できない時の対処法12個まとめ | Macとかの雑記帳

ここを一通り確認すれば、解決しました。