chrome.audio

설명

chrome.audio API는 사용자가 시스템에 연결된 오디오 기기에 관한 정보를 가져오고 이를 제어할 수 있도록 제공됩니다. 이 API는 현재 ChromeOS의 키오스크 모드에서만 사용할 수 있습니다.

권한

audio

가용성

Chrome 59 이상 ChromeOS만 해당

유형

AudioDeviceInfo

속성

  • deviceName

    문자열

    기기 이름.

  • deviceType

    기기 유형입니다.

  • displayName

    문자열

    사용자 친화적인 이름입니다 (예: 'USB 마이크').

  • id

    문자열

    오디오 기기의 고유 식별자입니다.

  • isActive

    부울

    현재 활성 기기인 경우 true입니다.

  • 레벨

    숫자

    기기의 음원 수준, 출력 볼륨, 입력 게인

  • stableDeviceId

    문자열 선택사항

    사용 가능한 경우 안정적이고 영구적인 기기 ID 문자열입니다.

  • streamType

    이 기기와 연결된 스트림 유형입니다.

DeviceFilter

속성

  • isActive

    불리언 선택사항

    이 값을 설정하면 활성 상태가 이 값과 일치하는 오디오 기기만 필터를 충족합니다.

  • streamTypes

    StreamType[] 선택사항

    이 값을 설정하면 스트림 유형이 이 목록에 포함된 오디오 기기만 필터를 충족합니다.

DeviceIdLists

속성

  • 입력

    string[] 선택사항

    ID로 지정된 입력 장치 목록입니다.

    입력 장치가 영향을 받지 않아야 함을 나타내려면 이 속성을 설정하지 않은 상태로 둡니다.

  • output

    string[] 선택사항

    ID로 지정된 출력 장치 목록입니다.

    출력 장치가 영향을 받지 않아야 함을 나타내려면 이 속성을 설정하지 않은 상태로 둡니다.

DeviceProperties

속성

  • 레벨

    번호 선택사항

    오디오 기기의 원하는 음량입니다. 기본값은 기기의 현재 소리 수준입니다.

    오디오 입력 장치와 함께 사용하면 오디오 기기 이득을 나타냅니다.

    오디오 출력 기기와 함께 사용하면 오디오 기기 볼륨을 나타냅니다.

DeviceType

사용 가능한 오디오 기기 유형입니다.

열거형

"HEADPHONE"

"MIC"

"USB"

'블루투스'

"HDMI"

"INTERNAL_SPEAKER"

"INTERNAL_MIC"

"FRONT_MIC"

"REAR_MIC"

"KEYBOARD_MIC"

'핫워드'

'LINEOUT'

"POST_MIX_LOOPBACK"

"POST_DSP_LOOPBACK"

"ALSA_LOOPBACK"

'기타'

LevelChangedEvent

속성

  • deviceId

    문자열

    소리 수준이 변경된 기기의 ID입니다.

  • 레벨

    숫자

    기기의 새로운 소리 수준입니다.

MuteChangedEvent

속성

  • isMuted

    부울

    스트림이 현재 음소거되어 있는지 여부입니다.

  • streamType

    음소거 값이 변경된 스트림의 유형입니다. 업데이트된 음소거 값은 이 스트림 유형이 있는 모든 기기에 적용됩니다.

StreamType

오디오 기기에서 제공하는 스트림 유형입니다.

열거형

"INPUT"

'OUTPUT'

메서드

getDevices()

Promise
chrome.audio.getDevices(
  filter?: DeviceFilter,
  callback?: function,
)

filter를 기반으로 필터링된 오디오 기기 목록을 가져옵니다.

매개변수

  • filter

    DeviceFilter 선택사항

    반환된 오디오 기기 목록을 필터링하는 기기 속성입니다. 필터를 설정하지 않거나 {}로 설정하면 반환된 기기 목록에 사용 가능한 모든 오디오 기기가 포함됩니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (devices: AudioDeviceInfo[]) => void

반환 값

  • Promise<AudioDeviceInfo[]>

    Chrome 116 이상

    Promise는 매니페스트 V3 이상에서 지원되지만 이전 버전과의 호환성을 위해 콜백이 제공됩니다. 동일한 함수 호출에서 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

getMute()

Promise
chrome.audio.getMute(
  streamType: StreamType,
  callback?: function,
)

지정된 스트림 유형의 시스템 전체 음소거 상태를 가져옵니다.

매개변수

  • streamType

    음소거 상태를 가져와야 하는 스트림 유형입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    (value: boolean) => void

    • 부울

반환 값

  • Promise<boolean>

    Chrome 116 이상

    Promise는 매니페스트 V3 이상에서 지원되지만 이전 버전과의 호환성을 위해 콜백이 제공됩니다. 동일한 함수 호출에서 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

setActiveDevices()

Promise
chrome.audio.setActiveDevices(
  ids: DeviceIdLists,
  callback?: function,
)

활성 입력 또는 출력 장치 목록을 설정합니다.

매개변수

  • 활성 상태여야 하는 기기의 ID를 지정합니다. 입력 또는 출력 목록이 설정되지 않은 경우 해당 카테고리의 기기는 영향을 받지 않습니다.

    존재하지 않는 기기 ID를 전달하면 오류가 발생합니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • Promise<void>

    Chrome 116 이상

    Promise는 매니페스트 V3 이상에서 지원되지만 이전 버전과의 호환성을 위해 콜백이 제공됩니다. 동일한 함수 호출에서 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

setMute()

Promise
chrome.audio.setMute(
  streamType: StreamType,
  isMuted: boolean,
  callback?: function,
)

스트림 유형의 음소거 상태를 설정합니다. 음소거 상태는 지정된 오디오 스트림 유형이 있는 모든 오디오 기기에 적용됩니다.

매개변수

  • streamType

    음소거 상태를 설정해야 하는 스트림 유형입니다.

  • isMuted

    부울

    새 음소거 값입니다.

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • Promise<void>

    Chrome 116 이상

    Promise는 매니페스트 V3 이상에서 지원되지만 이전 버전과의 호환성을 위해 콜백이 제공됩니다. 동일한 함수 호출에서 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

setProperties()

Promise
chrome.audio.setProperties(
  id: string,
  properties: DeviceProperties,
  callback?: function,
)

입력 또는 출력 장치의 속성을 설정합니다.

매개변수

  • id

    문자열

  • 콜백

    함수 선택사항

    callback 매개변수는 다음과 같습니다.

    () => void

반환 값

  • Promise<void>

    Chrome 116 이상

    Promise는 매니페스트 V3 이상에서 지원되지만 이전 버전과의 호환성을 위해 콜백이 제공됩니다. 동일한 함수 호출에서 둘 다 사용할 수는 없습니다. 프로미스는 콜백에 전달된 것과 동일한 유형으로 확인됩니다.

이벤트

onDeviceListChanged

chrome.audio.onDeviceListChanged.addListener(
  callback: function,
)

오디오 기기가 변경되거나 새 기기가 추가되거나 기존 기기가 삭제될 때 실행됩니다.

매개변수

onLevelChanged

chrome.audio.onLevelChanged.addListener(
  callback: function,
)

활성 오디오 기기의 소리 수준이 변경될 때 실행됩니다.

매개변수

onMuteChanged

chrome.audio.onMuteChanged.addListener(
  callback: function,
)

오디오 입력 또는 출력의 음소거 상태가 변경될 때 실행됩니다. 음소거 상태는 시스템 전체에 적용되며 새 값은 지정된 스트림 유형이 있는 모든 오디오 기기에 적용됩니다.

매개변수