LandVolume 1.1
- 配布物
LandVolume 1.1 をリリース。
Leopard で正しく動作するようになり、スライダーの回転ができるようになった。
スライダーの回転は、レイヤーの -[CALayer setTransform:]
を呼ぶだけで実装できて感動。
このソフトのリクエストを送ってくれた方が Leopard を使用されていたので、Leopard 対応は重要な課題だった。1.0 をリリースした時点で対応させたつもりになっていたが、実際は動作せず...
原因は
- 自作クラスの
awakeFromNib
実装でsuper
のawakeFromNib
を呼んでいた。NSObject
がawakeFromNib
を実装しているのは Snow Leopard 以降。 - 1.0 では、
kAudioHardwarePropertyDefaultOutputDevice
によって、選択されている出力デバイスを取得したあと、そのプロパティkAudioHardwareServiceDeviceProperty_VirtualMasterVolume
によって音量を取得/変更する方法をとっていた。同プロパティは Available in Mac OS X v10.5 and later と書いてあったから問題ないと思っていたのに、実際は Snow Leopard 上でないと正しく動作しなかった。
デバイスのプロパティkAudioDevicePropertyPreferredChannelsForStereo
によってステレオの 2 つのチャンネルを取得し、それらのプロパティkAudioDevicePropertyVolumeScalar
を取得/変更することで対処。
LandVolume でのアイデアは開発中の iTunes コントローラにも活かされる予定。
Share
リンクも共有もお気軽に。記事を書くモチベーションの向上に役立てます。