Я использовал методы, описанные здесь: http://weblog.rogueamoeba.com/2007/09/29/
и прочитайте эту тему: Связывание с медиа-ключами на клавиатурах Apple под OSX 10.5
Я переопределил класс sendEvent и обнаружил ввод медиа-ключа. Проблема в том, что iTunes запускается при нажатии кнопки воспроизведения. В вышеупомянутом потоке указано, что iTunes перехватывает событие в другом месте (неизвестно), поэтому нет способа заблокировать его от события Play/Pause (F8).
В качестве обходного пути я оставляю Quicktime Player открытым без файла. Однако, на Mountain Lion, Quicktime закрывается после определенного периода бездействия, и, таким образом, это обходное решение нежизнеспособно.
Я знаю, что такие приложения, как Spotify и MPlayerX, смогли как-то добиться этого. Они, похоже, полностью блокируют событие, а не только для iTunes.
Больше googling, я нашел этот discussion.apple.com/thread/2122639?start=210&tstart=0 который отслеживает его до Дона дистанционного управления, делающего вызовы через Applescript. Есть несколько работ, которые устраняют разрешение на выполнение для демона rcd (требуется sudo, необходимо перезапустить в любое время, когда обновляется OSX). nomitsu.com/contents/MMFix_src.tgz
Есть ли у кого-нибудь представление о том, как они (MPlayerX, Spotify) смогли это сделать, менее опасны?
Спасибо за любой совет.