Skip to content

Commit

Permalink
2024/02/06 時点の英語版に基づき更新 (#24061)
Browse files Browse the repository at this point in the history
2024/02/06 時点の英語版に基づき更新
  • Loading branch information
mfuji09 authored Oct 18, 2024
1 parent 666d3d7 commit 2bf0502
Showing 1 changed file with 15 additions and 12 deletions.
27 changes: 15 additions & 12 deletions files/ja/web/api/mediadevices/enumeratedevices/index.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
---
title: "MediaDevices: enumerateDevices() メソッド"
short-title: enumerateDevices()
slug: Web/API/MediaDevices/enumerateDevices
l10n:
sourceCommit: eab4066e72d5478de920e4020e5db71214dcffa6
sourceCommit: b2875dbaa70efb5850084b9802803b439db325f5
---

{{APIRef("WebRTC")}}
{{APIRef("Media Capture and Streams")}}{{SecureContext_Header}}

{{domxref("MediaDevices")}} **`enumerateDevices()`** メソッドは、マイクやカメラ、ヘッドセットなど、利用可能なメディア入出力機器の一覧を要求します
**`enumerateDevices()`**{{domxref("MediaDevices")}} インターフェイスのメソッドで、マイクやカメラ、ヘッドセットなど、現在利用可能なメディア入出力機器の一覧を要求します
返されたプロミス ({{jsxref("Promise")}}) は、機器を記述した {{domxref("MediaDeviceInfo")}} の配列で解決されます。

特定の機器へのアクセスは、[権限 API](/ja/docs/Web/API/Permissions_API) によって制限されます
返される機器の一覧では、対応する権限が付与されていない機器は省略されます。[`microphone`](/ja/docs/Web/HTTP/Headers/Permissions-Policy/microphone), [`camera`](/ja/docs/Web/HTTP/Headers/Permissions-Policy/camera), [`speaker-selection`](/ja/docs/Web/HTTP/Headers/Permissions-Policy/speaker-selection) (出力機器の場合)などです
特定の機器へのアクセスは、[権限ポリシー](/ja/docs/Web/HTTP/Headers/Permissions-Policy)によって制限されます。返される機器の一覧では、対応する権限が付与されていない機器は省略されます。[`microphone`](/ja/docs/Web/HTTP/Headers/Permissions-Policy/microphone), [`camera`](/ja/docs/Web/HTTP/Headers/Permissions-Policy/camera), [`speaker-selection`](/ja/docs/Web/HTTP/Headers/Permissions-Policy/speaker-selection) (出力機器の場合)などです
また、[権限 API](/ja/docs/Web/API/Permissions_API) によって、特定の既定ではない機器へのアクセスも制限され、ユーザーが明示的な許可を与えていない端末はリストから省略されます

## 構文

Expand All @@ -25,12 +26,13 @@ enumerateDevices()

### 返値

{{ jsxref("Promise") }} で、プロミスが履行されると {{domxref("MediaDeviceInfo")}} オブジェクトの配列を受け取ります
{{jsxref("Promise")}} で、{{domxref("MediaDeviceInfo")}} オブジェクトの配列で履行されます
配列内の各オブジェクトは、利用可能なメディア入出力機器の 1 つを記述します。
順番は重要で、既定のキャプチャ機器が最初にリストアップされます。

権限が付与された機器種別のみが "available" となります。
また、[`speaker-selection`](/ja/docs/Web/HTTP/Headers/Permissions-Policy/speaker-selection) [権限ポリシー](/ja/docs/Web/HTTP/Permissions_Policy)を使用して、音声出力の使用をブロックしていた場合、リストには現れないことに注意してください。
既定以外の危機は、権限が付与された機器のみが "available" となります。

メディア機器が入力機器である場合、代わりに {{domxref("InputDeviceInfo")}} オブジェクトが返されます。

列挙に失敗した場合、プロミスは拒否されます。

Expand All @@ -39,16 +41,17 @@ enumerateDevices()
API へのアクセスは、以下の制約を受けます。

- このメソッドは、[安全なコンテキスト](/ja/docs/Web/Security/Secure_Contexts)で呼び出す必要があります。
- 文書は完全にアクティブで、その可視性が「可視」である必要があります。

##

これは `enumerateDevices()` の使用例です。[デバイス ID](/ja/docs/Web/API/MediaDeviceInfo/deviceId) の一覧と、もしあればそのラベルが出力されます。
これは `enumerateDevices()` の使用例です。[機器 ID](/ja/docs/Web/API/MediaDeviceInfo/deviceId) の一覧と、もしあればそのラベルが出力されます。

```js
if (!navigator.mediaDevices?.enumerateDevices) {
console.log("enumerateDevices() not supported.");
} else {
// List cameras and microphones.
// カメラとマイクを列挙
navigator.mediaDevices
.enumerateDevices()
.then((devices) => {
Expand Down Expand Up @@ -90,5 +93,5 @@ audioinput: Built-in Microphone id=r2/xw1xUPIyZunfV1lGrKOma5wTOvCkWfZ368XCndm0=
- {{domxref("MediaDevices.getUserMedia")}}
- [WebRTC](/ja/docs/Web/API/WebRTC_API) - API の入門ページ
- [MediaStream API](/ja/docs/Web/API/Media_Capture_and_Streams_API) - メディアストリームオブジェクトの API
- [ウェブカメラでの写真撮影](/ja/docs/Web/API/Media_Capture_and_Streams_API/Taking_still_photos) は、動画ではなく写真を撮るために `getUserMedia()` を使用するチュートリアルです。
- [メディアキャプチャとストリーム API](/ja/docs/Web/API/Media_Capture_and_Streams_API) - メディアストリームオブジェクトの API
- [ウェブカムでの写真撮影](/ja/docs/Web/API/Media_Capture_and_Streams_API/Taking_still_photos) は、動画ではなく写真を撮るために `getUserMedia()` を使用するチュートリアルです。

0 comments on commit 2bf0502

Please sign in to comment.