KR20090095643A - 입력 오디오 스트림 및 입력 비디오 스트림을 동기화하는 방법, 복수의 컴퓨팅 장치에 걸쳐서 전송되고 있는 미디어 스트림들을 동기화하기 위한 시스템, 및 컴퓨터 판독가능 매체 - Google Patents

입력 오디오 스트림 및 입력 비디오 스트림을 동기화하는 방법, 복수의 컴퓨팅 장치에 걸쳐서 전송되고 있는 미디어 스트림들을 동기화하기 위한 시스템, 및 컴퓨터 판독가능 매체 Download PDF

Info

Publication number
KR20090095643A
KR20090095643A KR1020097014087A KR20097014087A KR20090095643A KR 20090095643 A KR20090095643 A KR 20090095643A KR 1020097014087 A KR1020097014087 A KR 1020097014087A KR 20097014087 A KR20097014087 A KR 20097014087A KR 20090095643 A KR20090095643 A KR 20090095643A
Authority
KR
South Korea
Prior art keywords
stream
computing device
media
audio stream
network
Prior art date
Application number
KR1020097014087A
Other languages
English (en)
Other versions
KR101354793B1 (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 KR20090095643A publication Critical patent/KR20090095643A/ko
Application granted granted Critical
Publication of KR101354793B1 publication Critical patent/KR101354793B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/401Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference
    • H04L65/4015Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference where at least one of the additional parallel sessions is real time or time sensitive, e.g. white board sharing, collaboration or spawning of a subconference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/0016Arrangements providing connection between exchanges
    • H04Q3/0025Provisions for signalling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/04Network layer protocols, e.g. mobile IP [Internet Protocol]

Abstract

본 발명의 양태들은 미디어 스트림들의 전송이 동기화되는 멀티미디어 네트워크 세션을 확립하는 것에 관한 것이다. 일 실시예에서, 입력 오디오 스트림과 입력 비디오 스트림을 동기화하기 위한 방법이 제공된다. 이 방법은, 입력 오디오 스트림을 수신하고 있는 제1 컴퓨팅 장치와 입력 비디오 스트림을 수신하고 있는 제2 컴퓨팅 장치 간에 통신 채널을 확립하는 단계를 포함한다. 통신 채널이 확립되고 나면, 입력 오디오 스트림의 속성들을 기술하는 현재 네트워크 조건이 제1 컴퓨팅 장치에 의해 획득된다. 그리고, 입력 오디오 스트림에서의 지연이 계산된다. 이 방법은, 지연이 알려지면, 입력 오디오 스트림에서의 지연에 일치하도록 입력 비디오 스트림이 지연되게 한다.
Figure P1020097014087
멀티미디어 네트워크 세션, 오디오 스트림, 비디오 스트림, 동기화, 지연

Description

입력 오디오 스트림 및 입력 비디오 스트림을 동기화하는 방법, 복수의 컴퓨팅 장치에 걸쳐서 전송되고 있는 미디어 스트림들을 동기화하기 위한 시스템, 및 컴퓨터 판독가능 매체 {SYNCHRONIZING MEDIA STREAMS ACROSS MULTIPLE DEVICES}
최신 네트워크들은 사람들이 정보를 얻을 수 있는 방식으로 혁신되어 왔다. 이와 관련하여, 인터넷을 위해 개발된 IP 데이터 네트워크는 사용자들이 멀티미디어 통신을 이용하여 상호작용할 수 있는 기회를 제공한다. 예를 들어, 적절한 하드웨어 및 소프트웨어를 구비한 컴퓨팅 장치는, 사용자로 하여금 다른 네트워크화된 컴퓨팅 장치들 간에서 비디오, 오디오, 인스턴트 메시지(예를 들어, 텍스트) 등을 송수신할 수 있게 해 준다. IP 데이터 네트워크를 통해 전송된 데이터는, 다양한 미디어 유형을 통신할 수 있는 IP 프로토콜을 준수하는 패킷이라고 불리우는 데이터 블록들의 시퀀스로 처리된다. 사용자는 데스크탑 또는 랩탑과 같은 개인용 컴퓨터를 이용하여, 서로 다른 미디어 유형들이 동시에 통신되는 멀티미디어 네트워크 세션을 확립할 수 있다.
IP 데이터 네트워크를 통해 미디어 스트림을 직접 전송하도록 구성된 미디어-특정의(media-specific) 컴퓨팅 장치들이 점점 더 많이 개발되고 있다. 예를 들어, IP 전화기는 아날로그 전화 신호를 디지타이즈하고, 디지타이즈된 신호를 패킷들로 분할하고, 패킷들을 다른 IP 네트워크화된 컴퓨팅 장치에 전송하는 기능을 구 현한다. 이러한 예시에서, 오디오 데이터는 VoIP(Voice over Internet Protocol)에 따라 패킷화될 수 있다.
멀티미디어 네트워크 세션에서는, 멀리 떨어진 사용자들 간에서 미디어 스트림(예를 들어, 비디오 및 오디오)이 전송될 수 있다. 본 기술 분야에 숙련된 사람들 또는 다른 사람들은 사용자가 단일 컴퓨팅 장치를 이용하여 네트워크 세션에 참가할 때 미디어 스트림들을 동기화하도록 시스템들이 개발되어 있음을 알 것이다. 그러나, IP 전화기와 같은 미디어-특정 컴퓨팅 장치의 개발로, 사용자는 복수의 컴퓨팅 장치를 이용하여 네트워크 세션에 참가할 수 있다. 예를 들어, 사용자는 데스크탑 컴퓨터가 IP 전화기와 밀접하게 연관된 시스템 구성을 이용할 수 있다. 사용자의 기본설정(preference)은, 오디오 데이터는 IP 전화기를 이용하여 송수신되는 한편, 비디오 데이터는 데스크탑 컴퓨터를 이용하여 송수신될 것을 지시할 수 있다. 이와 관련하여, 현존하는 시스템들은 복수의 컴퓨팅 장치에 걸쳐 통신되는 미디어 스트림들을 신뢰가능하게 동기화시키지 못한다.
<발명의 개요>
본 개요는 이하의 상세한 설명부에서 더 설명될 선택된 개념들을 간단한 형태로 소개하기 위해 제공된 것이다. 본 개요는 청구되는 발명의 주제의 핵심적인 특징을 식별하도록 의도된 것이 아니며, 청구되는 발명의 주제의 범위를 결정하는 데에 도움이 되도록 사용되도록 의도된 것도 아니다.
본 발명의 양태들은 복수의 컴퓨팅 장치들에 걸친 미디어 스트림들의 전송이 동기화되는 멀티미디어 네트워크 세션을 확립하는 것에 관한 것이다. 일 실시예에 서, 입력(incoming) 오디오 및 비디오 스트림을 동기화하기 위한 방법이 제공된다. 더 상세하게는, 이 방법은 입력 오디오 스트림을 수신하고 있는 제1 컴퓨팅 장치와 입력 비디오 스트림을 수신하고 있는 제2 컴퓨팅 장치 간에 통신 채널을 확립하는 단계를 포함한다. 통신 채널이 확립되고 나면, 입력 오디오 스트림의 속성(attributes)을 기술하는 현재 네트워크 조건이 제1 컴퓨팅 장치에 의해 획득된다. 그 다음, 입력 오디오 스트림에서의 지연이 계산된다. 지연이 알려지면, 이 방법은 입력 비디오 스트림이 입력 오디오 스트림의 지연에 일치하도록 지연되게 한다. 그 결과, 멀티미디어 네트워크 세션에 참가하는 데에 복수의 장치가 사용되고 있다 하더라도, 서로 다른 미디어 스트림들의 렌더링이 동기화된다.
앞에서 언급한 본 발명의 양태들과 부수적인 많은 이점들은 첨부 도면들과 함께 이하의 상세한 설명을 참조하면 더 잘 이해될 것이므로, 쉽게 이해될 수 있을 것이다.
도 1은 본 발명의 양태들이 구현될 수 있는 네트워킹 환경을 도시한 것이다.
도 2는 복수의 컴퓨팅 장치에 걸쳐서 전송되고 있는 미디어 스트림들을 동기화하는 루틴을 도시한 것이다.
도 3은 미디어 스트림들이 동기화될 때 일어나는 제어 정보의 예시적인 교환을 도시한 것이다.
본 발명은 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터-실행가능 명령어들의 일반적인 문맥으로 설명될 수 있다. 개괄적으로 설명하면, 프로그램 모듈은 특정 태스크를 수행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 애플리케이션, 위젯, 오브젝트, 컴포넌트, 데이터 구조 등을 포함한다. 본 발명은 전형적으로 통신 네트워크를 통해 링크된 원격 처리 장치들에 의해 태스크가 수행되는 분산형 컴퓨팅 환경에서 실현될 것이다. 분산형 컴퓨팅 환경에서, 프로그램 모듈들은 로컬 및/또는 원격 컴퓨터 저장 매체에 위치될 수 있다.
본 발명의 양태들은 주로, 멀티미디어 네트워크 세션에 참가하기 위하여 복수의 장치들이 이용될 때 미디어 스트림들을 동기화하는 것과 관련하여 설명될 것이지만, 관련 기술분야의 숙련된 사람들 및 다른 사람들은 본 발명의 양태들이 여기에 기술된 것 이외의 다른 분야들에도 적용될 수 있음을 알 것이다. 어느 경우에서든, 이하의 설명은 우선 본 발명의 양태들이 구현될 수 있는 환경의 개관을 제공한다. 그리고, 본 발명의 양태들을 구현하는 루틴이 설명된다. 그러나, 여기에 제공된 설명적인 예시들은 청구되는 발명의 주제를 완벽하게 설명하거나 청구되는 발명의 주제를 개시된 정확한 형태로만 제한하도록 의도된 것이 아니다. 마찬가지로, 여기에 설명된 임의의 단계들은 동일한 결과를 달성하기 위해 다른 단계들 또는 단계들의 조합과 상호교환될 수 있다.
도 1 및 이하의 설명은 본 발명의 양태들이 구현될 수 있는 네트워킹 환경(100)의 간략하고 일반적인 설명을 제공하도록 의도된 것이다. 도 1에 도시된 바와 같이, 네트워킹 환경(100)은 네트워크(101)를 통해 통신 연결된 컴퓨터들(102-104)을 포함한다. 이 예시에서, 컴퓨터들(102-104)은 멀티미디어 네트워크 세션에서 교환 제어 정보를 관리하기 위해 세션 제어기(105)로서 동작하는 소프트웨어 시스템을 포함한다. 단지 예로서, 컴퓨터들(102-104)은 데스크탑 컴퓨터, 랩탑 컴퓨터, 미니 및 메인프레임 컴퓨터, 서버 컴퓨터, PDA(personal digital assistants) 및 태블릿과 같은 핸드핼드형 컴퓨팅 장치, 미디어 시스템, 셋탑 박스, 게이밍 시스템을 포함한 마이크로프로세서-기반 및 프로그래밍가능한 소비자 가전, 또는 세션 제어기의 역할을 할 수 있는 임의의 다른 컴퓨팅 장치일 수 있다. 본 기술분야의 숙련된 사람 및 다른 사람들은, 네트워크(101)가 LAN(local area network), WAN(wide area network), 셀룰러 네트워크, IEEE 802.11, 블루투스 무선 네트워크 등으로서 구현될 수 있음을 알 것이다. 전형적으로, 네트워크(101)는 인터넷 또는 월드와이드웹(WWW)으로서 흔하게 알려진 글로벌 네트워크일 수 있다. 그러나, 본 기술분야의 숙련된 자라면, 본 발명이 LAN 또는 WAN, 또는 IP 프로토콜을 이용하여 통신하는 임의의 다른 데이터 네트워크와 같은 다른 상호작용 환경에서도 사용될 수 있음을 알 것이다.
도 1에 더 도시되어 있는 바와 같이, 컴퓨터(102)는 IP 전화기(106) 및 웹캡(108)과 연관되어 있다. 또한, 컴퓨터(104)는 IP 전화기(110) 및 독립 실행형(stand-alone) 비디오 장치(112)와 연관되어 있다. 이와 관련하여, 독립 실행형 비디오 장치(112)는 이미지들의 시퀀스를 실시간으로 수신하고 렌더링할 수 있는 임의의 장치일 수 있다. 단지 예로서, 독립 실행형 비디오 장치(112)는 웹 카메라, 텔레비젼, 엔터테인먼트 시스템, 게이밍 시스템 등과 연관된 컴퓨터일 수 있다. 이러한 예시적인 실시예에서, 웹캠(108)은 직접 통신 링크를 통해 컴퓨 터(102)와 통신한다. 웹캠(108)과 컴퓨터(102) 간의 직접 통신 링크를 제공하는 데에 있어서, 통신을 용이하게 하기 위하여, USB(Universal Serial Bus), FireWire("IEEE 1394" 또는 "iLink"로도 알려져 있음) 등을 포함하지만 이에 제한되지는 않는 다수의 프로토콜 중 임의의 것이 사용될 수 있다. IP 전화기(106)는 LAN을 위해 개발된 컴퓨터 네트워킹 시스템을 이용하여 컴퓨터(102)와 통신할 수 있다. 마찬가지로, IP 전화기(110) 및 독립 실행형 미디어 장치(112)도 LAN을 위해 개발된 컴퓨터 네트워킹 시스템을 이용하여 컴퓨터(104)와 통신할 수 있다. 단지 예로서, 로컬 장치들 간의 통신을 위한 이러한 시스템들은 IEEE 802.3 표준에 따라 개발된 이더넷 네트워킹 기술을 포함할 수 있다. 그러나, 본 기술분야에 숙련된 사람들 및 다른 사람들은 (IEEE 802.11 표준을 준수하는 Wi-Fi 시스템과 같은) 다른 LAN 기술도 이용될 수 있음을 알 것이다.
로컬 네트워크 접속을 통해, 데이터가 IP 전화기(106)로부터 컴퓨터(102)로 전송될 수 있다. 또한, 본 기술분야의 숙련된 사람들 및 다른 사람들은 로컬 네트워크 접속이 네트워크(101)를 통해 직접 데이터를 전송하는 데에 이용될 수 있음을 알 것이다. 본 발명이 일반적으로 특정한 유형의 컴퓨팅 장치 및 네트워크와 관련하여 동작하는 것으로 설명되지만, 이것은 오직 설명을 위한 것이며 제한하는 것으로 해석되어서는 안된다는 점에 유의해야 한다.
멀티미디어 네트워크 세션을 확립하기 위해, 다양한 컴퓨팅 장치들 간에서 제어 정보가 교환된다. 이와 관련하여, SIP(Session Initiation Protocol)는 비디오 및 오디오와 같은 멀티미디어 스트림을 포함하는 네트워크 세션을 개시하고 수 정하고 종료하기 위한 예시적인 프로토콜이다. 그러나, 본 기술분야의 숙련된 사람들 및 다른 사람들은 제어 정보를 교환하기 위해 다른 프로토콜들이 사용될 수 있음을 알 것이다. 이와 관련하여, 단지 예로서, 제어 정보는 SIP 또는 MGCP(Media Gateway Control Protocol), Megaco/H.248, SOAP(Simple Object Access Protocol), XMPP(Extensible Messaging and Presence Protocol) 등을 이용하여 교환될 수 있다.
도 1에 도시된 실시예에서, 사용자들은 멀티미디어 네트워크 세션 동안 서로 다른 미디어 스트림들을 송수신하기 위해 복수의 컴퓨팅 장치를 이용한다. 이와 관련하여, 특정 미디어 스트림을 통신하는 데에 선호되는 컴퓨팅 장치들 간에 직접 통신 채널이 확립된다. 도 1에 도시된 바와 같이, IP 전화기들(106 및 110)이 직접 통신 채널(114)을 통해 오디오 데이터를 직접 통신할 수 있게 하는 제어 정보가 교환된다. 비디오 데이터와 관련하여, 컴퓨터(102)와 독립 실행형 비디오 장치(112) 간에 직접 통신 채널(116)이 확립된다. 직접 통신 채널이 확립되고 나면, 미디어 스트림들은 세션 제어기로서 기능하는 컴퓨터를 통해 라우팅되지 않고서, 선호되는 장치들 간에서 통신될 수 있다.
전통적으로, 사용자들은 멀티미디어 네트워크 세션에 참가하기 위해 복수의 컴퓨팅 장치를 이용할 수 없었다. 대신에, 컴퓨팅 장치에 직접 연결된 I/O 장치들(웹 카메라, 헤드폰, 마이크로폰 등)이 멀티미디어 네트워크 세션에 참가할 수 있었다. 그 결과, 복수의 컴퓨팅 장치들에 걸쳐 미디어 스트림들을 동기화시키기 위한 시스템은 필요하지 않았다. 그러나, 사용자들은 더 이상 멀티미디어 네트워 크 세션에 참가하는 데에 있어서 단일 컴퓨팅 장치에 연관된 I/O 장치들에 제한되지 않는다. 대신에, 사용자들로 하여금 복수의 컴퓨팅 장치들을 이용하여 멀티미디어 네트워크 세션에서 미디어 스트림들을 송신할 수 있게 해 주는 시스템들이 개발되었다. 예를 들어, 도 1에 도시된 예시에서, 사용자는 오디오 데이터를 송수신하는 데에 IP 전화기(106)가 사용되는 한편, 비디오 데이터는 컴퓨터(102)가 송수신하는 시스템 구성을 이용할 수 있다. 다른 사용자는 오디오 데이터를 송수신하는 데에 IP 전화기(110)가 사용되는 한편, 비디오 데이터는 독립 실행형 비디오 장치(112)가 송수신하는 시스템 구성을 이용할 수 있다. 이 경우, 컴퓨터(104)는 단지 제어 정보의 교환을 관리하는 세션 제어기로서의 역할만 한다.
개괄적으로 설명하면, 본 발명의 양태들은 네트워크 세션에 참가하기 위해 복수의 컴퓨팅 장치가 사용되고 있을 때 미디어 스트림들을 동기화한다. 예를 들어, 멀티미디어 네트워크 세션 동안, 오디오 스트림은 직접 통신 채널(114)을 통해 전송되는 한편, 비디오 스트림은 직접 통신 채널(116)을 통해 전송될 수 있다. 멀티미디어 네트워크 세션에 참가하기 위하여 복수의 컴퓨팅 장치가 이용되고 있더라도, 서로 다른 미디어 스트림들은 사용자에게 제시될 때 동기화된다.
이제 도 2를 보면, 동기화 루틴(200)을 나타내는 흐름도가 설명될 것이다. 개괄적으로 언급하면, 동기화 루틴(200)은 복수의 컴퓨팅 장치에 걸쳐 전송되고 있는 미디어 스트림들을 동기화하는 처리를 수행한다. 이와 관련하여 동기화 루틴(200)에 의해 수행되는 처리는 서로 다른 통신 채널들 상에서 전송되는 미디어 스트림들이 동기화되도록 네트워크 아키텍쳐의 기능성을 확장한다. 앞에서 언급한 바와 같이, 본 발명의 양태들은 다양한 프로토콜을 이용하는 WAN 및 LAN을 포함하는 서로 다른 유형의 네트워크들에서 구현될 수 있다. 이와 관련하여, 서로 다른 구성을 유지하는 장치들과 네트워크들 간에서 멀티미디어 네트워크 세션이 확립될 수 있다. 예를 들어, 사용자는 미디어 스트림을 전송하기 위하여 세션 제어기의 역할을 하는 컴퓨터를 이용할 수 있다. 또한, 동일한 네트워크 세션 동안 미디어 스트림을 전송하기 위하여 하나 이상의 미디어-특정 장치들이 이용될 수 있다.
도 2에 도시된 바와 같이, 동기화 루틴(200)은, 미디어 스트림들이 복수의 장치들에 걸쳐 전송되는 멀티미디어 네트워크 세션이 확립될 때 블록(202)에서 시작한다. 앞에서 언급한 바와 같이, SIP는 비디오 및 오디오와 같은 미디어 스트림을 포함하는 네트워크 세션을 개시하고 수정하고 종료하기 위한 예시적인 프로토콜이다. 일 실시예에 따르면, 블럭(202)에서, 멀티미디어 네트워크 세션이 확립될 수 있도록 원격 장치들 간에 제어 정보를 교환하기 위하여 SIP가 이용된다. 그러나, 멀티미디어 네트워크 세션을 확립하는 것은 본 발명의 범위 이외의 시스템들을 이용하여 수행될 수 있으며, 그러한 시스템들은 여기에 상세하게 설명되지 않을 것이다.
블럭(204)에서, 원격 사용자들과 연관된 장치들 간의 미디어 스트림의 전송이 개시된다. 앞에서 언급한 바와 같이, 미디어 스트림은 세션 제어기의 역할을 하는 컴퓨터를 통해 라우팅되지 않고서 직접 통신 채널을 통해 전송된다. 일 실시예에서, 미디어 스트림 내의 데이터는 실시간 전송 프로토콜("RTP")에 의해 기술된 표준에 따라 패킷화되고 전송될 수 있다. 이와 관련하여, RTP는 비디오 및 오디오 를 포함하는 실시간 데이터를 전송하는 데에 사용될 수 있는 하나의 예시적인 인터넷 표준 프로토콜이다. 그러나, 본 기술분야에 숙련된 사람들 및 다른 사람들은 청구되는 발명의 주제를 벗어나지 않고서, 미디어 스트림이 다른 미디어 전송 계층 프로토콜을 이용하여 전송될 수 있음을 알 것이다.
미디어 스트림의 전송이 개시되고 나면, 네트워크 조건들이 관찰되고, 블럭(206)에서 네트워크 조건들을 기술하는 통계가 수집된다. 이와 관련하여, 미디어 스트림을 전송하는 데에 사용되고 있는 통신 채널들 각각에 대하여 네트워크 조건들이 관찰되고 통계가 수집된다. 예를 들어, 도 1에 도시된 네트워킹 환경(100)에서, 직접 통신 채널(114-116) 각각을 통한 데이터의 전송을 기술하는 통계가 수집된다.
앞에서 언급한 바와 같이, RTP는 다양한 유형의 미디어 스트림을 전송하는 데에 있어서 미디어 전송 프로토콜로서 사용될 수 있다. RTP가 미디어 전송 프로토콜로서 사용될 때, 실시간 제어 프로토콜("RTCP")은 메시지들을 교환하고 네트워크 조건들을 기술하는 통계를 배포하는 데에 사용될 수 있다. 이러한 통계들은 데이터의 전송에 관한 다수의 서로 다른 네트워크 변수를 기술한다. 더 상세하게는, 미디어 스트림을 전송하는 데에 있어서의 지연을 반영하는 지터 및 패킷 손실률(packet loss rates)을 포함하는 네트워크 변수가 수집된다. 이러한 네트워크 조건들은 미디어 스트림을 송신/수신 중인 장치들에 주기적으로 보고된다. 전형적으로, 이러한 데이터는 네트워크 조건들을 보다 더 정확하게 설명하기 위하여 미디어 스트림의 속성을 조절하기 위해 사용되었다. 그러나, 이하에 더 상세하게 설명 되는 바와 같이, 본 발명의 양태들은 복수의 장치들에 걸쳐서 전송되고 있는 미디어 스트림들을 동기화하기 위하여 이 정보를 사용한다.
블럭(208)에서, 오디오 스트림을 송신/수신하고 있는 컴퓨팅 장치는 현재 네트워크 조건을 기술하는 데이터 패킷을 수신한다. 설명을 목적으로, 동기화 루틴(200)은 각각 IP 전화기(106)와 컴퓨터(102)에 전송되고 있는 오디오 및 비디오 스트림을 동기화하는 것과 관련하여 설명된다. 이와 관련하여, 본 기술분야의 숙련된 사람들 및 다른 사람들은 멀티미디어 네트워크 세션에 참가하고 있는 컴퓨팅 장치들 간에서 RTCP 패킷이 주기적으로 전송될 수 있음을 알 것이다. 몇몇 시스템들에서, RTCP 패킷은 현재 네트워크 조건을 기술하는 통계를 매 5초마다 보고한다. 도 1에 도시된 예에서, RTCP 패킷은 IP 전화기(110)로부터 IP 전화기(106)로 통신 채널(114)을 통해 전송될 수 있다. 패킷이 수신될 때, IP 전화기(106)는 현재 네트워크 조건을 기술하는 데이터를 획득한다. 또한, 멀티미디어 네트워크 세션에 참가하고 있는 다른 컴퓨팅 장치들도 그들 각각의 통신 채널에서 네트워크 조건을 기술하는 데이터를 주기적으로 수신할 수 있다. 예를 들어, 컴퓨터(102)는 통신 채널(116)에서 비디오 스트림의 전송을 기술하는 RTCP 패킷을 주기적으로 수신할 수 있다.
도 2에 도시된 바와 같이, 블럭(210)에서, 오디오 스트림을 전송하는 데에 있어서 예상되는 지연이 계산된다. 본 예시에서, 본 발명의 양태에 의해 IP 전화기(106)에서 실행되는 처리는, 오디오 스트림을 사용자에게 제공하는 데에 있어서의 예상되는 지연을 계산한다. 더 상세하게는, 블럭(208)에서 수신된, 패킷 손실 률 및 지터를 포함하는 RTCP 패킷 내의 데이터는 오디오 스트림 내의 예상 지연을 계산하는 데에 사용될 수 있다. 이러한 계산을 수행할 때, 오디오 스트림 내의 예상 지연을 나타내는 수치(예를 들어, 2초)가 식별된다.
블럭(212)에서, 오디오 스트림 내의 예상 지연을 포함하는 데이터의 집합이 세션 제어기의 역할을 하는 컴퓨터에게 보고된다. 일 실시예에서, 멀티미디어 네트워크 세션에 참가하기 위해 사용자에 의해 이용되는 장치들을 짝짓기("pair") 위해 처리가 수행된다. 더 상세하게는, 멀티미디어 세션이 확립될 때, IP 전화기(106)와 컴퓨터(102)가 짝지어질 수 있다. 짝지어지고 나면, 이 장치들은 멀티미디어 네트워크 세션에 관한 제어 정보를 자유롭게 교환할 수 있다. 도 1에 도시된 예에서, IP 전화기(106)는 블럭(212)에서 이전에 확립된 통신 채널을 이용하여 오디오 시스템 내의 예상 지연을 포함하는 데이터 집합을 컴퓨터(102)에게 보고한다. 더 상세하게는, IP 전화기(106)는 블럭(212)에서, 오디오 스트림에서의 예상 지연을 포함하는 데이터 세트를 보고하는 인수(arguments)를 갖는 SIP 기반 정보 메시지를 컴퓨터(102)에 전송한다. 또한, 블럭(212)에서 전송된 데이터 세트는 IP 전화기(106)에 대응하는 타이밍 정보를 포함한다. 본 기술 분야에 숙련된 사람 및 다른 사람들은 블럭(208)에서 IP 전화기(106)에 의해 수신된 RTCP 패킷이 RTP 타임으로서 보고된 상대적인 타이밍 정보와 NTP("Network Time Protocol") 타임으로서 보고된 절대 시간 둘다를 포함함을 알 것이다. IP 전화기(106)에 대응하는 RTP 타임 및 NTP 타임을 제공함으로써, 오디오 스트림 내의 패킷이 수신된 "실제(real)" 시간을 식별하기 위한 처리가 컴퓨터(102) 상에서 수행될 수 있다. 오디오 스트림 내의 패킷이 수신된 실제 시간을 식별하는 것은, 비디오 스트림을 오디오 스트림과 동기화시키는 데에 필요한 정보를 컴퓨터(102)에 제공한다.
도 2에 더 도시되어 있는 바와 같이, 블럭(214)에서, 동기화 루틴(200)은 비디오 스트림의 렌더링이 오디오 스트림에 일치되도록 지연되게 한다. 앞에서 설명한 바와 같이, 세션 제어기의 역할을 하는 컴퓨터가 미디어 스트림을 전송하는 데에도 책임이 있을 수 있다. 예를 들어, IP 전화기(106)는 멀티미디어 네트워크 세션 동안 오디오 스트림을 수신하는 한편, 짝을 이룬 컴퓨터(102)는 비디오 스트림을 수신한다. 이 예시에서, 비디오 스트림에서의 지연을 계산하는 데에 사용될 수 있는 데이터는 독립 실행형 비디오 장치(112)로부터 컴퓨터(102)로 주기적으로 전송된다. 또한, 블럭(212)에서, 오디오 스트림에서의 예상 지연을 포함하는 데이터 세트가 IP 전화기(106)로부터 컴퓨터(102)로의 정보(info) 내에 보고된다. 앞에서 언급한 바와 같이, 정보 메시지 내의 데이터 세트가 수신되면, 컴퓨터(102)는 오디오 스트림 내의 패킷들이 IP 전화기(106)에 의해 수신된 "실제" 시간을 식별할 수 있다. 오디오 스트림에 대응하는 "실제" 시간과, 비디오 스트림 및 오디오 스트림 둘 다에서의 예상 지연이 알려지면, 미디어 스트림들이 동기에서 벗어난("out-of-sync") 정도가 쉽게 식별될 수 있다. 일 실시예에서, 비디오 스트림 내의 프레임들은 컴퓨터(102)의 메모리 내에 버퍼링되어, 비디오 스트림을 렌더링하는 데에 있어서의 지연이 오디오 스트림에서의 지연과 일치되게 된다. 이러한 방식으로 비디오 스트림을 지연시키는 결과로서, 사용자에게 제공될 때, 오디오 및 비디오 스트림의 프레젠테이션이 동기화된다.
다른 실시예에서, 미디어 특정의 컴퓨팅 장치는 미디어 스트림의 렌더링을 지연시킬 수 있다. 도 1에 도시된 예시에서, 컴퓨터(106)는 미디어 스트림을 송신/수신하는 것은 담당하지 않고, 오직 세션 제어기의 역할만 한다. 이 경우, 컴퓨터(106)는 오디오 스트림에서의 예상 지연을 포함하는 데이터 세트와 함께 IP 전화기(110)로부터의 정보 메시지를 수신할 수 있다. 그 다음, 오디오 스트림에서의 예상 지연을 포함하는 데이터 세트를 보고하는 인수를 갖는 다른 SIP 기반 정보 메시지가 독립 실행형 비디오 장치(112)에 전송될 수 있다. 수신된 때, 독립 실행형 비디오 장치(112) 상에서 수행되는 처리는 비디오 스트림 내의 프레임들이 오디오 스트림에서의 지연에 일치하도록 메모리 내에 버퍼링되게 한다.
판정 블럭(215)에서, 멀티미디어 네트워크 세션이 종료되었는지에 관한 판정이 이루어진다. 멀티미디어 네트워크 세션이 종료한 경우, 동기화 루틴(200)은 블럭(216)으로 진행하여 종료한다. 반대로, 멀티미디어 네트워크 세션이 종료되지 않았으면, 동기화 루틴(200)은 블럭(206)으로 진행하고, 멀티미디어 네트워크 세션이 끝날 때까지 블럭(206) 내지 블럭(215)이 반복된다.
위에서 도 2를 참조하여 설명된 동기화 루틴은 예시적인 것이고 제한적인 것은 아닌 것으로 해석되어야 한다. 이와 관련하여, 복수의 컴퓨팅 장치에 걸쳐서 미디어 스트림들을 동기화할 때, 더 많거나 더 적은 단계들이 수행될 수 있다. 게다가, 단계들은 설명된 것과는 다른 순서로 수행될 수 있다. 예를 들어, 위에서 도 2를 참조하여 설명된 동기화 루틴(200)은 비디오 스트림이 오디오 스트림과 일치하도록 지연되도록 하지만, 이것은 예시일 뿐이며, 오디오 스트림이 비디오 스트 림과 일치하도록 지연될 수도 있다. 또한, 위의 예시들은 오디오 및 비디오 스트림의 문맥에서 제공되었지만, 본 발명의 양태들은 다른 유형의 미디어 스트림들을 동기화시키기 위하여 구현될 수 있다.
설명의 목적으로, 네트워킹 환경(100)(도 1) 내의 컴퓨팅 장치들 간의 제어 정보의 예시적인 교환이 도 3에 도시되어 있다. 제어 정보의 교환은 복수의 장치에 걸쳐서 전송되고 있는 미디어 스트림들이 동기화될 수 있게 해 준다. 앞에서 언급된 바와 같이, IP 전화기(106)와 IP 전화기(110)가 직접 통신 채널을 통해 오디오 데이터를 직접 통신할 수 있도록 멀티미디어 네트워크 세션이 확립된다. 또한, 비디오 데이터는 컴퓨터(102)와 독립 실행형 비디오 장치(112) 사이에서 직접 전송된다.
도 3에 도시된 바와 같이, 이벤트(300)에서, RTCP 패킷은 IP 전화기(110)로부터 IP 전화기(106)로 전송된다. 마찬가지로, 이벤트(302)에서, RTCP 패킷은 IP 전화기(106)로부터 IP 전화기(110)로 전송된다. 앞에서 언급된 바와 같이, RTCP 패킷은 하나 이상의 미디어 스트림을 교환하고 있는 장치들 간에서 주기적으로 전송될 수 있다. 이와 관련하여, 이러한 RTCP 패킷에서 보고된 패킷 손실률 및 지터는 입력 미디어 스트림에서의 예상 지연을 계산하는 데에 사용될 수 있다.
도 3에 도시된 실시예에서, IP 전화기(106)에서 실행되는 처리는 입력 오디오 스트림에서의 예상 지연을 식별한다. 그리고, 이벤트(304)에서, IP 전화기(106)는 예상 지연을 포함하는 데이터 세트를 보고하는 인수들을 갖는 SIP 기반 정보 메시지를 컴퓨터(102)에 전송한다. 앞에서 설명한 바와 같이, 본 발명의 양 태들에 의해 컴퓨터(102)에서 구현되는 처리는 비디오 스트림이 버퍼링되게 할 수 있다. 그 결과, 비디오 스트림의 렌더링은 오디오 스트림에 일치하도록 지연될 수 있다. IP 전화기(106)가 각각의 후속 RTCP를 수신할 때, 입력 오디오 스트림의 예상 지연을 포함하는 데이터 세트를 보고하는 정보 메시지가 컴퓨터(102)에 전송된다. 그 결과, 멀티미디어 네트워크 세션 동안 복수의 장치에서 전송되는 비디오 및 오디오 스트림이 계속적으로 동기화될 수 있다.
도 3에 더 도시되어 있는 바와 같이, 이벤트(302)에서 IP 전화기(110)가 RTCP 패킷을 수신할 때, 입력 오디오 스트림 내의 예상 지연을 포함하는 데이터 세트가 계산된다. 그리고, 위에서 제공된 설명과 마찬가지로, 이벤트(306)에서, IP 전화기(110)는 오디오 스트림 내의 예상 지연을 포함하는 데이터 세트를 보고하는 인수들을 갖는 SIP 기반 정보 메시지를 컴퓨터(104)에 전송한다. 컴퓨터(104)가 미디어 스트림을 송신/수신하지 않기 때문에, 이벤트(308)에서, 오디오 스트림 내의 예상 지연을 보고하는 정보 메시지가 독립 실행형 미디어 장치(112)에 전달된다. 앞에서 설명한 바와 같이, 독립 실행형 비디오 장치(112)에서 수행되는 처리는 입력 비디오 스트림 내의 프레임들이 입력 오디오 스트림 내의 지연과 일치하도록 버퍼링되게 할 수 있다. 그 결과, 미디어 스트림들이 서로 다른 장치들에 걸쳐서 전송되고 있다 하더라도, 미디어 스트림들 각각이 동기화될 수 있다.
설명적인 실시예들이 예시되고 설명되었지만, 본 발명의 취지 및 범위를 벗어나지 않는 다양한 변화들이 이루어질 수 있음을 알 것이다.

Claims (20)

  1. 입력 오디오 스트림 및 입력 비디오 스트림을 동기화하는 방법 - 상기 입력 오디오 스트림은 제1 컴퓨팅 장치에서 수신되고, 상기 입력 비디오 스트림은 제2 컴퓨팅 장치에서 수신됨- 으로서,
    상기 입력 오디오 스트림을 수신하고 있는 상기 제1 컴퓨팅 장치와 상기 입력 비디오 스트림을 수신하고 있는 상기 제2 컴퓨팅 장치 간에 통신 채널을 확립하는 단계;
    상기 제1 컴퓨팅 장치에서 상기 입력 오디오 스트림의 속성(attributes)을 기술하는 현재 네트워크 조건을 획득하는 단계;
    상기 입력 오디오 스트림을 수신하는 데에 있어서의 지연을 계산하는 단계; 및
    상기 입력 오디오 스트림에서의 지연과 일치하도록 상기 입력 비디오 스트림의 프레젠테이션을 지연시키는 단계
    를 포함하는, 입력 오디오 스트림 및 입력 비디오 스트림을 동기화하는 방법.
  2. 제1항에 있어서,
    상기 제1 컴퓨팅 장치 및 상기 제2 컴퓨팅 장치는 각각 IP 데이터 네트워크를 통해 데이터를 전송하기 위하여 별개의 네트워크 접속을 유지하는, 입력 오디오 스트림 및 입력 비디오 스트림을 동기화하는 방법.
  3. 제1항에 있어서,
    상기 제1 컴퓨팅 장치와 상기 제2 컴퓨팅 장치 간에 통신 채널을 확립하는 단계는 멀티미디어 네트워크 세션에 참가할 각각의 컴퓨팅 장치로부터의 SIP 기반 제어 메시지를 수집하고 배포하는 단계를 포함하는, 입력 오디오 스트림 및 입력 비디오 스트림을 동기화하는 방법.
  4. 제1항에 있어서,
    상기 현재 네트워크 조건을 획득하는 단계는 실시간 제어 프로토콜 패킷을 주기적으로 수신하는 단계를 포함하고,
    상기 실시간 제어 프로토콜 패킷은 상기 입력 오디오 스트림에 대한 패킷 손실률(packet loss rate) 및 지터를 기술하는 데이터를 포함하는, 입력 오디오 스트림 및 입력 비디오 스트림을 동기화하는 방법.
  5. 제1항에 있어서,
    상기 입력 오디오 스트림에서의 지연과 일치하도록 상기 입력 비디오 스트림의 프레젠테이션을 지연시키는 단계는, 상기 제1 컴퓨팅 장치에 대응하는 RTP 및 NTP 시간 정보로부터 상기 입력 오디오 스트림 내의 패킷들이 수신된 실제 시간을 식별하는 단계를 포함하는, 입력 오디오 스트림 및 입력 비디오 스트림을 동기화하 는 방법.
  6. 제1항에 있어서,
    상기 입력 오디오 스트림에서의 지연과 일치하도록 상기 입력 비디오 스트림의 프레젠테이션을 지연시키는 단계는,
    상기 오디오 스트림에서의 지연을 식별하는 인수(arguments)를 갖는 SIP 기반 정보 메시지를 생성하는 단계; 및
    세션 제어기의 역할을 하는 상기 제2 컴퓨팅 장치에 상기 SIP 기반 정보 메시지를 보고하는 단계
    를 포함하는, 입력 오디오 스트림 및 입력 비디오 스트림을 동기화하는 방법.
  7. 제6항에 있어서,
    세션 제어기의 역할을 하는 상기 제2 컴퓨팅 장치가 상기 입력 오디오 스트림을 수신하고 있는지를 판정하는 단계; 및
    상기 제2 컴퓨팅 장치가 상기 입력 비디오 스트림을 수신하고 있지 않은 경우, 상기 입력 비디오 스트림을 수신하고 있는 컴퓨팅 장치에 상기 SIP 기반 정보 메시지를 전달하는 단계
    를 포함하는, 입력 오디오 스트림 및 입력 비디오 스트림을 동기화하는 방법.
  8. 제1항에 있어서,
    상기 입력 오디오 스트림에서의 지연과 일치하도록 상기 입력 비디오 스트림의 프레젠테이션을 지연시키는 단계는,
    상기 입력 오디오 스트림과 상기 입력 비디오 스트림이 동기에서 벗어난(out of synchronization) 시간량을 식별하는 단계; 및
    상기 식별된, 상기 입력 오디오 스트림과 상기 입력 비디오 스트림이 동기에서 벗어난 시간량만큼 상기 비디오 스트림을 메모리 내에 버퍼링하는 단계
    를 포함하는, 입력 오디오 스트림 및 입력 비디오 스트림을 동기화하는 방법.
  9. 제1항에 있어서,
    세션 제어기의 역할을 하는 상기 제2 컴퓨팅 장치가 또한 상기 입력 비디오 스트림을 수신하는, 입력 오디오 스트림 및 입력 비디오 스트림을 동기화하는 방법.
  10. 복수의 컴퓨팅 장치에 걸쳐서 전송되는 실시간 미디어 스트림들을 동기화하는 방법을 수행하는 컴퓨터 판독가능 명령어들을 포함하는 컴퓨터 판독가능 매체로서,
    상기 방법은,
    사용자들이 복수의 장치를 이용하여 멀티미디어 네트워크 세션에 참가할 수 있게 하는 단계 - 상기 멀티미디어 네트워크 세션 동안, 제1 미디어 스트림은 제1 세트의 네트워크 엔드포인트들 간에서 직접 전송되고, 제2 미디어 스트림은 제2 세트의 네트워크 엔드포인트들 간에서 직접 전송됨 -;
    상기 제1 세트 및 제2 세트의 네트워크 엔드포인트들에 네트워크 조건을 기술하는 데이터를 배포하는 단계; 및
    상기 제1 미디어 스트림이 상기 제2 미디어 스트림과 동기하여 렌더링되도록 상기 네트워크 조건을 설명(accounting for)하는 단계
    를 포함하는, 컴퓨터 판독가능 매체.
  11. 제10항에 있어서,
    상기 제1 미디어 스트림 및 상기 제2 미디어 스트림은 세션 제어기의 역할을 하는 컴퓨팅 장치를 통해 라우팅되지 않고서 네트워크 엔드포인트들 간에서 전송되는, 컴퓨터 판독가능 매체.
  12. 제10항에 있어서,
    상기 사용자들이 복수의 장치를 이용하여 멀티미디어 네트워크 세션에 참가할 수 있게 하는 단계는, 상기 멀티미디어 네트워크 세션에 참가할 각각의 컴퓨팅 장치로부터 SIP 기반 제어 메시지를 수집하고 배포하는 단계를 포함하는, 컴퓨터 판독가능 매체.
  13. 제10항에 있어서,
    상기 네트워크 조건을 기술하는 데이터를 배포하는 단계는, 패킷 손실률 및 지터를 식별하는 RTCP 패킷이 상기 제1 세트의 네트워크 엔드포인트들과 제2 세트의 네트워크 엔드포인트들 간에서 교환되게 하는 단계를 포함하는, 컴퓨터 판독가능 매체.
  14. 제10항에 있어서,
    상기 제1 미디어 스트림이 상기 제2 미디어 스트림과 동기하여 렌더링되도록 상기 네트워크 조건을 설명하는 단계는,
    네트워크 조건들의 변수에 의해 유발되는, 입력 비디오 스트림과 입력 오디오 스트림을 렌더링하는 데에 있어서의 지연을 계산하는 단계; 및
    상기 비디오 스트림과 상기 오디오 스트림이 렌더링될 수 있는 시기의 차이를 식별하는 단계
    를 포함하는, 컴퓨터 판독가능 매체.
  15. 제14항에 있어서,
    상기 방법은, 상기 비디오 스트림과 오디오 스트림이 렌더링될 수 있는 시기의 차이를 제거하기 위하여, 입력 미디어 스트림들 중 적어도 하나를 버퍼링하는 단계를 더 포함하는, 컴퓨터 판독가능 매체.
  16. 제14항에 있어서,
    상기 입력 비디오 스트림과 상기 입력 오디오 스트림을 렌더링하는 데에 있어서의 지연을 계산하는 단계는, 입력 미디어 스트림을 수신하고 있는 컴퓨팅 장치로부터의 SIP 기반 정보 메시지를, 세션 제어기의 역할을 하고 있는 컴퓨팅 장치에 전송하는 단계를 포함하는, 컴퓨터 판독가능 매체.
  17. 제10항에 있어서,
    상기 멀티미디어 네트워크 세션에 참가하기 위해 이용되는 복수의 장치는 컴퓨터 및 IP 전화기인, 컴퓨터 판독가능 매체.
  18. 복수의 컴퓨팅 장치에 걸쳐서 전송되고 있는 미디어 스트림들을 동기화하기 위한 시스템으로서,
    사용자들로 하여금 복수의 컴퓨팅 장치를 이용하여 멀티미디어 네트워크 세션에 참가할 수 있게 해 주는 제어 정보가 교환되게 하는 관리 컴포넌트,
    제1 미디어 스트림이 제2 미디어 스트림과 동시에 렌더링되게 하도록 동작하는 조정 컴포넌트
    를 포함하는, IP 데이터 네트워크를 통해 전송되는 미디어 스트림들을 동기화하기 위한 컴퓨터 실행가능 컴포넌트들을 각각 실행하는 제1 및 제2 세션 제어기 컴퓨팅 장치;
    상기 제1 미디어 스트림에서의 지연을 상기 제1 세션 제어기 컴퓨팅 장치에 보고하기 위한 컴퓨터 실행가능 컴포넌트들을 갖는 제1 미디어 특정 컴퓨팅 장치; 및
    상기 제1 미디어 스트림에서의 지연을 상기 제2 세션 제어기 컴퓨팅 장치에 보고하기 위한 컴퓨터 실행가능 컴포넌트들을 갖는 제2 미디어 특정 컴퓨팅 장치
    를 포함하는, 복수의 컴퓨팅 장치에 걸쳐서 전송되고 있는 미디어 스트림들을 동기화하기 위한 시스템.
  19. 제18항에 있어서,
    상기 제1 미디어 스트림이 제2 미디어 스트림과 동시에 렌더링되게 하는 것은,
    상기 제1 미디어 스트림과 상기 제2 미디어 스트림이 동기에서 벗어나 있는 시간량을 식별하는 것; 및
    상기 제1 미디어 스트림과 상기 제2 미디어 스트림이 렌더링되는 시기 간의 차이를 제거하기 위하여 상기 제1 미디어 스트림을 버퍼링하는 것
    을 포함하는, 복수의 컴퓨팅 장치에 걸쳐서 전송되고 있는 미디어 스트림들을 동기화하기 위한 시스템.
  20. 제18항에 있어서,
    상기 제1 미디어 스트림에서의 지연을 상기 제1 세션 제어기 컴퓨팅 장치에 보고하는 것은,
    상기 제1 미디어 스트림에서의 지연을 식별하는 인수들을 갖는 SIP 기반 정보 메시지를 생성하는 것; 및
    확립된 통신 채널을 통해 상기 제1 미디어 특정 컴퓨팅 장치로부터 상기 제1 미디어 제어기 컴퓨팅 장치로 상기 SIP 기반 정보 메시지를 전송하는 것
    을 포함하는, 복수의 컴퓨팅 장치에 걸쳐서 전송되고 있는 미디어 스트림들을 동기화하기 위한 시스템.
KR1020097014087A 2006-12-08 2007-09-26 입력 오디오 스트림 및 입력 비디오 스트림을 동기화하는 방법, 복수의 컴퓨팅 장치에 걸쳐서 전송되고 있는 미디어 스트림들을 동기화하기 위한 시스템, 및 컴퓨터 판독가능 매체 KR101354793B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/608,714 2006-12-08
US11/608,714 US7953118B2 (en) 2006-12-08 2006-12-08 Synchronizing media streams across multiple devices
PCT/US2007/079596 WO2008070253A1 (en) 2006-12-08 2007-09-26 Synchronizing media streams across multiple devices

Publications (2)

Publication Number Publication Date
KR20090095643A true KR20090095643A (ko) 2009-09-09
KR101354793B1 KR101354793B1 (ko) 2014-01-22

Family

ID=39492578

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097014087A KR101354793B1 (ko) 2006-12-08 2007-09-26 입력 오디오 스트림 및 입력 비디오 스트림을 동기화하는 방법, 복수의 컴퓨팅 장치에 걸쳐서 전송되고 있는 미디어 스트림들을 동기화하기 위한 시스템, 및 컴퓨터 판독가능 매체

Country Status (6)

Country Link
US (1) US7953118B2 (ko)
EP (1) EP2103040B1 (ko)
JP (1) JP5270567B2 (ko)
KR (1) KR101354793B1 (ko)
ES (1) ES2658073T3 (ko)
WO (1) WO2008070253A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101291990B1 (ko) * 2009-03-16 2013-08-09 네덜란제 오르가니자티에 포오르 토에게파스트-나투우르베텐샤펠리즈크 온데르조에크 테엔오 변경된 스트림 동기화

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060209210A1 (en) * 2005-03-18 2006-09-21 Ati Technologies Inc. Automatic audio and video synchronization
US7764713B2 (en) * 2005-09-28 2010-07-27 Avaya Inc. Synchronization watermarking in multimedia streams
CN101370026B (zh) * 2007-08-17 2011-05-18 华为技术有限公司 多媒体会话的媒体流增加方法和用户设备及应用服务器
EP2043323A1 (en) * 2007-09-28 2009-04-01 THOMSON Licensing Communication device able to synchronise the received stream with that sent to another device
EP2301220A1 (en) * 2008-06-27 2011-03-30 Alcatel Lucent Capability grabbing peer device fuctionality in sip
US8601139B2 (en) * 2008-11-26 2013-12-03 Cavium, Inc. Multiple core session initiation protocol (SIP)
US9077784B2 (en) * 2009-02-06 2015-07-07 Empire Technology Development Llc Media file synchronization
US9197684B2 (en) 2010-05-27 2015-11-24 Ineoquest Technologies, Inc. Streaming media delivery composite
US10712771B2 (en) * 2010-08-13 2020-07-14 Netflix, Inc. System and method for synchronized playback of streaming digital content
US8849900B2 (en) 2011-03-04 2014-09-30 Telcordia Technologies, Inc. Method and system supporting mobile coalitions
FR2972587B1 (fr) * 2011-03-10 2015-10-30 Streamwide Dispositif et procede de mixage reparti de flux de donnees
US8774043B2 (en) 2011-06-08 2014-07-08 Citrix Systems, Inc. Methods and apparatus for using a layered gear to analyze and manage real-time network quality of service transmission for mobile devices on public networks
WO2012170968A1 (en) * 2011-06-08 2012-12-13 Framehawk, Inc. Methods and apparatus for using a layered gear to analyze and manage real-time network quality of service transmission for mobile devices on public networks
US8997169B2 (en) 2012-03-23 2015-03-31 Sony Corporation System, method, and infrastructure for synchronized streaming of content
US9565475B2 (en) * 2012-10-11 2017-02-07 Netflix, Inc. System and method for managing playback of streaming digital content
US9727321B2 (en) 2012-10-11 2017-08-08 Netflix, Inc. System and method for managing playback of streaming digital content
US10547713B2 (en) 2012-11-20 2020-01-28 Nvidia Corporation Method and system of transmitting state based input over a network
US9936335B2 (en) * 2012-12-13 2018-04-03 Microsoft Technology Licensing, Llc Mobile computing device application sharing
US20140195594A1 (en) * 2013-01-04 2014-07-10 Nvidia Corporation Method and system for distributed processing, rendering, and displaying of content
US20140214961A1 (en) * 2013-01-31 2014-07-31 Lance Gordon Douglas Methods and systems for continuous compilation of non-interactive video with supplemental renderings of interactive content to produce real-time, personalized video for individuals and/or groups in a shared experience
EP3132613A1 (en) * 2014-04-15 2017-02-22 Telefonaktiebolaget LM Ericsson (publ) Synchronised social tv
US11027199B2 (en) 2015-11-12 2021-06-08 Nvidia Corporation System and method for network coupled gaming
US10630773B2 (en) 2015-11-12 2020-04-21 Nvidia Corporation System and method for network coupled cloud gaming
USD808799S1 (en) 2015-11-17 2018-01-30 Hunter Fan Company Carton with color striping
CN106953706A (zh) * 2017-02-17 2017-07-14 北京汽车集团有限公司 基于以太网的音视频系统同步方法、装置和系统
US10715344B2 (en) * 2017-05-26 2020-07-14 Shirley Shiu Ling Cheung Method of establishing a video call using multiple mobile communication devices
JP2019004401A (ja) * 2017-06-19 2019-01-10 セイコーエプソン株式会社 プロジェクションシステム、プロジェクター及びプロジェクションシステムの制御方法
US11161038B2 (en) * 2018-08-06 2021-11-02 Amazon Technologies, Inc. Systems and devices for controlling network applications
US10747495B1 (en) 2019-05-31 2020-08-18 Microsoft Technology Licensing, Llc Device aggregation representing multiple endpoints as one
US10884973B2 (en) 2019-05-31 2021-01-05 Microsoft Technology Licensing, Llc Synchronization of audio across multiple devices
US11170800B2 (en) 2020-02-27 2021-11-09 Microsoft Technology Licensing, Llc Adjusting user experience for multiuser sessions based on vocal-characteristic models
CN115208864B (zh) * 2022-08-12 2024-02-06 阿波罗智联(北京)科技有限公司 数据传输方法、装置、设备、车辆及存储介质

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5570372A (en) 1995-11-08 1996-10-29 Siemens Rolm Communications Inc. Multimedia communications with system-dependent adaptive delays
DE19754296A1 (de) 1997-12-08 1999-06-10 Thomson Brandt Gmbh Synchronisationseinrichtung
DE60016347T2 (de) * 1999-09-22 2005-12-01 Ntt Docomo Inc. Gateway und Datenübertragungsverfahren zur Verzögerungsjitterreduktion
JP3769468B2 (ja) * 2001-03-21 2006-04-26 株式会社エヌ・ティ・ティ・ドコモ 通信品質制御方法、通信品質制御システム、パケット解析装置及びデータ送信端末装置
CA2480663A1 (en) 2002-03-28 2003-10-09 British Telecommunications Public Limited Company Synchronisation in multi-modal interfaces
US6956871B2 (en) 2002-04-19 2005-10-18 Thomson Licensing Apparatus and method for synchronization of audio and video streams
US7024575B2 (en) 2002-11-14 2006-04-04 Intel Corporation Apparatus and method for time synchronization of a plurality of multimedia streams
US20040119814A1 (en) * 2002-12-20 2004-06-24 Clisham Allister B. Video conferencing system and method
US20040128342A1 (en) 2002-12-31 2004-07-01 International Business Machines Corporation System and method for providing multi-modal interactive streaming media applications
KR100934460B1 (ko) 2003-02-14 2009-12-30 톰슨 라이센싱 제 1 미디어 서비스와 제 2 미디어 서비스 사이의 재생을 자동으로 동기화하기 위한 방법 및 장치
US8659636B2 (en) * 2003-10-08 2014-02-25 Cisco Technology, Inc. System and method for performing distributed video conferencing
US7084898B1 (en) 2003-11-18 2006-08-01 Cisco Technology, Inc. System and method for providing video conferencing synchronization
US7263095B1 (en) * 2004-02-12 2007-08-28 Cingular Wireless Ii Llc Method and apparatus for providing quality of service through multiple carrier IP networks
US7701884B2 (en) * 2004-04-19 2010-04-20 Insors Integrated Communications Network communications bandwidth control
US20050254440A1 (en) 2004-05-05 2005-11-17 Sorrell John D Private multimedia network
EP2214412A3 (en) 2004-05-13 2012-11-14 Qualcomm Incorporated Delivery of information over a communication channel
KR100565333B1 (ko) 2004-06-22 2006-03-30 엘지전자 주식회사 휴대단말기의 비디오 오디오 동기장치 및 방법
KR100693049B1 (ko) 2004-12-28 2007-03-12 삼성전자주식회사 화상통화를 위한 통신단말 간의 커플링제어시스템 및 그방법
US20060171378A1 (en) * 2005-01-04 2006-08-03 Harris John C IP video telephone
CN1855910B (zh) 2005-04-27 2010-12-15 国际商业机器公司 基于Web的统一通信系统和方法以及Web通信管理器

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101291990B1 (ko) * 2009-03-16 2013-08-09 네덜란제 오르가니자티에 포오르 토에게파스트-나투우르베텐샤펠리즈크 온데르조에크 테엔오 변경된 스트림 동기화

Also Published As

Publication number Publication date
US7953118B2 (en) 2011-05-31
EP2103040A1 (en) 2009-09-23
EP2103040A4 (en) 2014-05-14
EP2103040B1 (en) 2017-12-06
JP5270567B2 (ja) 2013-08-21
WO2008070253A1 (en) 2008-06-12
ES2658073T3 (es) 2018-03-08
US20080137690A1 (en) 2008-06-12
JP2010512688A (ja) 2010-04-22
KR101354793B1 (ko) 2014-01-22

Similar Documents

Publication Publication Date Title
KR101354793B1 (ko) 입력 오디오 스트림 및 입력 비디오 스트림을 동기화하는 방법, 복수의 컴퓨팅 장치에 걸쳐서 전송되고 있는 미디어 스트림들을 동기화하기 위한 시스템, 및 컴퓨터 판독가능 매체
US9641576B2 (en) Dynamic locale based aggregation of full duplex media streams
US9237179B2 (en) Method and system for synchronizing the output of terminals
TWI568230B (zh) 用於在媒體中繼會談中同步化音訊及視訊串流之方法及系統
EP2057766B1 (en) Lip syncronization for audio/video transmissions over a network
JP2010512688A5 (ko)
US20080165245A1 (en) Integration of audio conference bridge with video multipoint control unit
US20070255824A1 (en) Device for Tapping Userful Data From Multimedia Links in a Packet Network
US9525710B2 (en) Seamless switch over from centralized to decentralized media streaming
JP5074834B2 (ja) 音声・映像同期方法、音声・映像同期システム及び音声・映像受信端末
US20090021639A1 (en) Audio and Video Communication
WO2008051974A1 (en) System and method for establishing a peer-to-peer connection
Li Large-Scale Measurement of Real-Time Communication on the Web
Lauri et al. Synchronization of streamed audio between multiple playback devices over an unmanaged IP network
EP2068528A1 (en) Method and system for synchronizing the output of end-terminals
CN115174979A (zh) 流媒体传输网络及传输控制方法、装置、设备及存储介质
Patne et al. Security Implementation in Media Streaming Applications using Open Network Adapter
EP2164224A1 (en) Method and system for synchronizing the output of end-terminals
Malmgren et al. Synchronization of streamed audio between multiple playback devices over an unmanaged IP network
Ejzak Internet-Draft Alcatel-Lucent Intended status: Informational July 10, 2012 Expires: January 11, 2013
GB2467431A (en) Seamless switchover from centralised to decentralised media streaming

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
FPAY Annual fee payment

Payment date: 20161220

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20171219

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20181226

Year of fee payment: 6