2.11 Cameras

2.11.1 Shutter Sound

To protect the privacy of individuals, applications must be designed to help prevent surreptitious use of the camera to take photos or record video. As one part of this, a specified sound must be played on the Nintendo 3DS system when you take a photo, as well as when you start and stop recording video.

Use the nn::camera::CTR::PlayShutterSound function to play the shutter sound, recording-started sound, and recording-ended sound. This ensures that the sound is always prioritized and played back at a fixed sound level. To avoid confusing the user and other people nearby, use of this function is prohibited in situations other than taking a photo or recording video.

You do not need to play the shutter sound when captured images are merely processed as part of some other operation, such as for reading a QR Code or for tracking the position of the user’s face using face recognition, as there is no possibility of sneak photos.

Note:

This chapter uses the phrase “taking photos” and “recording video” to refer to the process of capturing images from the systems cameras and saving them to shared memory, the application’s backup memory, or an SD Card. The term “capture” simply refers to the application receiving image data via the system’s cameras. The act of temporarily storing capturing images for image recognition or for viewing by the user is not considered “taking photos” or “recording video.” Although it is prohibited to play the shutter sound or recording-started/recording-ended sounds in situations other than taking photos or recording video, it is permissible to play them as appropriate when temporarily storing captured images in memory (though it is not required). For example, it is up to developers to decide whether to play the shutter sound when the application reads a QR Code.

Use the nn::camera::CTR::PlayShutterSound function, passing SHUTTER_SOUND_TYPE_NORMAL as an argument, to play the shutter sound when taking photos. The shutter sound should be played at the same time as the photo is taken (when the camera obtains the image). Specifically, you must start to play back the shutter sound no more than 1 second before or after you take the picture.

The camera LED automatically turns off temporarily when the system plays the shutter sound. If you wish to prevent the camera LED from possibly appearing in the picture, we recommend playing the shutter sound before actually obtaining image data that will be saved as a photo from the camera(s).

Figure 2-6 Example of Appropriate Shutter Sound Playback When Taking Still Photos

Use the nn::camera::CTR::PlayShutterSound function, passing SHUTTER_SOUND_TYPE_MOVIE or SHUTTER_SOUND_TYPE_MOVIE_END as an argument, to play the recording-started sound and recording-ended sound when recording video. When doing so, observe the following:

  • Start playing the recording-started sound within 1 second of recording the first camera image.
  • Start playing the recording-ended sound within 1 second of recording the last camera image.
Figure 2-7 Example of Appropriate Recording-Started and Recording-Ended Sound Timing When Recording Video

 

Note that you must play a total of two sounds: the recording-started sound when you start recording video and the recording-ended sound when you stop recording video.

The camera LED automatically begins to blink when the recording-started sound is played, and stops blinking when the recording-ended sound is played.
 

2.11.1.1 Compliance with Playback of the Nintendo-Specified Shutter Sound

Guideline Item
Applications must use the function that plays the Nintendo-specified shutter sound at the designated times.
Software to Be Tested
Applications that take still photos.
Test Method
  1. Set the volume control to 0 and connect the headphones to the system.
  2. Take a still photo.
Pass/Fail Determination
Passes if the Nintendo-specified shutter sound is played unmodified from the speakers within 1 second before or after the photo is taken in Step 2.

2.11.1.2 Compliance of Playback of Nintendo-Specified Video Recording-Started/Recording-Ended Sounds

Guideline Item
Applications must use the function that plays the Nintendo-specified video recording-started/recording-ended sounds at the designated times.
Software to Be Tested
Applications that record video.
Test Method
  1. Set the volume control to 0 and connect the headphones to the system.
  2. Start recording a video.
  3. Stop recording a video.
Pass/Fail Determination

Passes if all of the following conditions are met.

  • The Nintendo-specified video recording-started sound is played unmodified from the speakers within 1 second before or after the first camera image is recorded in Step 2.
  • The Nintendo-specified video recording-ended sound is played unmodified from the speakers within 1 second before or after the last camera image is recorded in Step 3.

2.11.1.3 Prohibiting Playback of the Shutter Sound and the Video Recording-Started/Recording-Ended Sounds Except When Taking Still Photos or Recording Video

Guideline Item
The functions that play the shutter sound and video recording-started/recording-ended sounds specified by Nintendo must not be used except at the specified points when taking still photos or recording video.
Software to Be Tested
All applications.
Exceptions
When images are captured for purposes other than saving, such as when reading a QR Code or using facial recognition.
Test Method
  1. Set the volume control to 0 and connect the headphones to the system.
  2. Play through all modes of the application from beginning to end.
Pass/Fail Determination
Passes if the shutter sound or the recording-started/ended sounds specified by Nintendo are not played except when taking still photos or recording video in Step 2.

2.11.2 User Confirmation When Taking Photos or Recording Video with the Camera

 

In compliance with section 2.11.1 Shutter Sound, the shutter sound, the recording-started sound, and the recording-ended sound are always played when the camera is used to take photos or record video.
If an application uses a camera feature without the user’s knowledge, the shutter sound, recording-started sound, or recording-ended sound may be played in a situation where it is generally not appropriate to take photos or record video, such as on a train.
To prevent this, when implementing a camera feature we recommend ensuring the user's permission has been given before using the feature.

No required guideline items.

2.11.3 Opening and Closing the System While Using the Cameras

As an extension of the policy in section 2.11.1 Shutter Sound, Nintendo also recommends preventing users from taking sneak photos by closing the system while cameras are active. This includes handling camera images appropriately during capture and playing the shutter sound at the appropriate time. Nintendo's internal policies for handling camera images and the shutter sound before and after closing and reopening the system are described below.
Nintendo recommends not allowing any image that was being captured immediately before the system was closed to be saved as either a still image or video after the system is opened again.
Otherwise, users might manage to take sneak photos by closing the system while it is capturing an image.

Figure 2-8 Example of Inappropriate Situation in Which Camera Images From Before the System Was Closed Can Be Saved After the System Is Opened Again

Nintendo recommends that applications play the shutter sound even when the system is closed right after taking a photo. When doing so, specify SHUTTER_SOUND_TYPE_NORMAL as the argument to the nn::camera::CTR::PlayShutterSound function. Also pay particular attention to calling the nn::camera::CTR::PlayShutterSound function before the transition to Sleep Mode. If an application enters Sleep Mode before it calls the nn::camera::CTR::PlayShutterSound function, the shutter sound will not be played immediately and people in the immediate area will not be alerted that a picture was taken.

When the system is closed while recording video, Nintendo recommends that applications stop recording and then call the nn::camera::CTR::PlayShutterSound function. When doing so, specify SHUTTER_SOUND_TYPE_MOVIE_END as the argument. Likewise, Nintendo recommends that applications play the recording-started sound when resuming video recording after the system is opened again, even if this resumption happens automatically.

Even if the application enters Sleep Mode immediately after successfully calling the nn::camera::CTR::PlayShutterSound function, the system will still finish playing the shutter sound. There is thus no need for the application itself to check if the sound has finished playing.

Figure 2-9 Entering Sleep Mode During Shutter Sound Playback

 

 

No required guideline items.

2.11.4 Screen Display When Recording Video

The user, as well as others in his or her vicinity, can recognize that the Nintendo 3DS cameras are being used thanks to the camera LED and the video recording-started sound.

In order to make it even clearer that the Nintendo 3DS cameras are being used, Nintendo recommends also displaying the captured image on the upper or lower screen at the same time that the camera starts capturing. A display size of approximately 1/4 of the display screen area would be sufficient for this purpose.

No required guideline items.

2.11.5 Using an Application's Own Image Recognition Technology

When using your own image recognition methods to analyze images captured with the camera, we recommend that you check that the application operates properly, regardless of individual differences in the system camera, photography subject, surrounding image brightness, color temperature, or other factors.

By way of example, we recommend testing operation in the following kinds of conditions.

  • In direct sunlight
  • In dim lighting
  • In artificial lighting

 

No required guideline items.

2.11.6 Outer Camera Position Correction Data

There may be optical axis inconsistencies between the left and right outer cameras due to variations in the manufacturing process. The Nintendo 3DS system saves correction data to adjust for such inconsistencies, so applications must use this data to correct the images when displaying stereoscopic images captured with the outer cameras. Be sure to also correct images using this data before saving still images taken with the outer cameras as 3D photographs to shared memory or an SD Card.

When saving 3D photographs to an application’s own memory region, either save the corrected 3D photograph, or save the uncorrected 3D photograph together with the correction data so that the correction can be applied when displaying the stereoscopic image.

When overlaying characters or decorations on a captured image or 3D photograph, you must use the corrected image as the base.
Correction data differs between Nintendo 3DS systems. It may also be updated on any single unit depending on factors such as a user’s own manual settings. Consequently, when applying correction data to an image, you must use correction data from the same time the image was captured, saved by the same Nintendo 3DS system that captured the image.

Nintendo recommends that you refer to the verification chart shown below. At a scene relevant to this section, capture or take the image of the verification chart using the outer cameras.

Figure 2-10 Verification Chart

Start the Configuration Tool and go to Stereo Camera Cal for Check, then configure Set strange data 1 through Set strange data 4. Confirm the items match the following.
In the figure below, the dotted-line square represents an image for the right eye, and the solid-line square represents an image for the left eye. The left/right relation of the squares does not have to be exactly as shown below because it varies depending on the distance to the object.

  • Set strange data 1
    The image for the left eye appears as moved upward in relation to the image for the right eye.
Figure 2-11 Display Image for "Set strange data 1"

  • Set strange data 2
    The image for the left eye appears as tilted counter-clockwise in relation to the image for the right eye. (Approximately 5 degrees)
Figure 2-12 Display Image for "Set strange data 2"

  • Set strange data 3
    The image for the left eye appears as enlarged in relation to the image for the right eye.
Figure 2-13 Display Image for "Set strange data 3"

  • Set strange data 4
    The image for the left eye appears as shrunken in relation to the image for the right eye.
Figure 2-14 Display Image for "Set strange data 4

2.11.6.1 Support for Stereoscopic Display of Image Captured by the Outer Cameras

Guideline Item
Captured images must be displayed using the correction data from when they were captured if displaying them stereoscopically.
Software to Be Tested
Applications that display images captured by the outer cameras in 3D.
Test Method
  1. Using the Config tool, select Stereo Camera Cal for Check and run the option Set strange data 1.
  2. Use the outer cameras to capture an image.
  3. Use stereoscopic display to show the captured images.
  4. Close one eye and move your head left and right, so that you alternate between looking at the images for the left and right eyes.
  5. Using the Config tool, select Stereo Camera Cal for Check and run the option Set strange data 2.
  6. Perform steps 2 through 4.
  7. Using the Config tool, select Stereo Camera Cal for Check and run the option Set strange data 3.
  8. Perform steps 2 through 4.
  9. Using the Config tool, select Stereo Camera Cal for Check and run the option Set strange data 4.
  10. Perform steps 2 through 4.
Pass/Fail Determination

Passes if, in step 4, the image for the left eye appears as below compared to the image for the right eye:

  • If you executed Set strange data 1, the left-eye image is moved up.
  • If you executed Set strange data 2, the left-eye image is rotated counter-clockwise.
  • If you executed Set strange data 3, the left-eye image is larger than the other.
  • If you executed Set strange data 4, the left-eye image is smaller than the other.

2.11.6.2 Support for Saving 3D Photos Taken Using the Outer Cameras to Shared Memory or an SD Card

Guideline Item
3D photos must be saved using the correction data that was obtained when they were taken.
Software to Be Tested
Applications that save 3D photos to shared memory or to an SD Card.
Test Method
  1. Using the Config tool, select Stereo Camera Cal for Check and run the option Set strange data 1.
  2. Using the outer cameras, take a 3D picture and save it to the shared region or the SD card.
  3. Launch the system’s built-in Nintendo 3DS Camera application and select View Photos/Videos.
  4. Select the 3D photo taken and display it stereoscopically.
  5. Close one eye and move your head left and right, so that you alternate between looking at the images for the left and right eyes.
  6. Using the Config tool, select Stereo Camera Cal for Check and run the option Set strange data 2.
  7. Perform steps 2 through 5.
  8. Using the Config tool, select Stereo Camera Cal for Check and run the option Set strange data 3.
  9. Perform steps 2 through 5.
  10. Using the Config tool, select Stereo Camera Cal for Check and run the option Set strange data 4.
  11. Perform steps 2 through 5.
Pass/Fail Determination
Passes if, in step 5, the image for the left eye appears as below compared to the image for the right eye:
  • If you executed Set strange data 1, the left-eye image is moved up.
  • If you executed Set strange data 2, the left-eye image is rotated counter-clockwise.
  • If you executed Set strange data 3, the left-eye image is larger than the other.
  • If you executed Set strange data 4, the left-eye image is smaller than the other.

2.11.6.3 Support for Saving 3D Photos Taken Using the Outer Cameras to the Independent Memory Region

Guideline Item
3D photos must be displayed stereoscopically using the correction data that was obtained when they were taken.
Software to Be Tested
Applications that save 3D photos taken to an applications’ own memory region.
Test Method
  1. Using the Config tool, select Stereo Camera Cal for Check and run the option Set strange data 1.
  2. Using the outer cameras, take a 3D picture and save it to the application's own memory region.
  3. Using the Config tool, select the Stereo Camera Cal for Check feature and run the option Reset to factory default.
  4. Launch the application and stereoscopically display the 3D photo taken.
  5. Close one eye and move your head left and right, so that you alternate between looking at the images for the left and right eyes.
  6. Using the Config tool, select Stereo Camera Cal for Check and run the option Set strange data 2.
  7. Perform steps 2 through 5.
  8. Using the Config tool, select Stereo Camera Cal for Check and run the option Set strange data 3.
  9. Perform steps 2 through 5.
  10. Using the Config tool, select Stereo Camera Cal for Check and run the option Set strange data 4.
  11. Perform steps 2 through 5.
Pass/Fail Determination
Passes if, in step 5, the image for the left eye appears as below compared to the image for the right eye:
  • If you executed Set strange data 1, the left-eye image is moved up.
  • If you executed Set strange data 2, the left-eye image is rotated counter-clockwise.
  • If you executed Set strange data 3, the left-eye image is larger than the other.
  • If you executed Set strange data 4, the left-eye image is smaller than the other.

2.11.7 Turning the Camera Power On/Off

When cameras are started using the nn::camera::CTR::Activate function, more power is consumed than when the cameras are on standby. Consequently, the system battery life is reduced by about 7% when one camera is always running, and about 14% when two cameras are always running, depending on the application. For this reason, applications that do not use cameras are prohibited from starting cameras using the nn::camera::CTR::Activate function.

Even for applications that use the cameras, if possible, start the camera only just before the scenes that use the camera. In addition, in the scenes that do not use the cameras, we strongly recommend putting the cameras in standby status by specifying CAMERA_SELECT_NONE to the nn::camera::CTR::Activate function. However, considering that up to 30 frames are required after the camera starts before auto-exposure stabilizes, there is no need to toggle the standby status of the camera excessively.

Because standalone and networked RIDs are not powered by batteries, this guideline does not apply to applications created specifically for such RIDs.

2.11.7.1 Prohibiting Starting the Cameras in Applications That Do Not Support the Cameras

Guideline Item
Applications which do not use the cameras must not start them with the nn::camera::CTR::Activate function.
Software to Be Tested
Applications that do not use the cameras.
Exceptions
Standalone RID demos and networked RID demos.
Test Method

Applications using the SDK 7.x series or later:

Check the middleware list under the Basic info (CCI) tab of Master Editor.

 Applications using an SDK series earlier than 7.x:

  1. Check the camera LED while running the application in each mode.
  2. Check the source code.
Pass/Fail Determination

Applications using the SDK 7.x series or later:

Passes if "NINTENDO:CameraActivate" is not displayed.

 Applications using an SDK series earlier than 7.x:

Passes if all of the following conditions are met.

  • In Step 1, the camera LED is not illuminated.
  • In Step 2, the nn::camera::CTR::Activate function is not being used.

 


CONFIDENTIAL