通过SDK覆盖iPhone快门声音

时间:2010-02-11 19:45:37

标签: iphone camera uiimagepickercontroller

在我的iPhone应用程序中,我使用的是源类型为UIImagePickerControllerSourceTypeCamera的UIImagePickerController。当用户拍照时,手机会播放熟悉的相机快门声。如何用我自己的自定义声音替换它?我知道这是可能的,因为我已经看到App Store中的其他应用程序(例如Red Laser)。

2 个答案:

答案 0 :(得分:2)

我很确定这是不可能的。 AFAIK,Red Laser实际上并不采用“正常”图片,而是使用UIGetScreenImage()(未记录但仍允许App Store应用程序)制作实时视频源的屏幕截图。由于操作系统在这种情况下不播放声音,因此可以自由播放声音。

编辑以澄清:从OS 3.1开始,您可以使用自己的控件替换标准相机界面。因此,您可以在屏幕上放置自己的快门按钮,并在用户点击时播放您自己的声音,但AFAIK现在可以摆脱操作系统的标准快门声音。

答案 1 :(得分:0)

AFAIK标准相机快门声音无法通过SDK更改。

This answer supports that.您可以通过切换声音文件来替换自己的声音,但不能在应用中替换。

有些answers such as this one建议使用AVCapture,但此方法会拍摄视频屏幕截图,从而降低图像质量。我

显示您无法更改快门声音,因为您可以将其设为无声音,而隐蔽地捕捉图像则违反App Store政策。 See this answer.

TLDR:

更改快门声音的唯一方法是使用视频屏幕抓取。