KR20240043636A - 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법 - Google Patents
오디오 서비스를 제공하는 전자 장치 및 그 동작 방법 Download PDFInfo
- Publication number
- KR20240043636A KR20240043636A KR1020220163132A KR20220163132A KR20240043636A KR 20240043636 A KR20240043636 A KR 20240043636A KR 1020220163132 A KR1020220163132 A KR 1020220163132A KR 20220163132 A KR20220163132 A KR 20220163132A KR 20240043636 A KR20240043636 A KR 20240043636A
- Authority
- KR
- South Korea
- Prior art keywords
- electronic device
- data packet
- bis
- audio
- external electronic
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 98
- 238000004891 communication Methods 0.000 claims abstract description 267
- 238000012790 confirmation Methods 0.000 claims description 97
- 238000010586 diagram Methods 0.000 description 45
- 206010004966 Bite Diseases 0.000 description 24
- 230000005540 biological transmission Effects 0.000 description 24
- 238000000379 bremsstrahlung isochromat spectroscopy Methods 0.000 description 24
- 238000012545 processing Methods 0.000 description 20
- 230000001360 synchronised effect Effects 0.000 description 16
- 238000005516 engineering process Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 13
- 230000000737 periodic effect Effects 0.000 description 11
- 238000013528 artificial neural network Methods 0.000 description 8
- 230000005236 sound signal Effects 0.000 description 7
- 238000013473 artificial intelligence Methods 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 5
- 230000010267 cellular communication Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000000638 stimulation Effects 0.000 description 3
- 101100058736 Arabidopsis thaliana BZR1 gene Proteins 0.000 description 2
- 101000813777 Homo sapiens Splicing factor ESS-2 homolog Proteins 0.000 description 2
- 101100218870 Sorbus aucuparia BIS2 gene Proteins 0.000 description 2
- 102100039575 Splicing factor ESS-2 homolog Human genes 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000011017 operating method Methods 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003155 kinesthetic effect Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/16—Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
- H04W28/18—Negotiating wireless communication parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W56/00—Synchronisation arrangements
- H04W56/001—Synchronization between nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/02—Terminal devices
- H04W88/04—Terminal devices adapted for relaying to or from another terminal or user
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Multimedia (AREA)
- Telephone Function (AREA)
Abstract
통신 회로 및 적어도 하나의 프로세서를 포함하는 전자 장치를 개시한다. 상기 적어도 하나의 프로세서는, 외부 전자 장치와 통신 링크를 연결하고, 상기 통신 링크를 통해 상기 외부 전자 장치와 오디오 서비스를 위한 오디오 릴레이 협상을 수행하고, 소스 전자 장치로부터 브로드캐스트되는 적어도 하나의 제1 데이터 패킷을 수신하고, 상기 오디오 릴레이 협상을 기반으로 상기 오디오 서비스와 관련된 수신 여부 지시 정보를 상기 통신 링크를 통해 상기 외부 전자 장치에게 전송하고, 상기 오디오 릴레이 협상을 기반으로 상기 외부 전자 장치로부터 상기 외부 전자 장치가 상기 소스 전자 장치로부터 수신한 적어도 하나의 제2 데이터 패킷을 포함하는 릴레이 데이터를 수신하고, 상기 적어도 하나의 제1 데이터 패킷 및 상기 적어도 하나의 제2 데이터 패킷을 기반으로 오디오를 출력하도록 구성될 수 있다.
Description
본 개시의 실시예들은 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법에 관한 것이다.
블루투스 통신 기술은 전자 장치들이 데이터나 정보의 교환을 위해 서로 연결될 수 있도록 하는 근거리 무선 통신 기술을 제시할 수 있다. 블루투스 통신 기술은 블루투스 레거시(legacy)(또는 클래식(classic)) 통신 기술 또는 저전력 블루투스(Bluetooth low energy: BLE) 통신 기술을 포함할 수 있으며, 피코넷(piconet) 또는 스캐터넷(scatternet)과 같은 다양한 연결 형태의 토폴로지(topology)를 가질 수 있다.
최근 블루투스 통신 기술을 이용하는 전자 장치들이 널리 이용되고 있다. 예를 들어, 사용자의 양측 귀에 각각 착용될 수 있는 한 쌍의 이어 버즈(ear buds)가 이어 웨어러블 장치(ear-wearable device)로서 널리 이용되고 있다. 이어 웨어러블 장치는 다양한 기능을 제공할 수 있다. 예를 들어, 이어 웨어러블 장치는 마이크를 포함하여, 사용자의 음성을 식별할 수 있고, 이를 통해, 사용자의 음성에 대한 데이터를 전자 장치(예: 스마트 폰)로 전송할 수 있다. 또한 이어 웨어러블 장치는 스피커를 포함하여, 전자 장치(예: 스마트 폰)로부터 수신한 오디오 데이터를 스피커를 통해 출력할 수 있다.
이어 웨어러블 장치는 전자 장치(예: 스마트 폰)에 연결될 수 있는 프라이머리 이어버드(예를 들어 우측 이어버드)와 세컨더리 이어버드(예를 들어 좌측 이어버드)를 포함할 수 있다. 프라이머리 이어버드는 전자 장치와의 연결을 통해 음성 데이터를 전자 장치로 전송할 수 있고, 전자 장치는 오디오 데이터(또는, 오디오 컨텐트)를 프라이머리 이어버드로 전송할 수 있다. 프라이머리 이어버드는 전자 장치로부터 무선 통신을 통해 수신한 오디오 데이터(또는, 오디오 컨텐트)를 세컨더리 이어버드에 전달할 수 있고, 오디오 데이터를 스피커를 통해 출력할 수 있다. 세컨더리 이어버드는 프라이머리 이어버드와 동기화되어, 프라이머리 이어버드 또는 전자 장치로부터 전달받은 오디오 데이터를 스피커를 통해 출력할 수 있다.
프라이머리 이어버드와 세컨더리 이어버드(이하, ‘이어버즈’라 칭함)는 상기와 같은 동작들을 수행하기 위해 블루투스 통신을 기반으로 전자 장치와 연결될 수 있다. 이를 위해, 이어버즈는 인쿼리(inquiry) 및/또는 인쿼리 스캔(inquiry scan), 또는 BLE 애드버타이징(advertising) 및/또는 BLE 스캔을 포함하는 페어링을 수행할 수 있다.
BLE 애드버타이징은 애드버타이징 물리 채널(advertising physical channel)에서 애드버타이징 패킷을 주기적으로 브로드캐스팅하는 동작을 의미할 수 있고, BLE 스캔은 애드버타이징 패킷의 수신을 모니터링하는 동작을 의미할 수 있다.
본 개시의 실시예들에 따른 전자 장치 및 그 동작 방법은 소스 전자 장치로부터 브로드캐스트되는 오디오 데이터를 수신할 수 있다.
본 개시의 실시예들에 따른 전자 장치 및 그 동작 방법은 브로드캐스트 스트림을 수신하는 전자 장치들 간에 수신 상태를 공유할 수 있다.
본 개시의 실시예들에 따른 전자 장치 및 그 동작 방법은 소스 전자 장치로부터 브로드캐스트되는 오디오 데이터를 외부 전자 장치에게 전달(relay)할 수 있다.
일 실시예에 따른 전자 장치는 통신 회로 및 상기 통신 회로와 작동적으로 연결되는 적어도 하나의 프로세서를 포함할 수 있다. 상기 적어도 하나의 프로세서는 상기 통신 회로를 통하여 외부 전자 장치와 통신 링크를 연결하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 통신 링크를 통해 상기 외부 전자 장치와 오디오 서비스를 위한 오디오 릴레이 협상을 수행하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 소스 전자 장치로부터 브로드캐스트되는 적어도 하나의 제1 데이터 패킷을 수신하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 오디오 릴레이 협상을 기반으로 상기 오디오 서비스와 관련된 수신 여부 지시 정보를 상기 통신 링크를 통해 상기 외부 전자 장치에게 전송하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 오디오 릴레이 협상을 기반으로 상기 외부 전자 장치로부터 상기 외부 전자 장치가 상기 소스 전자 장치로부터 수신한 적어도 하나의 제2 데이터 패킷을 포함하는 릴레이 데이터를 수신하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 적어도 하나의 제1 데이터 패킷 및 상기 적어도 하나의 제2 데이터 패킷을 기반으로 오디오를 출력하도록 구성될 수 있다.
일 실시예에 따른 전자 장치는 통신 회로와 상기 통신 회로와 작동적으로 연결된 적어도 하나의 프로세서를 포함할 수 있다. 상기 적어도 하나의 프로세서는 상기 통신 회로를 통하여 외부 전자 장치와 통신 링크를 연결하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 통신 링크를 통해 상기 외부 전자 장치와 오디오 서비스를 위한 오디오 릴레이 협상을 수행하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 소스 전자 장치로부터 브로드캐스트되는 적어도 하나의 제1 데이터 패킷을 수신하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 오디오 릴레이 협상을 기반으로 상기 오디오 서비스와 관련된 수신 여부 지시 정보가 상기 통신 링크를 통해 상기 외부 전자 장치로부터 수신되는지 확인하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 수신 여부 지시 정보에 근거하여, 상기 오디오 릴레이 협상을 기반으로 상기 소스 전자 장치로부터 수신된 적어도 하나의 제1 데이터 패킷을 포함하는 릴레이 데이터를 상기 외부 전자 장치로 전송하도록 구성될 수 있다.
일 실시예에 따른 전자 장치의 동작 방법은 외부 전자 장치와 통신 링크를 연결하는 동작을 포함할 수 있다. 상기 방법은 상기 통신 링크를 통해 상기 외부 전자 장치와 오디오 서비스를 위한 오디오 릴레이 협상을 수행하는 동작을 포함할 수 있다. 상기 방법은 기반으로 소스 전자 장치로부터 브로드캐스트되는 적어도 하나의 제1 데이터 패킷을 수신하는 동작을 포함할 수 있다. 상기 방법은 상기 오디오 릴레이 협상을 기반으로 상기 오디오 서비스와 관련된 수신 여부 지시 정보를 상기 통신 링크를 통해 상기 외부 전자 장치에게 전송하는 동작을 포함할 수 있다. 상기 방법은 상기 오디오 릴레이 협상을 기반으로 상기 외부 전자 장치로부터 상기 외부 전자 장치가 상기 소스 전자 장치로부터 수신한 적어도 하나의 제2 데이터 패킷을 포함하는 릴레이 데이터를 수신하는 동작을 포함할 수 있다. 상기 방법은 상기 적어도 하나의 제1 데이터 패킷 및 상기 적어도 하나의 제2 데이터 패킷을 기반으로 오디오를 출력하는 동작을 포함할 수 있다.
일 실시예에 따른 전자 장치의 동작 방법은, 외부 전자 장치와 통신 링크를 연결하는 동작을 포함할 수 있다. 상기 방법은 상기 통신 링크를 통해 상기 외부 전자 장치와 오디오 서비스를 위한 오디오 릴레이 협상을 수행하는 동작을 포함할 수 있다. 상기 방법은 소스 전자 장치로부터 브로드캐스트되는 적어도 하나의 제1 데이터 패킷을 수신하는 동작을 포함할 수 있다. 상기 방법은 상기 오디오 릴레이 협상을 기반으로 상기 오디오 서비스와 관련된 수신 여부 지시 정보가 상기 통신 링크를 통해 상기 외부 전자 장치로부터 수신되는지 확인하는 동작을 포함할 수 있다. 상기 방법은 상기 수신 여부 지시 정보에 근거하여, 상기 오디오 릴레이 협상을 기반으로 상기 소스 전자 장치로부터 수신된 적어도 하나의 제1 데이터 패킷을 포함하는 릴레이 데이터를 상기 외부 전자 장치로 전송하는 동작을 포함할 수 있다.
일 실시예에 따라 하나 이상의 프로그램을 저장하는 비일시적 컴퓨터 판독 가능한 저장 매체에 있어서, 상기 하나 이상의 프로그램은 전자 장치의 적어도 하나의 프로세서에 의해 실행될 때 상기 전자 장치가: 외부 전자 장치와 통신 링크를 연결하고, 상기 통신 링크를 통해 상기 외부 전자 장치와 오디오 서비스를 위한 오디오 릴레이 협상을 수행하고, 소스 전자 장치로부터 브로드캐스트되는 적어도 하나의 제1 데이터 패킷을 수신하고, 상기 오디오 릴레이 협상을 기반으로 상기 오디오 서비스와 관련된 수신 여부 지시 정보를 상기 통신 링크를 통해 상기 외부 전자 장치에게 전송하고, 상기 오디오 릴레이 협상을 기반으로 상기 외부 전자 장치로부터 상기 외부 전자 장치가 상기 소스 전자 장치로부터 수신한 적어도 하나의 제2 데이터 패킷을 포함하는 릴레이 데이터를 수신하고, 상기 적어도 하나의 제1 데이터 패킷 및 상기 적어도 하나의 제2 데이터 패킷을 기반으로 오디오를 출력하도록 구성하는 명령어들을 포함할 수 있다.
일 실시예에 따라 하나 이상의 프로그램을 저장하는 비일시적 컴퓨터 판독 가능한 저장 매체에 있어서, 상기 하나 이상의 프로그램은 전자 장치의 적어도 하나의 프로세서에 의해 실행될 때 상기 전자 장치가: 외부 전자 장치와 통신 링크를 연결하고, 상기 통신 링크를 통해 상기 외부 전자 장치와 오디오 서비스를 위한 오디오 릴레이 협상을 수행하고, 소스 전자 장치로부터 브로드캐스트되는 적어도 하나의 제1 데이터 패킷을 수신하고, 상기 오디오 릴레이 협상을 기반으로 상기 오디오 서비스와 관련된 수신 여부 지시 정보가 상기 통신 링크를 통해 상기 외부 전자 장치로부터 수신되는지 확인하고, 상기 수신 여부 지시 정보에 근거하여, 상기 오디오 릴레이 협상을 기반으로 상기 소스 전자 장치로부터 수신된 적어도 하나의 제1 데이터 패킷을 포함하는 릴레이 데이터를 상기 외부 전자 장치로 전송하도록 구성하는 명령어들을 포함할 수 있다.
도 1은, 다양한 실시예들에 따른, 네트워크 환경 내의 전자 장치의 블록도이다.
도 2는 일 실시예에 따라 블루투스 방식에 기반한 전자 장치들 간 연결을 설명하는 도면이다.
도 3은 일 실시예에 따른 블루투스 통신을 지원하는 전자 장치의 구성을 설명하기 위한 도면이다.
도 4는 일 실시예에 따라 브로드캐스트 등시성 그룹(BIG)에 동기화되는 절차를 설명하기 위한 신호 흐름도를 도시한 것이다.
도 5는 일 실시예에 따른 BIG 정보의 포맷을 설명하기 위한 도면이다.
도 6은 일 실시예에 따른 주기적 애드버타이징 이벤트에 대한 BIG 이벤트를 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 BIG와 BIS 이벤트들을 설명하기 위한 도면이다.
도 8a, 도 8b, 및 도 8c는 일 실시예에 따른 BIS 데이터 패킷들의 재전송을 설명하기 위한 도면이다.
도 9a, 도 9b, 및 도 9c는 본 개시의 실시예들에 따라 오디오 데이터를 전송하는 시스템 구조를 설명하기 위한 도면이다.
도 10은 일 실시예에 따라 오디오 데이터를 릴레이하는 외부 전자 장치의 구성을 설명하기 위한 도면이다.
도 11a 및 도 11b는 일 실시예에 따라 싱크 전자 장치들 간 수신 상태를 공유하는 절차를 설명하기 위한 신호 흐름도를 도시한 것이다.
도 12는 일 실시예에 따라 수신 여부 지시확인 정보를 전송하는 전자 장치의 동작을 설명하기 위한 흐름도이다.
도 13은 일 실시예에 따라 수신 여부 지시확인 정보를 수신하는 외부 전자 장치(910)의 동작을 설명하기 위한 흐름도이다.
도 14는 일 실시예에 따른 주기적 애드버타이징을 설명하기 위한 도면이다.
도 15는 일 실시예에 따른 오디오 릴레이 협상을 설명하기 위한 도면이다.
도 16a, 도 16b, 및 도 16c는 일 실시예에 따른 수신 여부 지시확인 정보의 포맷을 설명하기 위한 도면이다.
도 17a는 일 실시예에 따라 수신 확인 정보를 전송하는 동작을 설명하기 위한 도면이다.
도 17b는 일 실시예에 따라 미수신 확인 정보를 전송하는 동작을 설명하기 위한 도면이다.
도 18은 일 실시예에 따라 BIS 이벤트 이후에 수신 여부 지시확인 정보를 전송하는 동작을 설명하기 위한 도면이다.
도 19는 일 실시예에 따라 누락된 오디오 데이터를 릴레이하는 동작을 설명하기 위한 도면이다.
도 20은 일 실시예에 따라 BIS 이벤트 이후에 누락된 오디오 데이터를 릴레이하는 동작을 설명하기 위한 도면이다.
도 21은 일 실시예에 따라 외부 전자 장치가 오디오 데이터를 의무적으로 릴레이하는 동작을 설명하기 위한 도면이다.
도 22는 일 실시예에 따라 외부 전자 장치가 소스 전자 장치의 BIG 정보에 근거하여 오디오 데이터를 의무적으로 릴레이하는 동작을 설명하기 위한 도면이다.
도 23은 일 실시예에 따라 외부 전자 장치가 새로운 BIG를 통해 오디오 데이터를 릴레이하는 동작을 설명하기 위한 도면이다.
도 2는 일 실시예에 따라 블루투스 방식에 기반한 전자 장치들 간 연결을 설명하는 도면이다.
도 3은 일 실시예에 따른 블루투스 통신을 지원하는 전자 장치의 구성을 설명하기 위한 도면이다.
도 4는 일 실시예에 따라 브로드캐스트 등시성 그룹(BIG)에 동기화되는 절차를 설명하기 위한 신호 흐름도를 도시한 것이다.
도 5는 일 실시예에 따른 BIG 정보의 포맷을 설명하기 위한 도면이다.
도 6은 일 실시예에 따른 주기적 애드버타이징 이벤트에 대한 BIG 이벤트를 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 BIG와 BIS 이벤트들을 설명하기 위한 도면이다.
도 8a, 도 8b, 및 도 8c는 일 실시예에 따른 BIS 데이터 패킷들의 재전송을 설명하기 위한 도면이다.
도 9a, 도 9b, 및 도 9c는 본 개시의 실시예들에 따라 오디오 데이터를 전송하는 시스템 구조를 설명하기 위한 도면이다.
도 10은 일 실시예에 따라 오디오 데이터를 릴레이하는 외부 전자 장치의 구성을 설명하기 위한 도면이다.
도 11a 및 도 11b는 일 실시예에 따라 싱크 전자 장치들 간 수신 상태를 공유하는 절차를 설명하기 위한 신호 흐름도를 도시한 것이다.
도 12는 일 실시예에 따라 수신 여부 지시확인 정보를 전송하는 전자 장치의 동작을 설명하기 위한 흐름도이다.
도 13은 일 실시예에 따라 수신 여부 지시확인 정보를 수신하는 외부 전자 장치(910)의 동작을 설명하기 위한 흐름도이다.
도 14는 일 실시예에 따른 주기적 애드버타이징을 설명하기 위한 도면이다.
도 15는 일 실시예에 따른 오디오 릴레이 협상을 설명하기 위한 도면이다.
도 16a, 도 16b, 및 도 16c는 일 실시예에 따른 수신 여부 지시확인 정보의 포맷을 설명하기 위한 도면이다.
도 17a는 일 실시예에 따라 수신 확인 정보를 전송하는 동작을 설명하기 위한 도면이다.
도 17b는 일 실시예에 따라 미수신 확인 정보를 전송하는 동작을 설명하기 위한 도면이다.
도 18은 일 실시예에 따라 BIS 이벤트 이후에 수신 여부 지시확인 정보를 전송하는 동작을 설명하기 위한 도면이다.
도 19는 일 실시예에 따라 누락된 오디오 데이터를 릴레이하는 동작을 설명하기 위한 도면이다.
도 20은 일 실시예에 따라 BIS 이벤트 이후에 누락된 오디오 데이터를 릴레이하는 동작을 설명하기 위한 도면이다.
도 21은 일 실시예에 따라 외부 전자 장치가 오디오 데이터를 의무적으로 릴레이하는 동작을 설명하기 위한 도면이다.
도 22는 일 실시예에 따라 외부 전자 장치가 소스 전자 장치의 BIG 정보에 근거하여 오디오 데이터를 의무적으로 릴레이하는 동작을 설명하기 위한 도면이다.
도 23은 일 실시예에 따라 외부 전자 장치가 새로운 BIG를 통해 오디오 데이터를 릴레이하는 동작을 설명하기 위한 도면이다.
도 1은, 다양한 실시예들에 따른, 네트워크 환경(100) 내의 전자 장치(101)의 블록도이다.
도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제 1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(102)와 통신하거나, 또는 제 2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(104) 또는 서버(108)와 통신할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 모듈(150), 음향 출력 모듈(155), 디스플레이 모듈(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 연결 단자(178), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 연결 단자(178))가 생략되거나, 하나 이상의 다른 구성요소가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들(예: 센서 모듈(176), 카메라 모듈(180), 또는 안테나 모듈(197))은 하나의 구성요소(예: 디스플레이 모듈(160))로 통합될 수 있다.
프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 저장하고, 휘발성 메모리(132)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일실시예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서) 또는 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(123)(예: 그래픽 처리 장치, 신경망 처리 장치(NPU: neural processing unit), 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 예를 들어, 전자 장치(101)가 메인 프로세서(121) 및 보조 프로세서(123)를 포함하는 경우, 보조 프로세서(123)는 메인 프로세서(121)보다 저전력을 사용하거나, 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(123)는 메인 프로세서(121)와 별개로, 또는 그 일부로서 구현될 수 있다.
보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 디스플레이 모듈(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일실시예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다. 일실시예에 따르면, 보조 프로세서(123)(예: 신경망 처리 장치)는 인공지능 모델의 처리에 특화된 하드웨어 구조를 포함할 수 있다. 인공지능 모델은 기계 학습을 통해 생성될 수 있다. 이러한 학습은, 예를 들어, 인공지능이 수행되는 전자 장치(101) 자체에서 수행될 수 있고, 별도의 서버(예: 서버(108))를 통해 수행될 수도 있다. 학습 알고리즘은, 예를 들어, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)을 포함할 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은, 복수의 인공 신경망 레이어들을 포함할 수 있다. 인공 신경망은 심층 신경망(DNN: deep neural network), CNN(convolutional neural network), RNN(recurrent neural network), RBM(restricted boltzmann machine), DBN(deep belief network), BRDNN(bidirectional recurrent deep neural network), 심층 Q-네트워크(deep Q-networks) 또는 상기 중 둘 이상의 조합 중 하나일 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은 하드웨어 구조 이외에, 추가적으로 또는 대체적으로, 소프트웨어 구조를 포함할 수 있다.
메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서 모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다.
프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다.
입력 모듈(150)은, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 모듈(150)은, 예를 들면, 마이크, 마우스, 키보드, 키(예: 버튼), 또는 디지털 펜(예: 스타일러스 펜)을 포함할 수 있다.
음향 출력 모듈(155)은 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 모듈(155)은, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있다. 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일실시예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.
디스플레이 모듈(160)은 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 디스플레이 모듈(160)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일실시예에 따르면, 디스플레이 모듈(160)은 터치를 감지하도록 설정된 터치 센서, 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다.
오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일실시예에 따르면, 오디오 모듈(170)은, 입력 모듈(150)을 통해 소리를 획득하거나, 음향 출력 모듈(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102))(예: 스피커 또는 헤드폰)를 통해 소리를 출력할 수 있다.
센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일실시예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다.
인터페이스(177)는 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일 실시예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일실시예에 따르면, 연결 단자(178)는, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일실시예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일실시예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.
전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일실시예에 따르면, 전력 관리 모듈(188)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.
배터리(189)는 전자 장치(101)의 적어도 하나의 구성요소에 전력을 공급할 수 있다. 일실시예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108)) 간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일실시예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(198)(예: 블루투스, WiFi(wireless fidelity) direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크) 또는 제 2 네트워크(199)(예: 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부의 전자 장치(104)와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 또는 인증할 수 있다.
무선 통신 모듈(192)은 4G 네트워크 이후의 5G 네트워크 및 차세대 통신 기술, 예를 들어, NR 접속 기술(new radio access technology)을 지원할 수 있다. NR 접속 기술은 고용량 데이터의 고속 전송(eMBB(enhanced mobile broadband)), 단말 전력 최소화와 다수 단말의 접속(mMTC(massive machine type communications)), 또는 고신뢰도와 저지연(URLLC(ultra-reliable and low-latency communications))을 지원할 수 있다. 무선 통신 모듈(192)은, 예를 들어, 높은 데이터 전송률 달성을 위해, 고주파 대역(예: mmWave 대역)을 지원할 수 있다. 무선 통신 모듈(192)은 고주파 대역에서의 성능 확보를 위한 다양한 기술들, 예를 들어, 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO(multiple-input and multiple-output)), 전차원 다중입출력(FD-MIMO: full dimensional MIMO), 어레이 안테나(array antenna), 아날로그 빔형성(analog beam-forming), 또는 대규모 안테나(large scale antenna)와 같은 기술들을 지원할 수 있다. 무선 통신 모듈(192)은 전자 장치(101), 외부 전자 장치(예: 전자 장치(104)) 또는 네트워크 시스템(예: 제 2 네트워크(199))에 규정되는 다양한 요구사항을 지원할 수 있다. 일실시예에 따르면, 무선 통신 모듈(192)은 eMBB 실현을 위한 Peak data rate(예: 20Gbps 이상), mMTC 실현을 위한 손실 Coverage(예: 164dB 이하), 또는 URLLC 실현을 위한 U-plane latency(예: 다운링크(DL) 및 업링크(UL) 각각 0.5ms 이하, 또는 라운드 트립 1ms 이하)를 지원할 수 있다.
안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부의 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일실시예에 따르면, 안테나 모듈(197)은 서브스트레이트(예: PCB) 위에 형성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 안테나를 포함할 수 있다. 일실시예에 따르면, 안테나 모듈(197)은 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다. 이런 경우, 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 상기 복수의 안테나들로부터 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부의 전자 장치 간에 송신되거나 수신될 수 있다. 어떤 실시예에 따르면, 방사체 이외에 다른 부품(예: RFIC(radio frequency integrated circuit))이 추가로 안테나 모듈(197)의 일부로 형성될 수 있다.
다양한 실시예에 따르면, 안테나 모듈(197)은 mmWave 안테나 모듈을 형성할 수 있다. 일실시예에 따르면, mmWave 안테나 모듈은 인쇄 회로 기판, 상기 인쇄 회로 기판의 제 1 면(예: 아래 면)에 또는 그에 인접하여 배치되고 지정된 고주파 대역(예: mmWave 대역)을 지원할 수 있는 RFIC, 및 상기 인쇄 회로 기판의 제 2 면(예: 윗 면 또는 측 면)에 또는 그에 인접하여 배치되고 상기 지정된 고주파 대역의 신호를 송신 또는 수신할 수 있는 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다.
상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))을 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일 실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 외부의 전자 장치(102, 또는 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부의 전자 장치들(102, 104, 또는 108) 중 하나 이상의 외부의 전자 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부의 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부의 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 모바일 에지 컴퓨팅(MEC: mobile edge computing), 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다. 전자 장치(101)는, 예를 들어, 분산 컴퓨팅 또는 모바일 에지 컴퓨팅을 이용하여 초저지연 서비스를 제공할 수 있다. 다른 실시예에 있어서, 외부의 전자 장치(104)는 IoT(internet of things) 기기를 포함할 수 있다. 서버(108)는 기계 학습 및/또는 신경망을 이용한 지능형 서버일 수 있다. 일실시예에 따르면, 외부의 전자 장치(104) 또는 서버(108)는 제 2 네트워크(199) 내에 포함될 수 있다. 전자 장치(101)는 5G 통신 기술 및 IoT 관련 기술을 기반으로 지능형 서비스(예: 스마트 홈, 스마트 시티, 스마트 카, 또는 헬스 케어)에 적용될 수 있다.
도 2는 일 실시예에 따라 블루투스 방식에 기반한 전자 장치들 간 연결을 설명하는 도면이다.
도 2를 참조하면, 전자 장치(102)(예를 들어 이어 웨어러블 장치(ear-wearable device))는 외부 전자 장치(예를 들어 전자 장치(101))에 무선으로 연결될 수 있다. 일 실시예에서 외부 전자 장치(101)는 스마트폰, 태블릿, 또는 노트북 컴퓨터일 수 있다. 일 실시예에서 전자 장치(102)는 양이 분리형 이어 웨어러블 장치이고, 제1 전자 장치(202)(예: 레프트 이어버드(left ear bud)) 및 제2 전자 장치(204)(예: 라이트 이어버드(right ear bud)) 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 제1 전자 장치(202) 및 제2 전자 장치(204)는 한 쌍의 이어버드로서 도시되었지만, 제1 전자 장치(202) 및 제2 전자 장치(204)는 이어버드들 뿐만 아니라 하나의 페어(pair)로 동작할 수 있는 장치를 모두 포함할 수 있다. 일 실시예에 따르면, 제1 전자 장치(202) 및 제2 전자 장치(204)는 서로 동일하거나 또는 유사한 구성들을 포함하도록 구현될 수 있다.
일 실시예에 따르면, 외부 전자 장치(101)는 제1 전자 장치(202) 또는 제2 전자 장치(204) 중 적어도 하나와 연결(예: 통신 링크)을 설정하고, 서로 데이터를 송신 및/또는 수신할 수 있다. 예를 들어, 외부 전자 장치(101)는 제1 전자 장치(202) 및 제2 전자 장치(204) 중 적어도 하나와 와이파이(Wi-Fi) 방식 또는 블루투스 방식(예를 들어 블루투스 클래식 또는 저전력 블루투스(Bluetooth low energy: BLE))에 기반하여 통신 링크를 설정할 수 있지만, 외부 전자 장치(101)가 제1 전자 장치(202) 및 제2 전자 장치(204)와 통신 링크를 설정하는 방식이 Wi-Fi 방식 및/또는 블루투스 방식 중 적어도 하나로 제한되는 것은 아니다.
일 실시예에서, 외부 전자 장치(101)는 제1 전자 장치(202) 또는 제2 전자 장치(204) 중 어느 하나와만 통신 링크를 설정하거나, 또는 제1 전자 장치(202) 및 제2 전자 장치(204) 각각과 개별적인 통신 링크들을 설정할 수 있다.
일 실시예에서, 외부 전자 장치(101)는 센트럴(central)(또는, 마스터(master), 프라이머리(primary) 장치, 또는 메인(main))로 동작할 수 있고, 전자 장치(102)(예를 들어 제1 전자 장치(202) 또는 제2 전자 장치(204) 중 적어도 하나)는 페리페럴(peripheral)(또는, 슬레이브(slave) 또는 세컨더리(secondary)) 로 동작할 수 있다. 센트럴로 동작하는 외부 전자 장치(101)는 페리페럴로 동작하는 전자 장치(예를 들어 제1 전자 장치(202) 또는 제2 전자 장치(204))로 데이터를 송신할 수 있다. 예를 들어, 외부 전자 장치(101) 및 제1 전자 장치(202)가 서로 통신 링크를 설정할 때, 외부 전자 장치(101)가 센트럴로 선택되고, 제1 전자 장치(202)가 페리페럴로 선택될 수 있다. 오디오 서비스의 경우 센트럴로 동작하는 외부 전자 장치(101)는 소스(source) 전자 장치가 되고, 페리페럴로 동작하는 전자 장치(예를 들어 제1 전자 장치(202) 또는 제2 전자 장치(204))는 싱크(sink) 전자 장치가 될 수 있다.
일 실시예에서, 제1 전자 장치(202) 및 제2 전자 장치(204)는 Wi-Fi 방식 및/또는 블루투스 방식 중 적어도 하나에 기반하여 서로 간에 통신 링크를 설정할 수 있지만, 제1 전자 장치(202) 및 제2 전자 장치(204)가 통신 링크를 설정하는 방식이 Wi-Fi 방식 및/또는 블루투스 방식 중 적어도 하나로 제한되는 것은 아니다.
일 실시예에서, 제1 전자 장치(202) 및 제2 전자 장치(204) 중 어느 하나는 센트럴(또는 프라이머리 장치)로 동작할 수 있고, 나머지 하나는 페리페럴(또는 세컨더리 장치)로 동작할 수 있다. 센트럴로 동작하는 전자 장치(예를 들어 전자 장치(202))는 페리페럴로 동작하는 전자 장치(예를 들어 전자 장치(204))로 데이터(예를 들어 수신 확인 신호 또는 릴레이 데이터)를 송신할 수 있다. 예를 들어, 전자 장치(202) 및 전자 장치(204)가 서로 통신 링크를 설정할 때, 전자 장치(202) 및 전자 장치(204) 중 어느 하나가 랜덤하게 센트럴로 선택되고, 다른 하나가 페리페럴로 선택될 수 있다.
전자 장치(202) 및 전자 장치(204)는 외부 전자 장치(250)와 직접 또는 간접적으로 통신할 수 있다. 일 실시예에서, 외부 전자 장치(250)는 제1 전자 장치(202) 및 제2 전자 장치(204)를 보관하고 충전하는 이어 버즈 케이스 장치(ear buds case device) 또는 크래들 장치(cradle device)일 수 있다.
일 실시예에 따르면, 외부 전자 장치(250)는 외부 전자 장치(101), 제1 전자 장치(202) 또는 제2 전자 장치(204) 중 적어도 하나와 연결(예: 통신 링크)을 설정하고, 서로 데이터를 송신 및/또는 수신할 수 있다. 예를 들어, 외부 전자 장치(250)는 외부 전자 장치(101), 제1 전자 장치(202) 또는 제2 전자 장치(204) 중 적어도 하나와 와이파이(Wi-Fi) 방식 또는 블루투스 방식(예를 들어 블루투스 클래식 또는 저전력 블루투스(BLE))에 기반하여 통신 링크를 설정할 수 있지만, 외부 전자 장치(250)가 외부 전자 장치(101), 제1 전자 장치(202) 또는 제2 전자 장치(204)와 통신 링크를 설정하는 방식이 Wi-Fi 방식 및/또는 블루투스 방식 중 적어도 하나로 제한되는 것은 아니다.
도 3은 일 실시예에 따른 블루투스 통신을 지원하는 전자 장치의 구성을 설명하기 위한 도면이다.
도 3을 참조하면, 외부 전자 장치(101)는 전자 장치들(202, 204)과 무선으로 연결될 수 있다. 외부 전자 장치(101)는 예를 들어 스마트 폰으로 구현될 수 있으며, 기재 및/또는 도시된 바에 제한되지 않고 다양한 종류의 장치(예: 표준 노트북, 울트라북, 넷북, 및 탭북을 포함하는 노트북 컴퓨터(notebook computer), 랩톱 컴퓨터(laptop computer), 태블릿 컴퓨터(tablet computer), 또는 데스크 톱 컴퓨터(desktop computer))로 구현될 수도 있다. 외부 전자 장치(101)는 도 1에 도시한 바와 같이 구현될 수 있으며, 이에 따라 도 1에 도시된 구성들(예: 각종 모듈들) 중 적어도 일부를 포함할 수 있으므로 중복되는 설명은 생략한다.
전자 장치들(202, 204)은 무선 이어버즈로 구현될 수 있으나, 기재 및/또는 도시된 바에 제한되지 않고 후술하는 오디오 서비스를 지원하는 다양한 종류의 장치(예: 스마트 워치, 헤드-마운티드 디스플레이 장치, 생체 신호를 측정하기 위한 장치들(예: 심전도 패치))로 구현될 수도 있다. 일 실시예에 따르면, 전자 장치들(202, 204)이 무선 이어버즈인 경우, 제1 전자 장치(202) 및 제2 전자 장치(204)는 한 쌍의 장치들(예: 레프트 이어버드 및 라이트 이어버드)일 수 있다. 일 실시예에 따르면, 제1 전자 장치(202) 및 제2 전자 장치(204)는 동일하거나 유사한 구성들을 포함하도록 구현될 수 있다.
일 실시예에 따르면, 외부 전자 장치(101)는 전자 장치들(202, 204) 중 적어도 하나와 통신 연결을 설정하고, 서로 데이터를 송신 및/또는 수신할 수 있다. 예를 들어, 전자 장치들(202, 204) 각각은 외부 전자 장치(101)와 와이파이 다이렉트(Wi-Fi direct) 또는 블루투스(Bluetooth)와 같은 D2D(device to device) 통신을 이용(예: 해당 통신 방식을 지원(support)하는 통신 회로(예를 들어 통신 회로(320)를 이용)하여 서로 통신 연결을 설정할 수 있으나, 이에 제한되지 않고 다양한 종류의 통신(예: AP(access point)를 이용한 Wi-Fi와 같은 통신 방식, 기지국을 이용한 셀룰러 통신 방식, 또는 유선 통신 방식)을 이용하여 서로 통신할 수 있다.
일 실시예에서, 제1 전자 장치(202) 및 제2 전자 장치(204) 중 하나의 장치가 프라이머리 장치(또는 마스터 장치 또는 메인 장치)가 되고, 다른 장치가 세컨더리 장치(또는 슬레이브 장치 또는 서브 장치)가 될 수 있으며, 프라이머리 장치(또는, 메인 장치)가 세컨더리 장치로 데이터를 전송할 수 있다. 예를 들어, 제1 전자 장치(202) 및 제2 전자 장치(204)가 서로 통신 연결을 설정할 때, 제1 전자 장치(202) 및 제2 전자 장치(204) 중에서 어느 하나의 장치가 랜덤하게 프라이머리 장치로 선택되고, 다른 장치가 세컨더리 장치로 선택될 수 있다. 일 실시예에서 제1 전자 장치(202) 및 제2 전자 장치(204)가 서로 통신 연결을 설정할 때, 먼저 인체 착용이 감지(예: 착용 감지를 위한 센서(예: 근접 센서, 터치 센서, 기울기 6축 센서, 또는 9축 센서)를 이용하여 착용을 나타내는 값이 검출됨)된 장치가 프라이머리 장치로 선택되고, 나머지 장치가 세컨더리 장치로 선택될 수 있다.
일 실시예에서, 프라이머리 장치는 외부 전자 장치(101)로부터 수신된 데이터를 세컨더리 장치로 전송할 수 있다. 예를 들어, 프라이머리 장치인 제1 전자 장치(202)는 외부 전자 장치(101)로부터 수신한 오디오 데이터에 기반하여 오디오를 스피커(354)로 출력할 뿐 아니라, 상기 오디오 데이터를 세컨더리 장치인 제2 전자 장치(204)로 전송할 수 있다. 일 실시예에서 세컨더리 장치인 제2 전자 장치(204)는 프라이머리 장치(예: 제1 전자 장치(202))로부터 제공된 연결 정보에 기반하여, 외부 전자 장치(101)로부터 프라이머리 장치(예: 제1 전자 장치(202))로 전송되는 오디오 데이터를 스니핑을 통해 수신할 수 있다.
일 실시예에서, 프라이머리 장치인 제1 전자 장치(202)는 세컨더리 장치인 제2 전자 장치(204)로부터 수신된 데이터(예: 오디오 데이터 또는 제어 데이터)를 외부 전자 장치(101)로 전송할 수 있다. 예를 들어, 세컨더리 장치인 제2 전자 장치(204)에서 터치 이벤트가 발생된 경우, 발생된 터치 이벤트에 대한 정보를 포함하는 제어 데이터가 프라이머리 장치인 제1 전자 장치(202)에 의해 외부 전자 장치(101)로 전송될 수 있다. 다만, 기재된 바에 제한되지 않고 전술한 바와 같이 세컨더리 장치(예: 제2 전자 장치(204))와 외부 전자 장치(101)가 서로 통신 연결을 설정하며, 이에 따라 세컨더리 장치와 외부 전자 장치(101) 간에 데이터의 송신 및/또는 수신이 직접 수행될 수도 있다.
일 실시예에서 제1 전자 장치(202)는 도 1에 도시된 외부 전자 장치(101)의 구성 요소들(예: 모듈들)의 적어도 하나와 동일 또는 유사한 구성 요소를 포함할 수 있다. 제1 전자 장치(202)는 프로세서(310)(예: 도 1의 프로세서(120)), 통신 회로(320)(예: 도 1의 통신 모듈(190)), 입력 장치(330)(예: 도 1의 입력 모듈(150)), 센서(340)(예: 도 1의 센서 모듈(176)), 오디오 처리 모듈(350)(예: 도 1의 오디오 모듈(170)), 전력 관리 모듈(360)(예: 도 1의 전력 관리 모듈(188)), 배터리(370)(예: 도 1의 배터리(189)), 인터페이스(380)(예: 도 1의 인터페이스(177)), 및 메모리(390)(예: 도 1의 메모리(130))를 포함할 수 있다.
일 실시예에 따르면, 통신 회로(320)는 무선 통신 모듈(예: 블루투스 통신 모듈, 셀룰러 통신 모듈, Wi-Fi(wireless-fidelity) 통신 모듈, NFC(near field communication) 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(예: LAN(local area network) 통신 모듈, 또는 전력선(power line communication: PLC) 통신 모듈) 중 적어도 하나를 포함할 수 있다. 블루투스 통신 모듈은 일 예로서 블루투스 래거시 통신 및/또는 저전력 블루투스(BLE) 통신에 의한 적어도 하나의 통신 연결(예를 들어 통신 링크)을 지원할 수 있다.
통신 회로(320)는 포함하고 있는 적어도 하나의 통신 모듈을 이용하여, 제1 네트워크(예: 도 1의 제1 네트워크(198))를 통하여 외부 전자 장치(101)(예를 들어, 스마트 폰), 외부 전자 장치(250)(예를 들어, 크래들과 같은 충전 장치), 또는 제2 전자 장치(204)(예를 들어, 세컨더리 이어버드) 중 적어도 하나와 직접 혹은 간접적으로 통신할 수 있다. 제2 전자 장치(204)는 제1 전자 장치(202)와 페어(pair)로 구성될 수 있다. 통신 회로(320)는 프로세서(310)와 독립적으로 운영될 수 있고, 유선 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다.
일 실시예에 따르면, 통신 회로(320)는 신호 또는 정보를 다른 전자 장치(예를 들어, 외부 전자 장치(101), 제2 전자 장치(204) 또는 외부 전자 장치(250)(예를 들어 크래들 장치)로 송신하거나 다른 전자 장치로부터 수신할 수 있는 하나 또는 복수의 안테나와 연결될 수 있다. 일 실시예에 따르면, 제1 네트워크(예: 도 1의 제1 네트워크(198)) 또는 제2 네트워크(예: 도 2의 제2 네트워크(199))와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면 통신 회로(320)에 의하여 상기 복수의 안테나들로부터, 선택될 수 있다. 신호 또는 정보는 상기 선택된 적어도 하나의 안테나를 통하여 통신 회로(320)와 다른 전자 장치 간에 송신되거나 수신될 수 있다.
일 실시예에 따르면, 입력 장치(330)는 제1 전자 장치(202)의 동작에 사용될 수 있는 다양한 입력 신호를 생성하도록 구성될 수 있다. 입력 장치(330)는 터치 패드, 터치 패널 또는 버튼 중 적어도 하나를 포함할 수 있다.
일 실시예에 따르면, 입력 장치(330)는 제1 전자 장치(202)의 온 또는 오프에 관한 사용자 입력을 생성할 수 있다. 일 실시예에 따르면, 입력 장치(330)는 제1 전자 장치(202)와 제2 전자 장치(204) 사이의 통신 연결을 위한 사용자 입력을 수신할 수 있다. 일 실시예에 따르면, 입력 장치(330)는 오디오 데이터(또는, 오디오 컨텐트)에 연관하는 사용자 입력을 수신할 수 있다. 예를 들면, 사용자 입력은 오디오 데이터의 재생 시작, 재생 일시 중지, 재생 중지, 재생 속도 조절, 재생 볼륨 조절 또는 음소거의 기능에 연관할 수 있다.
일 실시예에 따르면, 센서(340)는 제1 전자 장치(202)의 위치 또는 작동 상태를 계측 또는 확인할 수 있다. 센서(340)는 계측 또는 확인된 정보를 전기 신호로 변환할 수 있다. 센서(340)는, 예를 들면, 마그네틱 센서, 가속도 센서, 자이로 센서, 지자계 센서, 근접 센서, 제스처 센서, 그립 센서, 생체 센서, 또는 광 센서 중 적어도 하나를 포함할 수 있다.
일 실시예에 따르면, 프로세서(310)는 외부 전자 장치(101)로부터 수신한 데이터 패킷들로부터 데이터(예: 오디오 데이터)를 검출하고, 검출된 데이터를 오디오 처리 모듈(350)을 통해 처리하여 스피커(354)로 출력할 수 있다. 오디오 처리 모듈(350)은 오디오 데이터 수집 기능을 지원할 수 있고, 수집한 오디오 데이터를 재생할 수 있다.
일 실시예에 따르면, 오디오 처리 모듈(350)은 오디오 디코더(미도시) 및 D/A 컨버터(미도시)를 포함할 수 있다. 오디오 디코더는 메모리(390)에 저장되어 있거나 외부 전자 장치(101)로부터 통신 회로(320)를 통해 수신되는 오디오 데이터를 디지털 오디오 신호로 변환할 수 있다. D/A 컨버터는 상기 오디오 디코더에 의해 변환된 디지털 오디오 신호를 아날로그 오디오 신호로 변환시킬 수 있다. 일 실시예에 따르면, 오디오 디코더는 통신 회로(320)를 통하여 외부 전자 장치(101)로부터 수신되어 메모리(390)에 저장되는 오디오 데이터를 디지털 오디오 신호로 변환할 수 있다. 스피커(354)는 D/A 컨버터에 의해 변환된 아날로그 오디오 신호를 출력할 수 있다.
일 실시예에 따르면, 오디오 처리 모듈(350)은 A/D 컨버터(미도시)를 포함할 수 있다. A/D 컨버터는 마이크로폰(352)(이하 마이크라 칭함)을 통해 전달된 아날로그 음성 신호를 디지털 음성 신호로 변환할 수 있다. 마이크(352)는, 음성 및/또는 소리를 감지하기 위한, 적어도 하나의 공기 전도 마이크(air conduction microphone) 및/또는 적어도 하나의 골 전도 마이크(bone conduction microphone)를 포함할 수 있다.
일 실시예에 따르면, 오디오 처리 모듈(350)은 제1 전자 장치(202)의 운용 동작에서 설정된 다양한 오디오 데이터를 재생할 수 있다. 예를 들어, 프로세서(310)는 제1 전자 장치(202)가 사용자의 귀에 결합되거나 귀로부터 분리되는 것을 센서(340)를 통해 감지하고, 오디오 처리 모듈(350)을 통해 효과음 또는 안내음에 관한 오디오 데이터를 재생하도록 설계될 수 있다. 효과음이나 안내음의 출력은 사용자 설정이나 설계자 의도에 따라 생략될 수 있다.
일 실시예에 따르면, 메모리(390)는 제1 전자 장치(202)의 적어도 하나의 구성요소(예: 프로세서(310) 또는 센서(340))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어 및 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(390)는 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있다.
일 실시예에 따르면, 전력 관리 모듈(360)은 제1 전자 장치(202)에 공급되는 전력을 관리할 수 있다. 일 실시예에 따르면, 전력 관리 모듈(360)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다. 일 실시예에 따르면, 전력 관리 모듈(360)은 배터리 충전 모듈을 포함할 수 있다. 일 실시예에 따르면, 다른 전자 장치(예를 들어 외부 전자 장치(101), 제2 전자 장치(204), 또는 다른 전자 장치 중 하나)가 제1 전자 장치(202)와 전기적으로 연결(무선 또는 유선)되는 경우, 전력 관리 모듈(360)은 상기 다른 전자 장치로부터 전력을 제공받아 배터리(370)를 충전시킬 수 있다.
일 실시예에 따르면, 배터리(370)는 제1 전자 장치(202)의 적어도 하나의 구성 요소에 전력을 공급할 수 있다. 배터리(370)는 예를 들면, 재충전 가능한 전지를 포함할 수 있다. 일 실시예에 따르면, 제1 전자 장치(202)가 크래들 장치(예를 들어 외부 전자 장치(250)) 내에 장착되면, 제1 전자 장치(202)는 지정된 충전 레벨까지 배터리(370)를 충전시킨 후, 제1 전자 장치(202)의 전원을 온 시키거나 통신 회로(320)의 적어도 일부를 턴 온 시킬 수 있다.
일 실시예에 따르면, 인터페이스(380)는 제1 전자 장치(202)가 외부 전자 장치(101), 제2 전자 장치(204), 크래들 장치(예를 들어 외부 전자 장치(250)) 또는 다른 전자 장치와 직접(예를 들어, 유선) 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 인터페이스(380)는, 예를 들면, HDMI(high definition multimedia interface), USB 인터페이스, SD 카드 인터페이스, PLC(power line communication: PLC) 인터페이스, 또는 오디오 인터페이스 중 적어도 하나를 포함할 수 있다. 일 실시예에 따르면, 인터페이스(380)는 크래들 장치(예를 들어 외부 전자 장치(250))와 물리적 연결을 수립(establish)하기 위한 적어도 하나의 연결 포트를 포함할 수 있다.
일 실시예에 따르면, 프로세서(310)는 소프트웨어를 실행하여 프로세서(310)에 연결된 제1 전자 장치(202)의 적어도 하나의 다른 구성 요소(예: 하드웨어 또는 소프트웨어 구성 요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일 실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(310)는 다른 구성요소(예: 센서(340) 또는 통신 회로(320))로부터 수신된 명령 또는 데이터를 휘발성 메모리(390)에 로드하고, 휘발성 메모리(390)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리에 저장할 수 있다.
일 실시예에 따르면, 프로세서(310)는 통신 회로(320)를 통해 외부 전자 장치(101)와 통신 연결을 수립할 수 있으며, 상기 수립된 통신 연결을 통해 전자 장치(101)로부터 데이터(예: 오디오 데이터)를 수신할 수 있다. 일 실시예에 따라, 프로세서(310)는 통신 회로(320)를 통해 외부 전자 장치(101)로부터 수신한 데이터를 제2 전자 장치(204)로 송신할 수 있다. 일 실시예에 따르면, 프로세서(310)는 하기에 설명될 제1 전자 장치(202)의 동작들을 수행할 수 있다. 일 실시예에 따르면, 프로세서(310)는 블루투스 통신을 수행하기 위한 물리 계층, 링크 계층, 호스트, 및 어플리케이션 계층을 포함할 수 있다.
본 개시의 실시예들에 따르면, 제1 전자 장치(202)는 그 제공 형태에 따라 다양한 모듈을 더 포함할 수 있다. 디지털 기기의 컨버전스(convergence) 추세에 따라 변형이 매우 다양하여 모두 열거할 수는 없으나, 상기 언급된 구성 요소들과 동등한 수준의 구성 요소가 제1 전자 장치(202)에 추가로 더 포함될 수 있다. 또한, 다양한 실시예들에 따른 제1 전자 장치(202)는 그 제공 형태에 따라 상기 구성 요소들에서 특정 구성 요소가 제외되거나 다른 구성 요소로 대체될 수 있음은 물론이다. 이는 본 기술 분야의 통상의 지식을 가진 자에겐 쉽게 이해될 수 있을 것이다.
다양한 실시예들에 따르면, 제1 전자 장치(202)와 페어로 구성된 제2 전자 장치(204)는 제1 전자 장치(202)에 포함된 구성요소들을 동일하거나 유사하게 포함할 수 있고, 후술하는 도면들에서 설명되는 제1 전자 장치(202)의 동작의 전부 또는 일부를 수행할 수 있다.
일 실시예에서 외부 전자 장치(101)는 BLE 스캔을 통해 전자 장치들(202, 204) 중 적어도 하나를 발견하고 발견된 장치와 BLE 연결을 수립할 수 있다. 전자 장치들(202, 204) 중 적어도 하나는 외부 전자 장치(101)에 의해 발견될 수 있도록 BLE 애드버타이징을 수행하고, 외부 전자 장치(101)와 BLE 연결을 수립할 수 있다.
블루투스 코어 버전 5.2 이상의 전자 장치(예를 들어 외부 전자 장치(101), 제1 전자 장치(202), 또는 제2 전자 장치(204))는 브로드캐스트 등시성 스트림(broadcast isochronous stream: BIS)와 연결 기반 등시성 스트림(connected isochronous stream: CIS) 방식을 통한 오디오 서비스를 지원할 수 있다.
BIS 논리 전송(logical transport)은 하나 이상의 등시성 데이터 스트림(isochronous data stream)을 지정된 범위(range) 내의 BIS를 위한 모든 장치들에게 전송하는데 사용될 수 있다. BIS는 오디오 스트림의 등시성 데이터 패킷들(예를 들어 BIS 데이터 패킷들)을 전송하기 위한 하나 이상의 서브이벤트들(subevents)을 포함할 수 있다. BIS는 모든 BIS 이벤트들에서 여러 개의 새로운 등시성 데이터 패킷들의 전송을 지원할 수 있다. BIS는 애크 프로토콜(acknowledgment protocol)을 포함하지 않으며, 트래픽은 브로드캐스트하는 장치(broadcasting device)(예를 들어 소스 전자 장치)로부터 단방향으로 전달될 수 있다. BIS 논리 전송의 신뢰성을 향상시키기 위해, 등시성 데이터 패킷들은 모든 이벤트 내 서브이벤트들의 수를 증가시킴으로써 무조건적으로 재전송될 수 있다. 또한, 상기 등시성 데이터 패킷들과 관련된 간격(interval)보다 앞선 간격에서 상기 등시성 데이터 패킷들을 전송함으로써 전송 신뢰성을 향상시킬 수 있다. 이를 사전 전송(pre-transmission)이라 한다. BIS는 고유한 액세스 주소(access address) 및 타이밍 정보에 의해 식별될 수 있다. 상기 액세스 주소 및 타이밍 정보는 해당하는 주기적 애드버타이징 브로드캐스트(periodic advertising broadcast) 논리 전송을 사용하여 전송되는 패킷을 통해 전송될 수 있다.
동기화된 수신기 역할(synchronized receiver role)(예를 들어 싱크 역할)을 지원하는 스캐닝하는 장치(예를 들어 싱크 전자 장치)는 주기적 애드버타이징 패킷들로부터 획득한 상기 타이밍 정보를 이용하여 BIS에 동기화한 후, 상기 BIS로부터 등시성 데이터(예를 들어 등시성 데이터 패킷들)를 수신할 수 있다.
각 BIS는 브로드캐스트 등시성 그룹(broadcast isochronous group: BIG)의 일부일 수 있다. BIG는 동일한 등시성 간격(예를 들어 ISO_Interval)을 가지는 두 개 또는 그 이상의 BIS들을 포함할 수 있다. BIG 내의 BIS들은 소스 전자 장치를 기반으로 하는 공통의 타이밍 기준(timing reference)을 가지며, 상호 간에 시간적으로 동기화될 수 있다. BIG 내의 BIS들의 최대 개수는 지정된 값(예를 들어 31)을 가질 수 있다. BIG는 또한 제어 서브이벤트들을 포함할 수 있다.
도 4는 일 실시예에 따라 브로드캐스트 등시성 그룹(BIG)에 동기화되는 절차를 설명하기 위한 신호 흐름도(sequence diagram)를 도시한 것이다.
도 4를 참조하면, 동작 412에서 소스 전자 장치(400)는 하나 또는 그 이상의 BIS들을 포함하는 BIG를 생성하고 상기 BIG와 관련된 주기적 애드버타이징을 시작할 수 있다. 동작 414에서 수신 동기화를 위해 전자 장치(405)(예를 들어 외부 전자 장치(101), 제1 전자 장치(202) 또는 제2 전자 장치(204))는 BLE 스캐닝을 시작할 수 있다.
동작 416에서 소스 전자 장치(400)는 상기 BIG와 관련된 애드버타이징 패킷(예를 들어 AUX_SYNC_IND)을 지정된 간격을 두고 주기적으로 전송할 수 있다. 상기 AUX_SYNC_IND는 예를 들어 ACAD(additional controller advertising data) 필드 내에 BIG 정보를 포함할 수 있다. 상기 BIG 정보는 소스 전자 장치(400)가 제공하는 BIS에 동기화하는데 사용되는 파라미터들을 포함할 수 있다. 전자 장치(405)는 BLE 스캐닝을 통해 상기 애드버타이징 패킷을 수신하고 상기 애드버타이징 패킷으로부터 BIG 정보(예를 들어 BIG 정보(500))를 획득할 수 있다.
동작 418에서 전자 장치(405)는 상기 BIG 정보에 포함되는 파라미터들을 이용하여 소스 전자 장치(400)가 제공하는 BIG에 동기화할 수 있다. 일 실시예에서 전자 장치(405)가 수행하는 BIG 동기화 동작은 상기 BIG 정보에 근거하여 오디오 데이터가 전송되는 액세스 주소 및 타이밍 정보를 계산하는 동작을 포함할 수 있다. 일 실시예에서 상기 타이밍 정보는 채널 정보(예를 들어 채널 맵) 및 오디오 데이터의 전송 시점들을 포함할 수 있다.
동작 420에서 전자 장치(405)는 상기 BIG 내의 적어도 하나의 BIS를 통해, 소스 전자 장치(400)가 브로드캐스트하는 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)를 수신할 수 있다.
도 5는 일 실시예에 따른 BIG 정보의 포맷을 설명하기 위한 도면이다.
도 5를 참조하면, BIG 정보(500)는 BIG_Offset, BIG_Offset_units, ISO_Interval, Num_BIS, NSE(number of subevent), BN(burst number), Sub_Interval, PTO(pre-transmission offset), BIS_Spacing, IRC(immediate repetition count), Max_PDU, RFU(reserved for future use), SeedAccessAddress, SDU_Interval, Max_SDU, BaseCRCInit, ChM(channel map), PHY(physical), bisPayloadCount, Framing, GIV(group initialization vector), 또는 GSKD(group session key derivation) 중 적어도 하나를 포함할 수 있다. 일 실시예에서 BIG 정보(500)의 길이는 암호화되지 않은 경우 33 옥텟, 암호화된 경우 57 일 수 있다.
BIG 정보(500)에 포함될 수 있는 파라미터들을 설명하면 하기와 같다.
Num_BIS는 BIG 내의 BIS들의 개수를 나타낸다. BIG 내 BIS들은 각각 1부터 Num_BIS까지 서로 다른 BIS_Number를 할당받을 수 있다.
ISO_Interval은 인접한 두 BIG 앵커 포인트(anchor point) 사이의 1.25ms 단위의 시간을 나타낼 수 있다. (5ms ~ 4s)
BIS_Spacing은 BIG 내 인접한 BIS들에서 서브이벤트들의 시작 시점과, 마지막 BIS의 첫 번째 서브이벤트의 시작 시점 사이의 시간을 나타낼 수 있다.
Sub_Interval은 각 BIS의 2개의 연속된 서브이벤트들의 시작 시점들 사이의 시간을 나타낼 수 있다.
Max_PDU는 BIG 내에서 각 BIS 데이터 패킷을 전송할 수 있는 최대 데이터 옥텟들의 개수로서 패킷의 최대 듀레이션을 나타낼 수 있다. (1 ~ 251 옥텟)
Max_SDU는 BIG 내 SDU(service data unit)의 최대 크기(예를 들어 최대 듀레이션)를 나타낼 수 있다. (1 ~ 4095 옥텟)
BN, PTO 및 IRC는 각 BIG 이벤트에서 어떤 데이터를 전송하는지 제어하기 위한 값들을 포함할 수 있다. 각 BIS 이벤트의 서브이벤트들은 BN개의 서브이벤트들을 포함하는 그룹들로 분할될 수 있다. 따라서 GC(group count)는 NSE / BN이다. IRC는 현재 BIS 이벤트와 관련된 데이터를 운반하는 그룹들의 수를 지정할 수 있다. 나머지 그룹들은 PTO에 의해 지정된 미래의(future) BIS 이벤트들과 관련된 데이터를 운반할 수 있다.
NSE는 각 BIG 이벤트 내에서 서브이벤트들의 최대 개수를 나타낸다.
Framing 필드는 BIG가 프레임된 데이터(framed data)를 전달하는지 또는 프레임되지 않은 데이터(unframed data)를 전달하는지 나타낼 수 있다.
BIG_Offset은 BIG 정보(500)가 포함된 패킷(예를 들어 AUX_SYNC_IND)의 시작 시점부터 다음 BIG 앵커 포인트까지의 시간을 나타낼 수 있다. BIG_Offset의 값은 BIG_Offset_Units의 비트가 나타내는 단위로 지시될 수 있다. 시간 옵셋은 BIG_Offset의 값에 BIG_Offset_Units이 지시하는 단위를 곱하여 결정된다. 상기 시간 옵셋은 600 ㎲(micro second)보다 클 수 있다. BIG_Offset_Units의 비트가 설정되면 상기 단위는 300 ㎲이고, 그렇지 않으면 30 ㎲이다. BIG_Offset_Units의 비트는 상기 시간 옵셋이 491,460 ㎲ 미만이면 설정되지 않을 수 있다. BIG 앵커 포인트는 아래와 같이 상기 패킷(예를 들어 AUX_SYNC_IND)의 시작 시점 이후 상기 시간 옵셋과, 상기 시간 옵셋 플러스 1 단위 사이일 수 있다.
도 6은 일 실시예에 따른 주기적 애드버타이징 이벤트에 대한 BIG 이벤트를 설명하기 위한 도면이다.
도 6을 참조하면, 소스 전자 장치(400)가 제공하는 BIG 내 각 BIS는 이벤트 및 서브이벤트로 알려진 시간 슬롯의 스케줄로 구성될 수 있다. 소스 전자 장치(400)는 BIG 이벤트(예를 들어 BIG 이벤트 x(605)) 내의 서브이벤트들(예를 들어 BIS1 서브이벤트 및 BIS2 서브이벤트)에서 BIS 데이터 패킷들을 전송할 수 있다.
소스 전자 장치(400)는 지정된 시점에서 BIG 정보(예를 들어 BIG 정보(500))를 포함하는 애드버타이징 패킷(610)(예를 들어 AUX_SYNC_IND with BIGInfo)을 전송할 수 있다. 전자 장치(405)는 상기 BIG 정보(500)에 포함되는 BIG_Offset 및 BIG_Offset_Units을 기반으로 상기 AUX_SYNC_IND의 시작 시점 이후 BIG 앵커 포인트(615)의 시작 시점을 결정할 수 있다. 상기 BIG 앵커 포인트(615)로부터 다음 BIG 이벤트(예를 들어 BIG 이벤트 x+1(620))가 시작할 수 있고, 각 BIS 서브이벤트(예를 들어 BIS1 서브이벤트 또는 BIS2 서브이벤트)는 BIS_Spacing에 의해 정의되는 듀레이션을 가질 수 있다.
SeedAccessAddress는 BIG에 대한 시드 액세스 주소(Seed Access Address)를 나타낼 수 있다.
SDU_Interval은 SDU의 시간 간격(interval)을 나타낼 수 있다.
BaseCRCInit는 BIS 데이터 패킷을 위한 CRC(cyclic redundancy check) 초기값을 포함할 수 있다.
ChM는 사용(used) 데이터 채널 및 미사용(unused) 데이터 채널을 지시하는 채널 맵을 포함할 수 있다.
PHY는 BIG에서 사용하는 물리 채널 전송 방식(예를 들어 초당 심볼 속도(symbol per second) 및/또는 코딩 방식)을 나타낼 수 있다.
bisPayloadCount는 누락 페이로드를 검출하기 위한 카운트 값을 포함할 수 있다. bisPayloadCount는 BIG_Offset에 근거한 BIG 이벤트의 첫 번째 서브이벤트에 대한 값을 포함할 수 있다.
GIV 및 GSKD는 BIG가 암호화되는 경우, 암호화를 설명하는 값들을 포함할 수 있다.
BIG 정보(500)에 포함되는 상기 파라미터들은 BIG의 유효시간(lifetime) 동안 변경되지 않을 수 있다.
도 7은 일 실시예에 따른 BIG와 BIS 이벤트들을 설명하기 위한 도면이다.
도 7을 참조하면, BIG 이벤트(예를 들어 BIG 이벤트 x(705))는 하나 이상의 BIS 데이터 패킷들(예를 들어 PDUs(protocol data units))로 구성될 수 있다. 소스 전자 장치(400)는 BIG 이벤트들(예를 들어 BIG 이벤트 x(705))에서 BIS 데이터 패킷들을 전송할 수 있다. 각 BIG 이벤트(예를 들어 BIG 이벤트 x(705))는 Num_BIS개의 BIS 이벤트들과 만일 존재하는 경우 하나의 제어 서브이벤트로 분할될 수 있다. 각 BIS 이벤트는 NSE 개의 서브이벤트들로 분할될 수 있다.
각 BIS 이벤트는 BIS 앵커 포인트에서 시작하여, 마지막 서브이벤트 이후에 종료될 수 있다. 각 BIG 이벤트(예를 들어 BIG 이벤트 x(705))는 BIG 앵커 포인트에 시작하여, 제어 서브이벤트가 있다면 그 후에 종료되고, 그렇지 않은 경우, 마지막 구성 BIS 이벤트(constituent BIS event)에서 종료될 수 있다. BIG 앵커 포인트들은 ISO_Interval(710)의 간격으로 규칙적으로 이격될 수 있다. BIG의 BIS n을 위한 BIS 앵커 포인트들은 BIG 앵커 포인트들로부터 (n - 1) Х BIS_Spacing 이후일 수 있으며, ISO_Interval(710) 만큼씩 규칙적으로 이격될 수 있다. 각 BIS의 서브이벤트들은 Sub_Interval만큼 이격될 수 있다. 소스 전자 장치(400)는 적어도 다음 BIG 이벤트의 BIG 앵커 포인트보다 T_IFS(time for inter frame space) 만큼 이전에 현재 BIG 이벤트(예를 들어 BIG 이벤트 x(705)를 종료할 수 있다.
BIG내의 BIS들은 Sub_Interval 및 BIS_Spacing에 따라 순차적(sequential) 또는 인터리브(interleaved)로 배치될 수 있다. 순차적 배치의 경우, BIS_Spacing은 NSE Х Sub_Interval보다 크거나 같고, BIS 이벤트의 모든 서브이벤트들이 함께 발생할 수 있다. 인터리브 배치인 경우, Sub_Interval은 Num_BIS Х BIS_Spacing이고, 모든 BIS들의 첫 번째 서브이벤트들이 인접하며, 다음 모든 BIS들의 두 번째 서브이벤트들이 인접할 수 있다.
BIG 이벤트의 데이터 부분(제어 서브이벤트를 제외하고)에 대한 가능한 최대 길이는 BIG_Sync_Delay로 표시될 수 있다. BIG_Sync_Delay의 값은 BIS 앵커 포인트부터 마지막 서브이벤트에서 전송된 Max_PDU 옥텟의 페이로드를 포함하는 패킷의 끝 시점인 BIG 동기화 시점(synchronization point)까지의 시간과 같을 수 있다. (BIG_Sync_Delay = (Num_BIS - 1) Х BIS_Spacing + (NSE - 1) Х Sub_Interval + MPT)
BIS 서브이벤트는 소스 전자 장치(400)가 BIS 데이터 패킷들을 전송하고, 싱크 전자 장치(405)(예를 들어 전자 장치(202) 또는 전자 장치(204))가 상기 BIS 데이터 패킷들을 수신할 수 있는 기회(opportunity)이다. 소스 전자 장치(400)는 BIS 이벤트의 각 BIS 서브이벤트가 시작되는 시점에서 하나의 BIS 데이터 패킷을 전송할 수 있고, 또한 6개의 연속적인 BIS 이벤트들 내에서 적어도 하나의 BIS 패킷을 전송할 수 있다.
각 BIS 이벤트에 대해 소스 전자 장치(400)는 BN개의 페이로드들로 구성된 데이터 버스트를 제공할 수 있다. 각 페이로드는 단일 프래그먼트 또는 하나 이상의 SDU 세그먼트들을 포함할 수 있다. 하나의 데이터 버스트는 지정된 BIS 이벤트와 관련되지만, 앞선(earlier) 이벤트들에서 전송될 수 있다.
도 8a, 도 8b, 및 도 8c는 일 실시예에 따른 BIS 데이터 패킷들의 재전송을 설명하기 위한 도면이다.
도 8a를 참조하면, BN=2, IRC=2, PTO=0, 및 NSE = 4를 가지는 BIS 내에서 페이로드들이 각 BIS 이벤트 내의 BIS 서브이벤트들에 할당될 수 있다. ISO_Interval(810)에 대응하는 하나의 BIS 이벤트는 최대 NSE(=4)개의 BIS 서브이벤트들을 포함할 수 있다. 각 BIS 이벤트 (예를 들어 BIS 이벤트 x 또는 BIS 이벤트 x+1) 내에서 2개의 페이로드들을 각각 포함하는 BIS 데이터 패킷들(예를 들어 P0, P1 또는 P2, P3)은 2개의 앞선 BIS 서브이벤트들에 할당될 수 있고, 나머지 서브이벤트들은 동일한 BIS 데이터 패킷들(예를 들어 P0, P1 또는 P2, P3)의 재전송을 위해 사용될 수 있다.
도 8b를 참조하면, BN=1, IRC=3, PTO=2, 및 NSE = 5를 가지는 BIS 내에서 페이로드들이 각 BIS 이벤트 내의 BIS 서브이벤트들에 할당될 수 있다. ISO_Interval(820)에 대응하는 하나의 BIS 이벤트는 최대 NSE(=5)개의 BIS 서브이벤트들을 포함할 수 있다. BIS 이벤트 x 내에서 BIS 데이터 패킷 p0은 3개의 앞선 BIS 서브이벤트들에서 전송될 수 있고, 4번째 BIS 서브이벤트에서 BIS 이벤트 x+2를 위한 BIS 데이터 패킷 p2가 전송될 수 있고, 마지막 BIS 서브이벤트에서 BIS 이벤트 x+4를 위한 BIS 데이터 패킷 p4가 전송될 수 있다. 이에 따라 BIS 데이터 패킷 p2은 BIS 이벤트 x 및 BIS 이벤트 x+2에서 반복적으로 전송될 수 있고, BIS 데이터 패킷 p4는 BIS 이벤트 x 및 BIS 이벤트 x+4에서 반복적으로 전송될 수 있다.
도 8c를 참조하면, BN=2, IRC=2, PTO=4, 및 NSE = 6을 가지는 BIS 내에서 페이로드들이 각 BIS 이벤트 내의 BIS 서브이벤트들에 할당될 수 있다. ISO_Interval(830)에 대응하는 하나의 BIS 이벤트는 최대 NSE(=6)개의 BIS 서브이벤트들을 포함할 수 있다. BIS 이벤트 x 내에서 BIS 데이터 패킷들 p0, p1은 4개의 앞선 BIS 서브이벤트들에서 전송될 수 있고, 마지막 2개의 BIS 서브이벤트들에서는 BIS 이벤트 x+4를 위한 BIS 데이터 패킷들 p8, p9가 전송될 수 있다. 이에 따라 BIS 데이터 패킷들 p8, p9는 BIS 이벤트 x 및 BIS 이벤트 x+4에서 반복적으로 전송될 수 있다.
도 8a, 도 8b, 및 도 8c에 도시하는 바와 같이, 소스 전자 장치(400)는 전송 신뢰성을 확보하기 위해 반복적이고 의무적인 재전송을 수행할 수 있다. 그러나 소스 전자 장치(400)와 전자 장치(405)(예를 들어 전자 장치(202) 또는 전자 장치(204)) 간 물리적인 거리, 물리적 간섭 또는 무선 간섭에 의해, 전자 장치(405)는 지정된 재전송 프로토콜에 따라 소스 전자 장치(400)가 전송하는 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)을 순간적으로 수신하지 못할 수 있고, 이로 인해 음 끊김(audio missing)이 발생할 수 있다.
BIS는 애크 프로토콜(acknowledgement protocol)을 가지지 않기 때문에 전송 신뢰성을 보장하기 어려울 수 있다. 전송 신뢰성의 개선을 위해 소스 전자 장치(400)는 동일한 페이로드를 포함하는 BIS 데이터 패킷을 지정된 횟수만큼 의무적으로 재전송할 수 있지만, 이로 인해 다른 통신(예를 들어 WiFi 공존(co-existence: COEX) 또는 블루투스 동시성 동작(BT Concurrency))를 위해 사용될 수 있는 리소스가 낭비될 수 있다.
소스 전자 장치(400)의 의무적인 재전송은 전류 소모에 큰 단점이 될 수 있다. 또한 애크 프로토콜(acknowledgement protocol)이 없기 때문에 소스 전자 장치(400)는 주변 통신 환경에 적절히 대응할 수 없어 고정된 비트레이트(bitrate)를 유지해야 하며 이로 인해 전송률에 손해가 발생할 수 있다.
본 개시의 실시예들은 예를 들어 블루투스(블루투스 클래식 또는 BLE) 또는 WiFi와 같이 동일한 주파수 대역(예를 들어 2.4GHz)에서 동작하는 전자 장치들과 관련될 수 있다. BIS 싱크 역할로 동작하도록 구성되는 전자 장치(예를 들어 전자 장치(405))는 소스 전자 장치(400)가 브로드캐스트하는 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)에 대한 수신 상태를 나타내는 수신 여부 지시) 정보를 다른 싱크 전자 장치에게 전송할 수 있다. 다른 싱크 전자 장치는 수신 여부 지시 정보에 근거하여 해당하는 오디오 데이터를 전자 장치(405)에게 전달할 수 있다.
도 9a, 도 9b, 및 도 9c는 본 개시의 실시예들에 따라 오디오 데이터를 전송하는 시스템 구조를 설명하기 위한 도면이다.
도 9a를 참조하면, 소스 전자 장치(400)는 사용자의 의도 또는 지정된 정책에 따라 브로드캐스트 오디오 서비스를 수행할 수 있다. 소스 전자 장치(400)는 상기 브로드캐스트 오디오 서비스를 위해 하나 또는 그 이상의 BIS들을 포함하는 BIG를 생성할 수 있고, 상기 생성된 BIG에 관련된 연결 정보(예를 들어 BIG 정보(500))를 주기적으로 애드버타이징할 수 있으며, 상기 BIG 정보에 근거하여 상기 BIG 내의 BIS들을 통해 오디오 데이터를 전송(예를 들어 브로드캐스트)할 수 있다.
BIS 싱크 역할로 동작하도록 구성되는 전자 장치(405)는 예를 들어 이어 웨어러블 장치(예를 들어 이어버드)를 구성하는 전자 장치(202) 또는 전자 장치(204)를 포함할 수 있다. 전자 장치(405)가 이어버드(예를 들어 전자 장치(202))인 경우, 전자 장치(405)는 외부 전자 장치(910a)로부터 상기 BIG 정보를 획득하거나 또는 상기 BIG 정보를 획득하는데 필요한 동기화 정보를 수신할 수 있다. 일 실시예에서 전자 장치(405)는 서버(400)로부터 상기 BIG 정보를 직접(예를 들어 외부 전자 장치(910a)를 통하지 않고) 수신할 수 있다. 일 실시예에서 외부 전자 장치(910a)는 전자 장치(405)(예를 들어 전자 장치(202))가 페어링 및/또는 본딩되어 있는 모 장치(예를 들어 스마트폰 또는 전자 장치(101))일 수 있다.
일 실시예에서 전자 장치(405)를 위한 BIS 어시스턴트 역할(assistant role)로 동작하는 외부 전자 장치(910a)는 BLE 스캔을 수행하고, 전자 장치(405)에 의해 오디오 서비스를 수신하고자 하는 소스 전자 장치(400)로부터 브로드캐스트되는 주기적 애드버타이징을 통해 BIG 정보를 수신하는데 필요한 동기화 정보를 수신할 수 있다. 외부 전자 장치(910a)는 상기 동기화 정보를 전자 장치(405)로 전송할 수 있다. 전자 장치(405)는 상기 동기화 정보에 근거하여 소스 전자 장치(400)로부터 BIG 정보를 수신할 수 있다.
전자 장치(405)는 상기 BIG 정보에 근거하여 오디오 데이터가 전송되는 액세스 주소, 채널 정보 및 전송 시점들(opportunities)과 같은 파라미터들을 계산할 수 있으며, 상기 파라미터들을 이용하여 소스 전자 장치(400)의 BIG에 동기화되고 상기 BIG 내의 BIS들을 통해 소스 전자 장치(400)로부터 브로드캐스트되는 오디오 데이터를 수신할 수 있다.
전자 장치(202)는 외부 전자 장치(910a)와 통신 링크(915a)(예를 들어 블루투스 연결 또는 BLE 연결)를 연결할 수 있다. 일 실시예에서 전자 장치(405)는 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)를 수신하고, 상기 오디오 데이터와 관련된 수신 여부 지시 정보를 상기 통신 링크(915a)를 통해 외부 전자 장치(910a)로 전송할 수 있다. 일 실시예에서 상기 수신 여부 지시 정보는 적어도 하나의 BIS 데이터 패킷을 성공적으로 수신하였음을 지시하는 수신 확인 정보(data received indicator) 또는 적어도 하나의 BIS 데이터 패킷이 누락되었음을 지시하는 미수신 확인 정보(data missing indicator) 중 적어도 하나를 포함할 수 있다.
외부 전자 장치(910a)는 전자 장치(405)를 위한 오디오 서비스의 백업을 위하여 소스 전자 장치(400)에 대한 BIS 싱크 역할로 동작할 수 있다. 일 실시예에서 외부 전자 장치(910a)는 상기 BIG 정보에 근거하여 소스 전자 장치(400)의 BIG에 동기화되고 상기 BIG 내의 BIS들을 통해 오디오 데이터를 수신할 수 있다. 일 실시예에서 외부 전자 장치(910a)는 전자 장치(405)가 수신하는 것과 동일한 또는 적어도 일부의 오디오 데이터를 수신할 수 있다.
외부 전자 장치(910a)는 지정된 주기(또는 지정된 개수의 BIS 데이터 패킷(들)) 마다 전자 장치(405)로부터 수신 여부 지시 정보(예를 들어 수신 확인 정보 또는 미수신 확인 정보)가 수신되는지의 여부를 판단할 수 있다. 일 실시예에서 수신 확인 정보가 전자 장치(202)로부터 수신되지 않은 경우, 외부 전자 장치(910a)는 상기 수신되지 못한 수신 확인 정보에 대응하는 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)를 전자 장치(202)로 전송(예를 들어 릴레이)할 수 있다. 일 실시예에서 미수신 확인 정보가 전자 장치(202)로부터 수신된 경우, 외부 전자 장치(910a)는 상기 미수신 확인 정보에 대응하는 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)를 전자 장치(202)로 전송(예를 들어 릴레이)할 수 있다.
전자 장치(202)는 소스 전자 장치(400)로부터 수신되는 오디오 데이터 및 외부 전자 장치(910a)로부터 수신되는 오디오 데이터를 결합하여 오디오를 출력할 수 있다.
도 9b를 참조하면, 소스 전자 장치(400)는 브로드캐스트 오디오 서비스를 위한 BIG에 관련된 연결 정보(예를 들어 BIG 정보(500))를 주기적으로 애드버타이징할 수 있으며, 상기 BIG 정보에 근거하여 상기 BIG 내의 BIS들을 통해 오디오 데이터를 전송(예를 들어 브로드캐스트)할 수 있다.
BIS 싱크 역할로 동작하도록 구성되는 전자 장치(405)는 예를 들어 이어 웨어러블 장치(예를 들어 이어버드)를 구성하는 전자 장치(202)를 포함할 수 있다. 일 실시예에서 전자 장치(405)는 소스 전자 장치(400)로부터 브로드캐스트되는 BIG 정보를 직접 수신하거나, 또는 외부 전자 장치(예를 들어 모 장치)로부터 수신할 수 있다. 전자 장치(405)는 상기 BIG 정보에 근거하여 소스 전자 장치(400)의 BIG에 동기화되고 상기 BIG 내의 BIS들을 통해 소스 전자 장치(400)로부터 브로드캐스트되는 오디오 데이터를 수신할 수 있다.
전자 장치(202)는 외부 전자 장치(910b)와 통신 링크(915b)(예를 들어 블루투스 연결 또는 BLE 연결)를 연결할 수 있다. 일 실시예에서 전자 장치(405)는 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)를 수신하고, 상기 오디오 데이터와 관련된 수신 여부 지시 정보를 상기 통신 링크(915b)를 통해 외부 전자 장치(910b)로 전송할 수 있다. 일 실시예에서 상기 수신 여부 지시 정보는 수신 확인 정보 또는 미수신 확인 정보 중 적어도 하나를 포함할 수 있다.
일 실시예에서 전자 장치(405)는 제1 이어버드(예를 들어 좌측 이어버드, 또는 전자 장치(202))이고, 외부 전자 장치(910b)는 제2 이어버드(예를 들어 우측 이어버드, 또는 전자 장치(204))일 수 있다. 일 실시예에서 외부 전자 장치(910b)는 소스 전자 장치(400)로부터 브로드캐스트되는 BIG 정보를 직접 수신하거나, 또는 외부 전자 장치(예를 들어 모 장치)로부터 수신할 수 있다. 외부 전자 장치(910b)는 상기 BIG 정보에 근거하여 소스 전자 장치(400)의 BIG에 동기화되고 상기 BIG 내의 BIS들을 통해 오디오 데이터를 수신할 수 있다. 일 실시예에서 외부 전자 장치(910b)는 전자 장치(405)가 수신하는 것과 동일한 또는 적어도 일부의 오디오 데이터를 수신할 수 있다.
외부 전자 장치(910b)는 지정된 주기(또는 지정된 개수의 BIS 데이터 패킷(들)) 마다 전자 장치(405)로부터 수신 여부 지시 정보(예를 들어 수신 확인 정보 또는 미수신 확인 정보)가 수신되는지의 여부를 판단할 수 있다. 일 실시예에서 수신 확인 정보가 전자 장치(202)로부터 수신되지 않은 경우, 외부 전자 장치(910b)는 상기 수신되지 못한 수신 확인 정보에 대응하는 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)를 전자 장치(202)로 전송(예를 들어 릴레이)할 수 있다. 일 실시예에서 미수신 확인 정보가 전자 장치(202)로부터 수신된 경우, 외부 전자 장치(910a)는 상기 미수신 확인 정보에 대응하는 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)를 전자 장치(202)로 전송(예를 들어 릴레이)할 수 있다.
전자 장치(202)는 소스 전자 장치(400)로부터 수신되는 오디오 데이터 및 외부 전자 장치(910b)로부터 수신되는 오디오 데이터를 결합하여 오디오를 출력할 수 있다.
도 9c를 참조하면, 소스 전자 장치(400)는 브로드캐스트 오디오 서비스를 위한 BIG에 관련된 연결 정보(예를 들어 BIG 정보(500))를 주기적으로 애드버타이징할 수 있으며, 상기 BIG 정보에 근거하여 상기 BIG 내의 BIS들을 통해 오디오 데이터를 전송(예를 들어 브로드캐스트)할 수 있다.
BIS 싱크 역할로 동작하도록 구성되는 전자 장치(405)는 예를 들어 이어 웨어러블 장치(예를 들어 이어버드)를 구성하는 전자 장치(202)를 포함할 수 있다. 일 실시예에서 전자 장치(405)는 소스 전자 장치(400)로부터 브로드캐스트되는 BIG 정보를 직접 수신하거나, 또는 외부 전자 장치(예를 들어 모 장치)로부터 수신할 수 있다. 전자 장치(405)는 상기 BIG 정보에 근거하여 소스 전자 장치(400)의 BIG에 동기화되고 상기 BIG 내의 BIS들을 통해 소스 전자 장치(400)로부터 브로드캐스트되는 오디오 데이터를 수신할 수 있다.
전자 장치(202)는 외부 전자 장치(910c)와 통신 링크(915c)(예를 들어 블루투스 연결 또는 BLE 연결)를 연결할 수 있다. 일 실시예에서 전자 장치(405)는 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)를 수신하고, 상기 오디오 데이터와 관련된 수신 여부 지시 정보를 외부 전자 장치(910c)로 전송할 수 있다. 일 실시예에서 상기 수신 여부 지시 정보는 수신 확인 정보 또는 미수신 확인 정보 중 적어도 하나를 포함할 수 있다.
일 실시예에서 전자 장치(405)는 이어버드(예를 들어 좌측 이어버드, 또는 전자 장치(202))이고, 외부 전자 장치(910c)는 이어버드를 수납할 수 있도록 구성되는 크래들 장치(250)일 수 있다. 일 실시예에서 외부 전자 장치(910c)는 소스 전자 장치(400)로부터 브로드캐스트되는 BIG 정보를 직접 수신하거나, 또는 외부 전자 장치(예를 들어 모 장치)로부터 수신할 수 있다. 외부 전자 장치(910c)는 상기 BIG 정보에 근거하여 소스 전자 장치(400)의 BIG에 동기화되고 상기 BIG 내의 BIS들을 통해 오디오 데이터를 수신할 수 있다. 일 실시예에서 외부 전자 장치(910c)는 전자 장치(405)가 수신하는 것과 동일한 또는 적어도 일부의 오디오 데이터를 수신할 수 있다.
외부 전자 장치(910c)는 지정된 주기(또는 지정된 개수의 BIS 데이터 패킷(들)) 마다 전자 장치(405)로부터 수신 여부 지시 정보(예를 들어 수신 확인 정보 또는 미수신 확인 정보)가 수신되는지의 여부를 판단할 수 있다. 일 실시예에서 수신 확인 정보가 전자 장치(202)로부터 수신되지 않은 경우, 외부 전자 장치(910c)는 상기 수신되지 못한 수신 확인 정보에 대응하는 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)를 전자 장치(202)로 전송(예를 들어 릴레이)할 수 있다. 일 실시예에서 미수신 확인 정보가 전자 장치(202)로부터 수신된 경우, 외부 전자 장치(910a)는 상기 미수신 확인 정보에 대응하는 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)를 전자 장치(202)로 전송(예를 들어 릴레이)할 수 있다.
전자 장치(202)는 소스 전자 장치(400)로부터 수신되는 오디오 데이터 및 외부 전자 장치(910c)로부터 수신되는 오디오 데이터를 결합하여 오디오를 출력할 수 있다.
도 10은 일 실시예에 따라 오디오 데이터를 릴레이하는 외부 전자 장치의 구성을 설명하기 위한 도면이다. 일 실시예에서 외부 전자 장치(910)는 외부 전자 장치(910a), 외부 전자 장치(910b), 또는 외부 전자 장치(910c)를 포함할 수 있다.
도 10을 참조하면, 외부 전자 장치(910)는 도 1에 도시된 외부 전자 장치(101)의 구성 요소들(예: 모듈들)의 적어도 하나와 동일 또는 유사한 구성 요소를 포함할 수 있다. 외부 전자 장치(910)는 통신 회로(1005)(예: 도 1의 통신 모듈(190)), 프로세서(1010)(예: 도 1의 프로세서(120)), 및 메모리(390)(예: 도 1의 메모리(130))를 포함할 수 있다.
통신 회로(1005)는 무선 통신 모듈(예: 블루투스 통신 모듈, 셀룰러 통신 모듈, Wi-Fi(wireless-fidelity) 통신 모듈, NFC(near field communication) 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(예: LAN(local area network) 통신 모듈, 또는 전력선(power line communication: PLC) 통신 모듈) 중 적어도 하나를 포함할 수 있다. 블루투스 통신 모듈은 일 예로서 블루투스 래거시 통신 및/또는 저전력 블루투스(BLE) 통신에 의한 적어도 하나의 통신 연결(예를 들어 통신 링크)을 지원할 수 있다.
통신 회로(1005)는 포함하고 있는 적어도 하나의 통신 모듈을 이용하여, 소스 전자 장치(400), 전자 장치(405), 또는 외부 전자 장치(예를 들어 모 장치) 중 적어도 하나와 직접 혹은 간접적으로 통신할 수 있다. 통신 회로(1005)는 프로세서(310)와 독립적으로 운영될 수 있고, 유선 또는 무선 통신을 지원하는 적어도 하나의 프로세서를 포함할 수 있다.
통신 회로(1005)는 신호 또는 정보를 다른 전자 장치(예를 들어, 소스 전자 장치(400) 또는 전자 장치(405))로 송신하거나 다른 전자 장치로부터 수신할 수 있는 하나 또는 복수의 안테나와 연결될 수 있다. 신호 또는 정보는 적어도 하나의 안테나를 통하여 통신 회로(1005)와 다른 전자 장치 간에 송신되거나 수신될 수 있다.
프로세서(1010)는 통신 회로(1005)를 통해 소스 전자 장치(400)로부터 오디오 데이터를 포함하는 데이터 패킷들(예를 들어 BIS 데이터 패킷들)을 수신할 수 있다. 프로세서(1010)는 통신 회로(1005)를 통해 전자 장치(405)로부터 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)에 대응하는 수신 여부 지시 정보를 수신할 수 있다. 프로세서(1010)는 수신 여부 지시 정보에 근거하여 소스 전자 장치(400)로부터 수신한 적어도 하나의 BIS 데이터 패킷을 통신 회로(1005)를 통해 전자 장치(405)로 전송할 수 있다.
일 실시예에 따르면, 메모리(1015)는 외부 전자 장치(910)의 적어도 하나의 구성요소(예: 프로세서(1010) 또는 통신 회로(1005))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어 및 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(1015)는 휘발성 메모리 및/또는 비휘발성 메모리를 포함할 수 있다.
일 실시예에 따르면, 프로세서(1010)는 소프트웨어를 실행하여 프로세서(1010)에 연결된 외부 전자 장치(910)의 적어도 하나의 다른 구성 요소(예: 하드웨어 또는 소프트웨어 구성 요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일 실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(1010)는 다른 구성요소(예: 통신 회로(1005))로부터 수신된 명령 또는 데이터를 메모리(1015)에 로드하고, 메모리(1015)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 메모리(1015)에 저장할 수 있다.
일 실시예에 따르면, 프로세서(1010)는 통신 회로(1005)를 통해 소스 전자 장치(400)와 통신 연결을 수립할 수 있으며, 상기 수립된 통신 연결을 통해 전자 장치(400)로부터 데이터(예: 오디오 데이터)를 수신할 수 있다. 일 실시예에 따라, 프로세서(1010)는 통신 회로(1005)를 통해 전자 장치(405)와 통신 연결을 수립할 수 있으며, 상기 수립된 통신 연결을 통해 전자 장치(405)와 정보 및 데이터를 전자 장치(405)로 수신하거나 송신할 수 있다. 프로세서(1005)는 하기에 설명될 외부 전자 장치(910)의 동작들을 수행할 수 있다. 일 실시예에 따르면, 프로세서(1010)는 블루투스 통신을 수행하기 위한 물리 계층, 링크 계층, 호스트, 또는 어플리케이션 계층 중 적어도 하나를 포함할 수 있다.
도 11a 및 도 11b는 일 실시예에 따라 싱크 전자 장치들 간 수신 상태를 공유하는 절차를 설명하기 위한 신호 흐름도를 도시한 것이다. 실시예들에 따라 후술되는 동작들 중 적어도 하나는 생략되거나 변형되거나 순서 변경될 수 있다.
도 11a를 참조하면, 동작 1102에서 전자 장치(405)는 소스 전자 장치(400)로부터 주기적 애드버타이징을 통해 브로드캐스트되는 연결 정보(예를 들어 BIG 정보(500))를 기반으로 소스 전자 장치(400)의 BIG에 동기화될 수 있다(예를 들어 도 14 참조). 일 실시예에서 전자 장치(405)는 상기 BIG 정보에 근거하여 오디오 데이터가 전송되는 액세스 주소 및 타이밍 정보를 계산할 수 있다. 전자 장치(405)가 이어버드(예를 들어 전자 장치(202))인 경우, 전자 장치(405)는 외부 전자 장치(예를 들어 전자 장치(910a))를 통해 상기 BIG 정보를 획득할 수 있다.
동작 1104에서 전자 장치(405)는 외부 전자 장치(910)와 오디오 데이터의 수신 상태를 동기화하기 위해 사용될 수 있는 통신 링크(예를 들어 통신 링크(915a), 통신 링크(915b), 또는 통신 링크(915c))를 수립할 수 있다. 일 실시예에서 외부 전자 장치(910)는 모 장치(예를 들어 외부 전자 장치(910a)), 다른 이어버드(예를 들어 외부 전자 장치(910b)), 또는 크래들 장치(예를 들어 외부 전자 장치(910c))를 포함할 수 있다. 전자 장치(405)가 외부 전자 장치(910)에 본딩되어 있거나, 외부 전자 장치(910)와 연결된 통신 링크가 이미 존재하는 경우 동작 1104는 생략될 수 있다.
동작 1106에서 전자 장치(405)는 상기 통신 링크를 통해 외부 전자 장치(910)와 누락된 오디오 데이터의 전달(예를 들어 릴레이)을 위한 오디오 릴레이 협상을 수행할 수 있다. 일 실시예에서 동작 1106은 도 15의 동작들을 포함할 수 있다. 일 실시예에서 오디오 릴레이 협상은 수신 상태를 동기화하는 방식(예를 들어 수신 확인 정보의 사용, 미수신 확인 정보의 사용, 수신 확인 정보와 미수신 확인 정보를 둘 다 사용, 및/또는 수신 여부 지시 정보를 전송하는 주기) 또는 누락된 오디오 데이터를 전달하는 방식 중 적어도 하나를 결정할 수 있다. 상기 수신 상태를 동기화하는 주기 및/또는 누락된 오디오 데이터를 전달하는 방식이 미리 정해진 경우 동작 1106은 생략될 수 있다. 일 실시예에서 동작 1104 및/또는 동작 1106은 외부 전자 장치(910)와 전자 장치(405)가 연결되는 시점 이후, 데이터 수신을 시작하기 이전 임의의 시점에서 수행될 수 있다.
동작 1108에서 외부 전자 장치(910)는 소스 전자 장치(400)로부터 주기적 애드버타이징을 통해 브로드캐스트되는 상기 BIG 정보를 기반으로 소스 전자 장치(400)의 상기 BIG에 동기화될 수 있다(예를 들어 도 14 참조). 일 실시예에서 외부 전자 장치(910)는 상기 BIG 정보에 근거하여 오디오 데이터가 전송되는 액세스 주소 및 타이밍 정보를 계산할 수 있다. 일 실시예에서 동작 1108은 동작 1102, 1104 또는 1106 중 적어도 하나의 이전에, 동시에, 또는 이후에 수행될 수 있다.
동작 1110에서 전자 장치(405) 및 외부 전자 장치(910)는 동작 1102 및 동작 1108에서 동기화된 상기 BIG 내의 BIS들을 통해 소스 전자 장치(400)로부터 브로드캐스트되는 오디오 데이터(예를 들어 적어도 하나의 제1 BIS 데이터 패킷)을 수신할 수 있다. 동작 1112에서 전자 장치(405)는 상기 적어도 하나의 제1 BIS 데이터 패킷을 성공적으로 수신하였음을 알리기 위한 제1 수신 확인 정보를 외부 전자 장치(910)에게 전송함으로써, 외부 전자 장치(910)와 오디오 데이터의 수신 상태를 동기화할 수 있다.
동작 1114에서 전자 장치(405) 및 외부 전자 장치(910)는 상기 BIG 내의 BIS들을 통해 소스 전자 장치(400)로부터 브로드캐스트되는 오디오 데이터(예를 들어 적어도 하나의 제2 BIS 데이터 패킷)을 수신할 수 있다. 동작 1116에서 전자 장치(405)는 상기 적어도 하나의 제2 BIS 데이터 패킷을 성공적으로 수신하였음을 알리기 위한 제2 수신 확인 정보를 외부 전자 장치(910)에게 전송할 수 있다. 일 실시예에서 동작 1112는 생략될 수 있고, 동작 1116의 제2 수신 확인 정보는 상기 적어도 하나의 제1 BIS 데이터 패킷 및 상기 적어도 하나의 제2 BIS 데이터 패킷을 성공적으로 수신하였음을 나타낼 수 있다.
일 실시예에서 전자 장치(405)는 동작 1106의 오디오 릴레이 협상에 따른 시점에서 제1 및 제2 수신 확인 정보를 전송할 수 있다. 일 실시예에서 제1 및 제2 수신 확인 정보 중 적어도 하나는 도 16a, 도 16b, 또는 도 16c의 패킷을 포함할 수 있다. 일 실시예에서 전자 장치(405)는 (제1 또는 제2) BIS 데이터 패킷에 대응하는 시점 및 채널을 통해 (제1 또는 제2) 수신 확인 정보를 전송함으로써 BIS 데이터 패킷의 성공적인 수신을 지시할 수 있다. 일 실시예에서 (제1 또는 제2) 수신 확인 정보는 (제1 또는 제2) BIS 데이터 패킷의 전송 기회 직후에 동일한 채널과 동일하거나 또는 상이한 액세스 주소를 사용하여 전송될 수 있다.
동작 1118에서 외부 전자 장치(910)는 상기 BIG 내의 BIS들을 통해 소스 전자 장치(400)로부터 브로드캐스트되는 오디오 데이터(예를 들어 적어도 하나의 제3 BIS 데이터 패킷)을 수신하지만, 전자 장치(405)는 상기 적어도 하나의 제3 BIS 데이터 패킷을 수신하지 못할 수 있다. 동작 1120에서 외부 전자 장치(910)는 상기 적어도 하나의 제3 BIS 데이터 패킷에 대응하는 수신 확인 정보가 전자 장치(405)로부터 수신되지 않음에 근거하여, 상기 적어도 하나의 제3 BIS 데이터 패킷이 전자 장치(405)에서 누락(missing)되었음을 확인할 수 있다. 일 실시예에서 외부 전자 장치(910)는 상기 적어도 하나의 제3 BIS 데이터 패킷에 대응하는 미수신 확인 정보를 전자 장치(405)로부터 수신함에 근거하여, 상기 적어도 하나의 제3 BIS 데이터 패킷이 전자 장치(405)에서 누락되었음을 확인할 수 있다.
동작 1122에서 외부 전자 장치(910)는 적어도 하나의 BIS 데이터 패킷(예를 들어 적어도 하나의 제3 BIS 데이터 패킷)을 전자 장치(405)에게 전송(예를 들어 릴레이)할 수 있다. 일 실시예에서 외부 전자 장치(910)는 동작 1118에서 소스 전자 장치(400)로부터 수신한 상기 적어도 하나의 제3 BIS 데이터 패킷을 동일한 액세스 주소, 또는 새로운 액세스 주소를 사용하여 전자 장치(405)에게 전송(예를 들어 릴레이)할 수 있다. 일 실시예에서 외부 전자 장치(910)는 동작 1106의 오디오 릴레이 협상에 따른 시점에서 상기 적어도 하나의 제3 BIS 데이터 패킷을 전송할 수 있다. 일 실시예에서 외부 전자 장치(910)는 데이터 누락(data missing)을 확인(예를 들어 동작 1120)함에 근거하여, 누락이 확인된 해당 데이터 패킷(예를 들어 적어도 하나의 제3 BIS 데이터 패킷)만을 전자 장치(405)에게 전송하거나, 또는 누락이 확인된 해당 데이터 패킷을 포함하는 지정된 시간 구간 동안의 데이터 패킷들을 전자 장치(405)에게 전송할 수 있다. 일 실시예에서 외부 전자 장치(910)는 전자 장치(405)에서 아직 재생되지 않은 하나 이상의 데이터 패킷들을 전자 장치(405)에게 전송할 수 있다.
일 실시예에서 외부 전자 장치(910)는 동작 1118에서 소스 전자 장치(400)로부터 수신한 상기 적어도 하나의 제3 BIS 데이터 패킷을 동일한 채널(예를 들어 물리 채널)을 사용하여 전자 장치(405)에게 전송(예를 들어 릴레이)할 수 있다. 전자 장치(405)는 채널 전환 없이 상기 적어도 하나의 제3 BIS 데이터 패킷을 외부 전자 장치(910)로부터 수신할 수 있다.
전자 장치(405)는 상기 적어도 하나의 제1 BIS 데이터 패킷, 상기 적어도 하나의 제2 BIS 데이터 패킷 및 상기 적어도 하나의 제3 BIS 데이터 패킷으로부터 획득한 오디오 데이터를 사용하여 스피커(예를 들어 스피커(354)를 통해 오디오를 출력할 수 있다. 전자 장치(405)는 각 BIS 데이터 패킷에 포함된 동기화 지연 정보(예를 들어 BIG_sync_delay)를 기반으로 해당 BIS 데이터 패킷이 스피커(354)로 출력되어야 하는 재생 시점을 식별하고, 상기 식별된 재생 시점에서 해당 BIS 데이터 패킷에 포함된 오디오 데이터를 재생할 수 있다.
도 11b를 참조하면, 동작 1102, 동작 1104, 동작 1106, 및 동작 1108은 도 11a에서의 설명과 유사할 수 있다.
동작 1130에서 전자 장치(405) 및 외부 전자 장치(910)는 동작 1102 및 동작 1108에서 동기화된 상기 BIG 내의 BIS들을 통해 소스 전자 장치(400)로부터 브로드캐스트되는 오디오 데이터(예를 들어 적어도 하나의 제1 BIS 데이터 패킷)을 수신할 수 있다. 동작 1132에서 전자 장치(405) 및 외부 전자 장치(910)는 상기 BIG 내의 BIS들을 통해 소스 전자 장치(400)로부터 브로드캐스트되는 오디오 데이터(예를 들어 적어도 하나의 제2 BIS 데이터 패킷)을 수신할 수 있다.
동작 1134에서 외부 전자 장치(910)는 상기 BIG 내의 BIS들을 통해 소스 전자 장치(400)로부터 브로드캐스트되는 오디오 데이터(예를 들어 적어도 하나의 제3 BIS 데이터 패킷)을 수신하지만, 전자 장치(405)는 상기 적어도 하나의 제3 BIS 데이터 패킷을 수신하지 못할 수 있다. 동작 1136에서 전자 장치(405)는 상기 적어도 하나의 제3 BIS 데이터 패킷이 누락됨을 확인함에 근거하여 상기 적어도 하나의 제3 BIS 데이터 패킷과 관련된 미수신 확인 정보(예를 들어 missing indicator)를 외부 전자 장치(910)로 전송할 수 있다.
일 실시예에서 전자 장치(405)는 동작 1106의 오디오 릴레이 협상에 따른 시점에서 상기 미수신 확인 정보를 전송할 수 있다. 일 실시예에서 상기 미수신 확인 정보는 도 16a, 도 16b, 또는 도 16c의 패킷을 포함할 수 있다. 일 실시예에서 전자 장치(405)는 제3 BIS 데이터 패킷에 대응하는 시점 및 채널을 통해 상기 미수신 확인 정보를 전송함으로써 제3 BIS 데이터 패킷이 누락되었음을 알릴 수 있다. 일 실시예에서 미수신 확인 정보는 제3 BIS 데이터 패킷의 전송 기회 직후에 동일한 채널과 동일하거나 또는 상이한 액세스 주소를 사용하여 전송될 수 있다.
동작 1138에서 외부 전자 장치(910)는 상기 적어도 하나의 제3 BIS 데이터 패킷에 대응하는 미수신 확인 정보가 전자 장치(405)로부터 수신됨에 근거하여, 상기 적어도 하나의 제3 BIS 데이터 패킷이 전자 장치(405)에서 누락(missing)되었음을 확인할 수 있다.
동작 1140에서 외부 전자 장치(910)는 상기 적어도 하나의 제3 BIS 데이터 패킷(예를 들어 적어도 하나의 제3 BIS 데이터 패킷)을 전자 장치(405)에게 전송(예를 들어 릴레이)할 수 있다. 일 실시예에서 외부 전자 장치(910)는 동작 1134에서 소스 전자 장치(400)로부터 수신한 상기 적어도 하나의 제3 BIS 데이터 패킷을 동일한 액세스 주소, 또는 새로운 액세스 주소를 사용하여 전자 장치(405)에게 전송(예를 들어 릴레이)할 수 있다. 일 실시예에서 외부 전자 장치(910)는 동작 1106의 오디오 릴레이 협상에 따른 시점에서 상기 적어도 하나의 제3 BIS 데이터 패킷을 전송할 수 있다. 일 실시예에서 외부 전자 장치(910)는 데이터 누락을 확인(예를 들어 동작 1138)함에 근거하여, 누락이 확인된 해당 데이터 패킷(예를 들어 적어도 하나의 제3 BIS 데이터 패킷)만을 전자 장치(405)에게 전송하거나, 또는 누락이 확인된 해당 데이터 패킷을 포함하는 지정된 시간 구간 동안의 데이터 패킷들을 전자 장치(405)에게 전송할 수 있다. 일 실시예에서 외부 전자 장치(910)는 전자 장치(405)에서 아직 재생되지 않은 하나 이상의 데이터 패킷들을 전자 장치(405)에게 전송할 수 있다.
일 실시예에서 외부 전자 장치(910)는 동작 1134에서 소스 전자 장치(400)로부터 수신한 상기 적어도 하나의 제3 BIS 데이터 패킷을 동일한 채널(예를 들어 물리 채널)을 사용하여 전자 장치(405)에게 전송(예를 들어 릴레이)할 수 있다. 전자 장치(405)는 채널 전환 없이 상기 적어도 하나의 제3 BIS 데이터 패킷을 외부 전자 장치(910)로부터 수신할 수 있다.
전자 장치(405)는 상기 적어도 하나의 제1 BIS 데이터 패킷, 상기 적어도 하나의 제2 BIS 데이터 패킷 및 상기 적어도 하나의 제3 BIS 데이터 패킷으로부터 획득한 오디오 데이터를 사용하여 스피커(예를 들어 스피커(354)를 통해 오디오를 출력할 수 있다. 전자 장치(405)는 각 BIS 데이터 패킷에 포함된 동기화 지연 정보(예를 들어 BIG_sync_delay)를 기반으로 해당 BIS 데이터 패킷이 스피커(354)로 출력되어야 하는 재생 시점을 식별하고, 상기 식별된 재생 시점에서 해당 BIS 데이터 패킷에 포함된 오디오 데이터를 재생할 수 있다.
도 12는 일 실시예에 따라 수신 여부 지시 정보를 전송하는 전자 장치(405)의 동작을 설명하기 위한 흐름도이다. 실시예들에 따라 후술되는 동작들 중 적어도 하나는 생략되거나 변형되거나 순서 변경될 수 있다. 일 실시예에서 전자 장치(405)는 이어버드(예를 들어 전자 장치(202))이고, 후술되는 동작들 중 적어도 하나는 전자 장치(405)의 프로세서(예를 들어 프로세서(310))에 의해 실행될 수 있다.
도 12를 참조하면, 동작 1205에서 전자 장치(405)(예를 들어 프로세서(310))는 외부 전자 장치(910)(예를 들어 외부 전자 장치(910a), 외부 전자 장치(910b), 또는 외부 전자 장치(910c))와 통신 링크(예를 들어 통신 링크(915a), 통신 링크(915b), 또는 통신 링크(915c))를 생성할 수 있다. 동작 1210에서 전자 장치(405)(예를 들어 프로세서(310))는 상기 통신 링크를 통해 외부 전자 장치(910)와 오디오 데이터의 재전송을 위한 오디오 릴레이 협상을 수행할 수 있다. 일 실시예에서 상기 오디오 릴레이 협상은 누락된 오디오 데이터의 재전송을 위해 적어도 수신 상태를 동기화하는 방식(예를 들어 수신 확인 정보의 사용 및/또는 수신 확인 정보의 전송 주기) 또는 누락된 오디오 데이터를 릴레이하는 방식 중 적어도 하나를 결정할 수 있다. 일 실시예에서 상기 오디오 릴레이 협상은 생략될 수 있다.
동작 1215에서 전자 장치(405)(예를 들어 프로세서(310))는 BIS 싱크 역할로 오디오 서비스를 수신하기 위해 BIS 연결 정보(예를 들어 BIG 정보(500)의 적어도 일부)를 수신할 수 있다. 일 실시예에서 전자 장치(405)(예를 들어 프로세서(310))는 상기 BIG 정보를 상기 오디오 서비스를 제공하는 소스 전자 장치(400)로부터 직접 수신하거나 외부 전자 장치(예를 들어 모 장치 또는 외부 전자 장치(910))의 어시스턴트에 의해 소스 전자 장치(400)로부터 수신할 수 있다. 동작 1220에서 전자 장치(405)(예를 들어 프로세서(310))는 상기 BIG 정보에 근거하여 소스 전자 장치(400)가 생성한 BIG에 동기화되고 상기 BIG 내의 하나 이상의 BIS들을 통해 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)를 수신할 수 있다.
동작 1225에서 전자 장치(405)(예를 들어 프로세서(310))는 상기 오디오 릴레이 협상의 결과에 따라, 또는 미리 정해지는 수신 상태를 동기화하는 방식 및 누락된 오디오 데이터를 릴레이하는 방식에 따라, 상기 수신된 적어도 하나의 BIS 데이터 패킷에 대한 수신 확인 정보를 상기 통신 링크를 통해 외부 전자 장치(910)에게 전송할 수 있다. 일 실시예에서 상기 수신 확인 정보는 지정된 개수(예를 들어 1개 또는 그 이상)의 BIS 데이터 패킷이 수신될 때마다, 누락된 오디오 데이터가 발생하는 즉시(예를 들어 동일한 BIS_spacing 내에서), 또는 미리 정해지는 주기에 따라 주기적으로 전송될 수 있다. 일 실시예에서 전자 장치(405)는 서브이벤트의 시작 시점에서 BIS 데이터 패킷의 프리앰블을 검출하는데 실패하거나, 상기 서브이벤트에서 수신한 BIS 데이터 패킷이 CRC 에러를 가지는 경우, 상기 서브이벤트에서 상기 BIS 데이터 패킷이 누락된 것으로 판단하여 상기 BIS 데이터 패킷에 대응하는 수신 확인 정보를 외부 전자 장치(910)로 전송하지 않을 수 있다.
일 실시예에서 전자 장치(405)는 성공적으로 수신된 적어도 하나의 BIS 데이터 패킷에 대한 수신 확인 정보를 전송하는 대신, 누락된 적어도 하나의 BIS 데이터 패킷에 대한 미수신 확인 정보를 상기 통신 링크를 통해 외부 전자 장치(910)에게 전송할 수 있다. 전자 장치(405)는 미수신 확인 정보를 전송한 이후에 동작 1230으로 진행하여 릴레이 데이터의 수신을 모니터링할 수 있다. 전자 장치(405)는 미수신 확인 정보를 전송하지 않은 경우 다음 BIS 데이터 패킷의 수신 시점까지 동작 1230을 생략할 수 있다.
동작 1230에서 전자 장치(405)(예를 들어 프로세서(310))는 외부 전자 장치(910)로부터 릴레이 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)가 수신되는지를 판단할 수 있다. 일 실시예에서 전자 장치(405)(예를 들어 프로세서(310))는 상기 오디오 릴레이 협상을 통해 결정한, 누락된 오디오 데이터를 릴레이하는 방식에 따른 시점에서 상기 릴레이 데이터를 수신할 수 있다. 일 실시예에서 전자 장치(405)(예를 들어 프로세서(310))는 상기 오디오 서비스에 대한 오디오 데이터를 포함하는 적어도 하나의 BIS 데이터 패킷을 외부 전자 장치(910)로부터 수신할 수 있다. 상기 적어도 하나의 BIS 데이터 패킷은 소스 전자 장치(400)로부터 브로드캐스트되고 전자 장치(405)에서 누락된 것일 수 있다. 상기 릴레이 데이터가 수신된 경우, 동작 1235에서 전자 장치(405)(예를 들어 프로세서(310))는 상기 릴레이 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)로부터 오디오 데이터를 획득할 수 있다.
동작 1240에서 전자 장치(405)(예를 들어 프로세서(310))는 소스 전자 장치(400) 및/또는 외부 전자 장치(910)로부터 수신된 BIS 데이터 패킷들로부터 획득한 오디오 데이터를 렌더링 타이밍에 따라 스피커(예를 들어 스피커(354))로 출력할 수 있다.
동작 1245에서 전자 장치(405)(예를 들어 프로세서(310))는 상기 오디오 서비스가 종료되는지 판단하고, 그렇지 않은 경우 동작 1220으로 복귀할 수 있다.
도 13은 일 실시예에 따라 수신 여부 지시 정보를 수신하는 외부 전자 장치의 동작을 설명하기 위한 흐름도이다. 실시예들에 따라 후술되는 동작들 중 적어도 하나는 생략되거나 변형되거나 순서 변경될 수 있다. 후술되는 동작들 중 적어도 하나는 외부 전자 장치(910)의 프로세서(예를 들어 프로세서(1010))에 의해 실행될 수 있다.
도 13을 참조하면, 동작 1305에서 외부 전자 장치(910)(예를 들어 프로세서(1010))는 전자 장치(405)와 통신 링크(예를 들어 통신 링크(915a), 통신 링크(915b), 또는 통신 링크(915c))를 생성할 수 있다. 동작 1310에서 외부 전자 장치(910)(예를 들어 프로세서(1010))는 상기 통신 링크를 통해 전자 장치(405)와 오디오 릴레이 협상을 수행할 수 있다. 일 실시예에서 상기 오디오 릴레이 협상은 누락된 오디오 데이터의 릴레이를 위해 적어도 수신 상태를 동기화하는 방식(예를 들어 수신 확인 정보의 사용 및/또는 수신 확인 정보의 전송 주기) 또는 누락된 오디오 데이터를 릴레이하는 방식 중 적어도 하나를 결정할 수 있다. 일 실시예에서 상기 오디오 릴레이 협상은 생략될 수 있다.
동작 1315에서 외부 전자 장치(910)(예를 들어 프로세서(1010))는 BIS 싱크 역할로 오디오 서비스를 수신하기 위해 BIS 연결 정보(예를 들어 BIG 정보(500)의 적어도 일부)를 수신할 수 있다. 일 실시예에서 외부 전자 장치(910)(예를 들어 프로세서(1010))는 상기 BIG 정보를 상기 오디오 서비스를 제공하는 소스 전자 장치(400)로부터 직접 수신하거나 외부 전자 장치(예를 들어 모 장치)의 어시스턴트에 의해 소스 전자 장치(400)로부터 수신할 수 있다. 동작 1320에서 전자 장치(910)(예를 들어 프로세서(1010))는 상기 BIG 정보에 근거하여 소스 전자 장치(400)가 생성한 BIG에 동기화되고 상기 BIG 내의 하나 이상의 BIS들을 통해 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)를 수신할 수 있다. 일 실시예에서 전자 장치(910)(예를 들어 프로세서(1010))는 오디오 릴레이를 지원하기 위해 상기 오디오 데이터를 수신할 수 있고, 상기 오디오 데이터를 재생하지 않고 지정된 시간 동안 메모리(1015)에 저장할 수 있으며, 상기 지정된 시간 이후에는 상기 오디오 데이터를 삭제할 수 있다. 상기 지정된 시간 이내에 전자 장치(910)(예를 들어 프로세서(1010))는 동작 1325를 수행할 수 있다.
동작 1325에서 외부 전자 장치(910)(예를 들어 프로세서(1010))는 상기 오디오 릴레이 협상의 결과에 따라 또는 미리 정해지는 수신 상태를 동기화하는 방식 및 누락된 오디오 데이터를 릴레이하는 방식에 따라 전자 장치(405)에 의해 수신된 적어도 하나의 BIS 데이터 패킷에 대한 수신 확인 정보를 상기 통신 링크를 통해 전자 장치(405)로부터 수신되는지 판단할 수 있다. 일 실시예에서 상기 수신 확인 정보는 누락된 오디오 데이터가 발생하는 즉시(예를 들어 동일한 BIS_spacing 내에서) 전송되거나, 또는 미리 정해지는 주기에 따라 주기적으로 전송될 수 있다. 상기 수신 확인 정보가 수신된 경우 외부 전자 장치(910)(예를 들어 프로세서(1010))는 상기 적어도 하나의 BIS 데이터 패킷을 전자 장치(405)로 전송하지 않을 수 있다. 일 실시예에서 외부 전자 장치(910)(예를 들어 프로세서(1010))는 상기 수신 확인 정보에 대응하는 상기 적어도 하나의 BIS 데이터 패킷을 드롭(drop) 또는 플러쉬(flush)할 수 있다.
상기 수신 확인 정보가 수신되지 않은 경우, 동작 1330에서 외부 전자 장치(910)(예를 들어 프로세서(1010))는 상기 적어도 하나의 BIS 데이터 패킷을 포함하는 릴레이 데이터를 전자 장치(405)로 전송할 수 있다. 일 실시예에서 외부 전자 장치(910)(예를 들어 프로세서(1010))는 상기 오디오 릴레이 협상을 통해 결정한, 누락된 오디오 데이터를 릴레이하는 방식에 따른 시점에서 상기 릴레이 데이터를 전송할 수 있다.
일 실시예에서 외부 전자 장치(910)(예를 들어 프로세서(1010))는 동작 1325를 수행하는 대신, 전자 장치(405)에서 누락된 적어도 하나의 BIS 데이터 패킷에 대한 미수신 확인 정보를 상기 통신 링크를 통해 전자 장치(405)로부터 수신할 수 있다. 상기 미수신 확인 정보가 수신된 경우, 동작 1330에서 외부 전자 장치(910)(예를 들어 프로세서(1010))는 상기 누락된 적어도 하나의 BIS 데이터 패킷을 포함하는 릴레이 데이터를 전자 장치(405)로 전송할 수 있다.
동작 1340에서 외부 전자 장치(910)(예를 들어 프로세서(1010))는 상기 오디오 서비스가 종료되는지 판단하고, 그렇지 않은 경우 동작 1320으로 복귀할 수 있다.
도 14는 일 실시예에 따른 주기적 애드버타이징을 설명하기 위한 도면이다.
도 14를 참조하면, 전자 장치(405)가 오디오 서비스를 수행하기 전에, 동작 1402, 동작 1406 및 동작 1410에서 소스 전자 장치(400)는 주기적 애드버타이징 데이터를 포함하는 적어도 하나의 패킷(예를 들어 ADV_EXT_IND)을 지정된 애드버타이징 간격(Adv_interval)마다 지정된 채널들(예를 들어 채널 37, 채널 38, 및 채널 39)을 통해 반복하여 전송할 수 있다. 상기 ADV_EXT_IND는 후속하는 애드버타이징 패킷(예를 들어 AUX_ADV_IND)의 위치와 채널 정보를 나타내는 보조 패킷(auxiliary packet) 정보를 포함할 수 있다. 동작 1404, 동작 1408, 및 동작 1412에서 소스 전자 장치(400)는 상기 ADV_EXT_IND들에 후속하여 AUX_ADV_IND를 전송할 수 있다. 상기 AUX_ADV_IND는 BIG 정보를 포함할 수 있는 후속하는 애드버타이징 패킷(예를 들어 AUX_SYNC_IND)을 위한 정보(예를 들어 액세스 주소, 채널 맵, 애드버타이징 간격(advertising interval), 클럭 정확도(clock accuracy), 또는 AUX_ADV_IND로부터의 시간 옵셋 중 적어도 하나)를 포함할 수 있다.
동작 1414에서 소스 전자 장치(400)는 상기 오디오 서비스에 대한 오디오 데이터가 전송되기 전에 BIG 정보(예를 들어 BIG 정보(500))를 포함하는 AUX_SYNC_IND를 전송할 수 있다. 상기 AUX_SYNC_IND는 예를 들어 ACAD 필드 내에 BIG 정보를 포함할 수 있다.
일 실시예에서 전자 장치(405)는 상기 ADV_EXT_IND, AUX_ADV_IND 또는 AUX_SYNC_IND 중 적어도 하나를 소스 전자 장치(400)로부터 직접 수신할 수 있다. 도시하지 않을 것이지만, 일 실시예에서 전자 장치(405)는 통신 링크(예를 들어 통신 링크(915a), 통신 링크(915b), 또는 통신 링크(915c))를 통해 외부 전자 장치(910)로부터 상기 AUX_SYNC_IND를 위한 동기화 정보(Sync Info)가 포함된 링크 계층 메시지(예를 들어 LL_PERIODIC_SYNC_IND)를 수신할 수 있다. 동작 1414에서 전자 장치(405)는 상기 AUX_ADV_IND 또는 상기 동기화 정보에 근거하여 소스 전자 장치(400)로부터 BIG 정보를 포함하는 AUX_SYNC_IND를 수신할 수 있다.
전자 장치(405)는 상기 BIG 정보를 기반으로 소스 전자 장치(400)의 BIG에 동기화되고, 소스 전자 장치(400)의 적어도 하나의 BIS를 통해 오디오 데이터를 수신할 수 있다. 도시하지 않을 것이지만 외부 전자 장치(910)는 도 14와 유사한 절차를 통해 소스 전자 장치(400)의 BIG에 동기화되고, 소스 전자 장치(400)의 적어도 하나의 BIS를 통해 오디오 데이터를 수신할될 수 있다.
도 15는 일 실시예에 따른 오디오 릴레이 협상을 설명하기 위한 도면이다. 일 실시예에서 도시된 동작들은 도 11의 동작 1106에 대응할 수 있다.
도 15를 참조하면, 전자 장치(405)는 BIS 싱크 역할로 오디오 서비스를 수행하기 이전, 또는 수행하는 도중에 외부 전자 장치(910)와 누락 오디오 데이터를 위한 오디오 릴레이 협상을 수행할 수 있다. 일 실시예에서 전자 장치(405)는 지정된 판단 기준에 의해 외부 전자 장치(910)에게 오디오 릴레이를 요청하거나, 또는 오디오 릴레이 협상을 수행할 수 있다. 일 실시예에서 전자 장치(405)는 지정된 방법에 의해 자동으로 오디오 릴레이를 요청하거나 또는 오디오 릴레이 협상을 수행할 수도 있다. 일 실시예에서 상기 판단 기준은 오디오 데이터의 수신 품질이 저하되는 경우(예를 들어 수신 신호 세기 또는 패킷 누락율이 지정된 임계값보다 작음), 지정된 주기, 지정된 시간 구간, 사용자의 의도, 오디오 데이터의 신호 세기, 또는 주변 무선 환경의 변화 중 적어도 하나를 포함할 수 있다.
동작 1505에서 전자 장치(405)는 외부 전자 장치(910)에게 누락 오디오 릴레이를 요청하는 정보, 또는 오디오 릴레이 협상을 요청하기 위한 제1 링크 계층 메시지(예를 들어 LL_BIS_RELAY_REQ)를 전송할 수 있다. 일 실시예에서 상기 제1 링크 계층 메시지는 수신 상태를 동기화하는 방식을 나타내는 제1 정보, 또는 누락된 오디오 데이터를 릴레이하는 방식을 나타내는 제2 정보 중 적어도 하나를 포함할 수 있다. 일 실시예에서 제1 정보(예를 들어 '1')는 수신 여부 지시 정보가 매 BIS 데이터 패킷 마다 수신 여부 지시 정보가 전송됨을 의미할 수 있다. 일 실시예에서 제2 정보(예를 들어 '3')은 누락된 오디오 데이터가 반복 전송되는 횟수를 지시할 수 있다. 일 실시예에서 제1 정보는 수신 여부 지시 정보가 수신 확인 정보를 포함하는지, 미수신 확인 정보를 포함하는지, 또는 둘 다를 포함하는지를 지시할 수 있다. 동작 1510에서 전자 장치(405)는 외부 전자 장치(910)로부터 ACK를 수신할 수 있다.
동작 1515에서 전자 장치(405)는 지정된 송신 슬롯에서 빈 패킷을 전송할 수 있다. 외부 전자 장치(910)가 상기 제1 링크 계층 메시지의 제1 정보와 제2 정보를 수용하지 않을 경우, 동작 1520에서 전자 장치(405)는 외부 전자 장치(910)로부터 오디오 릴레이 협상을 위한 제2 링크 계층 메시지(예를 들어 LL_BIS_RELAY_RES)를 수신할 수 있다. 일 실시예에서 상기 제2 링크 계층 메시지는 외부 전자 장치(910)가 요청하는 제1 정보(예를 들어 '2') 또는 제2 정보(예를 들어 '3') 중 적어도 하나를 포함할 수 있다.
동작 1525에서 전자 장치(405)는 외부 전자 장치(910)에게 외부 전자 장치(910)가 요청하는 제1 정보(예를 들어 '2') 및 제2 정보(예를 들어 '3')를 수용(accept)하는 제3 링크 계층 메시지(예를 들어 LL_BIS_RELAY_IND)를 수신할 수 있다. 일 실시예에서 상기 제3 링크 계층 메시지는 전자 장치(405)가 허용하는 제1 정보(예를 들어 '2') 및 제2 정보(예를 들어 '3')를 포함할 수 있다.
동작 1530에서 전자 장치(405)는 외부 전자 장치(910)로부터 ACK를 수신하고 상기 제1 정보 및 제2 정보에 근거하여 오디오 서비스를 수행할 수 있다. 일 실시예에서 오디오 릴레이 협상이 완료된 이후, 전자 장치(405)는 상기 제1 정보에 근거하여 수신 여부 지시 정보를 외부 전자 장치(910)로 전송할 수 있고, 상기 제2 정보에 근거하여 릴레이 데이터를 외부 전자 장치(910)로부터 수신할 수 있다.
일 실시예에서 전자 장치(405)와 외부 전자 장치(910)는 동일 사용자 계정에 기반하여 다양한 기준에 의해 자동으로 오디오 릴레이 협상을 수행할 수 있다. 일 실시예에서 전자 장치(405)와 외부 전자 장치(910)는 동일 사용자 계정으로 연동될 수 있다. 전자 장치(405)가 소스 전자 장치(400)로부터 브로드캐스트되는 오디오 데이터를 수신하기 위해 BIS 싱크 역할로 오디오 서비스를 수행할 때, 계정 서버는 상기 동일 사용자 계정으로 연동된 전자 장치들(예를 들어 외부 전자 장치(910)에게 전자 장치(405)의 오디오 서비스에 대한 정보(예를 들어 수신 상태를 동기화하는 방식에 대한 제1 정보 또는 누락된 오디오 데이터를 릴레이하는 방식에 대한 제2 정보 중 적어도 하나)를 전달할 수 있다. 외부 전자 장치(910)는 전자 장치(405)의 근처에 위치할 수 있고, 상기 정보에 근거하여 전자 장치(405)를 위해 수신 여부 지시 정보를 수신하고 누락된 오디오를 전송하는 동작을 수행할 수 있다.
일 실시예에서 전자 장치(405)와 외부 전자 장치(910)는, 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)의 수신 즉시 수신 상태를 동기화할 수 있다. 소스 전자 장치(400)는 하나의 BIS 데이터 패킷을 전송한 후, T_MSS (time for minimum subevent space)(예를 들어 최소 150μs) 이후에 동일한 BIS 데이터 패킷을 재전송하거나 또는 다음 BIS 데이터 패킷을 전송할 수 있다. 전자 장치(405)와 외부 전자 장치(910)는 T_MSS 내에 수신 여부 지시 정보를 공유할 수 있다.
일 실시예에서 전자 장치(405)는 소스 전자 장치(400)로부터 하나의 BIS 데이터 패킷을 성공적으로(예를 들어 에러 없이) 수신할 수 있고, 소스 전자 장치(400)가 상기 BIS 데이터 패킷의 전송에 사용한 액세스 주소, PHY, 또는 채널 중 적어도 하나를 사용하여 수신 여부 지시 정보를 전송할 수 있다.
도 16a, 도 16b, 및 도 16c는 일 실시예에 따른 수신 여부 지시 정보의 포맷을 설명하기 위한 도면이다.
도 16a를 참조하면, BIS 데이터 패킷에 대응하는 수신 여부 지시 정보를 나타내는 제1 패킷(1610)은 상기 BIS 데이터 패킷에 근거한 프리앰블을 포함하여 구성될 수 있다. 도시하지 않을 것이지만 제1 패킷(1610)은 페이로드 내에 수신 확인 정보 및/또는 미수신 확인 정보를 포함할 수 있다.
도 16b를 참조하면, BIS 데이터 패킷에 대응하는 수신 여부 지시 정보를 나타내는 제2 패킷(1620)은 상기 BIS 데이터 패킷에 근거한 프리앰블 및 액세스 주소를 포함하여 구성될 수 있다. 상기 액세스 주소는 상기 BIS 데이터 패킷의 액세스 주소와 동일하거나 또는 전자 장치(405)와 외부 전자 장치(910) 간 수립된 통신 링크(예를 들어 예를 들어 통신 링크(915a), 통신 링크(915b), 또는 통신 링크(915c))의 액세스 주소와 동일할 수 있다. 도시하지 않을 것이지만 제2 패킷(1620)은 페이로드 내에 수신 확인 정보 및/또는 미수신 확인 정보를 포함할 수 있다.
도 16c를 참조하면, BIS 데이터 패킷에 대응하는 수신 여부 지시 정보를 나타내는 제3 패킷(1630)은 상기 BIS 데이터 패킷에 근거한 프리앰블, 액세스 주소 및 페이로드 헤더를 포함하여 구성될 수 있다. 상기 액세스 주소는 상기 BIS 데이터 패킷의 액세스 주소와 동일하거나 또는 전자 장치(405)와 외부 전자 장치(910) 간 수립된 통신 링크(예를 들어 예를 들어 통신 링크(915a), 통신 링크(915b), 또는 통신 링크(915c))의 액세스 주소와 동일할 수 있다. 도시하지 않을 것이지만 제3 패킷(1630)은 페이로드 내에 수신 확인 정보 및/또는 미수신 확인 정보를 포함할 수 있다.
도 17a는 일 실시예에 따라 수신 확인 정보를 전송하는 동작을 설명하기 위한 도면이다.
도 17a를 참조하면, 소스 전자 장치(400)는 BIS 이벤트 k에서 BIS 데이터 패킷 L_k, BIS 데이터 패킷 R_k, BIS 데이터 패킷 L_k+1, BIS 데이터 패킷 R_k+1, BIS 데이터 패킷 L_k+2, 및 BIS 데이터 패킷 R_k+2를 전송할 수 있다. 전자 장치(405)는 좌측 이어버드일 수 있고, 매 BIS 데이터 패킷의 수신시마다 수신 확인 정보를 전송하도록 외부 전자 장치(910)와의 오디오 릴레이 협상을 통해 결정할 수 있다. 도시하지 않을 것이지만 전자 장치(405)가 우측 이어버드인 경우 외부 전자 장치(910)는 우측 채널의 BIS 데이터 패킷들 R_k, R_k+1, 및 R_k+2에 대해 후술되는 동작들을 수행할 수 있다. 일 실시예에서 상기한 데이터 패킷들(L_k, R_k, L_k+1, R_k+1, L_k+2, R_k+2)은 동일 오디오 스트림에 대응할 수 있다.
전자 장치(405)는 BIS 데이터 패킷 L_k을 성공적으로 수신할 수 있고 동일 오디오 서비스에 속하는 다음 데이터 패킷(BIS 데이터 패킷 R_k)의 지정된 수신 시점 이전에 수신 확인 정보(1705)를 외부 전자 장치(910)로 전송할 수 있다. 일 실시예에서 수신 확인 정보(1705)는 BIS 데이터 패킷 L_k를 포함하는 BIS_spacing 내에서 BIS 데이터 패킷 L_k에 사용된 것과 동일한 채널(예를 들어 CH6)을 통해 전송될 수 있다.
전자 장치(405)는 BIS 데이터 패킷 L_k+1(1710)을 수신하는데 실패할 수 있고, 이에 따라 BIS 데이터 패킷 L_k+1(1710)을 포함하는 BIS_spacing 내에서 BIS 데이터 패킷 L_k+1(1710)에 대응되는 수신 확인 정보는 전송되지 않을 수 있다. 외부 전자 장치(910)는 BIS 데이터 패킷 L_k+1(1710)을 성공적으로 수신할 수 있고, BIS 데이터 패킷 L_k+1(1710)에 사용된 것과 동일한 채널(예를 들어 CH6)을 모니터링한 결과 BIS 데이터 패킷 L_k+1(1710)에 대응하는 수신 확인 정보가 전자 장치(405)로부터 수신되지 않음을 식별할 수 있다.
전자 장치(405)는 BIS 데이터 패킷 L_k+2를 성공적으로 수신할 수 있고, 다음 데이터 패킷(BIS 데이터 패킷 R_k+2)의 지정된 수신 시점 이전에 수신 확인 정보(1715)를 외부 전자 장치(910)로 전송할 수 있다. 일 실시예에서 수신 확인 정보(1715)는 BIS 데이터 패킷 L_k+2를 포함하는 BIS_spacing 내에서 BIS 데이터 패킷 L_k+2에 사용된 것과 동일한 채널(예를 들어 CH21)을 통해 전송될 수 있다.
도 17b는 일 실시예에 따라 미수신 확인 정보를 전송하는 동작을 설명하기 위한 도면이다.
도 17b 참조하면, 소스 전자 장치(400)는 BIS 이벤트 k에서 BIS 데이터 패킷 L_k, BIS 데이터 패킷 R_k, BIS 데이터 패킷 L_k+1, BIS 데이터 패킷 R_k+1, BIS 데이터 패킷 L_k+2, 및 BIS 데이터 패킷 R_k+2를 전송할 수 있다. 전자 장치(405)는 좌측 이어버드일 수 있고, 매 BIS 데이터 패킷의 수신시마다 수신 확인 정보를 전송하도록 외부 전자 장치(910)와의 오디오 릴레이 협상을 통해 결정할 수 있다. 도시하지 않을 것이지만 전자 장치(405)가 우측 이어버드인 경우 외부 전자 장치(910)는 우측 채널의 BIS 데이터 패킷들 R_k, R_k+1, 및 R_k+2에 대해 후술되는 동작들을 수행할 수 있다. 일 실시예에서 상기한 데이터 패킷들(L_k, R_k, L_k+1, R_k+1, L_k+2, R_k+2)은 동일 오디오 스트림에 대응할 수 있다.
전자 장치(405)는 BIS 데이터 패킷 L_k을 성공적으로 수신할 수 있다.
전자 장치(405)는 BIS 데이터 패킷 L_k+1(1720)을 수신하는데 실패할 수 있고, 이에 따라 BIS 데이터 패킷 L_k+1(1720)을 포함하는 BIS_spacing 내에서 BIS 데이터 패킷 L_k+1(1720)에 대응되는 미수신 확인 정보(1725)를 전송할 수 있다. 외부 전자 장치(910)는 BIS 데이터 패킷 L_k+1(1720)을 성공적으로 수신할 수 있고, BIS 데이터 패킷 L_k+1(1720)에 사용된 것과 동일한 채널(예를 들어 CH6)에서 BIS 데이터 패킷 L_k+1(1720)에 대응하는 미수신 확인 정보(1725)가 전자 장치(405)로부터 수신됨에 근거하여 전자 장치(405)가 BIS 데이터 패킷 L_k+1(1720)의 수신에 실패하였음을 식별할 수 있다.
도 18은 일 실시예에 따라 BIS 이벤트 이후에 수신 여부 지시 정보를 전송하는 동작을 설명하기 위한 도면이다.
도 18을 참조하면, 소스 전자 장치(400)는 BIS 이벤트 k에서 BIS 데이터 패킷 L_k, BIS 데이터 패킷 R_k, BIS 데이터 패킷 L_k+1, BIS 데이터 패킷 R_k+1, BIS 데이터 패킷 L_k+2, 및 BIS 데이터 패킷 R_k+2를 전송할 수 있다. 일 실시예에서 전자 장치(405)는 좌측 이어버드일 수 있고, 매 BIS 이벤트의 종료 이후에 하나의 BIS 이벤트 동안의 BIS 데이터 패킷들(예를 들어 BIS 데이터 패킷 L_k, BIS 데이터 패킷 L_k+1, 및 BIS 데이터 패킷 L_k+2)에 대응하는 수신 여부 지시 정보(1815)(예를 들어 수신 확인 정보 또는 미수신 확인 정보)를 전송하도록 외부 전자 장치(910)와의 오디오 릴레이 협상을 통해 결정할 수 있다. 전자 장치(405)와 외부 전자 장치(910)는 각 BIS 이벤트들의 시작 시점을 소스 전자 장치(400)로부터 수신된 BIG 정보에 따라 동기화 시킨 상태일 수 있다. 도시하지 않을 것이지만 전자 장치(405)가 우측 이어버드인 경우 외부 전자 장치(910)는 우측 채널의 BIS 데이터 패킷들 R_k, R_k+1, 및 R_k+2에 대해 후술되는 동작들을 수행할 수 있다. 일 실시예에서 상기한 데이터 패킷들(L_k, R_k, L_k+1, R_k+1, L_k+2, R_k+2)은 동일 오디오 스트림에 대응할 수 있다.
BIS 이벤트 k에서 전자 장치(405)는 BIS 데이터 패킷 L_k 및 BIS 데이터 패킷 L_k+2를 성공적으로 수신하지만, BIS 데이터 패킷 L_k+1(1810)을 수신하는데 실패할 수 있다. BIS 이벤트 k가 종료된 이후, 예를 들어 BIS 이벤트 k+1에서 전자 장치(405)는 외부 전자 장치(910)에게 수신 여부 지시 정보(1815)를 전송할 수 있다. 일 실시예에서 수신 여부 지시 정보(1815)는 BIS 이벤트 k에서 누락된 BIS 데이터 패킷(예를 들어 BIS 데이터 패킷 L_k+1(1810))을 나타내는 미수신 확인 정보(예를 들어 "L_k+1 NOK (not OK)")를 포함할 수 있다. 일 실시예에서 수신 여부 지시 정보(1815)는 BIS 이벤트 k에서 성공적으로 수신된 BIS 데이터 패킷(예를 들어 BIS 데이터 패킷 L_k 및 BIS 데이터 패킷 L_k+2)을 나타내는 수신 확인 정보(예를 들어 "L_k & L_k+2 OK")를 포함할 수 있다.
도 19는 일 실시예에 따라 누락된 오디오 데이터를 릴레이하는 동작을 설명하기 위한 도면이다.
도 19를 참조하면, 소스 전자 장치(400)는 BIS 이벤트 k에서 BIS 데이터 패킷 L_k, BIS 데이터 패킷 R_k, BIS 데이터 패킷 L_k+1, BIS 데이터 패킷 R_k+1, BIS 데이터 패킷 L_k+2, 및 BIS 데이터 패킷 R_k+2를 전송할 수 있다. 일 실시예에서 전자 장치(405)는 좌측 이어버드일 수 있고, 매 BIS 데이터 패킷의 미수신을 확인할 시마다 누락된 오디오 데이터를 릴레이하도록 외부 전자 장치(910)와의 오디오 릴레이 협상을 통해 결정할 수 있다. 도시하지 않을 것이지만 전자 장치(405)가 우측 이어버드인 경우 외부 전자 장치(910)는 우측 채널의 BIS 데이터 패킷들 R_k, R_k+1, 및 R_k+2에 대해 후술되는 동작들을 수행할 수 있다. 일 실시예에서 상기한 데이터 패킷들(L_k, R_k, L_k+1, R_k+1, L_k+2, R_k+2)은 동일 오디오 스트림에 대응할 수 있다.
전자 장치(405)는 BIS 데이터 패킷 L_k을 성공적으로 수신할 수 있고 다음 데이터 패킷(예를 들어 BIS 데이터 패킷 R_k 또는 L_k+1)의 전송 이전에 수신 확인 정보(1905)를 외부 전자 장치(910)로 전송할 수 있다. 일 실시예에서 수신 확인 정보(1905)는 BIS 데이터 패킷 L_k를 포함하는 BIS_spacing 내에서 BIS 데이터 패킷 L_k에 사용된 것과 동일한 채널(예를 들어 CH6)을 통해 전송될 수 있다.
전자 장치(405)는 BIS 데이터 패킷 L_k+1(1910)을 수신하는데 실패할 수 있고, 이에 따라 BIS 데이터 패킷 L_k+1(1910)을 포함하는 BIS_spacing 내에서 BIS 데이터 패킷 L_k+1(1910)에 대응되는 수신 여부 지시 정보(예를 들어 수신 확인 정보 또는 미수신 확인 정보)(도시하지 않음)는 전송되지 않을 수 있다. 외부 전자 장치(910)는 소스 전자 장치(400)로부터 BIS 데이터 패킷 L_k+1(1910)을 성공적으로 수신할 수 있고, BIS 데이터 패킷 L_k+1(1910)에 사용된 것과 동일한 채널(예를 들어 CH6)을 모니터링한 결과 BIS 데이터 패킷 L_k+1(1910)에 대응하는 수신 여부 지시 정보(예를 들어 수신 확인 정보 또는 미수신 확인 정보)가 전자 장치(405)로부터 수신되지 않음을 식별할 수 있다. 일 실시예에서 외부 전자 장치(910)는 BIS 데이터 패킷 L_k+1(1910)에 대응되는 수신 여부 지시 정보가 전자 장치(405)로부터 수신되지 않음에 근거하여 BIS 데이터 패킷 L_k+1(1910)가 누락된 것으로 판단할 수 있다.
전자 장치(405)와 외부 전자 장치(910)는, 전자 장치(405)가 누락한 오디오 데이터를 즉시(예를 들어 동일한 BIS_Spacing 내에서) 전송하도록 오디오 릴레이 협상을 통해 미리 결정할 수 있다. 외부 전자 장치(910)는 BIS 데이터 패킷 L_k+1(1910)에 대응하는 수신 확인 정보가 수신되지 않음을 식별함에 근거하여, BIS 데이터 패킷 L_k+1(1910)의 페이로드를 포함하는 BIS 데이터 패킷 L_k+1(1915)을 전자 장치(405)로 전송(예를 들어 릴레이)할 수 있다. 일 실시예에서 외부 전자 장치(910)는 BIS 데이터 패킷 L_k+1(1910)의 종료 시점부터 다음 BIS 데이터 패킷(예를 들어 BIS 데이터 패킷 L_k+2)의 전송이 시작되기 지정된 시간(예를 들어 150μs) 전까지의 시간 구간 내에서 BIS 데이터 패킷 L_k+1(1915)을 전자 장치(405)로 전송(예를 들어 릴레이)할 수 있다.
일 실시예에서 BIS 데이터 패킷 L_k+1(1915)은 BIS 데이터 패킷 L_k+1(1910)과 동일한 액세스 주소와 페이로드를 포함할 수 있다. 일 실시예에서 BIS 데이터 패킷 L_k+1(1915)은 BIS 데이터 패킷 L_k+1(1910)과 동일한 페이로드를 포함하고, 전자 장치(405)와 외부 전자 장치(910) 간에 수립된 통신 링크의 액세스 주소(예를 들어 BIS 데이터 패킷 L_k+1(1910)의 액세스 주소와 상이함)를 포함할 수 있다.
전자 장치(405)는 BIS 데이터 패킷 L_k+2를 성공적으로 수신할 수 있고 다음 데이터 패킷(예를 들어 BIS 데이터 패킷 R_k+2)의 전송 이전에 수신 확인 정보(1920)를 외부 전자 장치(910)로 전송할 수 있다. 일 실시예에서 수신 확인 정보(1920)는 BIS 데이터 패킷 L_k+2를 포함하는 BIS_spacing 내에서 BIS 데이터 패킷 L_k에 사용된 것과 동일한 채널(예를 들어 CH21)을 통해 전송될 수 있다.
도 20은 일 실시예에 따라 BIS 이벤트 이후에 누락된 오디오 데이터를 릴레이하는 동작을 설명하기 위한 도면이다.
도 20을 참조하면, 소스 전자 장치(400)는 BIS 이벤트 k에서 BIS 데이터 패킷 L_k, BIS 데이터 패킷 R_k, BIS 데이터 패킷 L_k+1, BIS 데이터 패킷 R_k+1, BIS 데이터 패킷 L_k+2, 및 BIS 데이터 패킷 R_k+2를 전송할 수 있다. 일 실시예에서 전자 장치(405)는 좌측 이어버드일 수 있고, 매 BIS 이벤트의 종료 이후에 누락된 오디오 데이터를 릴레이하도록 외부 전자 장치(910)와의 오디오 릴레이 협상을 통해 결정할 수 있다. 도시하지 않을 것이지만 전자 장치(405)가 우측 이어버드인 경우 외부 전자 장치(910)는 우측 채널의 BIS 데이터 패킷들 R_k, R_k+1, 및 R_k+2에 대해 후술되는 동작들을 수행할 수 있다. 일 실시예에서 상기한 데이터 패킷들(L_k, R_k, L_k+1, R_k+1, L_k+2, R_k+2)은 동일 오디오 스트림에 대응할 수 있다.
BIS 이벤트 k에서 전자 장치(405)는 BIS 데이터 패킷 L_k 및 BIS 데이터 패킷 L_k+2를 성공적으로 수신하지만, BIS 데이터 패킷 L_k+1(2010)을 수신하는데 실패할 수 있다. BIS 이벤트 k가 종료된 이후, 예를 들어 BIS 이벤트 k+1에서 전자 장치(405)는 외부 전자 장치(910)에게 수신 여부 지시 정보(2015)를 전송할 수 있다. 일 실시예에서 수신 여부 지시 정보(2015)는 BIS 이벤트 k에서 누락된 BIS 데이터 패킷(예를 들어 BIS 데이터 패킷 L_k+1(2010))을 나타내는 미수신 확인 정보(예를 들어 "L_k+1 NOK (not OK)")를 포함할 수 있다. 일 실시예에서 수신 여부 지시 정보(2015)는 BIS 이벤트 k에서 성공적으로 수신된 BIS 데이터 패킷(예를 들어 BIS 데이터 패킷 L_k 및 BIS 데이터 패킷 L_k+2)을 나타내는 수신 확인 정보(예를 들어 "L_k & L_k+2 OK")를 포함할 수 있다.
전자 장치(405)와 외부 전자 장치(910)는, 전자 장치(405)가 누락한 오디오 데이터를 지정된 시간 구간 또는 지정된 주기에 따라 전송하도록 오디오 릴레이 협상을 통해 미리 결정할 수 있다. 일 실시예에서 상기 지정된 시간 구간은 전자 장치(405)와 외부 전자 장치(910) 간 통신 링크의 연결 간격(Connection interval)을 포함하여, 상기 누락된 오디오 데이터가 전자 장치(405)에서 출력되어야 하는 시점 이전의 어느 시간 구간일 수 있다. 일 실시예에서 상기 지정된 주기는 전자 장치(405)의 음 끊김이 발생하지 않는 범위 내에서 정해질 수 있다.
외부 전자 장치(910)는 BIS 이벤트 k 내에서 소스 전자 장치(400)로부터 BIS 데이터 패킷 L_k+1(2010)을 성공적으로 수신할 수 있고, 다음 BIS 이벤트(예를 들어 BIS 이벤트 k+1) 내에서 수신 여부 지시 정보(2015)를 수신함에 근거하여 BIS 데이터 패킷 L_k+1(2020)을 전자 장치(405)로 전송(예를 들어 릴레이)할 수 있다. 일 실시예에서 BIS 데이터 패킷 L_k+1(2020)은 BIS 데이터 패킷 L_k+1(2010)과 동일한 액세스 주소와 페이로드를 포함할 수 있다. 일 실시예에서 BIS 데이터 패킷 L_k+1(2020)은 BIS 데이터 패킷 L_k+1(2010)과 동일한 페이로드를 포함하고, 전자 장치(405)와 외부 전자 장치(910) 간에 수립된 통신 링크의 액세스 주소를 포함할 수 있다.
도 21은 일 실시예에 따라 외부 전자 장치가 오디오 데이터를 의무적으로 릴레이하는 동작을 설명하기 위한 도면이다.
도 21을 참조하면, 소스 전자 장치(400)는 제1 BIG의 BIS 이벤트 k에서 BIS 데이터 패킷 L_k(2100), BIS 데이터 패킷 R_k, BIS 데이터 패킷 L_k+1(2110), BIS 데이터 패킷 R_k+1, BIS 데이터 패킷 L_k+2(2120), 및 BIS 데이터 패킷 R_k+2를 전송할 수 있다. 일 실시예에서 전자 장치(405)는 좌측 이어버드일 수 있고, 매 BIS 데이터 패킷을 수신할 시마다 동일한 Sub_interval 내에서 해당 BIS 데이터 패킷을 릴레이하도록 외부 전자 장치(910)에게 오디오 릴레이 협상을 통해 요청할 수 있다. 도시하지 않을 것이지만 전자 장치(405)가 우측 이어버드인 경우 외부 전자 장치(910)는 우측 채널의 BIS 데이터 패킷들 R_k, R_k+1, 및 R_k+2에 대해 후술되는 동작들을 수행할 수 있다. 일 실시예에서 상기한 데이터 패킷들(L_k, R_k, L_k+1, R_k+1, L_k+2, R_k+2)은 동일 오디오 스트림에 대응할 수 있다.
일 실시예에서 외부 전자 장치(910)는 소스 전자 장치(400)가 전송하는 제1 BIG의 제1 BIG 정보에 근거하여 소스 전자 장치(400)로부터 수신한 BIS 데이터 패킷들(예를 들어 BIS 데이터 패킷 L_k(2100), BIS 데이터 패킷 L_k+1(2110) 및 BIS 데이터 패킷 L_k+2(2120))의 페이로드들을 포함하는 BIS 데이터 패킷들(예를 들어 BIS 데이터 패킷 L_k(2105), BIS 데이터 패킷 L_k+1(2115) 및 BIS 데이터 패킷 L_k+2(2125))를 전자 장치(400)에게 릴레이할 수 있다. 일 실시예에서 외부 전자 장치(910)는 소스 전자 장치(400)가 전송하는 제1 BIG와는 상이한 새로운 제2 BIG(새로운 액세스 주소 또는 동일한 액세스 주소를 포함할 수 있음)를 생성하고, 상기 제1 BIG를 통해 소스 전자 장치(400)로부터 수신한 페이로드들을 포함하는 BIS 데이터 패킷들(예를 들어 BIS 데이터 패킷 L_k(2105), BIS 데이터 패킷 L_k+1(2115) 및 BIS 데이터 패킷 L_k+2(2125))을 상기 제2 BIG를 통해 전자 장치(400)에게 릴레이할 수 있다.
일 실시예에서 외부 전자 장치(910)는 통신 링크(예를 들어 통신 링크(915a), 통신 링크(915b), 또는 통신 링크(915c))를 통해 제2 BIG의 제2 BIG 정보(예를 들어 동기화 정보)를 전자 장치(405)에게 제공할 수 있다. 전자 장치(405)는 상기 제2 BIG 정보에 근거하여 소스 전자 장치(400)에 의해 릴레이되는 BIS 데이터 패킷들(예를 들어 BIS 데이터 패킷 L_k(2105), BIS 데이터 패킷 L_k+1(2115) 및 BIS 데이터 패킷 L_k+2(2125))을 수신할 수 있다.
BIS 이벤트 k에서 전자 장치(405)는 BIS 데이터 패킷 L_k(2100) 및 BIS 데이터 패킷 L_k+2(2120)를 성공적으로 수신하지만, BIS 데이터 패킷 L_k+1(2110)을 수신하는데 실패할 수 있다. 외부 전자 장치(910)는 BIS 데이터 패킷 L_k(2100)를 소스 전자 장치(400)로부터 수신하고, BIS 데이터 패킷 L_k(2100)를 포함하는 동일한 Sub_interval 내의 지정된 시간 구간(예를 들어 소스 전자 장치(400)가 BIS 데이터 패킷 R_k를 전송하는 서브이벤트)에서 BIS 데이터 패킷 L_k(2105)을 전자 장치(405)로 릴레이할 수 있다. BIS 데이터 패킷 L_k(2105)는 소스 전자 장치(400)로부터 수신한 BIS 데이터 패킷 L_k(2100)와 동일한 페이로드를 포함할 수 있다.
외부 전자 장치(910)는 BIS 데이터 패킷 L_k+1(2110)을 소스 전자 장치(400)로부터 수신하고, BIS 데이터 패킷 L_k+1(2110)을 포함하는 동일한 Sub_interval 내의 지정된 시간 구간(예를 들어 소스 전자 장치(400)가 BIS 데이터 패킷 R_k+1을 전송하는 서브이벤트)에서 BIS 데이터 패킷 L_k+1(2115)을 전자 장치(405)로 릴레이할 수 있다. 일 실시예에서 BIS 데이터 패킷 L_k+1(2115)은 BIS 데이터 패킷 L_k+1(2110)과 동일한 액세스 주소와 동일한 페이로드를 포함할 수 있다. 일 실시예에서 BIS 데이터 패킷 L_k+1(2115)은 BIS 데이터 패킷 L_k+1(2110)과 상이한 액세스 주소와 동일한 페이로드를 포함할 수 있다.
외부 전자 장치(910)는 BIS 데이터 패킷 L_k+2(2120)를 소스 전자 장치(300)로부터 수신하고, 이어지는 시간 구간(예를 들어 소스 전자 장치(400)가 BIS 데이터 패킷 R_k+2를 전송하는 서브이벤트)에서 BIS 데이터 패킷 L_k+2(2125)를 전자 장치(405)로 전달할 수 있다. BIS 데이터 패킷 L_k+2(2125)는 소스 전자 장치(400)로부터 수신한 BIS 데이터 패킷 L_k+2(2100)와 동일한 페이로드를 포함할 수 있다.
일 실시예에서 전자 장치(405)는 BIS 데이터 패킷 L_k+1(2110)이 누락됨을 확인함에 응답하여 해당 sub_interval 내의 지정된 시간 구간(예를 들어 소스 전자 장치(400)로부터 BIS 데이터 패킷 R_k+1가 전송되는 시간 구간)에서 외부 전자 장치(910)로부터 BIS 데이터 패킷 L_k+1(2115)을 수신할 수 있다. 일 실시예에서 전자 장치(405)는 BIS 데이터 패킷 L_k(2100) 또는 BIS 데이터 패킷 L_k+2(2120)를 성공적으로 수신함에 응답하여 해당 sub_interval 내의 지정된 시간 구간에서 외부 전자 장치(910)로부터 BIS 데이터 패킷들(2105, 2125)을 수신하지 않을 수 있다.
일 실시예에서 외부 전자 장치(910)는 소스 전자 장치(400)로부터 BIS 데이터 패킷들(예를 들어 BIS 데이터 패킷들(2100, 2110, 2120))을 수신할 수 있고, 외부 전자 장치(910)는 상기 BIS 데이터 패킷들(2100, 2110, 2120)의 BIG_Sync_Delay에 근거하여 상기 BIS 데이터 패킷들(2100, 2110, 2120)의 재생 시점 이전에, 동일한 페이로드들을 포함하는 BIS 데이터 패킷들(예를 들어 BIS 데이터 패킷들(2105, 2115, 2125)을 전자 장치(405)로 릴레이할 수 있다.
도 22는 일 실시예에 따라 외부 전자 장치가 소스 전자 장치의 BIG 정보에 근거하여 오디오 데이터를 의무적으로 릴레이하는 동작을 설명하기 위한 도면이다.
도 22를 참조하면, 소스 전자 장치(400)는 BIS 이벤트 k에서 BIS 데이터 패킷 L_k(2200), BIS 데이터 패킷 R_k, BIS 데이터 패킷 L_k+1(2210), BIS 데이터 패킷 R_k+1, BIS 데이터 패킷 L_k+2(2220), 및 BIS 데이터 패킷 R_k+2를 전송할 수 있다. 일 실시예에서 전자 장치(405)는 좌측 이어버드일 수 있고, 매 BIS 이벤트가 종료된 이후에 동일한 BIS 데이터 패킷들을 릴레이하도록 외부 전자 장치(910)에게 오디오 릴레이 협상을 통해 요청할 수 있다. 도시하지 않을 것이지만 전자 장치(405)가 우측 이어버드인 경우 외부 전자 장치(910)는 우측 채널의 BIS 데이터 패킷들 R_k, R_k+1, 및 R_k+2에 대해 후술되는 동작들을 수행할 수 있다. 일 실시예에서 상기한 데이터 패킷들(L_k, R_k, L_k+1, R_k+1, L_k+2, R_k+2)은 동일 오디오 스트림에 대응할 수 있다.
BIS 이벤트 k에서 전자 장치(405)는 BIS 데이터 패킷 L_k(2200) 및 BIS 데이터 패킷 L_k+2(2220)를 성공적으로 수신하지만, BIS 데이터 패킷 L_k+1(2210)을 수신하는데 실패할 수 있다. 외부 전자 장치(910)는 BIS 이벤트 k 내에서 BIS 데이터 패킷 L_k(2200), BIS 데이터 패킷 L_k+1(2210) 및 BIS 데이터 패킷 L_k+2(2220)를 수신하고, 다음 BIS 이벤트(예를 들어 BIS 이벤트 k+1)에서 BIS 데이터 패킷 L_k(2205), BIS 데이터 패킷 L_k+1(2215) 및 BIS 데이터 패킷 L_k+2(2225)를 전자 장치(405)로 릴레이할 수 있다. 일 실시예에서 BIS 데이터 패킷 L_k(2205), BIS 데이터 패킷 L_k+1(2215) 및 BIS 데이터 패킷 L_k+2(2225)는 외부 전자 장치(910)가 소스 전자 장치(400)로부터 수신한 BIS 데이터 패킷 L_k(2200), BIS 데이터 패킷 L_k+1(2210) 및 BIS 데이터 패킷 L_k+2(2220)과 동일한 페이로드와, 동일하거나 상이한 액세스 주소를 포함할 수 있다.
일 실시예에서 전자 장치(405)는 BIS 데이터 패킷 L_k+1(2210)이 누락됨을 확인함에 응답하여 BIS 이벤트 k+1에서 외부 전자 장치(910)로부터 BIS 데이터 패킷 L_k+1(2215)을 수신할 수 있다. 일 실시예에서 전자 장치(405)는 BIS 데이터 패킷 L_k(2200) 또는 BIS 데이터 패킷 L_k+2(2200)를 성공적으로 수신함에 응답하여 해당 BIS 이벤트(예를 들어 BIS 이벤트 k+1) 내에서 제2 BIG를 통해 외부 전자 장치(910)로부터 BIS 데이터 패킷 L_k(2215) 또는 BIS 데이터 패킷 L_k+2(2225)를 수신하지 않을 수 있다.
일 실시예에서 외부 전자 장치(910)는 소스 전자 장치(400)로부터 BIS 데이터 패킷들(예를 들어 BIS 데이터 패킷들(2200, 2210, 2220))을 수신하고, 외부 전자 장치(910)는 상기 BIS 데이터 패킷들(2200, 2210, 2220)의 BIG_Sync_Delay에 근거하여 상기 BIS 데이터 패킷들(2200, 2210, 2220)의 재생 시점 이전에, 동일한 페이로드들을 포함하는 BIS 데이터 패킷들(예를 들어 BIS 데이터 패킷들(2205, 2215, 2225))을 전자 장치(405)로 릴레이할 수 있다.
도 23은 일 실시예에 따라 외부 전자 장치가 새로운 BIG를 통해 오디오 데이터를 릴레이하는 동작을 설명하기 위한 도면이다.
도 23을 참조하면, 소스 전자 장치(400)는 제1 BIG의 BIS 이벤트 k에서 BIS 데이터 패킷 L_k(2300), BIS 데이터 패킷 R_k, BIS 데이터 패킷 L_k+1(2310), BIS 데이터 패킷 R_k+1, BIS 데이터 패킷 L_k+2(2320), 및 BIS 데이터 패킷 R_k+2를 전송할 수 있다. 일 실시예에서 전자 장치(405)는 좌측 이어버드일 수 있고, 새로운 BIG(예를 들어 제2 BIG)를 사용하여 BIS 데이터 패킷들을 릴레이하도록 외부 전자 장치(910)에게 오디오 릴레이 협상을 통해 요청할 수 있다. 도시하지 않을 것이지만 전자 장치(405)가 우측 이어버드인 경우 외부 전자 장치(910)는 우측 채널의 BIS 데이터 패킷들 R_k, R_k+1, 및 R_k+2에 대해 후술되는 동작들을 수행할 수 있다. 일 실시예에서 상기한 데이터 패킷들(L_k, R_k, L_k+1, R_k+1, L_k+2, R_k+2)은 동일 오디오 스트림에 대응할 수 있다.
BIS 이벤트 k에서 전자 장치(405)는 BIS 데이터 패킷 L_k(2300) 및 BIS 데이터 패킷 L_k+2(2320)를 성공적으로 수신하지만, BIS 데이터 패킷 L_k+1(2310)을 수신하는데 실패할 수 있다. 외부 전자 장치(910)는 BIS 데이터 패킷 L_k(2300), BIS 데이터 패킷 L_k+1(2310) 및 BIS 데이터 패킷 L_k+2(2320)를 성공적으로 수신한 이후, BIS 데이터 패킷 L_k(2305a), BIS 데이터 패킷 L_k+1(2315a) 및 BIS 데이터 패킷 L_k+2(2325a)를 포함하는 제1 세트(2330a)와, BIS 데이터 패킷 L_k(2305b), BIS 데이터 패킷 L_k+1(2315b) 및 BIS 데이터 패킷 L_k+2(2325b)를 포함하는 제2 세트(2330b)를 제2 BIG를 통해 전송할 수 있다. 일 실시예에서 외부 전자 장치(910)는 제1 세트(2330a)와 제2 세트(2330b)를 포함하여, 소스 장치(400)가 데이터를 전송하는 시간 구간을 제외한 나머지 구간 내에서 최대한의 개수만큼의 동일한 세트들을 반복 전송할 수 있다.
일 실시예에서 외부 전자 장치(910)가 전달하는 제1 세트(2330a)의 BIS 데이터 패킷들(예를 들어 BIS 데이터 패킷들(2305a, 2315a, 2325a))은 외부 전자 장치(910)가 소스 전자 장치(400)로부터 수신한 BIS 데이터 패킷들(예를 들어 BIS 데이터 패킷 L_k(2300), BIS 데이터 패킷 L_k+1(2310) 및 BIS 데이터 패킷 L_k+2(2320))과 동일한 페이로드 및 동일하거나 상이한 액세스 주소를 포함할 수 있다. 외부 전자 장치(910)는 BIS 데이터 패킷들(2305a, 2315a, 2325a))을 지정된 시간 간격에 따라 순차적으로 전송할 수 있다. 외부 전자 장치(910)가 전달하는 제2 세트(2330b)의 BIS 데이터 패킷들(예를 들어 BIS 데이터 패킷들(2305b, 2315b, 2325b))은 외부 전자 장치(910)가 소스 전자 장치(400)로부터 수신한 BIS 데이터 패킷들(예를 들어 BIS 데이터 패킷 L_k(2300), BIS 데이터 패킷 L_k+1(2310) 및 BIS 데이터 패킷 L_k+2(2320))과 동일한 페이로드 및 동일하거나 상이한 액세스 주소를 포함할 수 있다. 외부 전자 장치(910)는 BIS 데이터 패킷들(2305b, 2315b, 2325b))을 지정된 시간 간격에 따라 순차적으로 전송할 수 있다.
일 실시예에서 외부 전자 장치(910)가 제1 BIG를 통해 BIS 데이터 패킷들(예를 들어 BIS 데이터 패킷들(2300, 2310, 2320))을 수신하고, 외부 전자 장치(910)는 상기 BIS 데이터 패킷들(2300, 2310, 2320)의 BIG_Sync_Delay에 근거하여 BIS 데이터 패킷들(2300, 2310, 2320)의 재생 시점 이전에, 동일한 페이로드들을 포함하는 BIS 데이터 패킷들(예를 들어 BIS 데이터 패킷들(2305a, 2315a, 2325a, 2305b, 2315b, 2325b))을 제2 BIG를 통해 전자 장치(405)로 릴레이할 수 있다.
일 실시예에서 전자 장치(405)는 소스 장치(400)로부터 성공적으로 수신한 BIS 데이터 패킷들 L_k 및 L_k+2를 제외하고, 누락된 BIS 데이터 패킷 L_k+1(예를 들어 BIS 데이터 패킷 L_k+1(2315a) 또는 BIS 데이터 패킷 L_k+1(2315b) 중 적어도 하나)만을 외부 전자 장치(910)로부터 수신할 수 있다. 전자 장치(405)는 BIS 데이터 패킷 L_k+1(2315a)을 성공적으로 수신한 경우, BIS 데이터 패킷 L_k+1(2315b)을 수신하지 않을 수 있다.
일 실시예에서 전자 장치(405)와 외부 전자 장치(910)는 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)을 수신하는 즉시 수신 여부 지시 정보(예를 들어 수신 확인 정보)를 공유하고, 누락된 BIS 데이터 패킷이 검출되는 즉시 상기 누락된 BIS 데이터 패킷을 전달하도록 오디오 릴레이 협상을 통해 결정할 수 있다. 일 실시예에서 전자 장치(405)는 오디오 데이터를 수신하기 위한 서브이벤트의 시작 시점에서 통신 회로(320)의 수신 회로를 활성화할 수 있다. 일 실시예에서 전자 장치(405)는 서브이벤트의 BIS 데이터 패킷을 성공적으로 수신하고, 상기 서브이벤트 동안 상기 BIS 데이터 패킷에 대응하는 수신 여부 지시 정보(예를 들어 수신 확인 정보)를 외부 전자 장치(910)로 전송할 수 있다.
외부 전자 장치(910)는 전자 장치(405)로부터 수신 확인 신호를 수신하지 못한 경우, 전자 장치(405)가 오디오 데이터를 수신하지 못했다고(예를 들어 누락했다고) 판단할 수 있다. 외부 전자 장치(910)는 전자 장치(405)로부터 수신 확인 신호를 수신한 시점으로부터, 소스 전자 장치(400)로부터 다음 오디오 데이터가 전송되기 전 임의의 시간 구간 동안, 상기 수신 확인 신호에 대응하는 오디오 데이터를 전자 장치(405)에게 전송(예를 들어 릴레이)할 수 있다.
일 실시예에 따른 전자 장치(405)는, 통신 회로(320)와, 상기 통신 회로와 작동적으로 연결된 적어도 하나의 프로세서(310)를 포함할 수 있다. 상기 적어도 하나의 프로세서는, 상기 통신 회로를 통하여 외부 전자 장치(910)와 통신 링크를 연결하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 통신 링크를 통해 상기 외부 전자 장치와 오디오 서비스를 위한 오디오 릴레이 협상을 수행하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 소스 전자 장치로부터 브로드캐스트되는 적어도 하나의 제1 데이터 패킷을 수신하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 오디오 릴레이 협상을 기반으로 상기 오디오 서비스와 관련된 수신 여부 지시 정보를 상기 통신 링크를 통해 상기 외부 전자 장치에게 전송하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 오디오 릴레이 협상을 기반으로 상기 외부 전자 장치로부터 상기 외부 전자 장치가 상기 소스 전자 장치로부터 수신한 적어도 하나의 제2 데이터 패킷을 포함하는 릴레이 데이터를 수신하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 적어도 하나의 제1 데이터 패킷 및 상기 적어도 하나의 제2 데이터 패킷을 기반으로 오디오를 출력하도록 구성될 수 있다.
일 실시예에서 상기 적어도 하나의 프로세서는, 상기 오디오 릴레이 협상을 통해, 상기 수신 여부 지시 정보가 수신 확인 정보, 미수신 확인 정보, 또는 둘 다를 포함하는지를 나타내는 정보, 상기 수신 여부 지시 정보를 전송하는 시점, 또는 상기 릴레이 데이터를 수신하는 시점 중 적어도 하나를 결정하도록 구성될 수 있다.
일 실시예에서 상기 적어도 하나의 제2 데이터 패킷은, 상기 적어도 하나의 제1 데이터 패킷의 액세스 주소와 상이한 액세스 주소를 가질 수 있다.
일 실시예에서 상기 적어도 하나의 프로세서는, 상기 적어도 하나의 제1 데이터 패킷을 수신한 이후, 상기 오디오 서비스 중 상기 적어도 하나의 제1 데이터 패킷에 후속하는 다음 데이터 패킷의 지정된 수신 시점 이전에 상기 수신 여부 지시 정보를 전송하도록 구성될 수 있다.
일 실시예에서 상기 적어도 하나의 프로세서는, 상기 적어도 하나의 제1 데이터 패킷을 수신하고, 다음 BIS 이벤트 내의 지정된 시점에서 상기 수신 여부 지시 정보를 전송하도록 구성될 수 있다.
일 실시예에서 상기 적어도 하나의 프로세서는, 상기 적어도 하나의 제1 데이터 패킷의 물리 채널과 동일한 물리 채널을 통해 상기 수신 여부 지시 정보를 전송하도록 구성될 수 있다.
일 실시예에 따른 전자 장치(910)는 통신 회로(1005)와 상기 통신 회로와 작동적으로 연결된 적어도 하나의 프로세서(1010)를 포함할 수 있다. 상기 적어도 하나의 프로세서는 상기 통신 회로를 통하여 외부 전자 장치(405)와 통신 링크를 연결하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 통신 링크를 통해 상기 외부 전자 장치와 오디오 서비스를 위한 오디오 릴레이 협상을 수행하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 소스 전자 장치로부터 브로드캐스트되는 적어도 하나의 제1 데이터 패킷을 수신하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 오디오 릴레이 협상을 기반으로 상기 오디오 서비스와 관련된 수신 여부 지시 정보가 상기 통신 링크를 통해 상기 외부 전자 장치로부터 수신되는지 확인하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 수신 여부 지시 정보에 근거하여, 상기 오디오 릴레이 협상을 기반으로 상기 소스 전자 장치로부터 수신된 적어도 하나의 제1 데이터 패킷을 포함하는 릴레이 데이터를 상기 외부 전자 장치로 전송하도록 구성될 수 있다.
일 실시예에서 상기 적어도 하나의 프로세서는, 상기 오디오 릴레이 협상을 통해, 상기 수신 여부 지시 정보가 수신 확인 정보, 미수신 확인 정보, 또는 둘 다를 포함하는지를 나타내는 정보, 상기 수신 여부 지시 정보를 수신하는 시점, 또는 상기 릴레이 데이터를 전송하는 시점 중 적어도 하나를 결정하도록 구성될 수 있다.
일 실시예에서 상기 적어도 하나의 프로세서는, 상기 적어도 하나의 제1 데이터 패킷을 수신한 이후, 상기 적어도 하나의 제1 데이터 패킷의 다음 데이터 패킷의 수신 이전에 상기 적어도 하나의 제1 데이터 패킷의 물리 채널과 동일한 물리 채널 상에서 상기 수신 여부 지시 정보가 수신되는지 확인하도록 구성될 수 있다.
일 실시예에서 상기 적어도 하나의 프로세서는, 상기 적어도 하나의 제1 데이터 패킷을 수신하고, 다음 BIS 이벤트 내의 지정된 시점에서 상기 적어도 하나의 제1 데이터 패킷의 물리 채널과 동일한 물리 채널 상에서 상기 수신 여부 지시 정보가 수신되는지 확인하도록 구성될 수 있다.
일 실시예에 따른 전자 장치(405)의 동작 방법은, 외부 전자 장치(910)와 통신 링크를 연결하는 동작(1205)을 포함할 수 있다. 상기 방법은 상기 통신 링크를 통해 상기 외부 전자 장치와 오디오 서비스를 위한 오디오 릴레이 협상을 수행하는 동작(1210)을 포함할 수 있다. 상기 방법은 소스 전자 장치로부터 브로드캐스트되는 적어도 하나의 제1 데이터 패킷을 수신하는 동작(1220)을 포함할 수 있다. 상기 방법은 상기 오디오 릴레이 협상을 기반으로 상기 오디오 서비스와 관련된 수신 여부 지시 정보를 상기 통신 링크를 통해 상기 외부 전자 장치에게 전송하는 동작(1225)을 포함할 수 있다. 상기 방법은 상기 오디오 릴레이 협상을 기반으로 상기 외부 전자 장치로부터 상기 외부 전자 장치가 상기 소스 전자 장치로부터 수신한 적어도 하나의 제2 데이터 패킷을 포함하는 릴레이 데이터를 수신하는 동작(1230)을 포함할 수 있다. 상기 방법은 상기 적어도 하나의 제1 데이터 패킷 및 상기 적어도 하나의 제2 데이터 패킷을 기반으로 오디오를 출력하는 동작(1245)을 포함할 수 있다.
일 실시예에서 상기 오디오 릴레이 협상은, 상기 수신 여부 지시 정보가 수신 확인 정보, 미수신 확인 정보, 또는 둘 다를 포함하는지를 나타내는 정보, 상기 수신 여부 지시 정보를 전송하는 시점, 또는 상기 릴레이 데이터를 수신하는 시점 중 적어도 하나를 결정하는 동작을 포함할 수 있다.
일 실시예에서 상기 적어도 하나의 제2 데이터 패킷은, 상기 적어도 하나의 제1 데이터 패킷의 액세스 주소와 상이한 액세스 주소를 가질 수 있다.
일 실시예에서 상기 수신 여부 지시 정보는, 상기 적어도 하나의 제1 데이터 패킷을 수신한 이후, 상기 적어도 하나의 제1 데이터 패킷의 다음 데이터 패킷의 수신 이전에 전송될 수 있다.
일 실시예에서 상기 수신 여부 지시 정보는, 상기 적어도 하나의 제1 데이터 패킷을 수신한 이후, 다음 BIS 이벤트 내의 지정된 시점에서 전송될 수 있다.
일 실시예에서 상기 수신 여부 지시 정보는, 상기 적어도 하나의 제1 데이터 패킷의 물리 채널과 동일한 물리 채널을 통해 전송될 수 있다.
일 실시예에 따른 전자 장치(910)의 동작 방법은, 외부 전자 장치(405)와 통신 링크를 연결하는 동작(1305)을 포함할 수 있다. 상기 방법은 상기 통신 링크를 통해 상기 외부 전자 장치와 오디오 서비스를 위한 오디오 릴레이 협상을 수행하는 동작(1310)을 포함할 수 있다. 상기 방법은 소스 전자 장치로부터 브로드캐스트되는 적어도 하나의 제1 데이터 패킷을 수신하는 동작(1320)을 포함할 수 있다. 상기 방법은 상기 오디오 릴레이 협상을 기반으로 상기 오디오 서비스와 관련된 수신 여부 지시 정보가 상기 통신 링크를 통해 상기 외부 전자 장치로부터 수신되는지 확인하는 동작(1325)을 포함할 수 있다. 상기 방법은 상기 수신 여부 지시 정보에 근거하여, 상기 오디오 릴레이 협상을 기반으로 상기 소스 전자 장치로부터 수신된 적어도 하나의 제1 데이터 패킷을 포함하는 릴레이 데이터를 상기 외부 전자 장치로 전송하는 동작(1330)을 포함할 수 있다.
일 실시예에서 상기 오디오 릴레이 협상은, 상기 수신 여부 지시 정보가 수신 확인 정보, 미수신 확인 정보, 또는 둘 다를 포함하는지를 나타내는 정보, 상기 수신 여부 지시 정보를 수신하는 시점, 또는 상기 릴레이 데이터를 전송하는 시점 중 적어도 하나를 결정하는 동작을 포함할 수 있다.
일 실시예에서 상기 수신 여부 지시 정보는, 상기 적어도 하나의 제1 데이터 패킷을 수신한 이후, 상기 적어도 하나의 제1 데이터 패킷의 다음 데이터 패킷의 수신 이전에 상기 적어도 하나의 제1 데이터 패킷의 물리 채널과 동일한 물리 채널 상에서 수신될 수 있다.
일 실시예에서 상기 수신 여부 지시 정보는, 상기 적어도 하나의 제1 데이터 패킷을 수신한 이후, 다음 BIS(broadcast isochronous stream) 이벤트 내의 지정된 시점에서 상기 적어도 하나의 제1 데이터 패킷의 물리 채널과 동일한 물리 채널 상에서 수신될 수 있다.
본 문서에 개시된 다양한 실시예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.
본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나", 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.
본 문서의 다양한 실시예들에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로와 같은 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다.
본 문서의 다양한 실시예들은 기기(machine)(예: 전자 장치(202 또는 204) 또는 전자 장치(101)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 메모리(390), 내장 메모리(136) 또는 외장 메모리(138))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(140))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(202 또는 204) 또는 전자 장치(101))의 프로세서(예: 프로세서(310) 또는 프로세서(120))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장 매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장 매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory(CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트 폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있으며, 복수의 개체 중 일부는 다른 구성요소에 분리 배치될 수도 있다. 다양한 실시예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.
Claims (20)
- 전자 장치(405)에 있어서,
통신 회로(320)와,
상기 통신 회로와 작동적으로 연결된 적어도 하나의 프로세서(310)를 포함하고,
상기 적어도 하나의 프로세서는,
상기 통신 회로를 통하여 외부 전자 장치(910)와 통신 링크를 연결하고,
상기 통신 링크를 통해 상기 외부 전자 장치와 오디오 서비스를 위한 오디오 릴레이 협상을 수행하고,
소스 전자 장치로부터 브로드캐스트되는 적어도 하나의 제1 데이터 패킷을 수신하고,
상기 오디오 릴레이 협상을 기반으로 상기 오디오 서비스와 관련된 수신 여부 지시 정보를 상기 통신 링크를 통해 상기 외부 전자 장치에게 전송하고,
상기 오디오 릴레이 협상을 기반으로 상기 외부 전자 장치로부터, 상기 외부 전자 장치가 상기 소스 전자 장치로부터 수신한 적어도 하나의 제2 데이터 패킷을 포함하는 릴레이 데이터를 수신하고,
상기 적어도 하나의 제1 데이터 패킷 및 상기 적어도 하나의 제2 데이터 패킷을 기반으로 오디오를 출력하도록 구성되는 것을 특징으로 하는 전자 장치. - 제 1 항에 있어서, 상기 적어도 하나의 프로세서는, 상기 오디오 릴레이 협상을 통해,
상기 수신 여부 지시 정보가 수신 확인 정보, 미수신 확인 정보, 또는 둘 다를 포함하는지를 나타내는 정보,
상기 수신 여부 지시 정보를 전송하는 시점, 또는
상기 릴레이 데이터를 수신하는 시점 중 적어도 하나를 결정하도록 구성되는 것을 특징으로 하는 전자 장치. - 제 1 항 또는 제 2 항에 있어서, 상기 적어도 하나의 제2 데이터 패킷은,
상기 적어도 하나의 제1 데이터 패킷의 액세스 주소와 상이한 액세스 주소를 가지는 것을 특징으로 하는 전자 장치. - 제 1 항 내지 제 3 항 중 어느 한 항에 있어서, 상기 적어도 하나의 프로세서는,
상기 적어도 하나의 제1 데이터 패킷을 수신한 이후, 상기 오디오 서비스 중 상기 적어도 하나의 제1 데이터 패킷에 후속하는 다음 데이터 패킷의 지정된 수신 시점 이전에 상기 수신 여부 지시 정보를 전송하도록 구성되는 것을 특징으로 하는 전자 장치. - 제 1 항 내지 제 4 항 중 어느 한 항에 있어서, 상기 적어도 하나의 프로세서는,
상기 적어도 하나의 제1 데이터 패킷을 수신하고, 다음 BIS(broadcast isochronous stream) 이벤트 내의 지정된 시점에서 상기 수신 여부 지시 정보를 전송하도록 구성되는 것을 특징으로 하는 전자 장치. - 제 1 항 내지 제 5 항 중 어느 한 항에 있어서, 상기 적어도 하나의 프로세서는,
상기 적어도 하나의 제1 데이터 패킷의 물리 채널과 동일한 물리 채널을 통해 상기 수신 여부 지시 정보를 전송하도록 구성되는 것을 특징으로 하는 전자 장치. - 전자 장치(910)에 있어서,
통신 회로(1005)와
상기 통신 회로와 작동적으로 연결된 적어도 하나의 프로세서(1010)를 포함하고,
상기 적어도 하나의 프로세서는,
상기 통신 회로를 통하여 외부 전자 장치(405)와 통신 링크를 연결하고,
상기 통신 링크를 통해 상기 외부 전자 장치와 오디오 서비스를 위한 오디오 릴레이 협상을 수행하고,
소스 전자 장치로부터 브로드캐스트되는 적어도 하나의 제1 데이터 패킷을 수신하고,
상기 오디오 릴레이 협상을 기반으로 상기 오디오 서비스와 관련된 수신 여부 지시 정보가 상기 통신 링크를 통해 상기 외부 전자 장치로부터 수신되는지 확인하고,
상기 수신 여부 지시 정보에 근거하여, 상기 오디오 릴레이 협상을 기반으로 상기 소스 전자 장치로부터 수신된 적어도 하나의 제1 데이터 패킷을 포함하는 릴레이 데이터를 상기 외부 전자 장치로 전송하도록 구성되는 것을 특징으로 하는 전자 장치. - 제 7 항에 있어서, 상기 적어도 하나의 프로세서는, 상기 오디오 릴레이 협상을 통해,
상기 수신 여부 지시 정보가 수신 확인 정보, 미수신 확인 정보, 또는 둘 다를 포함하는지를 나타내는 정보,
상기 수신 여부 지시 정보를 수신하는 시점, 또는
상기 릴레이 데이터를 전송하는 시점 중 적어도 하나를 결정하도록 구성되는 것을 특징으로 하는 전자 장치. - 제 7 항 또는 제 8 항에 있어서, 상기 적어도 하나의 프로세서는,
상기 적어도 하나의 제1 데이터 패킷을 수신한 이후, 상기 적어도 하나의 제1 데이터 패킷의 다음 데이터 패킷의 수신 이전에 상기 적어도 하나의 제1 데이터 패킷의 물리 채널과 동일한 물리 채널 상에서 상기 수신 여부 지시 정보가 수신되는지 확인하도록 구성되는 것을 특징으로 하는 전자 장치. - 제 7 항 내지 제 9 항 중 어느 한 항에 있어서, 상기 적어도 하나의 프로세서는,
상기 적어도 하나의 제1 데이터 패킷을 수신하고, 다음 BIS(broadcast isochronous stream) 이벤트 내의 지정된 시점에서 상기 적어도 하나의 제1 데이터 패킷의 물리 채널과 동일한 물리 채널 상에서 상기 수신 여부 지시 정보가 수신되는지 확인하도록 구성되는 것을 특징으로 하는 전자 장치. - 전자 장치(405)의 동작 방법에 있어서,
외부 전자 장치(910)와 통신 링크를 연결하는 동작(1205)과,
상기 통신 링크를 통해 상기 외부 전자 장치와 오디오 서비스를 위한 오디오 릴레이 협상을 수행하는 동작(1210)과,
소스 전자 장치로부터 브로드캐스트되는 적어도 하나의 제1 데이터 패킷을 수신하는 동작(1220)과,
상기 오디오 릴레이 협상을 기반으로 상기 오디오 서비스와 관련된 수신 여부 지시 정보를 상기 통신 링크를 통해 상기 외부 전자 장치에게 전송하는 동작(1225)과,
상기 오디오 릴레이 협상을 기반으로 상기 외부 전자 장치로부터, 상기 외부 전자 장치가 상기 소스 전자 장치로부터 수신한 적어도 하나의 제2 데이터 패킷을 포함하는 릴레이 데이터를 수신하는 동작(1230)과,
상기 적어도 하나의 제1 데이터 패킷 및 상기 적어도 하나의 제2 데이터 패킷을 기반으로 오디오를 출력하는 동작(1245)을 포함하도록 구성되는 것을 특징으로 하는 방법. - 제 11 항에 있어서, 상기 오디오 릴레이 협상은,
상기 수신 여부 지시 정보가 수신 확인 정보, 미수신 확인 정보, 또는 둘 다를 포함하는지를 나타내는 정보,
상기 수신 여부 지시 정보를 전송하는 시점, 또는
상기 릴레이 데이터를 수신하는 시점 중 적어도 하나를 결정하는 동작을 포함하는 것을 특징으로 하는 방법. - 제 11 항 또는 제 12 항에 있어서, 상기 적어도 하나의 제2 데이터 패킷은,
상기 적어도 하나의 제1 데이터 패킷의 액세스 주소와 상이한 액세스 주소를 가지는 것을 특징으로 하는 방법. - 제 11 항 내지 제 13 항 중 어느 한 항에 있어서, 상기 수신 여부 지시 정보는,
상기 적어도 하나의 제1 데이터 패킷을 수신한 이후, 상기 적어도 하나의 제1 데이터 패킷의 다음 데이터 패킷의 수신 이전에 전송되는 것을 특징으로 하는 방법. - 제 11 항 내지 제 14 항 중 어느 한 항에 있어서, 상기 수신 여부 지시 정보는,
상기 적어도 하나의 제1 데이터 패킷을 수신한 이후, 다음 BIS(broadcast isochronous stream) 이벤트 내의 지정된 시점에서 전송되는 것을 특징으로 하는 방법. - 제 11 항에 있어서, 상기 수신 여부 지시 정보는,
상기 적어도 하나의 제1 데이터 패킷의 물리 채널과 동일한 물리 채널을 통해 전송되는 것을 특징으로 하는 방법. - 전자 장치(910)의 동작 방법에 있어서,
외부 전자 장치(405)와 통신 링크를 연결하는 동작(1305)과,
상기 통신 링크를 통해 상기 외부 전자 장치와 오디오 서비스를 위한 오디오 릴레이 협상을 수행하는 동작(1310)과,
소스 전자 장치로부터 브로드캐스트되는 적어도 하나의 제1 데이터 패킷을 수신하는 동작(1320)과,
상기 오디오 릴레이 협상을 기반으로 상기 오디오 서비스와 관련된 수신 여부 지시 정보가 상기 통신 링크를 통해 상기 외부 전자 장치로부터 수신되는지 확인하는 동작(1325)과,
상기 수신 여부 지시 정보에 근거하여, 상기 오디오 릴레이 협상을 기반으로 상기 소스 전자 장치로부터 수신된 적어도 하나의 제1 데이터 패킷을 포함하는 릴레이 데이터를 상기 외부 전자 장치로 전송하는 동작(1330)을 포함하는 것을 특징으로 하는 방법. - 제 17 항에 있어서, 상기 오디오 릴레이 협상은,
상기 수신 여부 지시 정보가 수신 확인 정보, 미수신 확인 정보, 또는 둘 다를 포함하는지를 나타내는 정보,
상기 수신 여부 지시 정보를 수신하는 시점, 또는
상기 릴레이 데이터를 전송하는 시점 중 적어도 하나를 결정하는 동작을 포함하는 것을 특징으로 하는 방법. - 제 17 항 또는 제 18 항에 있어서, 상기 수신 여부 지시 정보는,
상기 적어도 하나의 제1 데이터 패킷을 수신한 이후, 상기 적어도 하나의 제1 데이터 패킷의 다음 데이터 패킷의 수신 이전에 상기 적어도 하나의 제1 데이터 패킷의 물리 채널과 동일한 물리 채널 상에서 수신되는 것을 특징으로 하는 방법. - 제 17 항 내지 제 19 항 중 어느 한 항에 있어서, 상기 수신 여부 지시 정보는,
상기 적어도 하나의 제1 데이터 패킷을 수신한 이후, 다음 BIS(broadcast isochronous stream) 이벤트 내의 지정된 시점에서 상기 적어도 하나의 제1 데이터 패킷의 물리 채널과 동일한 물리 채널 상에서 수신되는 것을 특징으로 하는 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/KR2023/014570 WO2024071871A1 (ko) | 2022-09-27 | 2023-09-22 | 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220122637 | 2022-09-27 | ||
KR20220122637 | 2022-09-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240043636A true KR20240043636A (ko) | 2024-04-03 |
Family
ID=90662700
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220163132A KR20240043636A (ko) | 2022-09-27 | 2022-11-29 | 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20240043636A (ko) |
-
2022
- 2022-11-29 KR KR1020220163132A patent/KR20240043636A/ko unknown
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11502786B2 (en) | Electronic device for retransmitting data in Bluetooth network environment and method thereof | |
EP3917273B1 (en) | Electronic device for transmitting response message in bluetooth network environment and method therefor | |
US20240056720A1 (en) | Method for outputting audio signal, and electronic device for performing same | |
US20220319553A1 (en) | Electronic device for processing audio data and method for operating same | |
US11916987B2 (en) | Electronic device for processing audio data, and operation method thereof | |
KR20220102492A (ko) | 오디오 데이터를 처리하기 위한 오디오 장치 및 그의 동작 방법 | |
US20230097491A1 (en) | Electronic device transmitting pairing support signal and method operating the same | |
US20220353330A1 (en) | Electronic device and method for recording audio data acquired from multiple devices | |
US11818781B2 (en) | Communication method between multi devices in Bluetooth communication environment and electronic device therefor | |
KR20240043636A (ko) | 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법 | |
US20240267960A1 (en) | Electronic device for providing audio service and operation method thereof | |
KR20240155682A (ko) | 블루투스 통신 시간을 결정하는 전자 장치 및 그 동작 방법 | |
EP4287649A1 (en) | Electronic device for providing audio service, and operation method therefor | |
US20230155733A1 (en) | Device and method for transmitting response packet | |
US20230100921A1 (en) | Electronic device for transmitting and receiving data packet and operating method thereof | |
KR20230148770A (ko) | 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법 | |
US20230116736A1 (en) | Electronic device for providing audio service and operating method thereof | |
US20230336904A1 (en) | Electronic device for processing audio data and operation method therefor | |
KR20240056369A (ko) | 블루투스 연결을 통해 통신하는 전자 장치 및 그 동작 방법 | |
US11923981B2 (en) | Electronic device for transmitting packets via wireless communication connection and method of operating the same | |
US20240049317A1 (en) | Electronic device, method, and non-transitory computer readable storage medium for audio streaming in wireless environment | |
KR102664874B1 (ko) | 수신 경로 스위칭 방법 및 이를 위한 전자 장치 | |
US20240251203A1 (en) | Electronic device and operation method thereof | |
KR20230051037A (ko) | 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법 | |
KR20230072003A (ko) | 응답 패킷 송신 장치 및 방법 |