KR20150081322A - 공유 시청각 리소스의 제어를 협상하기 위한 시스템 및 방법 - Google Patents

공유 시청각 리소스의 제어를 협상하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20150081322A
KR20150081322A KR1020157014215A KR20157014215A KR20150081322A KR 20150081322 A KR20150081322 A KR 20150081322A KR 1020157014215 A KR1020157014215 A KR 1020157014215A KR 20157014215 A KR20157014215 A KR 20157014215A KR 20150081322 A KR20150081322 A KR 20150081322A
Authority
KR
South Korea
Prior art keywords
vehicle
shared
state information
resource
ownership
Prior art date
Application number
KR1020157014215A
Other languages
English (en)
Other versions
KR101786537B1 (ko
Inventor
앤드류 이. 로스타잉
에릭 에스. 리
그레고리 알. 채프만
Original Assignee
애플 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 애플 인크. filed Critical 애플 인크.
Publication of KR20150081322A publication Critical patent/KR20150081322A/ko
Application granted granted Critical
Publication of KR101786537B1 publication Critical patent/KR101786537B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/24Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using dedicated network management hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Telephone Function (AREA)
  • Navigation (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

공유 시청각 리소스의 제어를 협상하기 위한 시스템 및 방법이 개시된다. 공유 시청각 리소스의 제어에 대한 요청이 중재기에서 수신된다. 중재기는 공유 시청각 리소스의 소유권에 대한 기존 상태 정보 및 공유 시청각 리소스의 소유권 전환 조건을 유지한다. 임베디스 시스템 상에서 실행되는 프로세스 및 모바일 컴퓨팅 디바이스 상에서 실행되는 프로세스 중 하나로부터 요청이 수신된다. 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보는 제어 및 소유권 전환 조건에 대한 요청에 적어도 부분적으로 기초하여 결정된다. 새로운 상태 정보는 프로세스들 중 어떤 것이 공유 시청각 리소스의 출력을 제어하는지 표시한다.

Description

공유 시청각 리소스의 제어를 협상하기 위한 시스템 및 방법{SYSTEM AND METHOD FOR NEGOTIATING CONTROL OF A SHARED AUDIO OR VISUAL RESOURCE}
본 개시 내용은 개략적으로 시청각 리소스의 공동 이용에 관한 것으로, 더 구체적으로는 공유 시청각 리소스의 제어를 협상하는 것에 관한 것이다.
차량용 시청각 시스템 및 모바일 컴퓨팅 디바이스(다기능 디바이스라고도 불림)는 다기능 디바이스에서 실행되는 프로세스와 차량에서 실행되는 프로세스에 의해 공유되는 시청각 리소스의 제어를 전환하도록 하는 요구가 빈번하다. 예를 들어, 사용자는 자동차의 임베디드 시스템 상에서 실행되는 다양한 프로세스들을 통해 전화기 또는 태블릿 컴퓨터와 같은 다기능 디바이스 상에서 재생되고 있는 음악과 자동차 자체에 의해 제공되고 있는 네비게이션 지시 또는 차량 상황 정보 간의 전환을 원할 수 있다.
점점 더 네트워크화되는 다른 환경에 있는 디바이스들의 출현으로 인해, 시청각 리소스 등의 공유 제어에 대한 바람은 다른 맥락에서 존재하고, 예를 들어, 홈 엔터테인먼트 시스템에서 텔레비전 스크린의 제어를 중재하기 위한 현재의 도구들은 복잡하고, 다루기 힘들고, 만족스럽지 못하다.
오늘날 기술은 스피커와 같은 출력 디바이스를 제어하기 위하여(예를 들어, 디바이스를 입력 잭에 꽂고 스테레오 상의 버튼을 눌러 오디오를 스테레오에서 전화기로 바꿈) 사용자에 의한 거친 수동적 개입을 요구한다. 사용자에게 이용 가능한 디바이스들의 급증, 이러한 다기능 디바이스(예를 들어, 음악, 비디오, 전화기 퍼스널 어시스턴트(personal assistant), 네비게이션)이 제공하는 서비스의 증가, 임베디드 시스템(예를 들어, 차량 원격 측정 및 제어, 네비게이션, 전화기, 다양한 구성의 라디오, 안전 정보)이 제공하는 서비스의 증가로 인해, 스테레오 표면의 버튼들을 누르는, 오류 발생이 적고 더 효율적인 교체에 대한 요구가 점점 더 급하게 되고 있다.
공유 시청각 리소스의 제어를 협상하기 위한 시스템 및 방법이 개시된다. 공유 시청각 리소스의 제어에 대한 요청이 중재기에서 수신된다. 중재기는 공유 시청각 리소스의 소유권에 대한 기존 상태 정보 및 공유 시청각 리소스의 소유권 전환 조건을 유지한다. 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보는 제어 및 소유권 전환 조건에 대한 요청에 적어도 부분적으로 기초하여 결정된다. 새로운 상태 정보는 프로세스들 중 어떤 것이 공유 시청각 리소스의 출력을 제어하는지 표시한다. 공유 시청각 리소스의 새로운 소유권 전환 조건이 결정되고 공유 시청각 리소스의 제어기 인터페이스에 전달된다.
도 1은 일부 실시예에 따라 휴대용 다기능 디바이스의 블록 다이어그램을 도시한다.
도 2는 일부 실시예에 따라 휴대용 다기능 디바이스를 도시한다.
도 3a는 일부 실시예에 따라 차량의 시청각 리소스와 상호작용하는 다기능 디바이스를 도시한다.
도 3b는 일부 실시예에 따라 홈 엔터테인먼트 및 자동화 시스템의 시청각 리소스와 상호 작용하는 다기능 디바이스를 도시한다.
도 3c는 일부 실시예에 따라 항공기의 시청각 리소스와 상호작용하는 다기능 디바이스를 도시한다.
도 4는 일부 실시예에 따라 자동차의 공유 시청각 리소스의 제어를 협상하기 위한 중재기 모듈을 도시한다.
도 5a는 자동차의 공유 시청각 리소스의 제어를 협상하기 위한 방법의 일 실시예를 도시하는 플로 다이어그램이다.
도 5b는 자동차의 공유 시청각 리소스의 제어를 협상하기 위한 방법의 일 실시예를 도시하는 플로 다이어그램이다.
도 5c는 공유 리소스의 제어를 협상하기 위한 방법의 일 실시예를 도시하는 플로 다이어그램이다.
도 6은 공유 리소스의 제어를 협상하기 위한 시스템 및 방법의 양태들을 구현하도록 구성된 예시적인 컴퓨터 시스템을 도시한다.
본 명세서는 "일 실시예" 또는 "실시예"의 인용을 포함한다. "일 실시예에서" 또는 "실시예에서" 구문의 등장은 반드시 동일한 실시예를 지칭하는 것은 아니다. 특정 특징부들, 구조물들 또는 특징들이 본 개시 내용과 일관성을 유지하면서 임의의 적합한 방식으로 조합될 수 있다.
"포함하는(Comprising)" 본 용어는 조정 가능(open-ended)하다. 첨부된 청구항에서 사용되는 바와 같이, 본 용어는 부가적인 구조 또는 단계들을 배제(foreclose)하지 않는다. 다음과 같이 구술된 청구항을 고려해보라: "하나 이상의 프로세서 유닛 ....을 포함하는 장치" 그와 같은 청구항은 상기 장치가 추가적인 컴포넌트(예를 들어, 네트워크 인터페이스 유닛, 그래픽 회로 등)를 포함하는 것을 배제하지 않는다.
"~하도록 구성되는"(Configured To) 다양한 유닛들, 회로들 또는 다른 컴포넌트들이 과제 또는 과제들을 수행"하도록 구성"되는 것으로 설명 또는 청구될 수 있다. 이러한 문맥들에서, "~하도록 구성되는"은 유닛/회로/컴포넌트들이 동작 중 과제 또는 과제들을 수행하는 구조물(예를 들어, 회로)을 포함함을 표시함으로써, 구조물을 내포하도록 사용된다. 따라서, 유닛/회로/컴포넌트는 특정 유닛/회로/컴포넌트들이 현재 작동 상태가 아닌 경우(예를 들어, 켜 있지 않음)에도 과제를 수행하도록 구성된다고 말할 수 있다. 유닛/회로/컴포넌트가 "~하도록 구성되는"이라는 문구와 함께 사용되는 경우, 이는 예를 들어, 회로, 동작 등을 구현하도록 실행가능한 프로그램 명령어를 저장한 메모리와 같은 하드웨어를 포함한다. 유닛/회로/컴포넌트가 하나 이상의 과제를 수행하도록 "구성되는"이라는 표현은 그러한 유닛/회로/컴포넌트에 대해 미특허법 35 U.S.C. § 112, 여섯째 문장 규정이 적용되지 않도록 명시적으로 의도한다. 부가적으로, "~하도록 구성되는"은 사안이 되는 과제(들)를 수행할 수 있는 방식으로 작동하도록 소프트웨어 및/또는 펌웨어(예를 들어, FPGA 또는 소프트웨어를 실행하는 범용 프로세서)에 의해 조작되는 일반 구조(예를 들어, 포괄적인 회로)를 포함할 수 있다. "~하도록 구성하는"은 또한 하나 이상의 과제를 구현하거나 수행하도록 적용된 디바이스(예를 들어, 집적회로)를 제조하기 위한 제조 공정(예를 들어, 반도체 제조 시설)에 적용하는 것을 포함할 수 있다.
"제1" "제2" 등. 본 명세서에서 사용되는 바와 같이, 이들 용어들은 선행하고 있는 명사의 라벨로 사용될 뿐, 임의의 유형의 순번(예를 들어, 공간적, 시간적, 논리적 등)을 암시하는 것은 아니다. 예를 들어, 버퍼 회로는 "제1" 및 "제2" 값에 대한 기록 동작을 수행하는 것과 같이 본 명세서에서 설명될 수 있다. 용어 "제1" 및 "제2"는 제1 값이 제2 값보다 먼저 기록되어야 한다는 것을 반드시 암시하지는 않는다.
"기초하여(based on)" 본 명세서에서 사용되는 바와 같이, 본 용어는 결정단계에 영향을 주는 하나 이상의 인자를 기술하기 위해 사용된다. 본 용어는 결정 단계에 영향을 미치는 부가적 인자를 배제하지 않는다. 즉, 결정 단계는 오직 이 인자들에 전적으로 기초하거나, 최소한 부분적으로 이들 인자들에 기초할 수 있다. "B에 기초하여 A를 결정하다"라는 구문을 생각해 본다. 이 경우, B는 A의 결정 단계에 영향을 미치는 인자이지만, 이러한 문구는 A가 C에도 기초하여 결정을 내리는 것을 배제하지 않는다. 다른 경우들에서, A는 B에만 전적으로 기초하여 결정될 수도 있다.
서론
자동차의 공유 시청각 리소스의 제어를 협상하기 위한 시스템 및 방법의 다양한 실시예들이 개시된다. 일부 실시예에서, 본 명세서에서 설명하는 협상 도구, 공유 애플리케이션, 및/또는 중재기 애플리케이션이 GPS 기능을 구비한 모바일 전화기, 태블릿 컴퓨팅 디바이스, 및/또는 퍼스널 네비게이션 디바이스를 포함하지만 이에 제한되지 않는 다양한 다기능 디바이스들의 일부로서 구현될 수 있다. 그와 같은 다기능 디바이스의 사용자는 자동차의 다양한 시청각 시스템의 출력을 생성할 수 있는 애플리케이션들과 상호작용할 수 있고, 본 명세서에서 설명하는 협상 도구, 공유 애플리케이션, 및/또는 중재기 애플리케이션은 애플리케이션들의 출력이 자동차의 다양한 시청각 시스템에 전달되도록 자동차의 공유 시청각 리소스의 제어를 결정할 수 있다. 일부 실시예에서, 본 명세서에서 설명하는 협상 도구, 공유 애플리케이션, 및/또는 중재기 애플리케이션은 자동차, 선박 또는 비행기에서 동작하는 컴퓨터와 같이, 차량의 다양한 시스템들의 일부로서 구현될 수 있다.
자동차의 공유 시청각 리소스의 제어를 협상하기 위한 방법이 제공된다. 일부 실시예에서 차량의 공유 시청각 리소스의 제어에 대한 요청이 중재기에서 수신된다. 중재기는 공유 시청각 리소스의 소유권에 대한 기존 상태 정보 및 공유 시청각 리소스의 소유권 전환 조건을 유지한다. 차량의 공유 시청각 리소스의 제어에 대한 요청은 차량에 부착된 임베디드 시스템에서 실행되는 프로세스 및 차량과 일시적으로 통신하는 모바일 컴퓨팅 디바이스에서 실행되는 프로세스를 포함하는 복수의 프로세스 중 하나로부터 수신된다. 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정한다. 새로운 상태 정보를 결정하는 단계는 제어에 대한 요청 및 소유권 전환 조건들에 적어도 부분적으로 기초하여 새로운 상태 정보를 결정하는 단계를 포함한다. 새로운 상태 정보는 프로세스들 중 어떤 것이 차량의 공유 시청각 리소스의 출력을 제어하는지 표시한다. 공유 시청각 리소스의 새로운 소유권 전환 조건이 결정되고 제어기 인터페이스에 전달된다.
일부 실시예에서, 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계는 차량의 공유 시청각 리소스의 제어에 대한 요청이 차량에 부착된 임베디드 시스템에서 실행되는 프로세스 또는 차량과 일시적으로 통신하는 모바일 컴퓨팅 디바이스에서 실행되는 프로세스에서 비롯되었는지에 상관없이, 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계를 추가로 포함한다. 일부 실시예에서, 중재기는 모바일 컴퓨팅 디바이스 또는 다기능 디바이스에서 실행되는 프로세스이다. 일부 실시예에서, 중재기는 하드웨어 호스팅 공유 시청각 리소스에서 실행되는 프로세스이다. 일부 실시예에서, 중재기는 접속 시스템(예를 들어, 케이블링(cabling) 회로, 라우터, 허브, 또는 상호접속) 상에서 실행되는 프로세스이다. 일부 실시예는 중재기에서 차량의 다른 공유 시청각 리소스의 제어에 대한 요청을 수신하는 단계 및 차량의 다른 공유 시청각 리소스의 제어에 대한 요청에 기초하여 차량의 다른 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계를 추가로 지원한다. 일부 그와 같은 실시예에서, 차량의 다른 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보는 프로세스들 중 어떤 것이 차량의 다른 공유 시청각 리소스의 출력을 제어하는지 표시하고, 차량의 다른 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보는 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보와는 독립적으로 결정된다.
일부 실시예에서, 차량의 공유 시청각 리소스 중 하나는 비디오 디스플레이이고, 차량의 공유 시청각 리소스 중 다른 하나는 오디오 채널이다. 일부 실시예에서, 차량의 공유 시청각 리소스 중 하나는 출력 채널이고, 차량의 공유 시청각 리소스 중 다른 하나는 입력/출력 채널이다.
일부 실시예에서, 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계는 프로세스들 중 제1 프로세스가 차량의 공유 시청각 리소스 중 하나의 제어를 소유하고, 프로세스들 중 제2 프로세스는 과제의 지속 시간 동안 공유 시청각 리소스 중 하나의 출력을 제어하도록 지정되고 과제의 완료 이후에 공유 시청각 리소스 중 하나의 출력을 제어하도록 차량의 공유 시청각 리소스 중 하나의 제어를 반환하도록 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계를 추가로 포함한다. 일부 실시예는 공유 시청각 리소스, 중재기, 및 모바일 컴퓨팅 디바이스 간의 통신을 위한 제어 채널을 구성하는 단계를 추가로 지원하고, 중재기는 차량에 부착된 임베디드 시스템에서 실행되는 프로세스이다.
일부 실시예는 자동차의 공유 시청각 리소스의 제어를 협상하기 위한 수단을 포함할 수 있다. 예를 들어, 중재기 또는 중재기 모듈은 차량의 공유 시청각 리소스의 제어에 대한 요청을 수신하고, 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하고, 공유 시청각 리소스의 새로운 소유권 전환 조건들을 결정하고 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 전달할 수 있고, 이는 본 명세서에서 설명하는 바와 같다. 일부 실시예에서 중재기 모듈은 컴퓨팅 장치의 비일시적, 컴퓨터 판독 가능 저장 매체 및 하나 이상의 프로세서(예를 들어, CPU 및/또는 GPU)에 의해 구현될 수 있다. 컴퓨터 판독 가능 저장 매체는 하나 이상의 프로세서에 의해 실행되어 컴퓨팅 장치로 하여금 차량의 공유 시청각 리소스의 제어에 대한 요청을 수신하고, 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하고, 공유 시청각 리소스의 새로운 소유권 전환 조건들을 결정하고 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 전달하게 하는 프로그램 명령어들을 저장할 수 있고, 이는 본 명세서에서 설명하는 바와 같다. 중재기 모듈의 다른 실시예는 하드웨어 회로 및/또는, 예를 들어, 비휘발성 메모리에 저장되는 펌웨어에 의해 적어도 부분적으로 구현될 수 있다.
다기능 디바이스
이제, 실시예들이 상세하게 참조될 것이며, 실시예들의 예들이 첨부 도면들에 도시된다. 하기의 상세한 설명에서, 많은 구체적인 상세사항들이 본 개시 내용의 완전한 이해를 제공하기 위해 설명된다. 그러나, 일부 실시예들이 이들 구체적인 상세사항들 없이 실시될 수 있다는 것은 본 발명이 속한 기술분야에서 통상의 지식을 가진 자에게 자명할 것이다. 다른 예들에서, 주지된 방법들, 절차들, 컴포넌트들, 회로들, 및 네트워크들은 실시예들의 태양들을 불필요하게 이해하기 어렵게 하지 않도록 하기 위해 상세히 설명되지 않았다.
용어들 제1, 제2 등이 본 명세서에서 다양한 요소들을 기술하는 데 사용될 수 있지만, 이들 요소들은 이들 용어들로 제한되어서는 안 된다는 것이 또한 이해될 것이다. 이들 용어들은 하나의 요소를 다른 요소와 구별하는 데에만 사용된다. 예를 들어, 의도한 범주로부터 벗어남이 없이, 제1 접촉이 제2 접촉으로 지칭될 수 있고, 유사하게, 제2 접촉이 제1 접촉으로 지칭될 수 있다. 제1 접촉 및 제2 접촉 양쪽 모두가 접촉이지만, 그들이 동일한 접촉인 것은 아니다.
본 명세서에서 설명에 사용되는 용어는 특정 실시예들을 기재하는 목적만을 위한 것이고, 제한하려는 의도는 아니다. 본 구현예들 및 첨부된 특허청구범위에 사용되는 바와 같이, 단수의 형태("a", "an" 및 "the")는 문맥상 명백히 다르게 나타나지 않는다면 복수의 형태들도 마찬가지로 포함하려는 것으로 의도된다. 또한, 본 명세서에서 사용되는 바와 같은 용어 "및/또는"은 열거되는 관련 항목들 중 하나 이상의 항목의 임의의 및 모든 가능한 조합들을 나타내고 그들을 포괄하는 것임이 이해될 것이다. 본 명세서에서 사용될 때 용어들 "포함한다(include)", "포함하는(including)", "포함한다(comprise)", 및/또는 "포함하는(comprising)"은 진술되는 특징들, 정수들, 단계들, 동작들, 요소들, 및/또는 컴포넌트들의 존재를 특정하지만, 하나 이상의 다른 특징, 정수, 단계, 동작, 요소, 컴포넌트, 및/또는 이들의 그룹들의 존재 또는 추가를 배제하지 않음이 추가로 이해될 것이다.
본 명세서에서 사용되는 바와 같이, 용어 "~는 경우(if)"는 문맥에 따라 "~할 때(when)" 또는 "~ 시(upon)" 또는 "결정한 것에 응답하여(in response to determining)" 또는 "검출한 것에 응답하여(in response to detecting)"를 의미하는 것으로 해석될 수 있다. 유사하게, 구문 "결정된 경우" 또는 "[진술된 상태 또는 이벤트가] 검출된 경우"는 문맥에 따라 "결정 시" 또는 "결정한 것에 응답하여" 또는 "[진술된 상태 또는 이벤트] 검출 시" 또는 "[진술된 상태 또는 이벤트를] 검출한 것에 응답하여"를 의미하는 것으로 해석될 수 있다.
전자 디바이스, 그러한 디바이스에 대한 사용자 인터페이스, 및 그러한 디바이스를 사용하는 관련 프로세스들의 실시예들이 기술된다. 일부 실시예들에서, 디바이스는 PDA 및/또는 음악 플레이어 기능들과 같은 다른 기능들을 또한 포함하는, 이동 전화기와 같은, 휴대용 통신 디바이스이다. 휴대용 다기능 디바이스들의 예시적인 실시예들은 미국 캘리포니아주 쿠퍼티노 소재의 애플 인크(Apple Inc.)로부터의 아이폰(iPhone)(등록상표), 아이팟 터치(iPod Touch)(등록상표), 및 아이패드(iPad)(등록상표) 디바이스들을 제한 없이 포함한다. 터치-감응형 표면들(예컨대, 터치 스크린 디스플레이들 및/또는 터치 패드들)을 갖는 랩톱들 또는 태블릿 컴퓨터들과 같은 다른 휴대용 전자 디바이스들이 또한 사용될 수 있다. 일부 실시예들에서, 디바이스는 휴대용 통신 디바이스가 아니라 터치-감응형 표면(예컨대, 터치 스크린 디스플레이 및/또는 터치 패드)을 갖는 데스크톱 컴퓨터임이 또한 이해되어야 한다. 일부 실시예에서, 디바이스는 배향 센서(예를 들어, 게임용 제어기 내의 배향 센서)를 구비한 게임용 컴퓨터이다.
이하의 논의에서, 디스플레이 및 터치-감응형 표면을 포함하는 전자 디바이스가 기술된다. 그러나, 전자 디바이스는 물리적 키보드, 마우스 및/또는 조이스틱과 같은 하나 이상의 다른 물리적 사용자-인터페이스 디바이스를 포함할 수 있음이 이해되어야 한다.
디바이스는 전형적으로 다양한 애플리케이션들, 예컨대 드로잉 애플리케이션, 프레젠테이션 애플리케이션, 워드 프로세싱 애플리케이션, 웹사이트 제작 애플리케이션, 디스크 저작 애플리케이션, 스프레드시트 애플리케이션, 게이밍 애플리케이션, 전화 애플리케이션, 화상회의 애플리케이션, 이메일 애플리케이션, 인스턴트 메시징 애플리케이션, 운동 지원 애플리케이션, 사진 관리 애플리케이션, 디지털 카메라 애플리케이션, 디지털 비디오 카메라 애플리케이션, 웹 브라우징 애플리케이션, 디지털 음악 플레이어 애플리케이션, 및/또는 디지털 비디오 플레이어 애플리케이션 중 하나 이상을 지원한다.
디바이스 상에서 실행될 수 있는 다양한 애플리케이션들은 터치-감응형 표면과 같은 적어도 하나의 보편적인 물리적 사용자-인터페이스 디바이스를 사용할 수 있다. 터치-감응형 표면의 하나 이상의 기능뿐만 아니라 디바이스 상에 디스플레이되는 대응 정보도 조절될 수 있고/있거나 하나의 애플리케이션으로부터 다음 애플리케이션으로 그리고/또는 각각의 애플리케이션 내에서 변화될 수 있다. 이러한 방식으로, 디바이스의 (터치-감응형 표면과 같은) 보편적인 물리적 아키텍처는 사용자에게 직관적이고 명료한 사용자 인터페이스들로 다양한 애플리케이션들을 지원할 수 있다.
이제 휴대용 디바이스들의 실시예들에 주목한다. 도 1은 일부 실시예들에 따른, 터치 감응형 디스플레이(112)들을 갖는 휴대용 다기능 디바이스(100)를 도시하는 블록도이다. 터치-감응형 디스플레이(112)는 때때로 편의상 "터치 스크린"이라 지칭되고, 또한 터치-감응형 디스플레이 시스템으로 공지되거나 지칭될 수 있다. 디바이스(100)는 메모리(102)(하나 이상의 컴퓨터 판독가능 저장 매체를 포함할 수 있음), 메모리 제어기(122), 하나 이상의 프로세싱 유닛(CPU)(120), 주변기기 인터페이스(118), RF 회로(108), 오디오 회로(110), 스피커(111), 마이크로폰(113), 입력/출력(I/O) 서브시스템(106), 다른 입력 또는 제어 디바이스들(116) 및 외부 포트(124)를 포함할 수 있다. 디바이스(100)는 하나 이상의 광 센서(164)를 포함할 수 있다. 이들 컴포넌트들은 하나 이상의 통신 버스 또는 신호 라인(103)을 통해 통신할 수 있다.
디바이스(100)는 휴대용 다기능 디바이스의 일례일 뿐이고 디바이스(100)는 도시된 것보다 더 많거나 더 적은 컴포넌트들을 가질 수 있거나, 둘 이상의 컴포넌트들을 결합할 수 있거나, 컴포넌트들의 상이한 구성 또는 배열을 가질 수 있음이 인식되어야 한다. 도 1에 도시된 다양한 컴포넌트들은 하나 이상의 신호 프로세싱 및/또는 애플리케이션 특정 집적 회로들을 비롯한, 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합으로 구현될 수 있다.
메모리(102)는 고속 랜덤 액세스 메모리를 포함할 수 있고, 하나 이상의 자기 디스크 저장 디바이스, 플래시 메모리 디바이스, 또는 다른 비휘발성 솔리드-스테이트 메모리 디바이스와 같은 비휘발성 메모리를 또한 포함할 수 있다. CPU(120) 및 주변기기 인터페이스(118)와 같은 디바이스(100)의 다른 컴포넌트들에 의한 메모리(102)에의 액세스는 메모리 제어기(122)에 의해 제어될 수 있다.
주변기기 인터페이스(118)는 디바이스의 입력 및 출력 주변기기들을 CPU(120) 및 메모리(102)에 연결하는 데 사용될 수 있다. 하나 이상의 프로세서(120)는 디바이스(100)에 대한 다양한 기능들을 수행하고 데이터를 처리하기 위해 메모리(102) 내에 저장된 다양한 소프트웨어 프로그램들 및/또는 명령어들의 세트들을 구동하거나 실행시킨다.
일부 실시예들에서, 주변기기 인터페이스(118), CPU(120) 및 메모리 제어기(122)는 칩(104)과 같은 단일 칩 상에서 구현될 수 있다. 일부 다른 실시예들에서, 그들은 별개의 칩들 상에서 구현될 수 있다.
RF(radio frequency) 회로(108)는 전자기 신호들로도 칭해지는 RF 신호들을 수신 및 송신한다. RF 회로(108)는 전기 신호들을 전자기 신호들로/로부터 변환하고, 전자기 신호들을 통해 통신 네트워크들 및 다른 통신 디바이스들과 통신한다. RF 회로(108)는 안테나 시스템, RF 송수신기, 하나 이상의 증폭기, 튜너, 하나 이상의 발진기, 디지털 신호 프로세서, CODEC 칩셋, SIM(subscriber identity module) 카드, 메모리 등을 포함하지만 이들로 제한되지는 않는, 이러한 기능들을 수행하기 위한 주지된 회로를 포함할 수 있다. RF 회로(108)는 네트워크들, 예컨대 월드 와이드 웹(World Wide Web: WWW)으로도 칭해지는 인터넷, 인트라넷, 및/또는 무선 네트워크, 예컨대 셀룰러 전화 네트워크, 무선 근거리 통신망(local area network: LAN) 및/또는 대도시 통신망(metropolitan area network: MAN), 및 다른 디바이스들과 무선 통신에 의해 통신할 수 있다. 무선 통신은 이동 통신 글로벌 시스템(Global System for Mobile Communications: GSM), 강화된 데이터 GSM 환경(Enhanced Data GSM Environment: EDGE), 고속 다운링크 패킷 액세스(high-speed downlink packet access: HSDPA), 고속 업링크 패킷 액세스(high-speed uplink packet access: HSUPA), 광대역 코드 분할 다중 액세스(wideband code division multiple access: W-CDMA), 코드 분할 다중 액세스(code division multiple access: CDMA), 시분할 다중 액세스(time division multiple access: TDMA), 블루투스, 무선 충실도(Wireless Fidelity: 802.11g Wi-Fi)(예를 들어, IEEE 802.11a, IEEE 802.11b, IEEE 802.11g 및/또는 IEEE 802.11n), 인터넷 전화 통화 프로토콜(voice over Internet Protocol: VoIP), Wi-MAX, 이메일을 위한 프로토콜(예를 들어, 인터넷 메시지 액세스 프로토콜(Internet message access protocol: IMAP) 및/또는 포스트 오피스 프로토콜(post office protocol: POP)), 인스턴트 메시징(예를 들어, 확장 메시징 및 프리젠스 프로토콜(extensible messaging and presence protocol: XMPP), 인스턴트 메시징 및 프리젠스 레버리징 확장을 위한 세션 개시 프로토콜(Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions: SIMPLE), 인스턴트 메시징 및 프리젠스 서비스(Instant Messaging and Presence Service: IMPS)) 및/또는 단문자 메시지 서비스(Short Message Service: SMS)), 또는 본 문헌의 출원일 현재 아직 개발되지 않은 통신 프로토콜을 포함한 임의의 다른 적합한 통신 프로토콜을 포함하지만 이들로 제한되지는 않는 다양한 통신 표준들, 프로토콜들 및 기술들 중 임의의 것을 이용할 수 있다.
오디오 회로(110), 스피커(111) 및 마이크로폰(113)은 사용자와 디바이스(100) 간의 오디오 인터페이스를 제공한다. 오디오 회로(110)는 주변기기 인터페이스(118)로부터 오디오 데이터를 수신하고, 그 오디오 데이터를 전기 신호로 변환하여, 그 전기 신호를 스피커(111)로 송신한다. 스피커(111)는 전기 신호를 사람이 들을 수 있는 음파로 변환한다. 오디오 회로(110)는 또한 마이크로폰(113)에 의해 음파로부터 변환된 전기 신호를 수신한다. 오디오 회로(110)는 전기 신호를 오디오 데이터로 변환하고, 프로세싱을 위해 오디오 데이터를 주변기기 인터페이스(118)로 송신한다. 오디오 데이터는 주변기기 인터페이스(118)에 의해 메모리(102) 및/또는 RF 회로(108)로부터 검색되고/되거나 그로 전송될 수 있다. 일부 실시예들에서, 오디오 회로(110)는 또한 헤드셋 잭(예를 들어, 도 2의 212)을 포함한다. 헤드셋 잭은 출력-전용 헤드폰들, 또는 출력(예컨대, 한쪽 또는 양쪽 귀를 위한 헤드폰) 및 입력(예컨대, 마이크로폰) 둘 모두를 갖는 헤드셋과 같은 분리가능한 오디오 입력/출력 주변기기들과 오디오 회로(110) 간의 인터페이스를 제공한다.
I/O 서브시스템(106)은 터치 스크린(112) 및 다른 입력 제어 디바이스들(116)과 같은, 디바이스(100) 상의 입력/출력 주변기기들을 주변기기 인터페이스(118)에 연결한다. I/O 서브시스템(106)은 디스플레이 제어기(156), 및 다른 입력 또는 제어 디바이스들을 위한 하나 이상의 입력 제어기(160)를 포함할 수 있다. 하나 이상의 입력 제어기(160)는 다른 입력 또는 제어 디바이스들(116)로부터/로 전기 신호들을 수신/송신한다. 다른 입력 제어 디바이스들(116)은 물리적 버튼(예컨대, 푸시 버튼, 로커 버튼(rocker button) 등), 다이얼, 슬라이더 스위치, 조이스틱, 클릭 휠 등을 포함할 수 있다. 일부 대안적인 실시예에서 입력 제어기(160)는 키보드, 적외선 포트, USB 포트, 및 마우스와 같은 포인터 디바이스 중 임의의 것에 연결될 수 있다 (또는 어떤 것에도 연결되지 않을 수 있다). 하나 이상의 버튼(예컨대, 도 2의 208)은 스피커(111) 및/또는 마이크로폰(113)의 음량 제어를 위한 업/다운 버튼을 포함할 수 있다. 하나 이상의 버튼은 푸시 버튼(예를 들어, 도 2의 206)을 포함할 수 있다.
터치-감응형 디스플레이(112)는 디바이스와 사용자 사이의 입력 인터페이스 및 출력 인터페이스를 제공한다. 디스플레이 제어기(156)는 터치 스크린(112)으로부터/으로 전기 신호들을 수신 및/또는 송신한다. 터치 스크린(112)은 사용자에게 시각적 출력을 디스플레이한다. 시각적 출력은 그래픽, 텍스트, 아이콘, 비디오 및 이들의 임의의 조합(총칭하여 "그래픽"으로 지칭함)을 포함할 수 있다. 일부 실시예들에서, 일부의 또는 전체 시각적 출력은 사용자-인터페이스 객체들에 대응할 수 있다.
터치 스크린(112)은 햅틱 및/또는 촉각 접촉에 기초하여 사용자로부터의 입력을 수용하는 터치-감응형 표면, 센서 또는 센서들의 세트를 갖는다. 터치 스크린(112) 및 디스플레이 제어기(156)는 (메모리(102) 내의 임의의 관련 모듈들 및/또는 명령어들의 세트들과 함께) 터치 스크린(112) 상의 접촉(및 접촉의 임의의 이동 또는 중단)을 검출하고, 검출된 접촉을 터치 스크린(112) 상에 디스플레이된 사용자-인터페이스 객체들(예컨대, 하나 이상의 소프트 키, 아이콘, 웹 페이지 또는 이미지)과의 상호작용으로 변환한다. 예시적인 실시예에서, 터치 스크린(112)과 사용자 사이의 접촉 지점은 사용자의 손가락에 대응한다.
터치 스크린(112)은 LCD(액정 디스플레이) 기술, LPD(발광 중합체 디스플레이) 기술, 또는 LED(발광 다이오드) 기술을 이용할 수 있지만, 다른 디스플레이 기술들이 다른 실시예들에서 이용될 수 있다. 터치 스크린(112) 및 디스플레이 제어기(156)는 터치 스크린(112)과의 하나 이상의 접촉 지점을 결정하기 위해 정전용량, 저항, 적외선 및 표면 음향파 기술들과 다른 근접 센서 어레이들 또는 다른 요소들을 포함하지만 이들로 제한되지는 않는, 현재 공지되어 있거나 추후에 개발될 다양한 터치 감지 기술 중 임의의 것을 이용하여, 접촉 및 그것의 어떠한 이동 또는 중단도 검출할 수 있다. 예시적인 실시예에서, 미국 캘리포니아주 쿠퍼티노의 애플 인크.로부터의 아이폰(등록상표), 아이팟 터치(등록상표), 및 아이패드(등록상표)에서 발견되는 것과 같은 투영형 상호 정전용량식 감지 기술(projected mutual capacitance sensing technology)이 이용된다.
사용자는 스타일러스, 손가락 등과 같은 임의의 적합한 물체 또는 부속물을 이용하여 터치 스크린(112)과 접촉할 수 있다. 일부 실시예들에서, 사용자 인터페이스는 손가락-기반 접촉 및 제스처를 주로 이용하여 작업하도록 지정되는데, 이것은 터치 스크린 상에서의 손가락의 넓은 접촉 면적으로 인해 스타일러스-기반 입력보다 덜 정밀할 수 있다. 일부 실시예들에서, 디바이스는 대략적인 손가락-기반 입력을 사용자가 원하는 행동들을 수행하기 위한 정밀한 포인터/커서 위치 또는 커맨드로 변환한다.
일부 실시예들에서, 터치 스크린 외에도, 디바이스(100)는 특정 기능들을 활성화 또는 비활성화하기 위한 터치패드(도시되지 않음)를 포함할 수 있다. 일부 실시예들에서, 터치패드는 터치 스크린과는 다르게 시각적 출력을 디스플레이하지 않는 디바이스의 터치-감응 영역이다. 터치패드는 터치 스크린(112)으로부터 분리된 터치-감응형 표면일 수 있고, 또는 터치 스크린에 의해 형성된 터치-감응형 표면의 연장부일 수도 있다.
디바이스(100)는 또한 다양한 컴포넌트들에 전력을 공급하기 위한 전원 계통(162)을 포함한다. 전원 계통(162)은 전력 관리 시스템, 하나 이상의 전원(예를 들어, 배터리, 교류 전류(alternating current: AC)), 재충전 시스템, 전력 고장 검출 회로, 전력 변환기 또는 인버터, 전력 상태 표시기(예컨대, 발광 다이오드(LED)), 및 휴대용 디바이스들 내에서의 전력의 생성, 관리 및 분산에 관련된 임의의 다른 컴포넌트들을 포함할 수 있다.
디바이스(100)는 또한 하나 이상의 광 센서(164)를 포함할 수 있다. 도 1은 I/O 서브시스템(106) 내의 광 센서 제어기(159)에 연결된 광 센서를 도시한다. 광 센서(164)는 전하-결합 소자(charge-coupled 디바이스: CCD) 또는 상보적 금속-산화물 반도체(complementary metal-oxide semiconductor: CMOS) 포토트랜지스터들을 포함할 수 있다. 광 센서(164)는 하나 이상의 렌즈를 통해 투영된 주변환경으로부터의 광을 수신하고, 그 광을 이미지를 나타내는 데이터로 변환한다. 광 센서(164)는, 이미징 모듈(143)(카메라 모듈로도 칭해짐)과 함께, 정지 이미지들 또는 비디오를 캡처할 수 있다. 일부 실시예들에서, 광 센서는 디바이스 전면 상의 터치 스크린 디스플레이(112)에 대향하도록 디바이스(100)의 배면에 위치되어, 터치 스크린 디스플레이가 정지 및/또는 비디오 이미지 획득을 위한 뷰파인더로서 사용될 수 있도록 한다. 일부 실시예들에서, 다른 광 센서가 디바이스의 전면 상에 위치되어, 사용자가 터치 스크린 디스플레이 상에서 다른 화상회의 참가자들을 보는 동안 사용자의 이미지가 화상회의를 위해 획득될 수 있도록 한다.
디바이스(100)는 또한 하나 이상의 근접 센서(166)를 포함할 수 있다. 도 1은 주변기기 인터페이스(118)에 연결된 근접 센서(166)를 도시한다. 대안적으로, 근접 센서(166)는 I/O 서브시스템(106) 내의 입력 제어기(160)에 연결될 수 있다. 일부 실시예들에서, 근접 센서는 다기능 디바이스가 사용자의 귀 근처에 위치될 때(예를 들어, 사용자가 전화 통화를 하고 있을 때), 터치 스크린(112)을 오프 상태로 하고 디스에이블시킨다.
디바이스(100)는 하나 이상의 배향 센서(168)를 포함한다. 일부 실시예에서, 하나 이상의 배향 센서는 하나 이상의 가속도계(예를 들어, 하나 이상의 선형 가속도계 및/또는 하나 이상의 회전형 가속도계)를 포함한다. 일부 실시예에서, 하나 이상의 배향 센서는 하나 이상의 자이로스코프를 포함한다. 일부 실시예에서, 하나 이상의 배향 센서는 하나 이상의 자력계를 포함한다. 일부 실시예에서, 하나 이상의 배향 센서는 글로벌 포지셔닝 시스템(GPS), 글로벌 네비게이션 위성 시스템(GLONASS), 및/또는 기타 글로벌 네비게이션 시스템 수신기 중 하나 이상을 포함한다. GPS, GLONASS, 및/또는 기타 글로벌 네비게이션 시스템 수신기를 이용하여 디바이스(100)의 위치 및 배향(예를 들어, 세로방향 또는 가로방향)에 관한 정보를 획득할 수 있다. 일부 실시예에서, 하나 이상의 배향 센서는 배향/회전 센서의 임의의 조합을 포함한다. 도 1은 주변장치 인터페이스(118)에 연결된 하나 이상의 배향 센서(168)를 도시한다. 대안적으로, 하나 이상의 배향 센서(168)는 I/O 서브시스템(106)의 입력 제어기(160)에 연결될 수 있다. 일부 실시예들에서, 하나 이상의 배향 센서로부터 수신된 데이터의 분석에 기초하여 터치 스크린 디스플레이 상에 세로보기(portrait view) 또는 가로보기(landscape view)로 정보가 디스플레이된다.
일부 실시예들에서, 메모리(102) 내에 저장된 소프트웨어 컴포넌트들은 운영 체제(126), 통신 모듈(또는 명령어들의 세트)(128), 접촉/모션 모듈(또는 명령어들의 세트)(130), 그래픽 모듈(또는 명령어들의 세트)(132), 텍스트 입력 모듈(또는 명령어들의 세트)(134), GPS 모듈(또는 명령어들의 세트)(135), 중재기 모듈(158) 및 애플리케이션들(또는 명령어들의 세트)(136)을 포함한다. 디바이스/글로벌 내부 상태(157)는 어느 애플리케이션들이, 존재하는 경우, 현재 활성 상태인지 나타내는 활성 애플리케이션 상태; 어떤 애플리케이션들, 뷰들 또는 다른 정보가 터치 스크린 디스플레이(112)의 다양한 영역들을 점유하는지를 나타내는 디스플레이 상태; 디바이스의 다양한 센서들 및 입력 제어 디바이스(116)들로부터 획득된 정보를 포함하는 센서 상태; 어느 프로세스가 차량의 공유 시청각 리소스의 출력을 제어하는지 표시하는 상태 정보; 공유 시청각 리소스의 소유권 전환 조건; 및 디바이스의 위치 및/또는 자세에 관한 위치 정보 중 하나 이상을 포함한다.
운영 체제(126)(예컨대, 다윈(Darwin), 리눅스(LINUX), 유닉스(UNIX), OS X, 윈도우즈(WINDOWS), 또는 VxWorks 또는 RTXC와 같은 임베디드 운영 체제)는 일반적인 시스템 과제들(예컨대, 메모리 관리, 저장 디바이스 제어, 전력 관리 등)을 제어 및 관리하기 위한 다양한 소프트웨어 컴포넌트들 및/또는 드라이버들을 포함하고, 다양한 하드웨어 및 소프트웨어 컴포넌트들 간의 통신을 용이하게 한다.
통신 모듈(128)은 하나 이상의 외부 포트(124)를 통한 다른 디바이스들과의 통신을 용이하게 하고, 또한 RF 회로(108) 및/또는 외부 포트(124)에 의해 수신되는 데이터를 다루기 위한 다양한 소프트웨어 컴포넌트들을 포함한다. 외부 포트(124)(예컨대, 범용 직렬 버스(Universal Serial Bus: USB), 파이어와이어(FIREWIRE) 등)는 다른 디바이스들에 직접적으로 또는 네트워크(예컨대, 인터넷, 무선 LAN 등)를 통해 간접적으로 연결하도록 구성된다.
접촉/모션 모듈(130)은 (디스플레이 제어기(156)와 함께) 터치 스크린(112), 및 다른 터치-감응형 디바이스들(예를 들어, 터치패드 또는 물리적 클릭 휠)과의 접촉을 검출할 수 있다. 접촉/모션 모듈(130)은 접촉이 발생했는지를 결정하는 것(예컨대, 손가락-다운 이벤트(finger-down event)를 검출하는 것), 접촉의 이동이 있는지를 결정하고 터치-감응형 표면을 가로지르는 이동을 추적하는 것(예컨대, 하나 이상의 손가락-드래그 이벤트(finger-dragging event)를 검출하는 것), 및 접촉이 중지되었는지를 결정하는 것(예컨대, 손가락-업 이벤트(finger-up event) 또는 접촉 중단을 검출하는 것)과 같은, 접촉의 검출에 관련된 다양한 동작들을 수행하기 위한 다양한 소프트웨어 컴포넌트들을 포함한다. 접촉/모션 모듈(130)은 터치-감응형 표면으로부터 접촉 데이터를 수신한다. 일련의 접촉 데이터에 의해 나타나는 접촉 지점의 이동을 결정하는 것은 접촉 지점의 속력(크기), 속도(크기 및 방향) 및/또는 가속도(크기 및/또는 방향의 변화)를 결정하는 것을 포함할 수 있다. 이들 동작들은 단일 접촉들(예컨대, 한 손가락 접촉들)에 또는 복수의 동시 접촉들(예컨대, "멀티터치"/복수의 손가락 접촉들)에 적용될 수 있다. 일부 실시예들에서, 접촉/모션 모듈(130) 및 디스플레이 제어기(156)는 터치패드 상의 접촉을 검출한다.
접촉/모션 모듈(130)은 사용자에 의한 제스처 입력을 검출할 수 있다. 터치-감응형 표면 상의 상이한 제스처들은 상이한 접촉 패턴들을 갖는다. 따라서, 제스처는 특정 접촉 패턴을 검출함으로써 검출될 수 있다. 예를 들어, 손가락 탭 제스처(finger tap gesture)를 검출하는 것은 손가락-다운 이벤트를 검출한 다음에 손가락-다운 이벤트와 동일한 위치(또는 실질적으로 동일한 위치)(예를 들어, 아이콘의 위치)에서 손가락 업 이벤트(리프트 오프(lift off))를 검출하는 것을 포함한다. 다른 예로서, 터치-감응형 표면 상에서 손가락 스와이프(swipe) 제스처를 검출하는 것은 손가락-다운 이벤트를 검출한 다음에 하나 이상의 손가락-드래그 이벤트를 검출하고, 그에 후속하여 손가락-업(리프트 오프) 이벤트를 검출하는 것을 포함한다.
그래픽 모듈(132)은 디스플레이되는 그래픽의 명암을 변경하기 위한 컴포넌트들을 포함하는, 터치 스크린(112) 또는 다른 디스플레이 상에서 그래픽을 렌더링 및 디스플레이하기 위한 다양한 공지된 소프트웨어 컴포넌트들을 포함한다. 본 명세서에서 사용되는 바와 같이, 용어 "그래픽"은 텍스트, 웹 페이지, 아이콘(예를 들어, 소프트 키를 포함하는 사용자-인터페이스 객체), 디지털 이미지, 비디오, 애니메이션 등을 제한 없이 포함하는, 사용자에게 디스플레이될 수 있는 임의의 객체를 포함한다.
일부 실시예들에서, 그래픽 모듈(132)은 사용될 그래픽을 나타내는 데이터를 저장한다. 각각의 그래픽에는 대응 코드가 할당될 수 있다. 그래픽 모듈(132)은 필요한 경우 좌표 데이터 및 다른 그래픽 특성 데이터와 함께 표시될 그래픽을 특정하는 하나 이상의 코드를 애플리케이션들 등으로부터 수신하며, 이어서 스크린 이미지 데이터를 생성하여 디스플레이 제어기(156)에 출력한다.
그래픽 모듈(132)의 컴포넌트일 수 있는 텍스트 입력 모듈(134)은 다양한 애플리케이션들(예컨대, 접촉(137), 이메일(140), IM(141), 브라우저(147), 및 텍스트 입력을 필요로 하는 임의의 다른 애플리케이션)에 텍스트를 입력하기 위한 소프트 키보드들을 제공한다.
GPS 모듈(135)은 디바이스의 위치를 결정하고, 이 정보를 다양한 애플리케이션들에서의 사용을 위해 (예컨대, 위치-기반 다이얼링에서 사용하기 위한 전화(138)에, 사진/비디오 메타데이터로서 카메라(143)에, 그리고 날씨 위젯들, 지역 옐로우 페이지 위젯들 및 맵/내비게이션 위젯들과 같은 위치-기반 서비스들을 제공하는 애플리케이션들에) 제공한다.
애플리케이션들(136)은 하기의 모듈들(또는 명령어들의 세트), 또는 이들의 하위세트 또는 상위세트를 포함할 수 있다:
Figure pct00001
연락처 모듈(137)(종종 주소록 또는 연락처 목록으로 불림);
Figure pct00002
전화 모듈(138);
Figure pct00003
화상회의 모듈(139);
Figure pct00004
이메일 클라이언트 모듈(140);
Figure pct00005
인스턴트 메시징(IM) 모듈(141);
Figure pct00006
운동 지원 모듈(142);
Figure pct00007
정지 및/또는 비디오 이미지를 위한 카메라 모듈(143);
Figure pct00008
이미지 관리 모듈(144);
Figure pct00009
브라우저 모듈(147);
Figure pct00010
캘린더 모듈(148);
Figure pct00011
날씨 위젯(149-1), 주식 위젯(149-2), 계산기 위젯(149-3), 알람 시계 위젯(149-4), 사전 위젯(149-5), 및 사용자에 의해 획득되는 다른 위젯뿐만 아니라 사용자-생성 위젯(149-6)들 중 하나 이상을 포함할 수 있는 위젯 모듈(149);
Figure pct00012
사용자-생성 위젯(149-6)들을 만들기 위한 위젯 생성기 모듈(150);
Figure pct00013
검색 모듈(151);
Figure pct00014
비디오 모듈 및 음악 모듈로 구성될 수 있는 비디오 및 음악 플레이어 모듈(152);
Figure pct00015
노트 모듈(153);
Figure pct00016
지도 모듈(154); 및/또는
Figure pct00017
온라인 비디오 모듈(155).
메모리(102) 내에 저장될 수 있는 다른 애플리케이션들(136)의 예들은 다른 워드 프로세싱 애플리케이션들, 다른 이미지 편집 애플리케이션들, 드로잉 애플리케이션들, 프레젠테이션 애플리케이션들, JAVA-인에이블드 애플리케이션들, 암호화, 디지털 권한 관리, 음성 인식 및 음성 복제를 포함한다.
터치 스크린(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 및 텍스트 입력 모듈(134)과 함께, 연락처 모듈(137)을 이용하여 주소록 또는 연락처 목록(예를 들어, 메모리(102) 내의 연락처 모듈(137)의 애플리케이션 내부 상태(192)에 저장됨)을 관리하고, 예컨대, 주소록에 이름(들)을 추가하는 것; 주소록으로부터 이름(들)을 삭제하는 것; 전화번호(들), 이메일 주소(들), 물리적 주소(들) 또는 기타 정보를 이름과 연관시키는 것; 이미지를 이름과 연관시키는 것; 이름들을 분류 및 구분하는 것; 전화(138), 화상회의(139), 이메일(140) 또는 IM(141)에 의한 통신을 개시하고/거나 용이하게 하기 위해 전화 번호들 또는 이메일 주소들을 제공하는 것 등을 관리할 수 있다.
RF 회로(108), 오디오 회로(110), 스피커(111), 마이크로폰(113), 터치 스크린(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 및 텍스트 입력 모듈(134)과 함께, 전화 모듈(138)은, 전화 번호에 대응하는 글자들의 시퀀스를 입력하고, 주소록(137) 내의 하나 이상의 전화 번호에 액세스하고, 입력된 전화 번호를 수정하고, 각각의 전화 번호를 다이얼링하고, 대화를 하고, 대화가 완료된 때 접속해제하거나 끊는 데 사용될 수 있다. 전술된 바와 같이, 무선 통신은 다양한 통신 표준들, 프로토콜들 및 기술들 중 임의의 것을 이용할 수 있다.
RF 회로(108), 오디오 회로(110), 스피커(111), 마이크로폰(113), 터치 스크린(112), 디스플레이 제어기(156), 및 통신 모듈(128)과 함께, 중재기 모듈(158)은 자동차의 공유 시청각 리소스의 제어를 협상한다. 차량의 공유 시청각 리소스의 제어에 대한 요청이 중재기 모듈(158)에서 수신된다. 중재기 모듈(158)은 공유 시청각 리소스의 소유권에 대한 기존 상태 정보 및 공유 시청각 리소스의 소유권 전환 조건을 유지한다. 차량의 공유 시청각 리소스의 제어에 대한 요청은 차량에 부착된 임베디드 시스템 상에서 실행되는 프로세스 및 차량과 일시적으로 통신하는 모바일 컴퓨팅 디바이스(휴대용 다기능 디바이스(100)) 상에서 실행되는 프로세스를 포함하는 복수의 프로세스 중 하나로부터 수신된다. 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보는 제어 및 소유권 전환 조건에 대한 요청에 적어도 부분적으로 기초하여 중재기 모듈(158)에 의해 결정된다. 새로운 상태 정보는 프로세스들 중 어떤 것이 차량의 공유 시청각 리소스의 출력을 제어하는지 표시한다. 공유 시청각 리소스의 새로운 소유권 전환 조건이 중재기 모듈(158)에 의해 결정되고 공유 시청각 리소스의 제어기 인터페이스에 전달된다.
RF 회로(108), 오디오 회로(110), 스피커(111), 마이크로폰(113), 터치스크린(112), 디스플레이 제어기(156), 광 센서(164), 중재기 모듈(158), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134), 연락처 목록(137) 및 전화 모듈(138)과 함께, 화상회의 모듈(139)은 사용자 지시에 따라 사용자와 한 명 이상의 다른 참여자들 간의 화상회의를 개시, 시행 및 종료하도록 하는 실행가능 명령어들을 포함한다.
RF 회로(108), 터치 스크린(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 이메일 클라이언트 모듈(140)은 사용자 지시에 응답하여 이메일을 생성, 전송, 수신, 및 관리하도록 하는 실행가능 명령어들을 포함한다. 이미지 관리 모듈(144)과 함께, 이메일 클라이언트 모듈(140)은 카메라 모듈(143)로 촬영된 정지 또는 비디오 이미지들을 갖는 이메일을 작성 및 전송하는 것이 매우 용이하게 한다.
RF 회로(108), 터치 스크린(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 인스턴트 메시징 모듈(141)은, 인스턴트 메시지(instant message)에 대응하는 글자들의 시퀀스를 입력하고, 이전에 입력된 글자들을 수정하고, (예를 들어, 전화-기반 인스턴트 메시지들을 위한 단문자 메시지 서비스(SMS) 또는 멀티미디어 메시지 서비스(Multimedia Message Service: MMS) 프로토콜을 이용하거나 인터넷-기반 인스턴트 메시지들을 위한 XMPP, SIMPLE 또는 IMPS를 이용하여) 각각의 인스턴트 메시지를 송신하고, 인스턴트 메시지들을 수신하고, 수신된 인스턴트 메시지들을 보도록 하는 실행가능 명령어들을 포함한다. 일부 실시예들에서, 송신되고/되거나 수신된 인스턴트 메시지들은 그래픽, 사진들, 오디오 파일들, 비디오 파일들, 및/또는 MMS 및/또는 강화된 메시징 서비스(Enhanced Messaging Service: EMS)에서 지원되는 바와 같은 다른 첨부물들을 포함할 수 있다. 본 명세서에서 사용되는 바와 같이, "인스턴트 메시징"은 전화-기반 메시지들(예컨대, SMS 또는 MMS를 이용하여 전송된 메시지들) 및 인터넷-기반 메시지들(예를 들어, XMPP, SIMPLE 또는 IMPS를 이용하여 전송된 메시지) 양쪽 모두를 지칭한다.
RF 회로(108), 터치 스크린(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134), GPS 모듈(135), 지도 모듈(154), 및 음악 플레이어 모듈(146)과 함께, 운동 지원 모듈(142)은 (예컨대, 시간, 거리, 및/또는 열량 소비 목표와 함께) 운동들을 고안하고; 운동 센서들(스포츠 디바이스들)과 통신하고; 운동 센서 데이터를 수신하고; 운동을 모니터하는 데 사용되는 센서들을 교정하고; 운동하는 동안 음악을 선택 및 재생하고; 운동 데이터를 디스플레이, 저장 및 송신하도록 하는 실행가능 명령어들을 포함한다.
터치 스크린(112), 디스플레이 제어기(156), 광 센서(들)(164), 광 센서 제어기(159), 접촉 모듈(130), 그래픽 모듈(132) 및 이미지 관리 모듈(144)과 함께, 카메라 모듈(143)은 정지 이미지들 또는 비디오(비디오 스트림을 포함함)를 캡처하고 이들을 메모리(102) 내에 저장하거나, 정지 이미지 또는 비디오의 특성을 수정하거나, 메모리(102)로부터 정지 이미지 또는 비디오를 삭제하도록 하는 실행가능 명령어들을 포함한다.
터치 스크린(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134) 및 카메라 모듈(143)과 함께, 이미지 관리 모듈(144)은 정지 및/또는 비디오 이미지들을 배열하거나 수정(예컨대, 편집)하거나 달리 조작하고, 레이블링하고, 삭제하고, (예컨대, 디지털 슬라이드 쇼 또는 앨범에) 표시하고, 저장하도록 하는 실행가능 명령어들을 포함한다.
RF 회로(108), 터치 스크린(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 브라우저 모듈(147)은 사용자 지시에 따라 인터넷을 브라우징하도록 실행가능 명령어들을 포함하고, 이는 웹 페이지들 또는 그들의 일부분뿐만 아니라 웹 페이지들에 링크된 첨부물들 및 다른 파일들을 탐색, 그에 링크, 수신, 및 디스플레이하는 것을 포함한다.
RF 회로(108), 터치 스크린(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134), 이메일 클라이언트 모듈(140), 및 브라우저 모듈(147)과 함께, 캘린더 모듈(148)은 사용자 지시에 따라 캘린더들 및 캘린더들과 관련된 데이터(예컨대, 캘린더 엔트리들, 할 일 목록들 등)를 생성, 디스플레이, 수정, 및 저장하도록 하는 실행가능 명령어들을 포함한다.
RF 회로(108), 터치 스크린(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134) 및 브라우저 모듈(147)과 함께, 위젯 모듈들(149)은 사용자에 의해 다운로드 및 사용될 수 있거나(예컨대, 날씨 위젯(149-1), 주식 위젯(149-2), 계산기 위젯(1493), 알람 시계 위젯(149-4) 및 사전 위젯(149-5)), 또는 사용자에 의해 생성될 수 있는(예컨대, 사용자-생성 위젯(149-6)) 미니-애플리케이션들이다. 일부 실시예들에서, 위젯은 HTML(Hypertext Markup Language) 파일, CSS(Cascading Style Sheets) 파일 및 자바스크립트(JavaScript) 파일을 포함한다. 일부 실시예들에서, 위젯은 XML(Extensible Markup Language) 파일 및 자바스크립트 파일(예를 들어, 야후!(Yahoo!) 위젯들)을 포함한다.
RF 회로(108), 터치 스크린(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134) 및 브라우저 모듈(147)과 함께, 위젯 생성기 모듈(150)은 사용자에 의해 위젯들을 생성(예를 들어, 웹 페이지의 사용자 지정 부분을 위젯으로 변경)하는 데 사용될 수 있다.
터치 스크린(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 탐색 모듈(151)은 사용자 지시에 따라 하나 이상의 탐색 기준(예컨대, 하나 이상의 사용자-특정 검색어)에 일치하는 메모리(102) 내의 텍스트, 음악, 사운드, 이미지, 비디오, 및/또는 다른 파일들을 탐색하도록 하는 실행가능 명령어들을 포함한다.
터치 스크린(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 오디오 회로(110), 스피커(111), RF 회로(108), 및 브라우저 모듈(147)과 함께, 비디오 및 음악 플레이어 모듈(152)은 사용자가 MP3 또는 AAC 파일들과 같은 하나 이상의 파일 포맷으로 저장된 녹음된 음악 및 다른 사운드 파일들을 다운로드 및 재생하게 하는 실행가능 명령어들, 및 비디오들을 (예컨대, 터치 스크린(112) 상에서 또는 외부 포트(124)를 통해 외부의 접속된 디스플레이 상에서) 디스플레이하거나, 상영하거나, 또는 달리 재생하도록 하는 실행가능 명령어들을 포함한다. 일부 실시예들에서, 디바이스(100)는 아이팟(애플 인크.의 상표)과 같은 MP3 플레이어의 기능을 포함할 수 있다.
터치 스크린(112), 디스플레이 제어기(156), 접촉 모듈(130), 그래픽 모듈(132) 및 텍스트 입력 모듈(134)과 함께, 노트 모듈(153)은 사용자 지시에 따라 노트들, 할 일 목록들 등을 생성 및 관리하도록 하는 실행가능 명령어들을 포함한다.
RF 회로(108), 터치 스크린(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 텍스트 입력 모듈(134), GPS 모듈(135), 및 브라우저 모듈(147)과 함께, 지도 모듈(154)은 사용자 명령어들에 따라 지도들 및 지도들에 관련된 데이터(예컨대, 운전 방향; 특정 위치에서의 또는 그 인근의 상점들 및 다른 관심 지점들에 관한 데이터; 및 다른 위치-기반 데이터)를 수신하고, 디스플레이하고, 수정하고, 저장하는 데 사용될 수 있다.
터치 스크린(112), 디스플레이 시스템 제어기(156), 접촉 모듈(130), 그래픽 모듈(132), 오디오 회로(110), 스피커(111), RF 회로(108), 텍스트 입력 모듈(134), 이메일 클라이언트 모듈(140), 및 브라우저 모듈(147)과 함께, 온라인 비디오 모듈(155)은 사용자가 H.264와 같은 하나 이상의 파일 포맷의 온라인 비디오들을 액세스하고, 브라우징하고, (예컨대, 스트리밍 및/또는 다운로드에 의해) 수신하고, (예컨대, 터치 스크린 상에서 또는 외부 포트(124)를 통해 외부의 접속된 디스플레이 상에서) 재생하고, 특정 온라인 비디오로의 링크와 함께 이메일을 전송하고, 달리 관리하게 하는 명령어들을 포함한다. 일부 실시예들에서, 이메일 클라이언트 모듈(140)보다는 오히려 인스턴트 메시징 모듈(141)이 특정 온라인 비디오로의 링크를 전송하는 데 사용된다.
앞서 확인된 모듈들 및 애플리케이션들의 각각은 전술된 하나 이상의 기능 및 본 출원에 기술된 방법들(예컨대, 본 명세서에 기술되는 컴퓨터-구현 방법들 및 다른 정보 프로세싱 방법들)을 수행하기 위한 실행가능 명령어들의 세트에 대응한다. 이 모듈(즉, 명령어들의 세트)들은 별도의 소프트웨어 프로그램들, 프로시저(procedure)들 또는 모듈들로서 구현될 필요가 없으며, 따라서 이 모듈들의 다양한 서브세트들이 다양한 실시예들에서 조합되거나 달리 재배열될 수 있다. 일부 실시예들에서, 메모리(102)가 앞서 확인된 모듈들 및 데이터 구조들의 하위세트를 저장할 수 있다. 또한, 메모리(102)는 전술되지 않은 추가의 모듈들 및 데이터 구조들을 저장할 수 있다.
일부 실시예들에서, 디바이스(100)는 디바이스 상의 사전정의된 세트의 기능들의 동작이 터치 스크린 및/또는 터치패드를 통해 전용으로 수행되는 디바이스이다. 터치 스크린 및/또는 터치패드를 디바이스(100)의 동작을 위한 주 입력 제어 디바이스로서 사용함으로써, 디바이스(100) 상의 (푸시 버튼들, 다이얼들 등과 같은) 물리적 입력 제어 디바이스들의 수가 감소될 수 있다.
터치 스크린 및/또는 터치패드를 통해 전용으로 수행될 수 있는 사전정의된 세트의 기능들은 사용자 인터페이스들 사이의 내비게이션을 포함한다. 일부 실시예들에서, 터치패드는 사용자에 의해 터치될 때 디바이스(100)를 디바이스(100) 상에 디스플레이될 수 있는 임의의 사용자 인터페이스로부터 메인, 홈 또는 루트 메뉴로 내비게이트한다. 그러한 실시예들에서, 터치패드는 "메뉴 버튼"으로 불릴 수 있다. 일부 다른 실시예들에서, 메뉴 버튼은 터치패드 대신에 물리적 푸시 버튼 또는 다른 물리적 입력 제어 디바이스일 수 있다.
휴대용 또는 모바일 컴퓨팅 디바이스가 다기능 디바이스의 일 실시예로서 도시되지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 개시 내용을 읽고 나서 데스크톱 컴퓨터 또는 기타 컴퓨팅 디바이스 또한 본 개시 내용의 범주 및 의도를 벗어나지 않고 본 명세서에서 설명하는 많은 기능들을 수행할 수 있다는 것을 쉽게 깨달을 것이다. 유사하게, 터치 스크린 디바이스가 다기능 디바이스의 일 실시예로서 도시되지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 개시 내용을 읽고 나서 터치 스크린이 없는 데스크톱 컴퓨터 또는 기타 컴퓨팅 디바이스 또한 본 개시 내용의 범주 및 의도를 벗어나지 않고 본 명세서에서 설명하는 많은 기능들을 수행할 수 있다는 것을 쉽게 깨달을 것이다.
도 2는 일부 실시예에 따라 휴대용 다기능 디바이스(100)를 도시한다. 터치 스크린은 사용자 인터페이스(UI)(200) 내에 하나 이상의 그래픽을 디스플레이할 수 있다. 이러한 실시예에서뿐만 아니라 하기에 기술되는 다른 실시예들에서, 사용자는, 예를 들어 하나 이상의 손가락(202)(도면에서 축척대로 도시되지는 않음) 또는 하나 이상의 스타일러스(203)(도면에서 축척대로 도시되지는 않음)로, 그래픽 상에 제스처를 행함으로써 그래픽들 중 하나 이상을 선택할 수 있다.
디바이스(100)는 또한 "홈" 또는 메뉴 버튼(204)과 같은 하나 이상의 물리적 버튼을 포함할 수 있다. 전술된 바와 같이, 메뉴 버튼(204)은 디바이스(100) 상에서 실행될 수 있는 애플리케이션들의 세트 내의 임의의 애플리케이션(136)으로 내비게이트하는 데 사용될 수 있다. 대안적으로, 일부 실시예들에서, 메뉴 버튼은 터치 스크린(112) 상에 디스플레이된 GUI에서 소프트 키로서 구현된다.
일 실시예에서, 디바이스(100)는 터치 스크린(112), 메뉴 버튼(204), 디바이스의 전원을 온/오프하고 디바이스를 잠그기 위한 푸시 버튼(206), 음량 조절 버튼(들)(208), 가입자 아이덴티티 모듈(SIM) 카드 슬롯(210), 헤드 셋 잭(212), 및 도킹/충전 외부 포트(124)를 포함한다. 푸시 버튼(206)은, 버튼을 누르고 버튼을 사전정의된 시간 간격 동안 누른 상태로 유지함으로써 디바이스에 대해 전원을 턴 온/오프하고; 버튼을 누르고 미리 정해진 시간 간격이 경과하기 전에 버튼 누름을 해제함으로써 디바이스를 잠그고/잠그거나; 디바이스를 잠금해제하거나 잠금해제 프로세스를 개시하도록 사용된다.
대안적인 실시예에서, 디바이스(100)는 또한 마이크로폰(113)을 통해 일부 기능들의 활성화 또는 비활성화를 위한 구두 입력(verbal input)을 수신할 수 있다.
차량 통합
도 3a는 일부 실시예에 따라 차량의 시청각 리소스와 상호작용하는 다기능 디바이스를 도시한다. 다기능 디바이스(300a)는 통신 링크(305a)(예를 들어, 도 1의 RF 회로(108) 또는 도 2의 외부 포트(124)로의 유선을 통해 연결됨)를 통해 차량(340a)의 임베디드 컴퓨터 시스템(310a)과 통신한다. 임베디드 시스템은 범용 또는 도 6에 대하여 아래에서 논의하는 것들과 유사한 프로세싱 및 메모리 특징부를 갖는 전용 컴퓨팅 디바이스일 수 있다. 임베디드 시스템은 디스플레이 스크린(315a, 320a)뿐만 아니라 스피커(325a, 330a)에도 부착된다. 마이크로폰(335a)은 임베디드 컴퓨터 시스템(310a)에 유사하게 부착된다.
일부 실시예는 사용자 경험을 열악하게 만드는 충돌을 방지하도록 소유권 및 공유 리소스의 사용을 협상하고 애플리케이션 소유권 상태 정보를 전달하기 위한 차량(340a) 및 다기능 디바이스(300a)를 위한 메커니즘을 제공한다. 공유 리소스의 예시는 디스플레이 스크린(315a, 320a)을 포함한다. 디스플레이 스크린(315a)은 헤드 유닛 스크린으로 불릴 수 있다. 공유 리소스의 다른 예들은 스피커(320a, 325a) 뿐만 아니라 마이크로폰(335a)을 통해 전달되는 듀플렉스(입력 및 출력) 오디오 스트림을 포함한다. 일부 실시예에서, 스피커(320a, 325a) 뿐만 아니라 마이크로폰(335a)을 통해 전달되는 메인 오디오에 대하여 오직 한 소스(차량(340a) 또는 다기능 디바이스(300a) 중 어느 하나)만 있을 수 있도록 구현예가 제공되는 것을 선호한다. 음성 제어, 퍼스널 어시스턴트 통신(예를 들어, 시리(Siri™), 애플), 통화(telephony), 및 미디어가 스피커(320a, 325a) 뿐만 아니라 마이크로폰(335a)을 통해 전달되는 메인 오디오에 의해 전송될 수 있는 오디오의 예들이다. 다기능 디바이스(300a) 상에서 실행되는 중재기에 대하여 설명하고 있지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 첨부된 개시 내용을 읽고 나서 본 개시 내용이 그와 같이 제한적이지 않고, 본 명세서에서 설명하는 중재기의 실시예가 또한 기타 디바이스, 예컨대 임베디드 컴퓨터 시스템(310a) 상에서 실행될 수 있고 또는 자동차 이외의 디바이스의 임베디드 시스템, 예컨대 가정용 보안 시스템, 엔터테인먼트 시스템 또는 가전기기를 제어할 수 있다는 것을 쉽게 이해할 것이다. 일부 실시예에서, 공유 리소스는 모터 또는 액츄에이터 또는 시청각 리소스 이외의 특징부이다.
추가적으로, 일부 실시예는 스피커(320a, 325a)를 통해 전달되는 대체 출력 전용 오디오 스트림을 지원한다. 일부 실시예에서, (혹시라도 더킹(ducking)하여) 서로 혼합되는 대체 오디오의 다중 소스가 있을 수 있다. 사용자 인터페이스 사운드, 경고, 및 네비게이션 프롬프트는 이러한 스트림을 통해 나올 수 있는 오디오의 예들이다. 일부 실시예에서, 차량(340a)과 다기능 디바이스(300a) 둘 모두 메인 오디오와 대체 오디오를 구별하고, 그에 따라 오디오를 전달한다.
실시예들은 애플리케이션 전용의 상태를 위하여 차량의 공유 시청각 리소스의 제어를 협상하는 것을 지원한다. 일부 실시예에서, 애플리케이션 전용의 상태의 예들은 차량(340)과 다기능 디바이스(300a) 간에 통신되고, 말하기, 전화 통화, 및 구간별 안내(turn-by-turn) 네비게이션을 포함할 수 있다. 말하기 애플리케이션 전용의 상태에서, 차량(340a) 또는 다기능 디바이스(300a) 중 어느 하나가 음성 인식을 위하여 오디오를 녹음하고 있을 때, 일부 실시예는, 마이크로폰(335a)을 통해 캡쳐된 사운드에 작동하는 음성 인식 알고리즘의 방해를 방지하기 위하여 스피커(320a, 325a)를 통한 모든 오디오 출력이 디스에이블되도록 구성된다. 유사하게, 일부 실시예에서, 차량(340a) 또는 다기능 디바이스(300a) 중 어느 하나가 사용자에게 말하고 있을 때, 차량(340a) 또는 다기능 디바이스(300a) 중 다른 나머지는 말하기를 실행하는 것을 피한다. 예를 들어, 일부 실시예에서, 네비게이션 프롬프트는 스피커(320a, 325a)를 통해 전송되는 음성으로 대체된다.
일부 실시예에서, 전화-통화 애플리케이션 전용의 상태는, 차량(340a) 또는 다기능 디바이스(300a) 중 오직 하나만이 전화 통화 중에 있고 차량(340a) 스피커(320a, 325a) 및 마이크로폰(335a)을 활용하도록 지원된다. 일부 실시예에서, 구간별 안내 애플리케이션 전용의 상태는 차량(340a) 또는 다기능 디바이스(300a) 중 오직 하나만 구간별 안내 네비게이션 지시를 제공하도록 지원된다. 구간별 안내 애플리케이션 전용의 상태에 대한 지원은 차량(340a) 또는 다기능 디바이스(300a)가 (혹시라도) 사용자에게 상충되는 방향을 제공하는 것을 방지하도록 제공된다.
홈 엔터테인먼트 시스템 및 홈 자동화
도 3b는 일부 실시예에 따라 홈 엔터테인먼트 및 자동화 시스템의 시청각 리소스와 상호 작용하는 다기능 디바이스를 도시한다. 제1 다기능 디바이스(300b) 및 제2 다기능 디바이스(370b)는 각자 제1 통신 링크(355b) 및 제2 통신 링크(305b)(예를 들어, 도 1의 RF 회로(108) 또는 도 2의 외부 포트(124)로의 유선에 연결됨)를 통해 홈 엔터테인먼트 및 자동화 시스템(340b)의 허브(310b)와 통신한다. 일부 실시예에서, 홈 엔터테인먼트 및 자동화 시스템(340b)의 허브(310b)는 도 6에 대하여 아래에서 논의하는 것들과 유사한 프로세싱 및 메모리 특징부를 구비한 범용 또는 전용 컴퓨팅 디바이스일 수 있고 복수의 다기능 디바이스와 통신하여 다양한 리소스들에 대한 그것들의 요청, 예를 들어, 프로젝터(360b)의 제어를 다기능 디바이스(370b) 상에서 실행되는 프로세스에 제공하기 및 텔레비전 스크린(320b)의 제어를 다기능 디바이스(300b)에 제공하기 사이에서 중재할 수 있다. 홈 엔터테인먼트 및 자동화 시스템(340b)은 디스플레이 스크린(315b, 320b)뿐만 아니라 스피커(325b, 330b)에 부착된다. DVD 플레이어(335b)는 유사한 방식으로 허브(310b)에 부착된다.
일부 실시예는 홈 엔터테인먼트 및 자동화 시스템(340b)과 다기능 디바이스(300b, 370b)가 소유권 및 공유 리소스의 사용을 협상하도록 메커니즘을 제공하고 사용자 경험을 열악하게 만들 수 있는 충돌을 방지하기 위하여 애플리케이션 소유권 상태 정보를 전달한다. 공유 리소스의 예시는 디스플레이 스크린(315b, 320b)을 포함한다. 일 예로서, 디스플레이 스크린(315b)은 종래의 텔레비전 스크린일 수 있지만, 스크린(315b)은 대개 홈 알람 시스템 인터페이스 패널로서 지정될 수 있다. 마이크로폰(375b)도 또한 허브(310b)에 부착될 수 있고, 공유 리소스일 수 있다.
공유 리소스의 다른 예들은 스피커(320b, 325b) 뿐만 아니라 마이크로폰(375b)을 통해 전달되는 듀플렉스(입력 및 출력) 오디오 스트림을 포함한다. 일부 실시예에서, 각각의 스피커(320b, 325b)를 통해 전달되는 메인 오디오에 대하여 오직 한 소스(허브(310b), 다기능 디바이스(370b), 또는 다기능 디바이스(300b) 중 어느 하나)만 있을 수 있도록 구현예가 제공되는 것을 선호한다. 추가로, 일부 실시예에서, 허브(310b) 내의 중재기는 다기능 디바이스(370b), 또는 다기능 디바이스(300b) 상의 스크린, 마이크 및 스피커를 제어할 수 있다.
공유 리소스의 다른 예들은 마이크로폰(375b)을 포함한다. 음성 제어, 퍼스널 어시스턴트 통신(예를 들어, 애플의 시리™), 통화, 홈 자동화 경고 및 커맨드, 홈 알람 시스템 경고 및 커맨드, 및 미디어 전달(또는 미디어 전달을 위한 커맨드)은 스피커(320b, 325b) 뿐만 아니라 마이크로폰(375b)을 통해 전달되는 메인 오디오에 의해 전달될 수 있는 오디오의 예들이다. 실시예들이 다기능 디바이스(300b) 및 다기능 디바이스(370b) 상에서 실행되는 중재기에 관하여 설명하고 있지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 첨부된 개시 내용을 읽고 나서 본 개시 내용이 그와 같이 제한적이지 않고 본 명세서에서 설명하는 중재기의 실시예가 또한 허브(310b)와 같은 다른 디바이스 상에서 또는 케이블링 또는 기타 통신 링크(305b, 355b) 내에서 실행될 수 있다는 것을 쉽게 이해할 것이다. 일부 실시예에서, 공유 리소스는 모터 또는 액츄에이터 또는 램프(350b)와 같은, 시청각 리소스 이외의 특징부이다.
추가적으로, 일부 실시예는 스피커(330b, 325b)를 통해 전달되는 대체 출력 전용 오디오 스트림을 지원한다. 일부 실시예에서, (혹시라도 더킹하여) 서로 혼합되는 대체 오디오의 다중 소스가 있을 수 있다. UI 사운드, 경고, 및 홈 자동화 시스템 경고는 이러한 스트림을 통해 나올 수 있는 오디오의 예들이다. 일부 실시예에서, 홈 엔터테인먼트 및 자동화 시스템(340b) 및 다기능 디바이스(300b) 및 다기능 디바이스(370b)는 메인 오디오 및 대체 오디오를 구분하고 그에 따라 오디오를 전달한다.
공공 장소 및 대중 교통에서의 사용
일부 실시예는 공공 장소 및 대중 교통에서 공유 시청각 리소스의 제어를 협상하는 것을 지원한다. 공공 장소 및 대중 교통의 공유 시청각 리소스의 예들은 체육관의 공유 시청 스크린(예를 들어, 일립티컬 머신(elliptical machine)들의 어레이 앞에 있는 일렬의 텔레비전들), 게임 포드(예를 들어, 대학교 학생 회관의 스크린, 카우치 및 스피커 조합) 및 외국행 기차, 비행기 및 페리의 시청각 시스템을 포함한다. 도 3c는 일부 실시예에 따라 공공 장소의 시청각 리소스와 상호작용하는 다기능 디바이스를 도시한다.
다기능 디바이스(300c)는 통신 링크(305c)(예를 들어, 도 1의 RF 회로(108) 또는 도 2의 외부 포트(124)로의 유선을 통해 연결됨)를 통해 공공 장소(340c)의 임베디드 컴퓨터 시스템(300c)과 통신한다. 임베디드 시스템은 범용 또는 도 6에 대하여 아래에서 논의하는 것들과 유사한 프로세싱 및 메모리 특징부를 갖는 전용 컴퓨팅 디바이스일 수 있다. 임베디드 시스템은 디스플레이 스크린(315c, 320c) 뿐만 아니라 헤드폰 셋(325c, 330c)에도 부착된다.
일부 실시예는 공공 장소(340c)의 임베디드 컴퓨터 시스템(340b)과 다기능 디바이스(370b), 다기능 디바이스(300c)가 공유 리소스의 소유권 및 사용을 협상하도록 메커니즘을 제공하고 사용자 경험을 열악하게 만들 수 있는 충돌을 방지하기 위하여 애플리케이션 소유권 상태 정보를 전달한다. 공유 리소스의 예시는 디스플레이 스크린(315c, 320c)을 포함한다. 공유 리소스의 다른 예들은 헤드폰(320c, 325c) 뿐만 아니라, 헤드폰(320c, 325c)에 부착된 마이크로폰을 통하여 전달되는 듀플렉스(입력 및 출력) 오디오 스트림을 포함한다. 일부 실시예에서, 스피커(320, 325) 뿐만 아니라 마이크로폰(335)을 통하여 전달되는 메인 오디오에 대하여 오직 한 소스(공공 장소(340c)의 임베디드 컴퓨터 시스템(310c), 다기능 디바이스(370c) 또는 다기능 디바이스(300) 중 어느 하나)만 있을 수 있도록 구현예가 제공되는 것을 선호한다.
비디오 게임, 음성 제어, 퍼스널 어시스턴트 통신(예를 들어, 애플의 시리™), 통화, 및 중앙 공급형 엔터테인먼트 미디어는 또한 헤드폰(320c, 325c)을 통하여 전달되는 메인 오디오에 의해 전달될 수 있는 오디오의 예들이다. 실시예들이 다기능 디바이스(300) 상에서 실행되는 중재기에 관하여 설명하고 있지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 첨부된 개시 내용을 읽고 나서 본 개시 내용이 그와 같이 제한적이지 않고 본 명세서에서 설명하는 중재기의 실시예가 또한 기타 디바이스, 예컨대 임베디드 컴퓨터 시스템(310) 또는 통신 링크(305)에 내장된 회로에서 실행될 수 있다는 것을 쉽게 이해할 것이다.
추가적으로, 일부 실시예는 헤드폰(320c, 325c)을 통해 전달되는 대체 출력 전용 오디오 스트림을 지원한다. 일부 실시예에서, (혹시라도 더킹하여) 서로 혼합되는 대체 오디오의 다중 소스가 있을 수 있다. 본 명세서에서 사용된 바와 같이, 더킹은 제2 소스로부터의 제2 편의 오디오가 플레이하기 이전에 제1 소스로부터의 1 편의 오디오의 볼륨을 줄이는 단계, 및 이어서 제2 소스로부터의 제2 편의 오디오가 완료된 이후에 제1 소스로부터의 제1 편의 오디오의 볼륨을 회복하는 단계의 프로세스이다. UI 사운드, 경고, 및 네비게이션 프롬프트는 이러한 스트림을 통해 나올 수 있는 오디오의 예들이다. 일부 실시예에서, 공공 장소(340c)의 임베디드 컴퓨터 시스템(310c) 및 다기능 디바이스(300c) 또는 다기능 디바이스(370c)는 둘 모두 메인 및 대체 오디오를 구분하고 그에 따라 오디오를 전달한다.
중재기 모듈
도 4는 일부 실시예에 따라 자동차의 공유 시청각 리소스의 제어를 협상하기 위한 중재기 모듈을 도시한다. 중재기 모듈(400)은 소유권 결정 모듈(408)을 포함한다. 중재기 모듈(400)은 제어에 대한 요청(402)을 수신한다. 제어에 대한 요청(402)은 차량의 공유 시청각 리소스의 제어에 대한 요청이다. 중재기 모듈(400)은 기존 상태 정보(404) 및 소유권 전환 조건(406)을 유지한다. 기존 상태 정보(404)는 공유 시청각 리소스의 소유권을 반영하고, 소유권 전환 조건(406)은 공유 시청각 리소스가 소유권의 전환을 겪을 수 있는 조건을 반영한다. 제어에 대한 요청(402)은 차량에 부착된 임베디드 시스템 상에서 실행되는 프로세스 및 차량과 일시적으로 통신하는 모바일 컴퓨팅 디바이스 상에서 실행되는 프로세스를 포함하는 복수의 프로세스 중 하나로부터 수신된다.
소유권 결정 모듈(408)은 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보(420)를 결정한다. 일부 실시예에서, 새로운 상태 정보를 결정하는 단계는 제어에 대한 요청(402) 및 소유권 전환 조건(406)에 적어도 부분적으로 기초하여 새로운 상태 정보를 결정하는 단계를 포함한다. 일부 실시예에서, 새로운 상태 정보를 결정하는 단계는 제어에 대한 요청(402), 기존 상태 정보(404), 및 소유권 전환 조건(406)에 적어도 부분적으로 기초하여 새로운 상태 정보를 결정하는 단계를 포함한다. 새로운 상태 정보(420)는 프로세스들 중 어떤 것이 차량의 공유 시청각 리소스의 출력을 제어하는지 표시한다. 소유권 결정 모듈(408)은 공유 시청각 리소스의 새로운 소유권 전환 조건들을 결정하고 중재기 모듈(420)은 공유 시청각 리소스의 제어기 인터페이스에 새로운 상태 정보(420)를 전달한다.
일부 실시예에서, 기존 상태 정보(404)는 현재 모드의 내부 묘사를 포함한다. 일 실시예에서, 기존 상태 정보(404)에서 현재 모드의 내부 묘사는 다섯 가지의 특성으로 구성된다. 처음 두 가지 특성은 두 공유 리소스 스크린(들) 및 메인 오디오(대체 오디오는 차량 및 다기능 디바이스 둘 모두에서 동시에 소스를 공급받을 수 있어서, 스트림의 단일 소유권에 대한 요구가 없음)의 소유권 및 사용을 표시한다:
상태 정보(404) (또는 새로운 상태 정보(420)) 및 소유권 전환 조건(406)(굵은 글씨)의 내용의 예가 아래에 설명되어 있고, 이는 다섯 가지 특성(1-5까지 표기)이 각각 변수들의 세트로 구성(a, b, c...로 표기)되어 있고, 괄호로 묶인 정보는 특정 변수에 대한 옵션 값을 식별하고, 이는 아래에 설명된다. 일 실시예에서, 스크린에 대한 기존 상태 정보(404)는 다음을 포함한다.
1. 스크린
a. [ 차량 | 전화기 ]가 스크린을 소유함
b. 다른 것이 스크린을 취득할 수 있음 [ 언제든지 | 사용자 개시하에 | 절대 불가 ]
c. 다른 것이 스크린을 차용할 수 있음 [ 언제든지 | 사용자 개시하에 | 절대 불가 ]
일부 실시예는 차용으로서 설명하는 개념을 지원하고, 이는 리소스에 액세스를 요구하는 프로세스가 일시적으로 리소스의 제어를 장악할 수 있지만, 리소스의 제어를 소유자에게 반환하는 데 동의한다.
선택적으로:
d. [ 전화기 | 차량 ]이 스크린을 차용했음
e. 다른 것이 스크린을 다시 취득할 수 있음 [ 언제든지 | 사용자 개시하에 | 절대 불가 ]
일 실시예에서, 메인 오디오 채널에 대한 기존 상태 정보(404)(또는 새로운 상태 정보(420)) 및 소유권 전환 조건(406)(굵은 글씨)은 다음을 포함한다.
2. 메인 오디오
[ 차량 | 전화기 ]가 메인 오디오를 소유함
g. 다른 것이 메인 오디오를 취득할 수 있음 [ 언제든지 | 사용자 개시하에 | 절대 불가 ]
h. 다른 것이 메인 오디오를 차용할 수 있음 [ 언제든지 | 사용자 개시하에 | 절대 불가 ]
선택적으로:
i. [ 전화기 | 차량 ]이 메인 오디오를 차용했음
j. 다른 것이 메인 오디오를 다시 취득할 수 있음 [ 언제든지 | 사용자 개시하에 | 절대 불가 ]
일부 실시예에서, 기존 상태 정보(404)(또는 새로운 상태 정보(420)) 및 소유권 전환 조건(406)은 오직 한 쪽(차량 또는 다기능 디바이스)에서만 시간상 임의의 주어진 시점에서 리소스의 소유권을 주장할 수 있도록 조직된다. 한 쪽이 리소스의 소유권을 주장하면, 그것은 또한 소유권이 이전될 수 있는 환경이 제한된다. 일부 실시예에서, 이러한 제한사항들이 다음과 같은 값들을 이용하여 소유권 전환 조건(406)으로서 표현된다.
Figure pct00018
언제든지(Anytime): 다른 쪽이 원하는 경우 언제든지 리소스를 취득하거나/차용할 수 있다. 스크린이 중요하지 않은 정보를 표시하고 있는 경우, 그것은 이 값을 사용할 수 있다.
Figure pct00019
사용자 개시하에(User-Initiated): 다른 쪽이 이 리소스를 취득하거나 차용할 수 있지만, 그렇게 하는 것은 현재 사용자 경험을 방해할 수도 있으므로, 사용자 개시된 작용에만 응답하여 일어나야 하고, 리소스를 획득하는 것이 새로운 모드의 사용자 경험에 중요한 경우, 예를 들어, 음악이 플레이되고 있는 동안, 사용자가 다른 오디오 소스로 전환하지 않는 한 메인 오디오 채널은 취득 되어서는 안된다.
Figure pct00020
절대 불가(Never): 다른 쪽이 어떠한 환경에서도 이 리소스를 취득하거나 차용할 수 없다. 리소스의 소유자/차용자가 전화 통화 중이거나, 또는 안전 경고가 나타나고 있는 동안 이것이 설정될 것이다.
일부 실시예에서, 리소스의 소유권은 영구적으로 이전(취득)되거나 또는 일시적으로 이전(차용)될 수 있다. 소유권의 개념은 아래에 설명된다.
3. 말하기
k. [ 차량 | 전화기 | 둘 다 안함 ]는 [ 음성 인식 | 말하기 ]를 진행중임
4. [ 차량 | 전화기 | 둘 다 안함 ]가 전화 통화중임
5. [ 차량 | 전화기 | 둘 다 안함 ]가 구간별 네비게이션 지시를 제공중임
일부 실시예에서, 애플리케이션 상태 특성의 값들은 순전히 정보를 주는 것으로, 사용자 경험을 개선하기 위하여 차량과 다기능 디바이스가 정책 결정을 하도록 한다. 예를 들어, 일부 실시예에서, 차량과 다기능 디바이스 중 하나가 음성 인식을 수행하고 있는 동안, 모든 오디오는 음성 인식 알고리즘을 방해하지 않도록 조용하게 된다. 추가로 예를 들어, 일부 실시예에서, 차량과 다기능 디바이스 중 하나가 사용자에게 말하고 있는 동안, 다른 말하기는 억제되거나 말하기 이외의 음성으로 전달된다. 동시에 다수의 스피커들이 말을 하면 사용자에게 혼란을 줄 수 있기 때문이다. 추가로 예를 들어, 일부 실시예에서, 차량과 다기능 디바이스 중 하나가 전화 통화 중에는, 차량과 다기능 디바이스 중 나머지 것은 전화 통화를 개시할 수 없다(처음 것이 우선함). 일부 실시예에서, 차량과 다기능 디바이스 중 첫번째 것이 셀 전화 통화를 개시하는 경우, 차량과 다기능 디바이스 중 나머지 것은 처음의 통화가 완료될 때까지 셀 전화 통화를 개시하지 못하도록 저지된다.
더 예를 들어, 일부 실시예에서, 차량과 다기능 디바이스 중 하나가 구간별 안내 네비게이션 지시를 제공하는 것을 개시하면, 적용 가능한 경우, 차량과 다기능 디바이스 중 나머지 것은 구간별 안내 네비게이션 지시를 제공하는 것을 중지한다(나중 것이 우선함). 일부 실시예에서, 구간별 안내 방향 지시 세션 동안, 새로운 구간별 안내 방향 지시 세션을 개시하는 것은 앞서 존재하던 구간별 안내 방향 지시 세션을 취소한다. 그러나, 일부 실시예에서, 애플리케이션 상태 특성의 현재 값들이, 예를 들어, 매우 중요한 안전 또는 긴급 정보를 사용자에게 전달하기 위하여 무시되어야 하는 상황이 있을 수 있다.
일부 실시예에서, 리소스의 소유권은 영구적으로 이전(취득)되거나 또는 일시적으로 이전(차용)될 수 있다. 리소스를 취득할 시에, 리소스의 소유권은 영구적으로 차량과 다기능 디바이스 중 하나에 이전된다. 예를 들어, 사용자가 차량의 FM 라디오에서 다기능 디바이스 상의 음악 앱으로 전환하는 경우, 예를 들어, 다기능 디바이스는 차량으로부터 메인 오디오 채널을 취득할 수도 있다. 리소스를 차용 시에, 소유권은 일시적으로 이전된다. 소유권이 반환되면, 소유자는 리소스로 하고 있었던 것을 재개한다. 사용자가 차량의 FM 라디오를 들으면서 퍼스널 어시스턴트 세션을 시작하는 경우, 예를 들어, 다기능 디바이스는 메인 오디오 채널을 차용할 수도 있다. 퍼스널 어시스턴트 세션이 종료되면, 소유권은 차량으로 반환되고 FM 라디오는 계속될 수도 있다.
리소스가 차량과 다기능 디바이스 중 하나에 의해 차용되면, 다른 쪽은 계속 소유권을 유지하고, "취득" 상태가 유지된다. 일부 실시예에서, (취득 제한사항이 있는) 원래 소유권 상태를 유지하는 것은 차용 상태를 위한 다음의 세 가지 가능성 있는 방법을 끝까지 지원한다.
1.) 리소스를 차용하는 차량과 다기능 디바이스 중 하나는 그것이 끝나고 그것을 소유자에게 반환한다. 일부 실시예에서, 이것은 통상적인 경우이다. 예를 들어, 전화 통화가 끝나면, 메인 오디오 채널은 차량으로 반환되고 FM 라디오를 계속할 수도 있다.
2.) 차용 상태의 재취득 제약 하에서, 소유자는 리소스를 요구하고 조속하게 차용을 종료한다. 예를 들어, 다기능 디바이스는 메인 오디오 채널을 차용하여 퍼스널 어시스턴트 세션을 시작하지만, 메인 오디오 채널이 다른 전화기에서 들어오는 통화에 필요하기 때문에 차량은 세션을 조속하게 종료한다.
3.) 원래 소유자의 취득 제한사항 하에서, 리소스를 차용하는, 차량과 다기능 디바이스 중 하나는 "차용"을 "취득"으로 변환하기를 희망한다. 예를 들어, 사용자는 퍼스널 어시스턴트에게 FM 라디오에서 다기능 디바이스의 음악 플레이어로 전환하도록 요구할 수 있다. 퍼스널 어시스턴트 세션은 초기에 메인 오디오 채널을 차용하지만, 음악 플레이어가 나중에 그것을 취득한다.
일부 실시예에서, 기존 상태 정보(404) 및 소유권 전환 조건(406)은 중재기 모듈(400)에 의한 사용을 위하여 내부 표현으로서 앞서 설명한 모든 속성을 포함하지만, 차량에 전달되는 새로운 상태 정보(420)는 아래에 설명한 바와 같이 간략화된 내부 상태를 반영한다.
1. [ 차량 | 전화기 ]는 스크린을 가짐
2. [ 차량 | 전화기 ]는 메인 오디오를 가짐
3. [ 차량 | 전화기 | 둘 다 아님 ]는 [ 음성 인식 | 말하기 ]를 진행중임
4. [ 차량 | 전화기 | 둘 다 아님 ]가 전화 통화중임
5. [ 차량 | 전화기 | 둘다 아님 ]은 구간별 안내 네비게이션 지시를 제공함
단순화는 리소스 소유권의 전달에 있다. 이러한 실시예에서, 차량의 관점에서, 현재 모드는 리소스의 현재 사용자(그것이 차용되었는지 취득되었는지 상관없음)만을 표시한다. 확실하게 요구되지 않은 리소스의 소유권이 차량에 반환되는 경우, 차량은 (가능한) 리소스를 이용하여 마지막에 했던 것을 재개한다.
일부 실시예에서, 모드 변경은 제어에 대한 요청(402)으로서 차량 또는 다기능 디바이스 둘 모두로부터 비롯될 수 있다. 차량이 제어에 대한 요청(402)을 송신함으로써 모드 변경을 개시하는 경우, 업데이트된 모드는 새로운 상태 정보(420)로서 다기능 디바이스에 송신될 것이다. 일부 실시예에서, 차량은 미리 정해진 시간의 양 내에 다기능 디바이스로부터 임의의 모드 변경을 이행하도록 요구된다(예를 들어, 소유권이 다기능 디바이스로 이전된 경우 100 ms 내에 스크린의 양도 제어). 현재 모드를 수정하기 위하여, 차량은 제어에 대한 요청(402)으로서 모드 변경 요청을 다기능 디바이스에 송신하여, 모드 변경의 의도를 전달한다. 비록 일부 실시예에서 중재기 모듈(400)이 차량의 임베디드 프로세서 상에서 실행될 수 있지만, 예를 들어, 다기능 디바이스 상에서 실행되는 중재기 모듈(400)은 제어에 대한 요청(402)을 수신하고 요청에 기초하여 새로운 모드(해당하는 소유권 전환 조건(406) 및 새로운 상태 정보(420)를 포함)를 결정한다.
일부 실시예에서, 잘못 형성된 요청들은 거절될 것이고, 차량 또는 다기능 디바이스 중 어떤 것이든 요청을 보냈던 것에게 에러가 돌아갈 것이다. 새로운 모드(해당하는 소유권 전환 조건(406) 및 새로운 상태 정보(420)를 포함)가 결정되면, 새로운 모드는 차량(예를 들어, 임베디드 컴퓨터 시스템(310) 상에서 실행되는 리소스의 제어기)에 전달될 것이고, 그 때 임베디드 컴퓨터 시스템(310) 상에서 실행되는 리소스의 제어기는 새로운 상태 정보(420)로서 실현되는 새로운 현재 모드를 검사하고 그것이 요구한 리소스를 수신했는지 결정하고 그에 따라 반응한다.
일부 실시예에서, 모드 변경 요청(예를 들어, 제어에 대한 요청(402))은 다음의 정보들로 구성된다.
1. 스크린:
Figure pct00021
이전 유형: 취득, 취득취소, 차용, 차용취소
Figure pct00022
우선권: 갖게 되면 좋음(Nice to Have), 또는 사용자 개시
Figure pct00023
제한사항: 취득 및 차용을 위하여, "다른 것이 취득/차용할 수 있음" 또는 "다른 것이 재취득할 수 있음" 제한.
2. 메인 오디오:
Figure pct00024
이전 유형: 취득, 취득취소, 차용, 차용취소
Figure pct00025
우선권: 갖게 되면 좋음, 또는 사용자 개시
Figure pct00026
제한사항: 취득 및 차용을 위하여, "다른 것이 취득/차용할 수 있음" 또는 "다른 것이 재취득할 수 있음" 제한.
3. 말하기: 말하기, 음성 인식, 또는 둘다 아님
4. 전화 통화: 참 또는 거짓
5. 구간별 안내: 참 또는 거짓
일부 실시예에서, 변경 요청(예를 들어, 제어에 대한 요청(402))은 항목 1 내지 항목 5 중 적어도 하나를 포함해야 한다. 작용이 모드의 다중 특성들에 대한 변경을 요청하는 경우, 모두 단일 처리과정에서 송신된다(예를 들어, 제어에 대한 요청(402)). 그러나 모든 모드 변경 요청이 모든 항목에 대한 변경을 요청하지는 않을 것이고, 그런 경우 그것들은 배제될 수 있다. 일부 실시예에서, 차량은 항상 현재 모드에 상관없이 다기능 디바이스를 그것의 현재 상태로 업데이트한다. 예를 들어, 사용자가 FM 라디오에서 CD 플레이어로 전환하는 경우, 메인 오디오의 소유권은 바뀌지 않을 것이다. 그러나, 그럼에도 불구하고, 차량은 모드 변경 요청(예를 들어, 제어에 대한 요청(402))을 중재기 모듈(400)에 전송하여 그것이 메인 오디오를 "취득"하기를 원한다고 표시한다. 차량은 (제어에 대한 요청(402)에서) 앞서 설명한 바와 같이 그것이 리소스를 "취득"하거나 "차용"하기를 원하는지 명시한다. 차량이 리소스를 차용하는 것을 끝내면, 그것은 "차용취소" 모드 변경 요청을 전송한다. "취득취소" 이전 유형을 이용하여 다기능 디바이스에 차량이 더 이상 리소스의 사용을 요청하지 않고, 제한사항이 "다른 것이 언제든지 취득할 수 있음"으로 리셋된다는 것을 표시한다. 다른 쪽에 의해 현재 차용된 리소스의 성공적인 "취득" 또는 "차용"은 위의 차용을 종료할 것이다. 일부 실시예에서, 우선권을 이용하여 중재기 모듈(400)에 요청하는 디바이스에 이전이 얼마나 중요한지 표시한다. "갖게 되면 좋음"의 우선권은 취득/차용 제한사항이 "언제든지"인 경우 성공할 것이다. 유사하게, 취득/차용 제약이"사용자 개시하에" 또는 "언제든지"인 경우 "사용자 개시"의 우선권은 성공할 것이다.
다음의 예들은 모드의 시퀀스 및 모드 변경을 도시한다.
차량 표시 차량 정보 - 이 초기 상태에서, 차량은 MPG 및 마일리지와 같은 중요하지 않은 정보를 도시하고 있다. 오디오가 플레이되고 있지 않다.
1. 차량이 스크린을 소유함
다른 것이 언제든지 스크린을 취득할 수 있음
다른 것이 언제든지 스크린을 차용할 수 있음
2. 차량이 메인 오디오를 소유함
다른 것이 언제든지 메인 오디오를 취득할 수 있음
다른 것이 언제든지 메인 오디오를 차용할 수 있음
3. 둘 다 음성 인식 또는 말하기를 하고 있지 않음
4. 둘 다 전화 통화 중이 아님
5. 둘 다 구간별 안내 네비게이션 지시를 제공하고 있지 않음
사용자가 FM 라디오를 켠다 - 사용자가 이제 차량의 FM 라디오를 켠다. 차량은 제어에 대한 요청(402)에 다음의 모드 변경 요청을 송신한다:
1. 스크린:
Figure pct00027
이전 유형: 취득
Figure pct00028
우선권: 갖게 되면 좋음
Figure pct00029
제한사항: 다른 것이 언제든지 취득할 수 있음; 다른 것이 언제든지 차용할 수 있음
2. 메인 오디오:
Figure pct00030
이전 유형: 취득
Figure pct00031
우선권: 사용자 개시
Figure pct00032
제한사항: 다른 것이 사용자 개시하에 취득할 수 있음; 다른 것이 언제든지 차용할 수 있음
중재기 모듈(400)은 이 요청을 평가하고 새로운 상태 정보(420)를 결정하여 현재 모드를 조정함:
1. 차량이 스크린을 소유함
다른 것이 언제든지 스크린을 취득할 수 있음
다른 것이 언제든지 스크린을 차용할 수 있음
2. 차량이 메인 오디오를 소유함
다른 것이 사용자 개시하에 메인 오디오를 취득할 수 있음
다른 것이 언제든지 메인 오디오를 차용할 수 있음
3. 둘 다 음성 인식 또는 말하기를 하고 있지 않음
4. 둘 다 전화 통화 중이 아님
5. 둘 다 구간별 안내 네비게이션 지시를 제공하고 있지 않음
새로운 상태 정보(420)로서 차량에 송신된 업데이트된 모드는:
1. 차량이 스크린을 가짐
2. 차량이 메인 오디오를 가짐
3. 둘 다 음성 인식 또는 말하기를 하고 있지 않음
4. 둘 다 전화 통화 중이 아님
5. 둘 다 구간별 안내 네비게이션 지시를 제공하고 있지 않음
케이스 1: 사용자가 다기능 디바이스에 의해 플레이되는 음악으로 전환한다- 사용자는 이제 버튼을 눌러 차량의 FM 라디오 대신에 다기능 디바이스에서 오디오를 얻는다. 다기능 디바이스는 스크린 및 메인 오디오의 소유권을 주장하고 새로운 상태는:
1. 전화기가 스크린을 소유함
다른 것이 언제든지 스크린을 취득할 수 있음
다른 것이 언제든지 스크린을 차용할 수 있음
2. 전화기가 메인 오디오를 소유함
다른 것이 사용자 개시하에 메인 오디오를 취득할 수 있음
다른 것이 언제든지 메인 오디오를 차용할 수 있음
3. 둘 다 음성 인식 또는 말하기를 하고 있지 않음
4. 둘 다 전화 통화 중이 아님
5. 둘 다 구간별 안내 네비게이션 지시를 제공하고 있지 않음
새로운 상태 정보(420)로서 차량에 송신된 업데이트된 모드는:
1. 전화기가 스크린을 가짐
2. 전화기가 메인 오디오를 가짐
3. 둘 다 음성 인식 또는 말하기를 하고 있지 않음
4. 둘 다 전화 통화 중이 아님
5. 둘 다 구간별 안내 네비게이션 지시를 제공하고 있지 않음
케이스 2: 사용자가 들어오는 전화 통화에 응답한다- 이 대안적인 시나리오에서, 사용자가 차량의 FM 라디오를 듣고 있을 때 전화 통화가 들어온다. 전화기는 먼저 스크린 및 메인 오디오를 차용하여 벨 소리를 플레이하고 발신자 ID를 표시한다.
1. 차량이 스크린을 소유함
다른 것이 언제든지 스크린을 취득할 수 있음
다른 것이 언제든지 스크린을 차용할 수 있음
전화기가 스크린을 차용했음
다른 것이 언제든지 스크린을 재취득할 수 있음
2. 차량이 메인 오디오를 소유함
다른 것이 사용자 개시하에 메인 오디오를 취득할 수 있음
다른 것이 언제든지 메인 오디오를 차용할 수 있음
전화기가 메인 오디오를 차용했음
다른 것이 메인 오디오를 절대 재취득할 수 없음
3. 둘 다 음성 인식 또는 말하기를 하고 있지 않음
4. 둘 다 전화 통화 중이 아님
5. 둘 다 구간별 안내 네비게이션 지시를 제공하고 있지 않음
차량에 전달되는 모드 변경은:
1. 전화기가 스크린을 가짐
2. 전화기가 메인 오디오를 가짐
3. 둘 다 음성 인식 또는 말하기를 하고 있지 않음
4. 둘 다 전화 통화 중이 아님
5. 둘 다 구간별 안내 네비게이션 지시를 제공하고 있지 않음
사용자가 통화에 응답하는 것을 가정하여, 모드는 "전화 통화 중" 모드로 전환된다.
1. 차량이 스크린을 소유함
다른 것이 언제든지 스크린을 취득할 수 있음
다른 것이 언제든지 스크린을 차용할 수 있음
전화기가 스크린을 차용했음
다른 것이 언제든지 스크린을 재취득할 수 있음
2. 차량이 메인 오디오를 소유함
다른 것이 사용자 개시하에 메인 오디오를 취득할 수 있음
다른 것이 언제든지 메인 오디오를 차용할 수 있음
전화기가 메인 오디오를 차용했음
다른 것이 메인 오디오를 절대 재취득할 수 없음
3. 전화기가 말하기를 하고 있음
4. 전화기가 전화 통화 중에 있음
5. 둘 다 구간별 안내 네비게이션 지시를 제공하고 있지 않음
차량에 전달되는 모드 변경은 새로운 상태 정보(420)와 같을 것이다:
1. 전화기가 스크린을 가짐
2. 전화기가 메인 오디오를 가짐
3. 전화기가 말하기를 하고 있음
4. 전화기가 전화 통화 중에 있음
5. 둘 다 구간별 안내 네비게이션 지시를 제공하고 있지 않음
전화 통화가 종료되면, 전화기는 스크린 및 메인 오디오를 차량에 반환한다:
1. 차량이 스크린을 소유함
다른 것이 언제든지 스크린을 취득할 수 있음
다른 것이 언제든지 스크린을 차용할 수 있음
2. 차량이 메인 오디오를 소유함
다른 것이 사용자 개시하에 메인 오디오를 취득할 수 있음
다른 것이 언제든지 메인 오디오를 차용할 수 있음
3. 둘 다 음성 인식 또는 말하기를 하고 있지 않음
4. 둘 다 전화 통화 중이 아님
5. 둘 다 구간별 안내 네비게이션 지시를 제공하고 있지 않음
차량에 전달되는 모드 변경은 새로운 상태 정보(420)와 같을 것이다:
1. 차량이 스크린을 가짐
2. 차량이 메인 오디오를 가짐
3. 둘 다 음성 인식 또는 말하기를 하고 있지 않음
4. 둘 다 전화 통화 중이 아님
5. 둘 다 구간별 안내 네비게이션 지시를 제공하고 있지 않음
차량은 스크린 및 메인 오디오의 소유권을 되찾았다는 것을 알고, 이에 응답하여 FM 라디오를 재개한다.
예시 동작
도 5a는 자동차의 공유 시청각 리소스의 제어를 협상하기 위한 방법의 일 실시예를 도시하는 플로 다이어그램이다. 차량의 공유 시청각 리소스의 제어에 대한 요청이 중재기에서 수신된다(블록 500). 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정한다(블록 510). 공유 시청각 리소스의 새로운 소유권 전환 조건들을 결정한다(블록 520). 공유 시청각 리소스의 제어기 인터페이스에 새로운 상태 정보를 전달한다(블록 530). 자동차에 대한 예들이 본 명세서에서 논의되지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 개시 내용을 읽고 나서 차량을 참조하는 예들이 그와 같이 제한되지 않고, 그 실시예들이 시청각 리소스를 제공하는 기계의 넓은 범위, 예컨대 가전기기, 바퀴없는 차량, 또는 기타 디바이스에 적용될 수 있다는 것을 쉽게 이해할 것이다.
도 5b는 자동차의 공유 시청각 리소스의 제어를 협상하기 위한 방법의 일 실시예를 도시하는 플로 다이어그램이다. 차량의 공유 시청각 리소스의 제어에 대한 요청이 중재기에서 수신된다. 중재기는 공유 시청각 리소스의 소유권에 대한 기존 상태 정보 및 공유 시청각 리소스의 소유권 전환 조건을 유지한다. 요청은 차량에 부착된 임베디드 시스템 상에서 실행되는 프로세스 또는 차량과 일시적으로 통신하는 모바일 컴퓨팅 디바이스 상에서 실행되는 프로세스로부터 수신된다(블록 505). 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보는, 새로운 상태 정보가 프로세스들 중 어떤 것이 공유 시청각 리소스의 출력을 제어하는지 표시하도록 제어에 대한 요청 및 소유권 및 전환 조건에 적어도 부분적으로 기초하여 결정된다(블록 515). 공유 시청각 리소스의 새로운 소유권 전환 조건들을 결정한다(블록 525). 공유 시청각 리소스의 제어기 인터페이스에 새로운 상태 정보를 전달한다(블록 535).
도 5c는 공유 리소스의 제어를 협상하기 위한 방법의 일 실시예를 도시하는 플로 다이어그램이다. 공유 리소스의 제어에 대한 요청이 중재기에서 수신된다(블록 550). 공유 리소스의 소유권에 관한 새로운 상태 정보를 결정한다(블록 555). 공유 리소스의 새로운 소유권 전환 조건들을 결정한다(블록 560). 공유 리소스의 제어기에 새로운 상태 정보를 전달한다(블록 565).
예시적인 컴퓨터 시스템
도 6은 앞서 설명한 실시예들의 임의의 부분 또는 전부를 실행하도록 구성된 컴퓨터 시스템(600)을 도시한다. 다양한 실시예에서, 컴퓨터 시스템(600)은 차량에 임베디드된 컴퓨터, 가전기기에 임베디드된 컴퓨터, 퍼스널 컴퓨터 시스템, 데스크톱 컴퓨터, 랩톱, 노트북, 태블릿, 슬레이트, 또는 넷북 컴퓨터, 메인프레임 컴퓨터 시스템, 핸드헬드 컴퓨터, 워크스테이션, 네트워크 컴퓨터, 카메라, 셋톱 박스, 모바일 디바이스, 소비자용 디바이스, 비디오 게임 콘솔, 핸드헬드 비디오 게임 디바이스, 애플리케이션 서버, 저장 디바이스, 텔레비전, 비디오 레코딩 디바이스, 스위치, 모뎀, 라우터와 같은 주변장치 디바이스, 또는 일반적으로 임의의 유형의 컴퓨팅 또는 전자 디바이스를 포함하지만 이에 제한되지 않는 임의의 다양한 유형의 디바이스들일 수 있다.
본 명세서에서 설명하는 바와 같이, 공유 시청각 리소스의 제어를 협상하기 위한 시스템 및 방법의 다양한 실시예는, 다양한 다른 디바이스들과 상호작용할 수 있는 하나 이상의 컴퓨터 시스템(600) 상에서 실행될 수 있다. 주의할 점은 도 1 내지 도 5에 대하여 앞서 설명한 어떠한 컴포넌트, 작용, 또는 기능들도 다양한 실시예에 따라 도 6의 컴퓨터 시스템(600)과 같이 구성된 하나 이상의 컴퓨터 상에서 구현될 수 있다는 것이다. 도시된 실시예에서, 컴퓨터 시스템(600)은 입력/출력(I/O) 인터페이스(630)를 통해 시스템 메모리(620)에 연결되는 하나 이상의 프로세서(610)를 포함한다. 컴퓨터 시스템(600)은 I/O 인터페이스(630)에 연결된 네트워크 인터페이스(640), 및 커서 컨트롤 디바이스(660), 키보드(670), 및 디스플레이(680)(들)와 같은 입력/출력 디바이스(650)를 하나 이상 추가로 포함한다. 일부 경우에, 실시예는 단일 인스턴스(instance)의 컴퓨터 시스템(600)을 이용하여 구현될 수 있지만, 다른 실시예에서 다수의 그와 같은 시스템, 또는 다수의 노드로 구성된 컴퓨터 시스템(600)은 실시예의 상이한 부분들 또는 인스턴스들을 관리하도록 구성될 수 있다는 것이 고려된다. 예를 들어, 일 실시예에서 일부 구성요소들은 다른 구성요소를 구현하는 노드들과는 별개의 컴퓨터 시스템(600)의 하나 이상의 노드를 통해 구현될 수 있다.
다양한 실시예에서, 컴퓨터 시스템(600)은 하나의 프로세서(610)를 포함하는 유니프로세서(uniprocessor) 시스템, 또는 다수의 프로세서(610)(예를 들어, 2, 4, 8, 또는 다른 적합한 숫자)를 포함하는 멀티프로세서 시스템일 수 있다. 프로세서(610)들은 명령어를 실행할 수 있는 임의의 적합한 프로세서일 수 있다. 예를 들어, 다양한 실시예에서 프로세서(610)들은 범용 프로세서이거나 x86, PowerPC, SPARC, 또는 MIPS ISA, 또는 임의의 다른 적합한 ISA와 같은 다양한 명령어 세트 아키텍처(ISA) 중 임의의 것을 구현하는 임베디드 프로세서일 수 있다. 멀티프로세서 시스템에서, 각각의 프로세서(610)들은 필수적인 것은 아니고, 일반적으로 동일한 ISA를 구현할 수 있다.
시스템 메모리(620)는 프로세서(610)에 의해 액세스 가능한 프로그램 명령어(622) 및/또는 기존 상태 정보 및 소유권 전환 조건 데이터(632)를 저장하도록 구성될 수 있다. 다양한 실시예에서, 시스템 메모리(620)는 임의의 적합한 메모리 기술, 예컨대 정적 랜덤 액세스 메모리(SRAM), 동기식 동적 RAM(SDRAM), 비휘발성/플래시 타입 메모리, 또는 임의의 다른 유형의 메모리를 이용하여 구현될 수 있다. 도시된 실시예에서, 프로그램 명령어(622)들은 앞서 설명한 임의의 기능을 포함하는 맵핑 애플리케이션(624)을 구현하도록 구성될 수 있다. 추가적으로, 메모리(620)의 기존 상태 정보 및 소유권 전환 조건 데이터(632)는 앞서 설명한 임의의 정보 또는 데이터 구조를 포함할 수 있다. 일부 실시예에서, 프로그램 명령어들 및/또는 데이터는 수신, 송신되거나 상이한 유형의 컴퓨터 액세스 가능 매체 또는 시스템 메모리(620) 또는 컴퓨터 시스템(600)과는 별개의 유사 매체 상에 저장될 수 있다. 컴퓨터 시스템(600)이 이전의 도면들의 기능 블록들의 기능성을 구현하는 것으로서 설명하지만, 본 명세서에서 설명하는 임의의 기능은 그와 같은 컴퓨터 시스템을 통해 구현될 수 있다.
일 실시예에서, I/O 인터페이스(630)는 프로세서(610), 시스템 메모리(620), 및 디바이스 내의 임의의 주변장치 디바이스 간의 I/O 트래픽을 조정하도록 구성되고, 네트워크 인터페이스(640) 또는 입력/출력 디바이스(650)와 같은 기타 주변장치 인터페이스를 포함할 수 있다. 일부 실시예에서, I/O 인터페이스(630)는 임의의 필수 프로토콜, 타이밍 또는 기타 데이터 변형을 수행하여 하나의 컴포넌트(예를 들어, 시스템 메모리(620))에서 다른 컴포넌트(예를 들어, 프로세서(610))에 의해 사용하기 적합한 포맷으로 데이터 신호를 변환할 수 있다. 일부 실시예에서, I/O 인터페이스(630)는 다양한 유형의 주변장치 버스, 예를 들어 다양한 주변장치 컴포넌트 상호접속(Peripheral Component Interconnect: PCI) 버스 표준 또는 범용 직렬 버스(Universal Serial Bus: USB) 표준을 통해 부착된 디바이스들을 위한 지원을 포함할 수 있다. 일부 실시예에서, I/O 인터페이스(630)의 기능은, 예를 들어 노스 브릿지(north bridge)와 사우스 브릿지(south bridge)와 같이, 둘 이상의 별개의 컴포넌트로 나뉠 수 있다. 또한, 일부 실시예에서 시스템 메모리(620)로의 인터페이스와 같은 I/O 인터페이스(630)의 기능 중 일부 또는 전부는 프로세서(610)에 직접 포함될 수 있다.
네트워크 인터페이스(640)는 컴퓨터 시스템(600)과 네트워크(685)에 부착된 기타 디바이스(예를 들어, 캐리어 또는 에이전트 디바이스) 간 또는 컴퓨터 시스템(600)의 노드들 간에 데이터가 교환되도록 구성될 수 있다. 네트워크(685)는 다양한 실시예에서 로컬 영역 네트워크(LAN) (예를 들어, 이더넷 또는 기업 네트워크), 광역 네트워크(WAN) (예를 들어, 인터넷), 무선 데이터 네트워크, 일부 다른 전자 데이터 네트워크, 또는 일부 이들의 조합을 포함하지만 이에 제한되지 않는 하나 이상의 네트워크를 포함한다. 다양한 실시예에서, 네트워크 인터페이스(640)는 임의의 적합한 유형의 이더넷 네트워크와 같은 유선 또는 무선 일반 데이터 네트워크, 예를 들어; 아날로그 음성 네트워크 또는 디지털 섬유 통신 네트워크와 같은 전기통신/통화 네트워크; 파이버 채널(Fibre Channel) SAN과 같은 저장 영역 네트워크, 또는 기타 적합한 유형의 네트워크 및/또는 프로토콜을 통해 통신을 지원할 수 있다.
입력/출력 디바이스(650)는, 일부 실시예에서, 하나 이상의 디스플레이 터미널, 키보드, 키패드, 터치패드, 스캐닝 디바이스, 음성 또는 광학 인식 디바이스, 또는 하나 이상의 컴퓨터 시스템(600)에 의해 데이터 입력 또는 액세스에 적합한 기타 디바이스를 포함한다. 여러 입력/출력 디바이스(650)가 컴퓨터 시스템(600)에 있을 수 있고 또는 컴퓨터 시스템(600)의 다양한 노드에 분포되어 있을 수 있다. 일부 실시예에서, 유사한 입력/출력 디바이스들은 컴퓨터 시스템(600)에서 분리될 수 있고 유선 또는 무선 접속, 예컨대 네트워크 인터페이스(640)를 통해 컴퓨터 시스템(600)의 하나 이상의 노드와 상호작용할 수 있다.
도 6에 도시된 바와 같이, 메모리(620)는 앞서 설명한 임의의 구성요소 또는 작용을 구현하기 위하여 프로세서-실행 가능한 프로그램 명령어(622)들을 포함할 수 있다. 일 실시예에서, 프로그램 명령어들은 도 8에 의해 도시된 방법과 같이 앞서 설명한 방법들을 구현할 수 있다. 다른 실시예에서, 상이한 구성요소 및 데이터가 포함될 수 있다. 주의할 점은 데이터(632)가 앞서 설명한 임의의 데이터 또는 정보를 포함할 수 있다는 것이다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자들은 컴퓨터 시스템(600)은 단지 예시적인 것이고 실시예들의 범주를 제한하려는 의도가 아님을 이해할 것이다. 특히, 컴퓨터 시스템 및 디바이스들은 표시된 기능들을 수행할 수 있는 하드웨어 또는 소프트웨어의 임의의 조합, 예컨대 컴퓨터, 네트워크 디바이스, 인터넷 정보가전기기, PDA, 무선 전화기, 호출기 등을 포함할 수 있다. 컴퓨터 시스템(600)은 또한 도시되지 않은 다른 디바이스들에 접속될 수 있거나, 대신에 단독형 시스템으로서 동작할 수 있다. 추가로, 도시된 컴포넌트들에 의해 제공된 기능성은 일부 실시예에서 더 적은 컴포넌트들로 조합되거나 추가적인 컴포넌트들에 분배될 수 있다. 유사하게, 일부 실시예에서, 도시된 컴포넌트들 중 일부의 기능성은 제공되지 않을 수 있고/있거나 다른 추가적인 기능성이 사용 가능할 수 있다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자들은 또한 다양한 아이템들이 사용되는 동안 메모리 또는 저장장치에 저장되어 있는 것으로서 도시되지만, 이들 아이템 또는 그것들의 부분들은 메모리 관리 및 데이터 무결성을 위하여 메모리와 다른 저장 디바이스 사이에서 이전될 수 있다는 것을 이해할 것이다. 대안적으로, 다른 실시예에서 소프트웨어 컴포넌트들 중 일부 또는 전부는 다른 디바이스 상의 메모리에서 실행될 수 있고 컴퓨터 간 통신을 통해 도시된 컴퓨터 시스템과 통신할 수 있다. 시스템 컴포넌트 또는 데이터 구조 중 일부 또는 전부는 또한 (예를 들어, 명령어 또는 구조화된 데이터로서) 컴퓨터-액세스 가능 매체 또는 휴대용 기기 상에 저장되어 적절한 드라이브에 의해 판독될 수 있고, 이것의 다양한 예들이 앞서 설명되어 있다. 일부 실시예에서, 컴퓨터 시스템(600)과 구분되는 컴퓨터-액세스 가능한 매체 상에 저장된 명령어들은 전송 매체 또는 전기, 전자기, 또는 디지털 신호와 같은 신호들을 통해 컴퓨터 시스템(600)에 전송되고, 네트워크 및/또는 무선 링크와 같은 통신 매체를 통해 전달된다. 다양한 실시예들은 추가로 컴퓨터-액세스 가능한 매체 상에 앞의 설명에 따라 구현되는 명령어들 및/또는 데이터를 수신, 송신 또는 저장하는 것을 포함할 수 있다. 일반적으로 말해서, 컴퓨터-액세스 가능한 매체는 자기 또는 예를 들어, 디스크 또는 DVD/CD-ROM의 광학 매체, RAM (예를 들어, SDRAM, DDR, RDRAM, SRAM 등), ROM 등과 같은 휘발성 또는 비휘발성 매체와 같은 비일시적, 컴퓨터 판독 가능 저장 매체 또는 메모리 매체를 포함할 수 있다. 일부 실시예에서, 컴퓨터-액세스 가능한 매체는 전송 매체 또는 전기, 전자기, 또는 디지털 신호와 같은 신호들을 포함하고, 네트워크 및/또는 무선 링크와 같은 통신 매체를 통해 전달된다.
본 명세서에서 설명하는 방법은 다양한 실시예에서 소프트웨어, 하드웨어, 또는 이들의 조합으로 구현될 수 있다. 추가로, 방법의 블록의 순서는 변경될 수 있고, 다양한 구성요소들이 추가, 재정렬, 조합, 누락, 수정될 수 있다. 다양한 수정 및 변경은 본 개시 내용을 이용하는 통상의 기술자에게 명백할 수 있도록 이루어질 수 있다. 본 명세서에서 설명하는 다양한 실시예들은 예시적인 것이며 제한하는 것이 아님을 의미한다. 많은 변경, 수정, 추가, 및 개선이 가능하다. 따라서, 복수의 인스턴스가 단일 인스턴스로서 본 명세서에서 설명하는 컴포넌트들에 제공될 수 있다. 다양한 컴포넌트, 동작, 데이터 저장들 간의 경계는 다소 임의적이고, 특정 동작들은 명시적인 예시 구성들의 맥락에서 도시된다. 기능의 다른 할당들이 계획되고 뒤에 오는 청구 범위의 범주 내에 들어갈 수 있다. 최종적으로, 예시적인 구성에서 별개의 컴포넌트들로서 제시된 구조 및 기능들은 조합된 구조 또는 컴포넌트들로서 구현될 수 있다. 이러한 변경, 수정, 추가, 및 개선은 뒤에 오는 청구 범위에서 정의되는 바와 같이 실시예들의 범주 내에 들어갈 수 있다.

Claims (20)

  1. 자동차의 공유 시청각 리소스(shared audio or visual resource)의 제어를 협상하기 위한 방법으로서,
    중재기(arbiter)에서 차량의 공유 시청각 리소스의 제어에 대한 요청을 수신하는 단계 -
    상기 중재기는
    상기 공유 시청각 리소스의 소유권(ownership)에 대한 기존 상태 정보 및
    상기 공유 시청각 리소스의 소유권 전환 조건들
    을 유지하고,
    상기 차량의 상기 공유 시청각 리소스의 제어에 대한 상기 요청은
    상기 차량의 임베디드 시스템 상에서 실행되는 프로세스 및
    상기 차량과 일시적으로 통신하는 모바일 컴퓨팅 디바이스 상에서 실행되는 프로세스
    를 포함하는 복수의 프로세스 중 하나로부터 수신됨 -;
    상기 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계 -
    상기 새로운 상태 정보를 결정하는 단계는
    제어에 대한 상기 요청 및
    상기 소유권 전환 조건들
    에 적어도 부분적으로 기초하여 상기 새로운 상태 정보를 결정하는 단계를 포함하고,
    상기 새로운 상태 정보는 상기 프로세스들 중 어떤 것이 상기 차량의 상기 공유 시청각 리소스의 출력을 제어하는지 표시함 -; 및
    상기 공유 시청각 리소스의 제어기 인터페이스에 상기 새로운 상태 정보를 전달하는 단계
    를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계는
    상기 차량의 상기 공유 시청각 리소스의 제어에 대한 상기 요청이 상기 차량에 부착된 임베디드 시스템 상에서 실행되는 상기 프로세스 또는 상기 차량과 일시적으로 통신하는 모바일 컴퓨팅 디바이스 상에서 실행되는 프로세스에서 비롯되었는지에 상관없이, 상기 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계를 추가로 포함하는, 방법.
  3. 제1항에 있어서, 상기 중재기는 상기 차량 상에서 실행되는 프로세스인, 방법.
  4. 제1항에 있어서,
    상기 중재기에서 상기 차량의 다른 하나의 공유 시청각 리소스의 제어에 대한 요청을 수신하는 단계; 및
    상기 차량의 상기 공유 시청각 리소스 중 상기 다른 하나의 제어에 대한 상기 요청에 기초하여 상기 차량의 상기 다른 하나의 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계를 추가로 포함하고,
    상기 차량의 상기 다른 하나의 공유 시청각 리소스의 소유권에 관한 상기 새로운 상태 정보는 상기 프로세스들 중 어떤 것이 상기 차량의 상기 다른 하나의 공유 시청각 리소스의 출력을 제어하는지 표시하고,
    상기 차량의 상기 다른 하나의 공유 시청각 리소스의 소유권에 관한 상기 새로운 상태 정보는 상기 공유 시청각 리소스의 소유권에 관한 상기 새로운 상태 정보와는 독립적으로 결정되는, 방법.
  5. 제4항에 있어서,
    상기 차량의 상기 공유 시청각 리소스 중 상기 하나는 비디오 디스플레이이고,
    상기 차량의 상기 공유 시청각 리소스 중 상기 다른 하나는 오디오 채널인, 방법.
  6. 제4항에 있어서,
    상기 차량의 상기 공유 시청각 리소스 중 상기 하나는 출력 채널이고,
    상기 차량의 상기 공유 시청각 리소스 중 상기 다른 하나는 입력/출력 채널인, 방법.
  7. 제1항에 있어서,
    상기 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계는
    상기 프로세스들 중 제1 프로세스가 상기 차량의 상기 공유 시청각 리소스 중 상기 하나의 제어를 소유하고,
    상기 프로세스들 중 제2 프로세스가 과제의 지속 시간 동안 상기 공유 시청각 리소스 중 상기 하나의 출력을 제어하도록 지정되고, 상기 과제의 완료 이후에 상기 공유 시청각 리소스 중 상기 하나의 출력을 제어하도록 상기 차량의 상기 공유 시청각 리소스 중 상기 하나의 제어를 반환하도록, 상기 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계를 추가로 포함하는, 방법.
  8. 제1항에 있어서,
    상기 공유 시청각 리소스, 상기 중재기, 및 상기 모바일 컴퓨팅 디바이스 간의 통신을 위한 제어 채널을 구성하는 단계를 추가로 포함하고, 상기 중재기는 상기 차량에 부착된 상기 임베디드 시스템 상에서 실행되는 프로세스인, 방법.
  9. 다기능 디바이스로서,
    하나 이상의 프로세서; 및
    상기 하나 이상의 프로세서 상에서 실행 가능한 중재기를 저장하는 하나 이상의 메모리
    를 포함하고, 상기 하나 이상의 프로세서는,
    상기 중재기에서 차량의 공유 시청각 리소스의 제어에 대한 요청을 수신하는 단계 -
    상기 중재기는
    상기 공유 시청각 리소스의 소유권에 대한 기존 상태 정보 및
    상기 공유 시청각 리소스의 소유권 전환 조건들
    을 유지함 -;
    상기 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계 -
    상기 새로운 상태 정보를 결정하는 단계는
    제어에 대한 상기 요청 및
    상기 소유권 전환 조건들
    에 적어도 부분적으로 기초하여 상기 새로운 상태 정보를 결정하는 단계를 포함하고,
    상기 새로운 상태 정보는 상기 프로세스들 중 어떤 것이 상기 차량의 상기 공유 시청각 리소스의 출력을 제어하는지 표시함 -;
    상기 공유 시청각 리소스의 새로운 소유권 전환 조건들을 결정하는 단계; 및
    상기 공유 시청각 리소스의 제어기 인터페이스에 상기 새로운 상태 정보를 전달하는 단계
    를 수행하는, 다기능 디바이스.
  10. 제9항에 있어서,
    상기 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계는
    상기 차량의 상기 공유 시청각 리소스의 제어에 대한 상기 요청이 상기 차량에 부착된 임베디드 시스템 상에서 실행되는 상기 프로세스 또는 상기 차량과 일시적으로 통신하는 모바일 컴퓨팅 디바이스 상에서 실행되는 프로세스에서 비롯되었는지에 상관없이, 상기 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계를 추가로 포함하는, 다기능 디바이스.
  11. 제9항에 있어서,
    상기 차량의 상기 공유 시청각 리소스의 제어에 대한 상기 요청은
    상기 차량에 부착된 임베디드 시스템 상에서 실행되는 프로세스 및
    상기 다기능 디바이스 상에서 실행되는 프로세스
    를 포함하는 복수의 프로세스 중 하나로부터 수신되는, 다기능 디바이스.
  12. 제9항에 있어서,
    상기 중재기에서 상기 차량의 다른 하나의 공유 시청각 리소스의 제어에 대한 요청을 수신하는 단계; 및
    상기 차량의 상기 공유 시청각 리소스 중 상기 다른 하나의 제어에 대한 상기 요청에 기초하여 상기 차량의 상기 다른 하나의 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계를 추가로 포함하고,
    상기 차량의 상기 다른 하나의 공유 시청각 리소스의 소유권에 관한 상기 새로운 상태 정보는 상기 프로세스들 중 어떤 것이 상기 차량의 상기 다른 하나의 공유 시청각 리소스의 출력을 제어하는지 표시하고,
    상기 차량의 상기 다른 하나의 공유 시청각 리소스의 소유권에 관한 상기 새로운 상태 정보는 상기 공유 시청각 리소스의 소유권에 관한 상기 새로운 상태 정보와는 독립적으로 결정되는, 다기능 디바이스.
  13. 제12항에 있어서,
    상기 차량의 상기 공유 시청각 리소스 중 상기 하나는 비디오 디스플레이이고,
    상기 차량의 상기 공유 시청각 리소스 중 상기 다른 하나는 오디오 채널인, 다기능 디바이스.
  14. 제12항에 있어서,
    상기 차량의 상기 공유 시청각 리소스 중 상기 하나는 출력 채널이고,
    상기 차량의 상기 공유 시청각 리소스 중 상기 다른 하나는 입력/출력 채널인, 다기능 디바이스.
  15. 제9항에 있어서,
    상기 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계는
    상기 프로세스들 중 제1 프로세스가 상기 차량의 상기 공유 시청각 리소스 중 상기 하나의 제어를 소유하고,
    상기 프로세스들 중 제2 프로세스가 과제의 지속 시간 동안 상기 공유 시청각 리소스 중 상기 하나의 출력을 제어하도록 지정되고 상기 과제의 완료 이후에 상기 공유 시청각 리소스 중 상기 하나의 출력을 제어하도록 상기 차량의 상기 공유 시청각 리소스 중 상기 하나의 제어를 반환하도록, 상기 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계를 추가로 포함하는, 다기능 디바이스.
  16. 중재기에서 차량의 공유 시청각 리소스의 제어에 대한 요청을 수신하는 단계 -
    상기 중재기는
    상기 공유 시청각 리소스의 소유권에 대한 기존 상태 정보 및
    상기 공유 시청각 리소스의 소유권 전환 조건들
    을 유지하고,
    상기 차량의 상기 공유 시청각 리소스의 제어에 대한 상기 요청은
    상기 차량에 부착된 임베디드 시스템 상에서 실행되는 프로세스 및
    상기 차량과 일시적으로 통신하는 모바일 컴퓨팅 디바이스 상에서 실행되는 프로세스
    를 포함하는 복수의 프로세스 중 하나로부터 수신됨 -;
    상기 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계 -
    상기 새로운 상태 정보를 결정하는 단계를 구현하기 위하여 컴퓨터 상에서 실행되는 프로그램 명령어들은
    제어에 대한 상기 요청 및
    상기 소유권 전환 조건들
    에 적어도 부분적으로 기초하여 상기 새로운 상태 정보를 결정하는 단계를 구현하기 위하여 상기 컴퓨터 상에서 실행 가능한 프로그램 명령어들을 포함하고,
    상기 새로운 상태 정보는 상기 프로세스들 중 어떤 것이 상기 차량의 상기 공유 시청각 리소스의 출력을 제어하는지 표시함 -;
    상기 공유 시청각 리소스의 새로운 소유권 전환 조건들을 결정하는 단계; 및
    상기 공유 시청각 리소스의 제어기 인터페이스에 상기 새로운 상태 정보를 전달하는 단계
    를 구현하기 위하여 상기 컴퓨터 상에서 실행 가능한 상기 프로그램 명령어들을 저장하는, 비일시적, 컴퓨터 판독 가능 저장 매체.
  17. 제16항에 있어서,
    상기 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계를 구현하기 위하여 상기 컴퓨터 상에서 실행 가능한 상기 프로그램 명령어들은
    상기 차량의 상기 공유 시청각 리소스의 제어에 대한 상기 요청이 상기 차량에 부착된 임베디드 시스템 상에서 실행되는 상기 프로세스 또는 상기 차량과 일시적으로 통신하는 모바일 컴퓨팅 디바이스 상에서 실행되는 프로세스에서 비롯되었는지에 상관없이, 상기 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계를 구현하기 위하여 상기 컴퓨터 상에서 실행 가능한 프로그램 명령어들을 추가로 포함하는, 비일시적, 컴퓨터 판독 가능 저장 매체.
  18. 제16항에 있어서, 상기 중재기는 상기 모바일 컴퓨팅 디바이스 상에서 실행되는 프로세스인, 비일시적, 컴퓨터 판독 가능 저장 매체.
  19. 제16항에 있어서,
    상기 중재기에서 상기 차량의 다른 하나의 공유 시청각 리소스의 제어에 대한 요청을 수신하는 단계; 및
    상기 차량의 상기 공유 시청각 리소스 중 상기 다른 하나의 제어에 대한 상기 요청에 기초하여 상기 차량의 상기 다른 하나의 공유 시청각 리소스의 소유권에 관한 새로운 상태 정보를 결정하는 단계를 구현하기 위하여 상기 컴퓨터 상에서 실행 가능한 프로그램 명령어들을 추가로 포함하고,
    상기 차량의 상기 다른 하나의 공유 시청각 리소스의 소유권에 관한 상기 새로운 상태 정보는 상기 프로세스들 중 어떤 것이 상기 차량의 상기 다른 하나의 공유 시청각 리소스의 출력을 제어하는지 표시하고,
    상기 차량의 상기 다른 하나의 공유 시청각 리소스의 소유권에 관한 상기 새로운 상태 정보는 상기 공유 시청각 리소스의 소유권에 관한 상기 새로운 상태 정보와는 독립적으로 결정되는, 비일시적, 컴퓨터 판독 가능 저장 매체.
  20. 제16항에 있어서,
    상기 차량의 상기 공유 시청각 리소스 중 상기 하나는 비디오 디스플레이이고,
    상기 차량의 상기 공유 시청각 리소스 중 상기 다른 하나는 오디오 채널인, 비일시적, 컴퓨터 판독 가능 저장 매체.
KR1020157014215A 2012-11-16 2013-11-14 공유 시청각 리소스의 제어를 협상하기 위한 시스템 및 방법 KR101786537B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261727554P 2012-11-16 2012-11-16
US61/727,554 2012-11-16
US13/888,232 US9794134B2 (en) 2012-11-16 2013-05-06 System and method for negotiating control of a shared audio or visual resource
US13/888,232 2013-05-06
PCT/US2013/070123 WO2014078551A1 (en) 2012-11-16 2013-11-14 System and method for negotiating control of a shared audio or visual resource

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020177028646A Division KR101847508B1 (ko) 2012-11-16 2013-11-14 공유 시청각 리소스의 제어를 협상하기 위한 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20150081322A true KR20150081322A (ko) 2015-07-13
KR101786537B1 KR101786537B1 (ko) 2017-10-18

Family

ID=50729028

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020187009550A KR101948492B1 (ko) 2012-11-16 2013-11-14 공유 시청각 리소스의 제어를 협상하기 위한 시스템 및 방법
KR1020157014215A KR101786537B1 (ko) 2012-11-16 2013-11-14 공유 시청각 리소스의 제어를 협상하기 위한 시스템 및 방법
KR1020177028646A KR101847508B1 (ko) 2012-11-16 2013-11-14 공유 시청각 리소스의 제어를 협상하기 위한 시스템 및 방법

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020187009550A KR101948492B1 (ko) 2012-11-16 2013-11-14 공유 시청각 리소스의 제어를 협상하기 위한 시스템 및 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020177028646A KR101847508B1 (ko) 2012-11-16 2013-11-14 공유 시청각 리소스의 제어를 협상하기 위한 시스템 및 방법

Country Status (7)

Country Link
US (2) US9794134B2 (ko)
EP (1) EP2920693B1 (ko)
KR (3) KR101948492B1 (ko)
CN (2) CN104937553B (ko)
AU (1) AU2013344629B2 (ko)
TW (1) TWI561420B (ko)
WO (1) WO2014078551A1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9965035B2 (en) 2008-05-13 2018-05-08 Apple Inc. Device, method, and graphical user interface for synchronizing two or more displays
US9794134B2 (en) 2012-11-16 2017-10-17 Apple Inc. System and method for negotiating control of a shared audio or visual resource
CN110413357B (zh) 2013-06-08 2022-09-06 苹果公司 用于同步两个或更多个显示器的设备、方法和图形用户界面
CN107918136B (zh) * 2016-08-31 2020-02-04 北京华力创通科技股份有限公司 基于pci-e总线的卫星导航信号记录和回放装置
US10178603B2 (en) * 2017-02-20 2019-01-08 International Business Machines Corporation Pausing functions of an assistant device during an active telephone call
US10561942B2 (en) * 2017-05-15 2020-02-18 Sony Interactive Entertainment America Llc Metronome for competitive gaming headset
US10824384B2 (en) * 2018-04-30 2020-11-03 Dell Products L.P. Controller for providing sharing between visual devices
CN110311954B (zh) * 2019-05-31 2022-02-15 上海赫千电子科技有限公司 车用传感器的数据读取系统及其读取方法
TWI726539B (zh) * 2019-12-16 2021-05-01 英業達股份有限公司 區間選擇器的處理方法

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7630986B1 (en) 1999-10-27 2009-12-08 Pinpoint, Incorporated Secure data interchange
AUPR230700A0 (en) * 2000-12-22 2001-01-25 Canon Kabushiki Kaisha A method for facilitating access to multimedia content
MXPA04002722A (es) * 2001-09-26 2005-11-04 Interact Devices Inc Sistema y metodo para comunicar senales de medios.
JP2003244343A (ja) * 2002-02-21 2003-08-29 Toyota Motor Corp 表示装置、携帯端末及び情報表示システム
US20040014526A1 (en) * 2002-07-17 2004-01-22 Kulas Charles J. Interface arbitrator for allowing multiple devices to share physical input/output interfaces and other resources
US20040090121A1 (en) * 2002-11-12 2004-05-13 Simonds Craig John Context-based service delivery system and method
US20060235864A1 (en) * 2005-04-14 2006-10-19 Apple Computer, Inc. Audio sampling and acquisition system
US7315904B2 (en) * 2004-05-26 2008-01-01 Qualomm Incorporated Resource allocation among multiple applications based on an arbitration method for determining device priority
US8244179B2 (en) * 2005-05-12 2012-08-14 Robin Dua Wireless inter-device data processing configured through inter-device transmitted data
US20070150889A1 (en) * 2005-12-22 2007-06-28 Shapiro Alan J Method and apparatus for panoplex generation and gryphing
US9655217B2 (en) * 2006-03-28 2017-05-16 Michael V. Recker Cloud connected motion sensor lighting grid
JP2008092269A (ja) * 2006-10-02 2008-04-17 Matsushita Electric Ind Co Ltd ハンズフリー通話装置
US9009210B2 (en) * 2007-08-15 2015-04-14 Sony Corporation Distribution of multimedia files using a transportation provider wireless device
US8121784B2 (en) * 2007-09-07 2012-02-21 Maritz, Inc. GPS triggered narration and recording for drive events
CN101453231B (zh) * 2007-12-06 2013-05-29 比亚迪股份有限公司 车载电话装置和控制方法
US20090315766A1 (en) 2008-06-19 2009-12-24 Microsoft Corporation Source switching for devices supporting dynamic direction information
US20110106954A1 (en) * 2008-09-26 2011-05-05 Manjirnath Chatterjee System and method for inductively pairing devices to share data or resources
KR101570370B1 (ko) * 2008-10-28 2015-11-19 엘지전자 주식회사 텔레매틱스 단말기의 차량 제어 방법 및 그 장치
US9398089B2 (en) * 2008-12-11 2016-07-19 Qualcomm Incorporated Dynamic resource sharing among multiple wireless devices
US20110069179A1 (en) * 2009-09-24 2011-03-24 Microsoft Corporation Network coordinated event capture and image storage
CN102117221A (zh) * 2009-12-31 2011-07-06 上海博泰悦臻电子设备制造有限公司 音频应用冲突的管理方法和管理器
US20110173668A1 (en) * 2010-01-08 2011-07-14 Embarq Holdings Company, Llc System and method for controlling home devices via a set top box
US8738783B2 (en) * 2010-06-22 2014-05-27 Microsoft Corporation System for interaction of paired devices
US20120256749A1 (en) * 2011-04-11 2012-10-11 Ford Global Technologies, Llc Method and Apparatus for Health Monitoring
US20130273847A1 (en) * 2012-04-11 2013-10-17 Ford Global Technologies, Llc Method and Apparatus for a Mobile Safety Platform with Multiple Communication Interfaces
JP6047700B2 (ja) 2012-06-21 2016-12-21 株式会社オプトロジック 撮像レンズ
US9960929B2 (en) * 2012-09-21 2018-05-01 Google Llc Environmental sensing with a doorbell at a smart-home
US9794134B2 (en) 2012-11-16 2017-10-17 Apple Inc. System and method for negotiating control of a shared audio or visual resource
US9633576B2 (en) * 2012-12-13 2017-04-25 Alliance Wireless Technologies, Inc. Vehicle activity information system
TWI477807B (zh) 2014-05-23 2015-03-21 Largan Precision Co Ltd 取像用光學鏡頭、取像裝置及可攜裝置
TWI489133B (zh) 2014-06-20 2015-06-21 Largan Precision Co Ltd 取像光學系統、取像裝置以及可攜式裝置
US20160128158A1 (en) * 2014-11-05 2016-05-05 Samsung Electronics Co., Ltd. Led environment engine
TWI518364B (zh) 2014-12-29 2016-01-21 大立光電股份有限公司 光學攝影系統、取像裝置及電子裝置
US10380852B2 (en) * 2017-05-12 2019-08-13 Google Llc Systems, methods, and devices for activity monitoring via a home assistant

Also Published As

Publication number Publication date
EP2920693B1 (en) 2021-05-05
US20180041403A1 (en) 2018-02-08
US20140143424A1 (en) 2014-05-22
KR20170117609A (ko) 2017-10-23
KR101948492B1 (ko) 2019-02-14
US9794134B2 (en) 2017-10-17
KR101847508B1 (ko) 2018-04-10
TWI561420B (en) 2016-12-11
CN110932888B (zh) 2023-10-13
CN104937553A (zh) 2015-09-23
US10541885B2 (en) 2020-01-21
TW201431730A (zh) 2014-08-16
AU2013344629B2 (en) 2017-03-02
CN104937553B (zh) 2019-11-19
WO2014078551A1 (en) 2014-05-22
KR101786537B1 (ko) 2017-10-18
KR20180039179A (ko) 2018-04-17
CN110932888A (zh) 2020-03-27
AU2013344629A1 (en) 2015-06-04
EP2920693A1 (en) 2015-09-23

Similar Documents

Publication Publication Date Title
US11982867B2 (en) Camera actuator for lens and sensor shifting
KR101786537B1 (ko) 공유 시청각 리소스의 제어를 협상하기 위한 시스템 및 방법
US11844123B2 (en) Point-to-point ad hoc voice communication
US10051522B2 (en) System and method for transitioning to a vehicle network resource
KR101922310B1 (ko) 미러 틸트 작동
WO2015105653A1 (en) Magnetic camera component mounting in cameras
TW201346619A (zh) 用於存取鎖定裝置中的應用程式的裝置、方法及圖形使用者介面
US11716534B2 (en) Additive coil structure for voice coil motor actuator
US11128786B2 (en) Bending a circuit-bearing die
US20240184080A1 (en) Camera Actuator for Lens And Sensor Shifting

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant