2015年07月08日

MacでMP3ファイルをiOS向けにcafファイルに変換するには(オーディオファイルフォーマット変換)


iOSアプリの開発時にBGMデータであったり何らかのエフェクトサウンドであったりのデータを組み込むことはよくある。この場合、iOSでは色々なファイルフォーマット変換をサポートしてはいるが、あらかじめiOSでの再生に最適化されたデータであったほうがよりよい。そのiOSアプリ用のサウンドフォーマットが .caf だ。

独立開発者であれば、BGMなどのオーディオデータは有料無料は別にして素材集や素材提供サイトで入手することが多いと思う。となると、そこで.cafフォーマットのデータが提供されていると期待するのはちょっと期待しすぎというもの。おおくはMP3ファイルだけ、あってもWAVやAIFFではないかと思います。

そこでそのような広く使われているフォーマットのデータをダウンロードして、cafファイルに変換して組み込むことを考える。

その時に使うのがOS Xに標準で組み込まれているコマンド afconvert だ。

$ which afconvert
/usr/bin/afconvert
続きを読む
posted by 永遠製作所 at 20:28| 東京 ☔| Comment(0) | TrackBack(0) | Mac OS X | このブログの読者になる | 更新情報をチェックする

2015年06月03日

SVG画像ファイルからPNGに変換する

Mac OS XでSVG画像をPNGに変換するには組み込みの機能ではコマンドラインツールのqlmanageを使う。

$ which qlmanage
/usr/bin/qlmanage


qlmanage は、 Quick Look の debug 用ツール。ここではオプションの「-t」を使う。「-t」はクイックルックが使うサムネイル画像の生成を行う。

入力となるSVGファイルを指定する他、生成するサイズを「-s」オプションで指定する。倍率を「-f」で指定することも可能。出力ファイルを書き出すフォルダを「-o」で指定する。

下記は、「appstorelog.svg」というファイルから40x40のサムネイルを生成してカレントフォルダに書き出す例。
$ qlmanage -t -s 40 -o . appstorelogo.svg


サムネイル用なので正方形の出力しかできないのが難点。
続きを読む
posted by 永遠製作所 at 16:37| 東京 🌁| Comment(0) | TrackBack(0) | Mac OS X | このブログの読者になる | 更新情報をチェックする

2015年05月20日

TTFファイルのフォント名を知る方法


TrueType Font(.ttf)ファイルをアプリに組みこんで使う場合に、そのフォント名を知るにはどうすればいいか?

$ mdls file.ttf


OpenType Font(.otf)ファイルでも使える。

これは、Spotlight検索で使えるメタデータ情報

例えば、『時をかける少女』TimeLeapフォントの場合この記事の末尾のようになる。この「com_apple_ats_name_full」の項目を使う。

なので、これだけでもいい。
$ mdls -name com_apple_ats_name_full timeleap100.ttf 
com_apple_ats_name_full = (
TimeLeap
)


ときどき、full nameの設定がない場合もあるので、その場合にはpostsctipr nameなど他の項目も試してみるとうまくいくことがある。

下記のOSで動作確認:
OS X Yosemite 10.10.3
続きを読む
posted by 永遠製作所 at 23:44| 東京 ☁| Comment(0) | TrackBack(0) | Mac OS X | このブログの読者になる | 更新情報をチェックする

2015年03月07日

Macで画像ファイルのサイズを変更する方法



Macで画像ファイルのサイズを変更したい場合に、Terminal.appを使ってコマンドラインツールで方法を記す。

/usr/bin/sipsを使うとファイルの操作ができる。"sips"は"scriptable image processing system"でラスター画像ファイルの情報を取得し、あるいは変更するためのツールです。

sipsコマンドは、画像情報を取得する -g -X -v -x、画像情報を操作する-s -dなどとともに、画像そのものを変更するオプションがあります。そのうち、-zオプションが画像サイズを変更するものです。


-z, --resampleHeightWidth pixelsH pixelsW
--resampleWidth pixelsW
--resampleHeight pixelsH
-Z, --resampleHeightWidthMax pixelsWH


他にも画像を回転させる -r, 領域を切り出す -c, アイコンを追加する -iがよく使いそうです。

例えば、file.pngというファイルがあってそれを高さ128、幅128ピクセルのアイコンicon.pngにしたいと思ったら以下のようにします;


$ sips -z 128 128 file.png --out icon.png


"--out"で出力ファイルを指定しない場合には入力ファイルが上書き変更されます。

iOSアプリの開発で複数サイズのアイコンが必要ですが、大きなサイズのアイコンを一つ作りそれの複数サイズをこのコマンドで縮小して作るなんて使い方で使う場合には、以下のようにスクリプトを書くと簡単に一括作成できます。


続きを読む
posted by 永遠製作所 at 02:16| 東京 ☔| Comment(0) | TrackBack(0) | Mac OS X | このブログの読者になる | 更新情報をチェックする

2013年12月15日

Vagrantを使って仮想環境を簡単に構築する

サーバークライアント環境で実行するアプリケーションの開発が必要になった。クライアントアプリのデバッグのためにサーバーアプリも必要なんだけど、そのために環境構築するのめんどくさい。使える家庭内サーバーはあるにはあるが、そこに色々環境をいじると何かと面倒。

と思っていたところたまたまVagrantというのがあることを知った。昔ちょっと触ったことがあるVirtualBoxを簡単に使えるツールのようだ。

設定手順はすごく簡単。

1)VirtualBoxをダウンロードする。

https://www.virtualbox.org/wiki/Downloads
VirtualBox 4.3.4 for OS X hosts
vagrant1.png

Mac OS X向けでは上記が最新。なのでこれをダウンロードして、ディスクイメージをマウント。インストーラを起動してインストールする。
vagrant2.png

通常の使い方をする場合にはVirtualBoxの管理アプリケーションを起動するのだが、今回は簡単に設定したいのでインストールするだけ。

ちなみに、VirtualBoxってOracleの製品(無償)だったんですね。JavaVMの技術となんか関係あるんでしょうか。でもこんなすごいソフトウエアを無償で提供していいんでしょうか?でもありがたいことです。

2)Vagrantをダウンロードする。

http://downloads.vagrantup.com/
Vagrant-1.3.5.dmg
vagrant3.png

現時点最新の1.3.5をダウンロードして、ディスクイメージをマウント。インストーラを起動してインストール。
vagrant4.png

3)Vagrantfileの設定

本来であれば次は標準Boxをダウンロードして導入するのだが、そこはとばす事にする。
http://www.vagrantbox.es/
にあるのは主に各OS(Linux系だけど)のプレーンな状態のもの。実際にはそこに開発言語やDB、フレームワークなどのミドルウエアを導入して、場合によってはディレクトリ構成を変更したり、DBや各種サービスの設定までもした後に、開発環境やテスト環境としてプロジェクトメンバーに提供する。そしてある程度そこまで様々な設定を済ませた環境がまたあちこちで公開されている。

今回は以下の条件で検索してみつけたものを使わせてもらった。
Linux系OS(なんでもよかったができればCentOS 64bit)
Apache(これもなんでもよかった)
PHP(5.2以降)
PostgreSQL(9.1以降)
あとできればCakePHP

https://github.com/shin1x1/vagrant-lapp-sample
vagrant5.png

$ git clone https://github.com/shin1x1/vagrant-lapp-sample
$ cd vagrant-lapp-sample/vagrant
$ vagrant up


これで必要な環境をダウンロードしてくれてセットアップして起動までしてくれる。ネットワーク環境などで違いがあるだろうが、10数分でできた。

4)動作確認

ちゃんと動いているかどうかは以下で確認できる。
まずWebサーバーが動いているかどうか。ブラウザから以下のURLにアクセスする。
http://192.168.33.30/
vagrant6.png

ちなみにこのIPアドレスはVagrantfileで設定しているので問題がある場合には事前に変更しておく。

Webサーバーが動いていれば、つぎにPostgreSQL環境がOKかどうかをphpPgAdminにアクセスする。これでphpの設定も確認できる。

http://192.168.33.30/phpPgAdmin/
vagrant7.png

管理者としてID=vagrantでログインできる。パスワードは何でもよい。これもVagrantfile内のプロヴィジョン設定で作られている(DBも作っている)ので変更したければそこでできる。

これで終わり。

5)ファイル同期

あとはソースを置いたりDBのスキーマを作ったり。独自のことをするだけだがログインするには以下のコマンドが使える。
$ vagrant ssh


なお、このbox設定ではvb.gui = trueになっているせいでGUIが起動している。そこでログインしてもよい。
vagrant8.png

だが設定を変更しないのであれば、ホストOSの側の使い慣れたツールを使って開発してローカルフォルダにファイルを保存すると、自動的に仮想環境と同期してくれる便利な機能がある。

このboxではホスト側のvagrant-lapp-sample/が仮想環境の/shareになっていて、/share/app/webroot/がwebのトップページになっているので、ここ以下に置いてブラウザでテストするということが可能。

6)vagrantの起動停止

起動
$ vagrant up

(複数環境がある場合にはパラメータにbox名を付けて選択して起動できる)

停止
$ vagrant halt


一時停止
$ vagrant suspend


再起動
$ vagrant resume

vagrant upでもいいみたい)

環境を消去する。
$ vagrant destroy



まだ分かっていない事も多いがとにかく環境を準備するのが実に簡単にできるようになっていて、しかも初期化も簡単なので実行環境へのインストールの練習とかインストールスクリプトのテストなどもできそうで大変ありがたい。
タグ:仮想環境
posted by 永遠製作所 at 23:31| 東京 ☀| Comment(0) | TrackBack(0) | Mac OS X | このブログの読者になる | 更新情報をチェックする