KR20080066002A - 비디오 전화통신을 위한 비디오 패킷 정형 - Google Patents

비디오 전화통신을 위한 비디오 패킷 정형 Download PDF

Info

Publication number
KR20080066002A
KR20080066002A KR1020087010427A KR20087010427A KR20080066002A KR 20080066002 A KR20080066002 A KR 20080066002A KR 1020087010427 A KR1020087010427 A KR 1020087010427A KR 20087010427 A KR20087010427 A KR 20087010427A KR 20080066002 A KR20080066002 A KR 20080066002A
Authority
KR
South Korea
Prior art keywords
packet
video
audio
size
video packet
Prior art date
Application number
KR1020087010427A
Other languages
English (en)
Other versions
KR100982155B1 (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 KR20080066002A publication Critical patent/KR20080066002A/ko
Application granted granted Critical
Publication of KR100982155B1 publication Critical patent/KR100982155B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0006Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
    • H04L1/0007Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0014Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the source coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0015Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/1874Buffer management
    • H04L1/1877Buffer management for semi-reliable protocols, e.g. for less sensitive applications like streaming video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2416Real-time traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2425Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
    • H04L47/2433Allocation of priorities to traffic types
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/36Flow control; Congestion control by determining packet size, e.g. maximum transfer unit [MTU]
    • H04L47/365Dynamic adaptation of the packet size
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • H04N21/23655Statistical multiplexing, e.g. by controlling the encoder to alter its bitrate to optimize the bandwidth utilization
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2368Multiplexing of audio and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2381Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4341Demultiplexing of audio and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6131Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via a mobile phone network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/64322IP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone
    • H04N7/148Interfacing a video terminal to a particular transmission medium, e.g. ISDN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0231Traffic management, e.g. flow control or congestion control based on communication conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/06Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/02Processing of mobility data, e.g. registration information at HLR [Home Location Register] or VLR [Visitor Location Register]; Transfer of mobility data, e.g. between HLR, VLR or external networks
    • H04W8/04Registration at HLR or HSS [Home Subscriber Server]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/12Wireless traffic scheduling

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Telephonic Communication Services (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 개시 내용은 비디오 전화통신 (VT) 를 위한 비디오 패킷 정형에 대한 기술에 관한 것이다. 본 기술은 오디오 지연을 감소시키도록 오디오 패킷을 우선시키는데 사용될 수 있다. 채널 상태, 초과 비디오 콘텐트, 또는 이들 둘 다는 오디오 전송 시 지연을 유발할 수 있다. RL (Reverse Link) 처리량이 감소할 때, 비디오 패킷 사이즈는 RL을 압도하고 오디오 지연을 증가시킬 수 있다. 비디오 패킷이 엄청난 수의 MAC RLP 패킷을 소모하여, 연속적인 오디오 패킷들 사이의 지연을 유발할 수도 있다. 각각의 비디오 패킷의 사이즈는, 상당한 지연없이 전송에 대해 오디오 패킷을 우선시키도록 조정된다. 비디오 패킷 사이즈는 채널 상태에 기초하여 제어된다. 비디오가 채널 상태로 인해 지연을 겪더라도, 오디오는 상당한 지연 없이 전달될 수 있다. 비디오가 채널 상태에 의해 손상되더라도, 비디오 패킷 정형은, VT 당사자들이 구두 회의를 매끄럽게 진행하는 것을 보증한다.
Figure P1020087010427
비디오 전화통신, 비디오 패킷 정형, 오디오 패킷, 채널 상태, MAC 계층 패킷

Description

비디오 전화통신을 위한 비디오 패킷 정형{VIDEO PACKET SHAPING FOR VIDEO TELEPHONY}
기술분야
본 개시 내용은 비디오 전화통신 (VT) 에 관한 것으로, 보다 상세하게는, VT 시스템에서 송신용 오디오 및 비디오 패킷을 어셈블링하는 기술에 관한 것이다.
배경기술
비디오 전화통신 (VT) 은 오디오 및 비디오 데이터를 전하는 패킷의 실시간 통신을 수반한다. 각각의 VT 디바이스는 비디오 카메라 또는 비디오 아카이브와 같은 비디오 캡처 디바이스로부터 비디오를 얻고, 비디오 패킷을 생성하는 비디오 인코더를 포함한다. 유사하게, 각각의 VT 디바이스 내의 오디오 인코더는 마이크로폰 또는 스피치 합성기와 같은 오디오 캡처 디바이스로부터 오디오를 얻고, 오디오 패킷을 생성한다. 비디오 패킷과 오디오 패킷은 RLP (Radio Link Protocol) 큐에 위치한다. MAC (Medium Access Control) 계층 모듈은 RLP 큐의 콘텐트로부터 MAC 계층 패킷을 생성한다. MAC 계층 패킷은, 통신 채널을 통해 다른 VT 디바이스로 송신하기 위한 물리 (PHY) 계층 패킷으로 변환된다.
이동 VT 애플리케이션에서, VT 디바이스는 기지국에서 무선 단말기로 무선 FL (Forward Link)(또는 "다운링크") 을 통해 물리 계층 패킷을 수신한다. VT 디바이스는 무선 단말기에서 기지국으로 무선 RL (Reverse Link)(또는 "업링크") 을 통해 PHY 계층 패킷을 송신한다. 각각의 VT 디바이스는 수신된 PHY 및 MAC 계층 패킷을 변환하고 그 패킷 패이로드를 오디오 패킷 및 비디오 패킷으로 리어셈블링하는 PHY 및 MAC 계층을 포함한다. VT내의 비디오 디코더는, 디스플레이 디바이스를 통해 사용자에게 프리젠테이션하기 위한 비디오 데이터를 디코딩한다. VT 디바이스 내의 오디오 디코더는 오디오 스피커를 통해 프리젠테이션하기 위한 오디오 데이터를 디코딩한다.
무선 환경에서의 이동 VT가 요구될 수 있다. 무선 채널을 통한 데이터 레이트는 제한되고 시간에 따라서 변한다. 예를 들어, CDMA2000 1x EX-DO Release 0 네트워크에서, 데이터 레이트는 무선 커버리지 영역 내의 상태와 다수의 VT 사용자 사이의 트래픽 정체로 인해 변할 수도 있다. 또한, 데이터 레이트가 0으로 떨어질 때, 즉, 보낼 데이터가 없을 때, 적당한 데이터 레이트로 복원하기 위해서는 시간을 요구할 수도 있다. 결과적으로, 이동 VT는, 실시간으로 비디오 컨퍼런스를 매끄럽게 전달하기 위한 능력을 손상시키는 바람직하지 않은 비디오 및 오디오 지연을 일으킬 수 있다.
요약
일반적으로, 본 개시는 VT 애플리케이션용 비디오 패킷 정형을 위한 기술에 관한 것이다. 비디오 패킷 정형 기술은 오디오 지연을 감소시키도록 오디오 패킷을 우선시키는데 사용될 수 있다. 채널 상태, 초과 비디오 콘텐트, 또는 이들 둘 다는 오디오 패킷의 송신 시 상당한 지연을 유발할 수 있다. RL (Reverse Link) 처리량이 감소할 때, 비디오 패킷 사이즈는 RL을 압도하고 오디오 지연을 증가시킬 수 있다. 특히, 비디오 패킷이 RLP 큐를 채우고 엄청난 수의 MAC 계층 패킷을 소비하여, 오디오 패킷을 전달하는 MAC 계층 패킷의 연속적인 송신들 사이에 지연을 유발할 수도 있다.
개시된 기술에 따르면, 각각의 비디오 패킷의 사이즈는, 실질적인 지연없이 송신에 대해 오디오 패킷을 우선시키도록 조정될 수도 있다. 특히, RLP 큐로 입력되는 각각의 비디오 패킷의 사이즈는 적시의 오디오의 송신을 보증하도록 제어된다. 비디오 패킷은, 각각의 오디오 패킷이 RLP 큐로부터 취해지는 다음 이용 가능한 MAC 계층 패킷으로 보내질 수 있다. 이 방식에서, 애플리케이션 계층에서 오디오 패킷을 위해 QoS (Quality of Service) 가 준비될 수 있다.
비디오 패킷 사이즈는 무선 채널과 같은, 채널의 추정된 처리량에 기초하여 제어될 수도 있다. 처리량은, 현재 무선 채널 송신 레이트, 무선 기지국 활동도, 또는 송신 전력 제한으로 제시된 바와 같이, 채널 상태에 기초하여 추정될 수도 있다. VT 컨퍼런스의 오디오 부분은, 비디오 부분이 채널 상태로 인해 지연을 겪더라도, 상당한 지연 없이 전달될 수 있다. 비디오가 채널 상태에 의해 손상되더라도, 비디오 패킷 정형은, VT 컨퍼런스의 당사자들이 구두 회의를 매끄럽게 진행하는 것을 보증한다.
또한, 일부 실시예에서, 비디오 패킷 정형 기술은 비디오 버퍼 점유에 기초한 적응성 소스 레이트 제어를 더 포함할 수도 있다. 이 경우, 채널 상태가 비디오 인코딩 레이트를 지원하지 않고 오디오 패킷화를 우선시킬 필요가 있다면, 소스 비디오 인코딩 레이트가 감소할 수도 있다. 예를 들어, 비디오 버퍼에 존재 하는 패킷화되지 않은 비디오 프레임의 양에 기초하여 비디오 인코딩 레이트가 조정될 수도 있다.
일 실시 형태에서, 본 개시는 오디오 패킷을 생성하는 단계, 무선 채널의 처리량을 추정하는 단계, 및 추정된 처리량에 기초하여 결정된 비디오 패킷 사이즈로 비디오 패킷을 생성하는 단계를 포함하는 방법을 제공한다.
다른 실시 형태에서, 본 개시는 오디오 데이터를 생성하는 오디오 인코더, 오디오 데이터를 수신하고 오디오 패킷을 출력하는 오디오 버퍼, 비디오 데이터를 생성하는 비디오 인코더, 및 무선 채널의 처리량을 추정하고, 추정된 처리량에 기초하여 결정된 비디오 패킷 사이즈를 갖는 비디오 데이터로부터 비디오 패킷을 생성하는 패킷화 장치를 포함하는 시스템을 제공한다.
부가적인 실시 형태에서, 본 개시는 프로세서로 하여금, 오디오 패킷을 생성하게 하고, 무선 채널의 처리량을 추정하게 하고, 추정된 처리량에 기초하여 결정된 비디오 패킷 사이즈를 갖는 비디오 패킷을 생성하게 하는 명령들을 포함하는 컴퓨터 판독 가능 매체를 제공한다.
일부 실시 형태에서, 비디오 패킷 사이즈는, 추정된 처리량, 오디오 패킷의 사이즈, 및 출력 큐에 비디오 패킷을 배치시키기 전의 오디오 패킷을 포함하는 출력 큐 내의 버퍼링된 데이터의 사이즈에 기초하여 결정된다. 비디오 패킷은, 오디오 패킷이 출력 큐의 콘텐트로부터 생성되는 다음 이용 가능한 MAC 계층 패킷에 배치될 수 있도록, 사이즈가 조정될 수도 있다.
하나 이상의 실시 형태의 세부 사항이 아래의 첨부된 도면과 상세한 설명에 제시된다. 다른 특징들, 목적들, 및 이점들이 상세한 설명 및 도면, 그리고 청구 범위로부터 명확해질 것이다.
도면의 간단한 설명
도 1은 VT 애플리케이션을 위한 비디오/오디오 인코딩 및 디코딩 시스템을 도시하는 블록도이다.
도 2는 과도한 비디오 콘텐트, 불량한 채널 상태, 또는 이 둘 모두로 인한 오디오 지연을 도시하는 도면이다.
도 3은 고정 길이 비디오 패킷 정형에 대한 기술을 도시하는 도면이다.
도 4는 채널 적응형 비디오 패킷 정형에 대한 기술을 도시하는 도면이다.
도 5는 채널 적응형 비디오 패킷 정형 기술을 구현하는 비디오/오디오 인코딩 시스템을 도시하는 블록도이다.
도 6은 채널 상태의 범위에서의 채널 적응형 비디오 패킷 정형을 도시하는 도면이다.
도 7은 채널 상태의 범위에서의 채널 적응형 비디오 패킷 정형을 보다 상세하게 도시하는 도면이다.
도 8은 채널 적응형 비디오 패킷 정형을 위한 기술을 도시하는 흐름도이다.
상세한 설명
도 1은 비디오 인코딩 및 디코딩 시스템 (10) 을 도시하는 블록도이다. 도 1에 도시된 바와 같이, 시스템 (10) 은 송신 채널 (16) 에 의해 접속된 인코더 시스템 (12) 및 디코더 시스템 (14) 을 포함한다. 인코더 시스템 (12) 은 제 1 비디오 통신 디바이스와 연관되고, 비디오 인코더 (20), 오디오 인코더 (22), 비디오 패킷화 장치 (24), 실시간 전송 프로토콜 (RTP)/사용자 데이터그램 프로토콜 (UDP)/인터넷 프로토콜 (IP)/포인트-투-포인트 프로토콜 (PPP) 대화 모듈 (26), 무선 링크 프로토콜 (RLP) 큐 (28), MAC 계층 모듈 (30), 및 PHY 계층 모듈 (32) 을 포함한다. 디코더 시스템 (14) 은 다른 비디오 통신 디바이스와 연관되고, PHY 계층 모듈 (34), MAC 계층 모듈 (36), RLP 큐 (38), RTP/UDP/IP/PPP 대화 모듈 (40), 비디오 디코더 (42), 및 오디오 디코더 (44) 를 포함한다. 설명될 바와 같이, 패킷화 장치 (24) 는 채널 상태에 기초하여 비디오 패킷 정형을 수행하여 오디오 패킷 송신을 우선화시킴으로써 과도한 오디오 지연을 방지한다.
시스템 (10) 은 양방향 비디오 및 오디오 송신, 예를 들어, 송신 채널 (16) 을 통한 비디오 전화통신을 제공할 수도 있다. 따라서, 일반적으로 대등한 인코딩, 디코딩, 및 대화 모듈이 채널 (16) 의 대향 단부에 제공될 수도 있다. 일 실시 형태에서, 인코더 시스템 (12) 및 디코더 시스템 (14) 은 비디오 스트리밍, 비디오 전화통신, 또는 이 둘 모두를 갖춘 무선 이동 단말기와 같은 비디오 통신 디바이스 내에서 구현될 수도 있다. 이동 단말기는 RTP, UDP, IP, 또는 PPP와 같이 패킷-스위치 표준에 따라서 VT를 지원할 수도 있다. RTP/UDP/IP/PPP 변환 모듈은 적절한 RTP/UDP/IP/PPP 헤더 데이터를 오디오 인코더 (22) 및 비디오 패킷화 장치 (24) 로부터 수신된 오디오 및 비디오 데이터에 부가하고 그 데이터를 RLP 큐 (28) 에 배치시킨다. RTP는 UDP의 상부에서 실행되는 반면, UDP는 IP의 상부에서 실행되고, IP는 PPP의 상부에서 실행된다. MAC 계층 모듈 (30) 은 RLP 큐 (28) 의 콘텐트로부터 MAC RLP 패킷을 생성한다. PHY 계층 모듈 (32) 은 채널 (16) 을 통해 송신하기 위해 MAC RLP 패킷을 PHY 계층 패킷으로 변환한다.
디코딩 시스템 (14) 의 PHY 계층 모듈 (34) 및 MAC 계층 모듈 (36) 은 대등한 방식으로 동작한다. PHY 계층 모듈 (34) 은 채널 (16) 로부터 수신된 PHY 계층 패킷을 MAC RLP 패킷으로 변환한다. MAC 계층 모듈 (36) 은 MAC RLP 패킷을 RLP 큐 (38) 에 배치시킨다. RTP/UDP/IP/PPP 변환 모듈 (40) 은 RLP 큐 (38) 내의 데이터로부터 헤더 정보를 스트립하고, 비디오 및 오디오 데이트를 각각 비디오 디코더 (42) 및 오디오 디코더 (44) 로 전달하기 위해 리어셈블링한다.
시스템 (10) 은 CDMA (Code Division Multiple Access), FDMA (Frequency Division Multiple Access), TDMA (Time Division Multiple Access), 또는 OFDM (Orthogonal Frequency Divisional Multiplexing), 또는 다른 적합한 무선 기술과 같은 하나 이상의 무선 통신 테크놀러지를 지원하도록 설계될 수도 있다. 상기 무선 통신 테크놀러지는 다양한 무선 액세스 테크놀러지 중 어느 것에 따라서 수행될 수도 있다. 예를 들어, CDMA는 cdma2000 또는 광대역 CDMA (WCDMA) 표준에 따라서 수행될 수도 있다. TDMA는 GSM (Global System for Mobile Communications) 표준에 따라서 수행될 수도 있다. UMTS (Universal Mobile Telecommunication System) 표준은 GSM 또는 WCDMA 오퍼레이션을 허용한다. 일반적으로, VT 애플리케이션에서, 시스템 (10) 은 cdma2000 1x EV-DO Release 0과 같은 HDR (High Data Rate) 테크놀러지를 지원하도록 설계될 것이다.
비디오 인코더 (20) 는 MPEG-4와 같은 비디오 압축 방법에 따라서, 인코딩된 비디오 데이터를 생성한다. 다른 비디오 압축 방법은 ITU (International Telecommunication Union) H.263, ITU H.264, 또는 MPEG-2 방법처럼 사용될 수도 있다. 오디오 인코더 (22) 는 비디오 데이터와 함께 오디오 데이터를 인코딩한다. 비디오는 비디오 카메라와 같은 비디오 캡처 디바이스로부터, 또는 비디오 아카이브로부터 얻어질 수도 있다. 오디오 데이터는 적응형 다중 레이트 협대역 (AMR-NB) 과 같은 오디오 압축 방법, 또는 다른 기술에 따라서 인코딩될 수도 있다. 오디오는 마이크로폰과 같은 오디오 캡처 디바이스, 또는 스피치 합성 장치로부터 얻어질 수도 있다. VT 애플리케이션에서, 비디오는 VT 컨퍼런스에 대해 당사자가 볼 수 있게 하고, 오디오는 그 당사자의 말하는 음성을 들을 수 있게 한다.
오퍼레이션 시, RTP/UDP/IP/PPP 대화 모듈 (26) 은 비디오 인코더 (20) 및 오디오 인코더 (22) 로부터 비디오 및 오디오 데이터 패킷을 얻는다. RTP/UDP/IP/PPP 대화 모듈 (26) 은 적절한 헤더 정보를 오디오 패킷에 부가하고 결과 데이터를 RLP 큐 (28) 내에 삽입한다. 유사하게, RTP/UDP/IP/PPP 대화 모듈 (26) 은 적절한 헤더 정보를 비디오 패킷에 부가하고 결과 데이터를 RLP 큐 (28) 내에 삽입한다. MAC 계층 모듈 (30) 은 RLP 큐 (28) 로부터 데이터를 검색하고 MAC 계층 패킷을 형성한다. 각각의 MAC 계층 패킷은 RTP/UDP/IP/PPP 헤더 정보와 RLP 큐 (28) 내에 포함된 오디오 또는 비디오 패킷 데이터를 전달한다.
오디오 패킷은 비디오 패킷과 무관하게 RLP 큐 (28) 에 삽입된다. 그러나, 패킷화 장치 (24) 는 RLP 큐 (28) 에 부가된 비디오 패킷의 사이즈를 제어하므 로 각각의 오디오 패킷은 다음 이용 가능한 MAC 계층 패킷에 의해 전달될 수 있다. 어떤 경우에서, RLP 큐 (28) 의 콘텐트로부터 생성된 MAC 계층 패킷은 헤더 정보와 비디오 패킷 데이터만을 전달할 것이다. 다른 경우에서, MAC 계층 패킷은 헤더 정보와 오디오 패킷 데이터만을 전달할 것이다. 많은 경우에서, MAC 계층 패킷은 RLP 큐 (28) 의 콘텐트에 따라서, 헤더 정보, 오디오 패킷 데이터, 및 비디오 패킷 데이터를 전달할 것이다. MAC 계층 패킷은 RLP (Radio Link Protocol) 에 따라서 구성될 수도 있고, MAC RLP 패킷으로 지칭될 수도 있다. PHY 계층 모듈 (32) 은 채널 (16) 을 통한 전송을 위해 MAC RLP 오디오-비디오 패킷을 PHY 계층 패킷으로 변환하는 것을 포함할 수도 있다.
채널 (16) 은 PHY 계층 패킷을 디코더 시스템 (14) 으로 전달한다. 채널 (16) 은 인코더 시스템 (12) 과 디코더 시스템 (14) 사이의 임의의 물리 접속일 수도 있다. 예를 들어, 채널 (16) 은 좁은 지역 또는 넓은 지역의 유선 네트워크와 같은 유선 접속일 수도 있다. 대안으로, 본 명세서에 설명된 바와 같이, 채널 (16) 은 셀룰러, 인공위성, 또는 광학 접속과 같은 무선 접속일 수도 있다. 채널 상태는, 유선 및 무선 채널이 관심사가 될 수도 있지만, 특히 무선 채널 (16) 을 통해 수행되는 이동 VT 애플리케이션에 대해 문제가 있다.
본 개시에 따라서, 비디오 패킷화 장치 (24) 는 오디오 송신을 우선화하기 위해 RTP/UDP/IP/PPP 대화 모듈 (26) 에 제공된 각각의 비디오 패킷의 사이즈를 제어한다. 특히, 비디오 패킷은, 각각의 패킷이 다음 이용 가능한 MAC 계층 패킷에 의해 수용될 수 있는 사이즈로 조정될 수도 있다. 비디오 패킷 사이즈의 제 어는 채널 상태, 큰 비디오 패킷, 또는 이 둘 다에 의해 발생한 오디오 지연을 방지한다. 오디오 패킷이 이용 가능할 때, MAC 계층 모듈 (30) 에 의해 생성되는 다음 이용 가능한 MAC RLP 패킷 내의 포함을 위해 RLP 큐에 이것이 배치된다. 오디오 패킷은, MAC RLP 패킷 내의 오디오 패킷의 배치를 위한 스페이스를 허용하기 위해 사이즈가 조정된 비디오 패킷과 결합될 수도 있다.
비디오 패킷화 장치 (24) 는, 채널 상태에 기초하여 비디오 패킷 사이즈를 조정할 수 있다는 의미에서 채널-적응형이 되도록 구성된다. 이 방식으로, 인코더 시스템 (12) 은 오디오 패킷 전송을 우선화하여 채널 상태가 불량할 때 오디오 지연을 방지할 수 있다. 동일한 때에, 비디오 패킷화 장치 (24) 는, 오디오 우선화는 비디오 패킷이 부족한 패킷 (under-packetized) 이 되지 않게 한다는 것을 보증할 수 있다. 다른 말로, 비디오 패킷화 장치 (24) 는 다음 이용 가능한 MAC RLP 패킷에 하나 이상의 오디오 패킷을 포함하도록 충분히 작게 비디오 패킷의 사이즈를 조정하지만, 아주 작지 않으므로 MAC RLP 패킷 내 과도한 스페이스가 낭비된다. 결과적으로, 비디오 패킷화 장치 (24) 는 오디오 패킷의 우선화 및 비디오 패킷의 효율적인 전송 모두를 지원할 수도 있다.
디코더 시스템 (14) 의 PHY 계층 모듈 (34) 은 PHY 계층 패킷으로부터 MAC 계층 패킷을 식별하고 콘텐트를 MAC RLP 패킷으로 리어셈블링한다. 이후, MAC 계층 모듈 (36) 은 MAC RLP 패킷의 콘텐트를 리어셈블링하여 비디오 및 오디오 패킷을 RLP 큐 (38) 내에 삽입을 위해 제공한다. RTP/UDP/IP/PPP 모듈 (40) 은 수반하는 헤더 정보를 제거 (strips out) 하고, 비디오 패킷을 비디오 디코더 (42) 로 제공하고 오디오 패킷을 오디오 디코더 (44) 로 제공한다. 비디오 디코더 (42) 는 비디오 데이터 프레임을 디코딩하여 디스플레이 디바이스를 구동하는데 사용되는 비디오 데이터의 스트림을 생성한다. 오디오 디코더 (44) 는 오디오 데이터를 디코딩하여, 예를 들어, 오디오 스피커를 통해 사용자에게 프리젠테이션하기 위한 오디오 정보를 생성한다.
상술된 바와 같이, 비디오 패킷화 장치 (24) 는 RTP/UDP/IP/PPP 변환 모듈 (26) 로 제출된 비디오 패킷의 사이즈를 제어하도록 제공된다. 비디오 패킷화 장치 (24) 는 MAC RLP 패킷 내의 오디오 패킷의 전송을 우선화하기 위해 비디오 패킷의 사이즈를 제어하고, 비디오 패킷이 RLP 큐 (28) 를 압도하는 것을 방지한다. 이 방식에서, VT 컨퍼런스의 오디오 부분은, 비디오 부분이 채널 상태로 인한 지연을 겪더라도, 실질적인 지연 없이 전달될 수도 있다. 비디오가 채널 상태에 의해 손상되더라도, 비디오 패킷화 장치 (24) 는, VT 컨퍼런스의 당사자들이 구두 회의를 매끄럽게 진행할 수 있도록 보증한다.
비디오 패킷화 장치 (24) 에 의해 적용된 패킷 정형 기술은 하나 이상의 규칙을 적용하여 오디오 패킷의 우선화된 전송을 보증할 수도 있다. 일 규칙에 따라서, 예를 들어, 오디오 패킷은, RLP 큐 (28) 의 콘텐트로부터 생성되는 바로 다음으로 이용 가능한 MAC RLP 패킷에 보내진다. 오디오 프레임은 최초의 주기적 간격으로 오디오 인코더 (22) 에 의해 생성된다. MAC RLP 패킷은 두 번째 주기적 간격으로 MAC 계층 모듈 (30) 에 의해 생성된다. 소정의 간격으로 생성된 오디오 프레임은 MAC 계층 모듈 (30) 에 의해 생성되는 다음 이용 가능한 MAC RLP 패킷에 배치된다. 일부 실시 형태에서, 선택적으로, 오디오 패킷 사이즈와 함께 RLP 큐 (28) 의 총 생산 큐 사이즈는 일 MAC RLP 패킷에서 전달될 수 있다.
VT 시퀀스의 모든 패킷에 대하여 다양한 규칙이 적용될 수도 있다. 일부 비디오 패킷은, 오디오 및 비디오가 단일 MAC RLP 패킷에서 전달될 수 있다는 것을 보증하는 방식으로 본래부터 사이즈가 조정되더라도, 다른 비디오 패킷은 특히 채널 상태가 저하될 때 오디오 및 비디오가 MAC RLP 패킷에서 전달될 수 있다는 것을 보증하기 위해서 더 커져 사이즈 감축을 요구할 수도 있다. VT 시퀀스의 모든 패킷에 대하여 이 기술을 적용함으로써, 비디오 콘텐트가 확장력이 있거나 채널 대역폭이 실질적으로 제한되더라도 만족스러운 스피치 통신이 보증될 수 있다.
RLP 큐 (28) 내의 삽입을 위해 패킷화 장치 (24) 에 의해 RTP/UDP/IP/PPP 변환 모듈 (26) 로 제출된 각각의 비디오 패킷 사이즈가 제어된다. 상기 규칙은, 오디오 패킷이 비디오 패킷의 확장에 의한 연속적인 MAC RLP 패킷의 소모로 인해 지연되지 않는다는 것을 보증한다. 대신에, 오디오가 이용 가능할 때, 비디오 인코더 (20) 로부터의 비디오는, 각각의 MAC RLP 패킷이 오디오 및 비디오를 전달하도록 선택된 사이즈를 갖는 패킷들로 분할된다. 각각의 오디오 프레임은 RLP 큐 (28) 에 제공된 오디오 패킷처럼 사용될 수도 있다. 대안으로, 일부 실시 형태에서, 오디오 패킷은 연속적인 간격으로 제공된 다수의 오디오 프레임의 번들일 수도 있다.
비디오 패킷화 장치 (24) 는, 일부 실시 형태에서, 연속적인 오디오 프레임들 사이에 생성된 MAC 계층 패킷에 대해 추정된 채널 처리량에 기초하여, 각각의 MAC 계층 패킷에 대한 비디오 패킷 사이즈를 결정할 수도 있다. 처리량은, 하나 이상의 현재 무선 채널 송신율, 무선 기지국 활동도, 및 전송 전력 제한으로 제시되는 것과 같이 채널 상태에 기초하여 추정될 수도 있다. 예를 들어, 채널 상태는 현재 MAC 계층 데이터 레이트, RA (Reverse Activity) 비트, 및 PA (Power Amplifier) 제한에 기초하여 결정될 수도 있다. 또한, 일부 실시 형태에서, 비디오 인코더 (20) 는 비디오 버퍼 점유에 기초하여 적응성 소스 레이트 제어를 더 포함한다. 이 경우, 소스 비디오 인코딩 레이트는, 채널 상태가 비디오 인코딩 레이트를 지원하지 않고 우선화된 오디오 패킷화 요구가 주어진다면, 비디오 인코더 (20) 에 의해 감소될 수도 있다.
도 2는 과도한 비디오 콘텐트 또는 불량한 채널 상태로 인한 오디오 지연을 도시하는 도이다. 도 2에 도시된 바와 같이, 오디오 인코더 (22) 는 오디오 프레임 (46A, 46B, 46C; 총괄하여 프레임 (46)) 을 생성하고, 비디오 인코더 (20) 는 비디오 프레임 (48A, 48B, 48C; 총괄하여 프레임 (48)) 을 생성한다. 일련의 연속적인 MAC RLP 패킷 (50A-50F; 총괄하여 MAC RLP 패킷 (50)) 은 RLP 큐 (28) 에서 버퍼링된 프레임 (46, 48) 에서 유도된 오디오 패킷 및 비디오 패킷을 전달할 수 있다. 오디오 인코더 (22) 에 의한 제 1 오디오 프레임 (46A) 의 생성 후, MAC 계층 모듈 (30) 에 의해 생성되는 다음 이용 가능한 MAC RLP 패킷은 패킷 (50B) 이다. 필요하다면, 제 1 오디오 프레임 (46A) 을 전달하기 위해 패킷 (50C) 또한 사용될 수 있다. 그러나, 비디오 패킷에 의해 RLP 큐 (28) 의 콘텐트가 압도된다면, 오디오 프레임 (46A) 은 장시간 동안 전달되지 않을 수도 있다.
각각의 MAC RLP 패킷 (50) 은 RL 채널 상태 정보에서 파생된 관련 데이터 레이트를 갖는다. 양호한 RL 상태에서, 각각의 MAC RLP 패킷 (50) 은 초당 76.8 Kilobits (Kbps) 의 데이터 레이트를 수반한다. 그러나, 불량한 RL 채널 상태에서, 데이터 레이트는 변동하고, 흔히 낮은데, 예를 들어, 19.2 Kbps 또는 38.4 Kbps이다. 과도한 비디오 콘텐트, 불량한 채널 상태, 또는 이 둘 모두는 오디오 패킷의 전송시 상당한 지연을 유발할 수 있다. 과도한 비디오 패킷 사이즈는 RL을 압도하고 오디오 지연을 증가시킬 수 있는데, 특히 낮은 데이터 레이트로 인해 RL 처리량이 감소할 때이다.
제어되지 않은 채로 있다면, 비디오 패킷이 과도한 양의 MAC RLP 패킷 스페이스를 소비할 수도 있어, 오디오 패킷들의 연속적인 전송 사이에 지연을 일으킨다. 어떤 경우에, 비디오는 여러 연속적인 MAC RLP 패킷 (50) 을 소비할 수도 있는데, 오디오가 신속하게 전송되는 것을 방지한다. 각각의 MAC RLP 패킷 (50) 은 개략적으로 26.67 ms의 스페이스를 오디오 및 비디오 패킷 정보의 결합에 제공한다. 도 2의 예에서, 큰 비디오 프레임 (48A) 은 오디오 프레임 (46A) 과 실질적으로 동일한 시각에 생성된다. 이 시나리오에서, 연속적인 비디오 프레임 (48A, 48B) 은 때 맞추어 교대로 133 ms 마다 생성된다. 그러나, 오디오 프레임 (46B, 46C) 은 때 맞추어 교대로 오로지 60 ms 마다 생성된다.
양호한 RL 상태에 있더라도, 오디오 프레임 (46A) 을 위한 오디오 패킷과, 오디오 프레임 (46B, 46C) 을 위한 오디오 패킷의 결합을 위해 충분하지 않은 스페이스일 수도 있다. 대신에, 비디오 프레임 (48A) 과 연관된 비디오 패킷은 대 부분의 MAC RLP 패킷 (50B-50F) 을 소비하여, 상당한 오디오 지연을 유발한다. 이 문제는 도 2에 도시된 불량한 RL 상태의 경우에 나타난 바와 같이 채널 상태가 저하될 때 특히 어렵다. 다양한 채널 상태에서 오디오 지연을 경감하기 위해, 도 1의 시스템 (10) 은 비디오 프레임 (48) 으로부터 파생된 비디오 패킷의 사이즈를 제어하는 비디오 패킷화 장치 (24) 를 포함한다. VT 시퀀스의 모든 패킷에 대하여 비디오 제한을 적용함으로써, 비디오 패킷화 장치 (24) 는 VT 시퀀스와 연관된 오디오가 손상되지 않는다는 것을 보증할 수 있다.
도 3은 고정 길이 비디오 패킷 정형을 위한 기술을 도시하는 도이다. 고정 길이 비디오 패킷 정형은 오디오 지연의 문제에 대한 부분적인 솔루션을 제시한다. 그러나, 고정 길이 비디오 패킷 정형은 채널 상태를 고려하지 않는다. 결과적으로, RL 처리량이 감소할 때 비디오는 여전히 채널을 압도할 수 있다. 또한, 고정 길이 패킷 정형은 2개의 연속적인 오디오 패킷들 사이의 처리량을 고려하지 않으므로, 비디오 데이터의 지나친 패킷화 (over-packetization) 또는 부족한 패킷화 (under-packetization) 가 되는 결과가 된다.
도 3의 예에서, 비디오 프레임을 60 ms 마다 고정 사이즈 300 바이트 패킷 (52A, 52B, 52C; 총괄하여 비디오 패킷 (52)) 으로 쪼갬으로써 비디오 패킷의 사이즈가 제어된다. 오디오 프레임은 60 ms 마다 고정 사이즈 93 바이트 패킷 (54A, 54B, 54C; 총괄하여 오디오 패킷 (54)) 으로 쪼개진다. 비디오 패킷 (52) 은 MAC RLP 패킷 (56) 내에서 오디오 데이터 패킷 (54) 직후에 전송된다. 통상의 동작 상태에서, 고정 길이 비디오 패킷화는 MAC RLP 패킷 (56) 내에서 오디 오 패킷 (54) 의 적시 전송을 촉진시킨다.
도 3에 도시된 접근법은 오디오 패킷이 양호한 RL 상태에서 지연 없이 전송되는 것을 보증한다. 그러나, RL 상태가 저하된다면, 고정 300 바이트 비디오 패킷 (52) 은 RL을 압도하여, 연속하는 오디오 패킷 (54) 사이의 지연을 유발할 수 있다. 비디오 패킷 (52) 의 고정 길이로 인해, RL 상태의 변화에 반응할 능력이 없다. 일부 예로, 양호한 RL 상태에서, 비디오 데이터가 부족하게 패킷화되어, 각각의 MAC RLP 패킷 (56) 에 의해 제공된 스페이스의 불충분한 이용 (underutilization) 과 전반적 대역폭의 비능률을 초래할 수도 있다. 불량한 RL 상태에서, 비디오 패킷 (52) 의 고정 사이즈는 다루기에 RL에 대해 너무 커서 오디오 지연을 초래할 수도 있다. 이러한 이유로, 본 개시는 조정 가능한 길이 비디오 패킷을 제안하는데, 이는 전체 VT 시퀀스에 대한 오디오의 품질을 유지하기 위해 비디오 콘텐트 또는 대역폭에 응답하여 적응 가능한 사이즈를 갖는다.
도 4는 채널-적응형 비디오 패킷 정형을 위한 기술을 도시하는 도이다. 도 4의 예에서, 비디오 패킷 사이즈는 채널 상태에 기초하여 조정되므로, 오디오 패킷은 실질적인 지연 없이 전송될 수 있다. 고정 비디오 패킷 사이즈 대신에, 각각의 비디오 패킷의 사이즈는 오디오 패킷의 사이즈와 채널 상태에 기초하여 동적으로 조정된다. 양호한 RL 상태에서, 비디오 패킷 사이즈가 증가할 수도 있지만, 비디오 패킷이 RL을 압도하고 오디오 지연을 도입하는 포인트에서는 그렇지 않다. 불량한 RL 상태에서, 비디오 패킷은 사이즈가 감소하여 다음에 이용 가능한 MAC RLP 패킷에서 패킷화되고 배치될 오디오 프레임을 위한 장소 (room) 를 제공한다.
도 4에 도시된 바와 같이, 오디오 프레임 (58A, 58B, 58C; 총괄하여 오디오 프레임 (58)) 이 이용 가능할 때, 비디오 프레임 (60A, 60B, 60C; 총괄하여 비디오 프레임 (48)) 은, 각각의 오디오 프레임이 다음 이용 가능한 MAC RLP 패킷 (62A, 62B, 62C; 총괄하여 MAC RLP 패킷 (62)) 에 배치될 수 있도록 사이즈가 조정된다. 도 4의 화살표로 나타낸 것처럼, 각각의 오디오 프레임 (58) 은 MAC 계층 모듈 (30) 에 의해 생성되는 다음 이용 가능한 MAC RLP 패킷에의 포함을 위해 패킷화된 후 RLP 큐 (28) 에 배치되어, 오디오 패킷의 송신 사이의 과도한 지연을 제거한다. 참조 번호 (64A, 64B, 64C; 총괄하여 64) 는, 비디오 패킷 데이터와 함께, 각각의 MAC RLP 패킷 (62) 내에 배치된 오디오 패킷을 나타낸다. 참조 번호 (66A-66F; 총괄하여 66) 은, 오디오 패킷과 함께 또는 오디오 패킷 없이, 각각의 MAC RLP 패킷 (62) 내에 배치된 비디오 패킷을 나타낸다. 도 4에 도시된 바와 같이, 각각의 MAC RLP 패킷 (62) 은, RLP 큐 (28) 의 콘텐트에 따라서, 오디오만, 비디오만, 또는 오디오 및 비디오 둘 모두를 전달할 수도 있다. 그러나, 각각의 오디오 패킷 간격으로, 비디오 패킷 (66) 은 다음 이용 가능한 MAC RLP 패킷 (62) 에서 오디오 패킷 (64) 을 결합할 수 있도록 사이즈가 조정된다.
명백하게, 예를 들어, 채널 상태로 인해, 이용 가능한 RL 레이트가 감소됨에 따라, 오디오 패킷 (64) 의 사이즈는 MAC RLP 패킷 (62) 의 사이즈에 비례하여 증가한다. 다른 말로, 각각의 오디오 패킷 (64) 은, 비디오 패킷 사이즈가 감소하기 때문에, RL 레이트가 감소함에 따라 더 큰 비율의 MAC RLP 패킷 (62) 을 소비 한다. 반대로, 각각의 비디오 패킷 (66) 의 사이즈는 동적으로 조정되어 RL 레이트가 감소함에 따라 더 작은 비율의 MAC RLP 패킷 (62) 을 소비한다. 이 방법으로, 비디오 패킷 (66) 은 다음 이용 가능한 MAC RLP 패킷 (62) 내에서 각각의 오디오 패킷 (64) 을 배치할 수 있도록 사이즈가 조정된다. 이 결과는, 오디오 지연을 감소시키도록 오디오가 비디오보다 더 높은 우선순위가 주어진다는 것이다.
도 5는 본 개시의 실시 형태에 따른 채널-적응형 비디오 패킷 정형 기술을 구현하는 비디오/오디오 인코딩 시스템 (12) 을 도시하는 블록도이다. 도 5에 도시된 바와 같이, 인코딩 시스템 (12) 은 비디오 인코더 (20), 오디오 인코더 (22), 비디오 버퍼 (68), 오디오 버퍼 (70), 비디오 패킷화 장치 (24), RTP/UDP/IP/PPP 변환 모듈 (26), RLP 큐 (28), 및 RTC (Reverse Traffic Channel) MAC 유닛 (76) 을 포함하고, 비디오 패킷화 장치 (24) 는 페이로드 사이즈 추정기 (72) 및 대역폭 효율적인 패킷화 장치 (74) 를 포함한다. RTC MAC 유닛 (76) 은 이 절차를 제공하기 위해 RTC MAC 프로토콜 (314) 를 구현한 다음, RL을 통한 전송을 위해 통신 디바이스를 구현한다. 편의를 위해, MAC 계층 모듈 (30) 및 PHY 계층 모듈 (32) 을 도 5에 도시하지 않는다. 설명될 바와 같이, 페이로드 사이즈 추정기 (72) 는 하나 이상의 입력에 기초하여 각각의 비디오 패킷의 사이즈를 제어한다. 입력은 채널 상태, RLP 큐 특성, 및 오디오 패킷 사이즈 및 상태와 관련될 수도 있다. 대역폭 효율적인 패킷화 장치 (74) 는, 최소 비디오 패킷 사이즈가 될, 페이로드 사이즈 추정기 (72) 에 의해 지정된 추정 페이로드 사이즈에 기초하여 비디오 패킷을 생성한다.
비디오 버퍼 (68) 는 비디오 인코더 (20) 로부터 수신된 비디오 정보를 버퍼링하고, 그 비디오 정보를 비디오 패킷화 장치 (24) 로 통과시킨다. 오디오 버퍼 (70) 는 오디오 인코더로부터 수신된 오디오 프레임 정보를 버퍼링하고, 그 정보를 RTP/UDP/IP/PPP 변환 모듈 (26) 로 통과시킨다. 오디오 및 비디오 패킷은 서로 무관하게 RLP 큐 (28) 에 삽입된다. 비디오 패킷화 장치 (24) 에 의해 생성된 비디오 패킷의 사이즈는, MAC 계층 모듈 (30; 도 5에 도시 없음) 에 의해 생성되는 다음 이용 가능한 MAC RLP 패킷에 오디오 패킷을 위한 충분한 스페이스가 있다는 것을 보증한다. 특히, RLP 큐 (28) 는 비디오 패킷으로 압도되지 않고, RLP 큐의 오디오 패킷은 다음 MAC RLP 패킷과 함께 보내질 수 있다는 것을 보증한다.
도 5의 예에서, 페이로드 사이즈 추정기 (72) 는, 오디오 패킷 타이머, 오디오 우선순위 값 MACPredNumberPlus, RLP 큐 사이즈, 및 채널 정보를 포함하는 여러 입력을 수신한다. 오디오 패킷 타이머는, 오디오 정보가 오디오 버퍼 (70) 에서 현재 이용 가능한지 여부와, 그렇다면, 각각의 오디오 프레임이 전달될 타이밍을 나타낸다. 오디오 프레임이 매 20 ms 의 간격으로 전달된다면, 예를 들어, 오디오 패킷 타이머는 오디오 프레임이 이용 가능할 때 20 ms 로 설정될 것이다. 일부 실시 형태에서, 오디오 버퍼 (70) 는 단일 IP 패킷으로의 결합을 위해 연속하는 오디오 프레임의 번들로 구성될 수도 있다. 이 경우, 오디오 패킷 타이머는 오디오 패킷으로 번들링된 프레임이 수에 대응하는 다수일 수도 있다. 다른 말로, 오디오 패킷 타이머는 번들링된 프레임의 수에 비례하거나 그렇지 않으면 관 련된 값을 가질 수도 있다. 3개의 오디오 프레임이 번들링된다면, 예를 들어, 오디오 타이머는 60 ms로 설정될 수도 있다. 따라서, 오디오 패킷 타이머는 또한, RTP/UDP/IP/PPP 모듈 (26) 을 통한 RLP 큐 (28) 로의 삽입을 위해 오디오 버퍼 (70) 에 의해 생성된 오디오 패킷의 사이즈를 나타낸다.
오디오 우선순위 값 MACPredNumberPlus는 오디오 및 비디오의 상대 우선순위를 정의하여, 오디오 및 비디오와 연관된 지연에 영향을 미친다. 예를 들어, MACPredNumberPlus는 우선순위 값이 작을수록 오디오 지연이 낮도록 구축된다. 따라서, MACPredNumberPlus가 증가함에 따라, 오디오 지연이 증가하고 비디오 지연이 감소한다. 반대로, MACPredNumberPlus가 감소함에 따라, 오디오 지연이 감소하고 비디오 지연이 증가한다. 따라서, 오디오 지연은 오디오 우선순위 값 MACPredNumberPlus를 트랙킹한다. 페이로드 사이즈 추정기 (72) 는 각각의 비디오 패킷의 사이즈를 제어하기 위해 MACPredNumberPlus 값을 이용하여, 아래에 보다 상세하게 설명되는 바와 같이, 규정된 오디오 패킷 지연을 야기한다.
페이로드 사이즈 추정기 (72) 에 의해 수신된 RLP 큐 사이즈는 RLP 큐 (28) 에서 버퍼링된 현재 데이터의 사이즈를 나타낸다. 페이로드 사이즈 추정기 (72) 는 비디오 패킷의 사이즈를 제어하도록 RLP 큐 사이즈를 사용한다. RLP 큐 (28) 가 상대적으로 가득 차있다면, 페이로드 사이즈 추정기 (72) 는 RL을 압도하는 것과 과도한 오디오 지연을 야기하는 것을 방지하기 위해 비디오 패킷의 사이즈를 아래로 조정할 수도 있다. RLP 큐 (28) 가 가득 차 있지 않다면, 페이로드 사이즈 추정기 (72) 는 비디오 패킷의 사이즈를 증가시키는 한편, 오디오 패킷 에 충분한 스페이스를 제공할 수도 있다. RLP 큐 사이즈에서, 페이로드 사이즈 추정기 (72) 는 RLP 큐 (28) 가 가득 찬 것을 함수로 하여 비디오 패킷 사이즈를 동적으로 조정할 수 있다. 가득 찬 큐는 과도한 비디오 콘텐트, 채널 상태의 저하, 또는 이 둘 모두를 나타낼 수도 있다. RLP 큐 사이즈의 사용은, 페이로드 사이즈 추정기 (72) 가 비디오 콘텐트의 오버로딩 또는 채널 상태의 변경에 반응할 수 있다.
페이로드 사이즈 추정기 (72) 는 또한, RTC MAC 유닛 (76) 에 의해 제공된 채널 정보를 모니터링함으로써 채널 상태의 변경에 보다 직접적으로 반응할 수도 있다. RTC MAC 유닛 (76) 은 현재 MAC RL 레이트, 조합된 RA 비트, 헤드룸 (headroom) 제한과 같은 채널 특성과 관계된 정보를 생성한다. MAC RL 레이트는 RL을 통해 이용 가능한 현재 전송 레이트를 나타낸다. RA 비트는 관계있는 무선 기지국이 분주한지 여부를 나타내는 리버스 활동도 비트이다. 헤드룸 제한은 현재 전송 전력에 기초하여 전송에 사용될 수 있는 최대 레이트를 나타낼 수도 있다. RA 비트는 RL이 혼잡하거나 기지국의 비활동으로 인해 이용 가능하지 않을 때를 나타낸다. PA 제한은 전송 전력 헤드룸을 나타내고 채널 상태가 저하될 때를 나타낸다.
다양한 입력에 기초하여, 페이로드 사이즈 추정기 (72) 는 페이로드 사이즈 추정을 생성한다. MACPredNumberPlus가 오디오에 높은 우선순위가 줄 것을 지정한다면, 페이로드 사이즈 추정은 오디오 패킷이 다음 이용 가능한 MAC RLP 패킷에 포함될 수 있도록 선택된다. 대역폭 효율적인 패킷화 장치 (74) 는 비디오 버퍼 (68) 로부터 비디오를 수신하고 페이로드 사이즈 추정기 (72) 에 의해 지정된 페이로드 사이즈 추정과 최소 비디오 패킷 사이즈에 기초하여 그 비디오를 패킷화한다. 최소 비디오 패킷 사이즈는 패킷화 장치 (24) 에 의해 생성될 비디오 패킷의 최소 사이즈를 나타낸다. 사실상, 최소 비디오 패킷 사이즈는 비디오 패킷 사이즈의 세부 단위 (granularity) 와 대역폭 효율을 제어한다. 보다 작은 최소 비디오 패킷 사이즈 값의 경우, 비디오 패킷 정형은 오디오를 수용함으로써 오디오 지연을 방지한다는 점에서 보다 효율적이지만, 대역폭 효율이 낮다. 보다 큰 최소 비디오 패킷 사이즈 값의 경우, 비디오 패킷 정형은 오디오 지연 방지 시 보다 덜 효율적이지만, 보다 큰 대역폭 효율을 제공한다.
또한, 도 5에 도시된 바와 같이, 비디오 인코더 (20) 는 비디오 버퍼 (68) 로부터 비디오 버퍼 점유값에 응답하여 구성될 수도 있다. 특히, 일부 실시 형태에서, 비디오 인코더 (20) 는 비디오 버퍼 점유에 기초하여 적응성 소스 레이트 제어 특징을 제공한다. 비디오 버퍼 (68) 가 상대적으로 가득 찼을 때, 비디오 인코더 (20) 는 비디오 인코딩 레이트를 감소시킴으로써 응답한다. 비디오 버퍼 (68) 가 가득 차지 않았을 때, 비디오 인코더 (20) 는 소스 비디오 인코딩 레이트를 증가시킨다. 이 방식으로, 채널 상태가 현재 비디오 인코딩 레이트를 지원할 수 없다면, 비디오 인코딩 레이트는 감소한다. 이 적응성 소스 레이트 제어 특징은 선택적이지만, 일부 애플리케이션에서 바람직할 수도 있다.
부가적인 구현의 세부 사항을 실례의 목적으로 설명할 것이다. 이러한 세부 사항은 예시로서 고려되며, 본 개시에 광범위하게 구현되고 설명된 기술을 제 한하는 것이 아니다. cdma2000 1x EV-DO Rel. 0 구현에서, RL 처리량은 채널 상태에 기초하여 추정될 수 있다. 3GPP2 Specification C.S0024-A (TIA IS-856-A로도 지칭됨), 페이지 11-143, 테이블 11.9.6.1은 Kbps의 송신률로 표현되는 상이한 채널 상태로 주어진 MAC RLP 패킷에 대해 바이트(bytes)로 최소 및 최대 페이로드 사이즈를 지정한다. 테이블 11.9.6.1을 아래에 재현한다:
송신률 (Kbps) 최소 페이로드 사이즈 (bytes) 최대 페이로드 사이즈 (bytes)
9.6 Kbps 1 29
19.2 Kbps 30 61
38.4 Kbps 62 125
76.8 Kbps 126 253
153.6 Kbps 254 509
상기 표의 각각의 송신 레벨이 색인 (index) 값으로 표현되었다면, 오디오 및 비디오 둘 모두를 포함하는 각각의 MAC RLP 패킷의 최대 페이로드 사이즈는 다음과 같다.
최대 페이로드 사이즈 = 2index +4-3
상기 식에서, 색인값 1, 2, 3, 4, 및 5는, 각각 9.6, 19.2, 38.4, 76.8, 및 153.6Kbps의 전송률 레벨로 할당된다.
도 6은 채널 상태의 범위에 걸쳐 채널-적응형 비디오 패킷 정형을 도시하는 도이다. 도 6에 도시된 바와 같이 오디오 프레임 (58A, 58B, 58C; 총괄하여 오디오 프레임 (58)) 및 비디오 프레임 (60A, 60B, 60C; 총괄하여 비디오 프레임 (60)) 이 있다. MAC RLP 패킷 (62A-62F; 총괄하여 MAC RLP 패킷 (62)) 각각은 연관된 RL 송신률을 가지며, 이러한 송신률에 대응하는 상이한 최대 페이로드 사이즈를 전달할 수 있다. 예를 들어, MAC RLP 패킷 (62A, 62C, 및 62D) 는 38.4Kbps의 RL 송신률을 가지며 각각 125 바이트의 최대 페이로드 사이즈를 전달할 수 있다. MAC RLP 패킷 (62B) 은 76.8 Kbps의 RL 송신률을 가지며, 253 바이트의 최대 페이로드 사이즈를 전달할 수 있다. MAC RLP 패킷 (62E 및 62F) 은 19.2 Kbps의 RL 송신률을 가지며, 각각 61 바이트의 최대 페이로드 사이즈를 전달할 수 있다.
전형적인 실시 형태에서, 페이로드 사이즈 추정기 (72) 의 작동은 의사 코드의 알고리즘으로 표현될 수 있다. 이 알고리즘은 다음 입력들 : RA Bit, PA Limit, RL Rate, RLPQueueSize, AudioPacketSize, 및 MACPredNumberPlus에 의존한다. 또한, 이러한 입력은 도 5에 도시된다. AudioPacketSize는 페이로드 사이즈 추정기 (72) 에 적용된 오디오 패킷 타이머로부터 유도될 수도 있다. 이전에 언급한 바와 같이, 결합된 RA 비트는 기지국 활동도의 상태를 나타내는 리버스 활동도 비트이고, PA Limit는 전력 요구에 의해 부과된 전송 전력 헤드룸 제한을 의미하고 채널 상태가 저하되는 때는 나타내고, RL 레이트는 RL의 전송률이고, RLPQueueSize는 RLP 큐 (28) 가 가득 찼다는 것을 나타내고, AudioPacketSize는 현재 오디오 패킷의 사이즈, 즉 다음 이용 가능한 MAC RLP 패킷에 부과될 오디오 패킷을 나타낸다. MACPredNumberPlus는 오디오 패킷 대 비디오 패킷에 일치될 상대적 우선순위를 나타낸다. 알고리즘의 출력은 VideoPayloadSize이다.
알고리즘의 초기화에서, 값 MACPredNumber는 다음과 같이 설정된다:
Figure 112008031031639-PCT00001
MacPredNumber는 단일 오디오 프레임을 포함하는 패킷 또는 번들링된 오디오 프레임의 세트를 전달하는데 필요한 MAC RLP 패킷의 수를 나타낸다. AudioFrameInterval은 오디오 프레임들 사이의 시간 간격을 나타낸다. 값 26.67은 각각의 MAC RLP 패킷에 대해 할당된 시간이다. 따라서, 3개의 오디오 프레임이 번들링되고 오디오 프레임 간격이 20 ms이고, MACPredNumberPlus가 0이고, 높은 오디오 우선순위를 나타낸다면, MACPredNumber는 3이다. 이것은, 비디오 페이로드 사이즈가 추정될 MAC RLP 패킷의 예상된 수가 3이라는 것을 의미한다.
모든 번들링된 오디오 패킷에서, 번들링된 오디오 패킷을 보낸 후, 페이로드 사이즈 추정기 (72) 는 MAC 오디오 처리량 결정을 한다. MAC 처리량 결정은 다음의 의사 코드로 나타낸 바와 같이 진행될 수도 있다 :
Figure 112008031031639-PCT00002
상기 MAC 처리량 결정 시, MACThroughput은 오디오 송신을 위해 요구된 처리량 값이고, MACRateIncrease는 MAC RL 레이트가 리버스 활동도에 기초하여 증가할 것인지 여부를 나타내고, CurRate는 현재의 MAC RL 레이트이고, MACPredRate는 색인값으로 표현된, MAC RL 레이트에서의 증가량이다. 상기 표시된 바와 같이, MACThroughput는 3개의 예상된 MAC RLP 패킷 각각에 대해 이용 가능한 최대 페이로드 사이즈이다.
각각의 MAC RLP 패킷에 대해 최대 페이로드 사이즈 MACThroughput이 주어지면, 비디오 페이로드 사이즈 추정기 (72) 는 다음과 같이 최대 비디오 페이로드 사이즈 (VideoPayloadSize) 를 추정한다:
Figure 112008031031639-PCT00003
여기서, RLPQueueSize는 RLP 큐 (28) 가 가득 차 있다는 것을 나타내고 AudioPacketSize는 다음 MAC RLP 패킷에 부가될 오디오 패킷의 사이즈를 나타낸다. 값 (45) 은 RTP/UDP/IP/PPP 변환 모듈 (26) 에 의해 도입된 헤더 정보의 RTP/UDP/IP/PPP 오버헤드를 설명하기 위해 바이트로 고정된 수이다. 이 고정된 오버헤드 수의 값은 다른 구현 시에는 상이하다.
도 7은 보다 상세하게 채널 상태의 범위에 걸쳐 채널-적응형 비디오 패킷 정형을 도시하는 도이다. 페이로드 사이즈 추정기 (72) 는, RLP 큐 (28) 의 콘텐트로부터 MAC 계층 모듈 (30) 에 의해 생성된 MAC RLP 패킷에의 결합을 위해 제시된 비디오 패킷 페이로드의 사이즈를 조정하기 위해, RL 송신률에 따라 파트 별로 표현된 바와 같이, 변경 채널 상태를 적응시킨다. 도 7의 예에서, 오디오 프레임은 60 ms의 간격으로 생성된다. 이 경우, 다음 3개의 MAC RLP 패킷 내에서 이용 가능한 페이로드 사이즈에 관하여 60 ms 마다 결정이 이루어진다.
제 1 결정 포인트 (78) 에서, 도 7에 도시된 바와 같이, 현재 MAC RL 레이트는 3으로 색인되어 38.4 Kbps를 나타내고, RA 비트는 0으로 설정되고, PA 제한은 4와 동일하고 RLP 큐는 X1 바이트를 포함한다. 이 경우, 상기 식에 따라서, 다음 3개의 MAC RLP 패킷들 각각에 대한 처리량은 253 바이트로 추정된다. 따라서, 다음 3개의 MAC RLP 패킷들을 통한 전체 처리량은 253+253+253 바이트 마이너스 RLP 큐 (28) 에 이미 배치된 콘텐트 (X1) 이다. 따라서, 제 1 결정 포인트 (50) 에서의 MACThroughput 값은 253+253+253-X1 바이트이다.
제 2 결정 포인트 (80) 에서, 60 ms 이후, 현재 RL 레이트는 다시 3으로 색인되고 PA 제한은 4이지만, RA 비트는 0 대신 1로 설정된다. 이 경우, RA 비트는, 기지국이 분주한지를 나타내고 다음 3개의 MAC RLP 패킷을 통한 처리량이 감소할 것을 예측한다. 특히, 추정된 처리량 MACThoughput은 125+125+125-X2 바이트이고, X2는 제 2 결정 포인트 (80) 에서의 RLP 큐 (28) 의 콘텐트를 나타낸다.
제 3 결정 포인트 (82) 에서, 제 2 결정 포인트 (78) 에서 60 ms 이후, RA 비트는 0이지만, RL 레이트는 색인 값 2 (19.2 Kbps) 로 떨어지고 PA 제한은 색인값 2로 떨어진다. 결과적으로, 다음 3개의 MAC RLP 패킷에 걸친 전체 처리량 MACThroughput은 61+61+61-X3 바이트로 감소하고, X3는 제 3 결정 포인트 (82) 에서의 RLP 큐 (28) 의 콘텐트를 나타낸다.
MACThroughput이 감소할 때, 비디오 패킷에 이용 가능한 스페이스 또한 오디오 패킷의 우선화의 결과로서 감소된다. 이 경우, 페이로드 사이즈 추정기 (72) 는 패킷화를 위한 비디오 페이로드의 추정된 사이즈를 감소시킨다. 그러나, MACThoughput이 증가할 때, 추정된 비디오 페이로드 사이즈를 증가시킴으로써 페이로드 사이즈 추정기 (72) 가 응답한다. 이 방식으로, 비디오 패킷화 장치 (24) 는 오디오 패킷을 우선시킬 뿐만 아니라, 대역폭 효율 비디오 우선화를 지원한다.
도 7의 예에서, 3개의 MAC RLP 패킷에 대해 동시에 결정이 이루어진다. 그러나, 다른 실시 형태에서, 보다 적극적인 결정 프로세스가 적용될 수도 있다. 예를 들어, MACThoughput의 추정을 위한 결정은 20 ms 마다 이루어질 수도 있다. 제 1 20 ms 간격으로, 3개의 MAC RLP 패킷에 대해 결정이 이루어진다. 이후, 제 2 20 ms 간격으로, 3개의 연속하는 MAC RLP 패킷들의 세트 중 나머지 2개의 MAC RLP 패킷에 대해 결정이 이루어진다. 마지막으로, 다음 20 ms 간격 동안 3개의 패킷 세트 중 마지막 MAC RLP 패킷에 대해 결정이 이루어진다. 이 경우, 60 ms 간격의 코스를 통해 결정이 이루어지고, 채널 상태에서 발생될 수도 있는 어떤 변화나 RLP 큐가 가득 찬 것에 대해 20 ms 마다 업데이트된다. 60 ms 이후, 다음 60 ms와 다음 3개의 MAC RLP 패킷에 대해 반복하고, 반복이 계속된다.
일단 MACThroughput이 추정되면, 상기 설명된 바와 같이, 비디오 페이로드 사이즈 추정기 (72) 는 주어진 MACThroughput 값이 수용될 수 있는 비디오 페이로드 사이즈를 추정한다. 이후, 대역폭 효율적인 패킷화 장치 (74) 는 추정된 비디오 페이로드 사이즈 및 최소 비디오 패킷 사이즈 값을 이용하여 RTP/UDP/IP/PPP 변환 모듈 (26) 로 제출하기 위한 비디오 패킷을 생성한다. 대역폭 효율적인 패킷화 장치 (74) 의 동작을 보다 상세하게 설명할 것이다.
일반적으로, 비디오 패킷화는, MPEG4 비디오 인코딩이 사용된다면 2000년 11월의 Network Working Group Request for Comment (RFC)(3016) 를 따르거나, ITU H.263 비디오 인코딩이 사용된다면 1997년 9월의 RFC 2190, 또는 1998년 10월의 RFC 2429를 따른다. RFC 3016은 MPEG4 스트림을 위한 RTP 페이로드 포맷을 개설한다. RFC 2429는 ITU H.263 스트림의 1998 버전에 대한 RTP 페이로드 포맷을 개설하고, RFC 2190은 ITU H.263 스트림의 원래 버전을 위한 RTP 포맷을 개설한다.
RFC 3016은, 비디오 패킷이 (a) VOP (Video Object Plane) 헤더 또는 VP (Video Packet) 헤더 중 어느 것이 존재한다면, VOP 헤더 또는 VP 헤더로 시작해야 하고, (b) 앞의 규칙을 만족하지 않는다면, 하나의 VP 헤더 이상을 포함할 수 있고, (c) 어떤 VOP 및 VP 헤더도 없이 비디오 데이터만을 이것 안에 포함할 수 있고, (d) 2개의 비디오 프레임에 걸쳐 데이터를 포함할 수 없다는 것을 열거한다. RFC 2190은, 비디오 패킷이 (a) PSC (Picture Start Code) 또는 GOB (Group Of Blocks) 로 시작해야하고, (b) GOB 헤더를 갖거나 GOB을 완성해야 하는 것은 아니며, (c) GOB 바이트-정렬이 되어야하는 것은 아니라는 것을 열거한다. RFC 2429는, 비디오 패킷이 (a) 바이트 정렬된 PSC, GOB 헤더, Slice header, 및 EOS (End Of Slice) 마커로 시작할 수 있고, (b) 임의의 동기화 코드로 시작하지 않지만 비디오 패킷의 중간에 동기화 코드를 허용하는 Follow-on 패킷일 수 있다는 것을 열거한다.
주어진 상기 요건들에서, 비디오 인코더 (20) 는 비디오 데이터를 MPEG4를 위한 VOP 및 VP, 또는 H.263을 위한 PSC, GOB, 및 SSC의 형태로 비디오 버퍼 (68) 로 삽입되도록 구성될 수도 있다. MPEG4-컴플라이언트 인코더는 VOP 또는 VP의 단위로 데이터를 생성한다. H.263 인코더는 PSC, GOB, 또는 SSC의 단위로 GOB 바이트-정렬로 데이터를 생성한다. RFC 2190이 사용될 때, Mode A는 디폴트이다.
예시적인 실시 형태에서, 대역폭 효율적인 패킷화 장치 (74) 의 동작은, 다음 입력들 : VideoDataInBuffer, EstimatedVideoPayloadSize, minVPSize를 사용하는 알고리즘으로 표현될 수 있다. VideoDataInBuffer는 비디오 버퍼 (68) 내 비디오의 사이즈를 나타낸다. EstimatedVideoPayloadSize는 페이로드 사이즈 추정기 (72) 에 의해 결정된 추정된 비디오 페이로드 사이즈를 나타낸다. 값 minVPSize는 패킷화 장치 (74) 에 의해 생성될 최소 비디오 패킷 사이즈이고, 세부 단위 (granularity) 와 대역폭 효율을 제어하는 역할을 한다. 대역폭 효율적인 패킷화 알고리즘의 출력은 RTP/UDP/IP/PPP 변환 모듈 (26) 에 제출하기 위한 하나 이상의 비디오 패킷이다. 예시적인 실시 형태에서, 대역폭 효율적인 패킷화 장치 (74) 의 동작을 다음 의사 코드로 나타낸다.
Figure 112008031031639-PCT00004
Figure 112008031031639-PCT00005
Figure 112008031031639-PCT00006
Figure 112008031031639-PCT00007
상기 의사 코드로 나타낸 바와 같이, 대역폭 효율적인 패킷화 장치 (74) 는 페이로드 사이즈 추정기 (72) 및 minVPSize에 의해 제공된 EstimatedVideoPayloadSize에 기초하여 비디오 패킷을 생성한다. RemainingVideoPayloadSize는 비디오 패킷의 생성 동안 임의의 포인트에서 역시 이용 가능한 페이로드 량을 나타낸다. 처음에, RemainingVideoPayloadSize는 비디오 페이로드 사이즈 추정기 (72) 에 의해 제공된 전체 EstimatedVideoPayloadSize와 동일하다. VideoPayloadSize는 패킷 내 비디오 페이로드의 실제 사이즈를 나타내고, 처음에 0으로 설정된다. VideoPayloadData[] 는 비디오 버퍼 (68) 내 비디오 데이터 세그먼트의 어레이를 나타낸다.
패킷화 장치 (74) 는 먼저, RemainingVideoPayloadSize가 minVPSize/2보다 작은지 여부를 결정한다. 그렇다면, RemainingVideoPayloadSize는 0으로 설정된다. 대안으로, RemainingVideoPayloadSize가 minVPSize보다 작다면, RemainingVideoPayloadSize는 동일한 minVPSize로 설정된다. 이후, RemainingVideoPayloadSize가 0과 같거나 VideoDataInBuffer가 널 (null) 인 경우, 프로세스는, 다음 이용 가능한 MAC RLP 패킷에 남아있는 스페이스가 없거나 비디오 버퍼 (68) 에 남아있는 비디오가 없는 것으로 재설정한다.
VideoInBuffer의 사이즈가 RemainingVideoPayloadSize 플러스 minVPSize보다 크거나 같다면, 패킷화 장치 (74) 는 다음으로, RemainingVideoPayloadSize가 minVPSize/2 보다 크거나 같은지 여부를 결정한다. 그렇다면, 패킷화 장치 (74) 는 RFC3016 또는 RFC2429가 적용 가능하지 여부를 결정한다. RFC3016 또는 RFC2429 중 어느 하나도 적용하지 않는다면, 패킷화 장치 (74) 는 RFC2190이 적용 가능한지 여부, 즉, ITU H.263의 원래 버전을 위한 RTP 페이로드 포맷을 적용할지 여부를 결정한다.
RFC3016 또는 RFC2429를 적용한다면, 패킷화 장치 (74) 는, 시작 어드레스 VideoPayloadData 및 오프셋 VideoPayloadSize에 의해 결정된 바와 같이, 비디오 버퍼 (68) 로부터 (memcpy) 비디오를, VideoDataInBuffer에 의해 식별된 입력 버퍼로 카피한다. 처음에, VideoPayloadSize는 0으로 설정된다. 비디오 버퍼 (68) 로부터 카피된 비디오 량은, EstimatedVideoPayloadSize로 최초로 설정되는 RemainingVideoPayloadSize와 동일하다. 이후, 패킷화 장치 (74) 는 VideoPayloadSize를 RemainingVideoPayloadSize와 동일하게 조정한다. 다음으로, 패킷화 장치 (74) 는 입력 버퍼로부터의 비디오 데이터를, RemainingVideoPayloadSize에 의해 결정된 양으로 오프셋 RemainingVideoPayloadSize에 의해 식별된 어드레스로 카피한다. VideoDataInBuffer의 콘텐트는 패킷화를 위해 나눠진다.
RFC2190을 적용한다면, 패킷화 장치 (74) 는, 시작 어드레스 VideoPayloadData 및 오프셋 VideoPayloadSize에 의해 결정된 바와 같이, 비디오 버퍼 (68) 로부터 (memcpy) 비디오를, VideoDataInBuffer에 의해 식별된 입력 버퍼로 카피한다. 또한, VideoPayloadSize는 처음에 0으로 설정된다. 비디오 버퍼 (68) 로부터 카피된 비디오의 양은 VideoDataInBuffer의 사이즈와 동일하다. 이 후, VideoPayloadSize는 VideoDataInBuffer의 사이즈와 동일하게 된다.
RFC3016/RFC2429 동작 또는 RFC2190 동작 중 어느 하나가 존재할 때, 패킷화 장치 (74) 는 다음으로, 현재 VideoPayloadSize 값과 동일한 페이로드 사이즈를 갖는 VideoPayloadData로부터 VideoPacket을 생성한다. 이후, 값 RemainingVideoPayloadSize는 0으로 설정된다. 이 포인트에서, 비디오 패킷이 RTP/UDP/IP/PPP 변환 모듈 (26) 로의 제출을 위해 패킷화 장치 (74) 에 의해 생성된다. RemainingVideoPayloadSize가 minVPSize보다 작고, RemainingVideoPayloadSize가 0과 같지 않고, VideoDataInBuffer가 널이 아니고, VideoDataInBuffer의 사이즈가 RemainingVideoPayloadSize + minVPSize보다 크거나 같지 않다면, 패킷화 장치 (74) 는 버퍼 (68) 로부터의 데이터를 어드레스 VideoPayloadData 플러스 VideoPayloadSize의 오프셋을 이용하여 VideoDataInBuffer에 카피한다. 이 경우, 카피된 데이터 량은 VideoPayloadSize와 동일하다. 이후, 패킷화 장치 (74) 는 VideoPayloadSize를 VideoDataInBuffer의 사이즈와 동일하게 설정한다.
다음으로, 패킷화 장치 (74) 는 RemainingVideoPayloadSize를 RemainingVideoPayloadSize 마이너스 VideoBufferSize의 최대값 및 0과 같게 설정한다. VideoBufferSize는 비디오 버퍼 (68) 의 사이즈를 나타낸다. 비디오 버퍼 (68) 에 더 이상 데이터가 없거나, 현재 TS (TimeStamp) 가 다음 TS와 동일하지 않거나, RemainingVideoPayloadSize가 0과 같거나, VideoDataInBuffer가 쪼개진다면, 패킷화 장치 (74) 는 VideoPayloadSize의 페이로드 사이즈를 갖는 VideoPayloadData로부터 하나의 VideoPacket을 생성하고 VideoPayloadSize를 0으로 설정한다. 그렇지 않으면, 패킷화 장치 (74) 는, 비디오 버퍼에 데이터가 있거나, 널이거나, 더 이상 데이터가 없다면, 비디오 버퍼 (68) 에서 다음 프레임, GOB, 또는 슬라이스 단위를 얻기 위해 VideoDataInBuffer를 설정한다.
도 8은 본 개시의 실시 형태에 따라서 채널-적응형 비디오 패킷 정형을 위한 기술을 도시하는 흐름도이다. 도 8에 도시된 바와 같이, 오디오 버퍼 (70) 는 오디오 패킷을 생성한다 (84). RTP/UDP/IP/PPP 모듈 (26) 은 오디오 패킷을 RLP 큐 (28) 에 부가한다 (86). 페이로드 사이즈 추정기 (72) 는 RLP 큐 사이즈를 결정하고 (88), 오디오-비디오 우선순위 값을 결정하고 (90), 채널 상태를 결정한다 (92). 이러한 결정에 기초하여, 페이로드 사이즈 추정기 (72) 는 생성되는 다음 비디오 패킷의 페이로드 사이즈를 추정한다 (94). 대역폭 효율적인 패킷화 장치 (74) 는 비디오 패킷을 생성하고 (96), 추정된 페이로드 사이즈와 최소 비디오 패킷 사이즈에 기초하여 비디오 패킷의 사이즈를 조정한다 (98). 대역폭 효율적인 패킷화 장치 (74) 는 비디오 패킷을 RLP 큐 (28) 에 부가한다 (100). MAC 계층 모듈 (30) 은 RLP 큐 (28) 의 콘텐트로부터 MAC RLP 패킷을 생성한다 (102).
본 개시에 설명된 바와 같이, 채널-적응형 비디오 패킷 정형은 보다 높은 오디오 데이터 우선순위를 지원한다. 채널-적응형 비디오 패킷 정형없이, 오디오는 큰 비디오 패킷에 의해 종종 지연된다. 본 개시에 설명된 패킷 정형 기술에 따른 비디오 프레임의 단편화는 다음 이용 가능한 MAC RLP 패킷에서 송신될 오디오 패킷을 위한 스페이스를 제공한다. 고정 길이 비디오 패킷 사이즈화가 많은 예에서 오디오 지연을 감소시킬 수 있더라도, 이러한 접근은 채널 상태를 적응시키지 않고 대역폭 소비에 관하여 비효율적일 수 있다. 채널-적응형 비디오 패킷 정형은 오디오 및 비디오 데이터를 우선화하기 위한 탄력성을 제공한다. 오디오-비디오 우선순위 값 (MACPredNumberPlus) 과 최소 비디오 패킷 사이즈 (minVPSize) 의 상이한 값은 오디오와 비디오 우선순위 사이에, 희망하는 트레이드오프를 달성하기 위해 지정될 수 있다.
또한, 채널-적응형 패킷 정형은 거의 일정한 오디오 지연 성능을 제공하여, 불량한 채널 상태에도 불구하고 매끄러운 오디오 대화를 하게 한다. 일부 경우, 오디오 지연 성능은 비디오 없는 성능과 비슷할 수도 있다. 비디오 처리량은 오디오 처리량과 채널 상태에 대해 적응 가능하다. 특히, 비디오 처리량은 이용 가능한 대역폭에 따라서 적응적으로 변경될 수 있고, 오디오 처리량이 감소할 때 비디오 처리량이 증가할 수 있다. 유익하게, 채널-적응형 비디오 패킷 정형은 본 개시에서 증명된 바와 같이 일부 실시 형태에서 소소의 라인의 코드만을 요구하는 복잡성이 낮은 구현이 될 수도 있다. 또한, 대부분의 실시 형태에서, 디코딩 시스템 (14) 을 변경할 필요가 없다.
본 개시에 설명된 기술은 범용 프로세서, 디지털 신호 프로세서 (DSP), 주문형 반도체 (ASIC), 필드 프로그래머블 게이트 어레이들 (FPGA), 또는 다른 등가의 논리 장치들에서 구현될 수도 있다. 예를 들어, 비디오 인코더 시스템 (12), 및 그 컴포넌트 및 모듈들은, 디지털 신호 프로세서 (DSP) 또는 다른 프로세싱 디바이스에서 실행되는, 인코딩 프로세스, 또는 코딩/디코딩 (CODEC) 프로세스의 일부로서 구현될 수도 있다. 따라서, 모듈로 설명된 컴포넌트는 이러한 프로세스, 또는 개별 프로세스의 프로그램 가능한 특징을 형성할 수도 있다. 비디오 인코더 시스템 (12) 은 명령들 및 데이터를 저장하는 전용 메모리와, 하드웨어, 소프트웨어, 펌웨어, 또는 그 조합을 구비할 수도 있다. 소프트웨어에서 구현된다면, 이 기술은 RAM (Random Access Memory), ROM (Read-Only Memory), NVRAM (Non-volatile random access memory), EEPROM (electrically erasable programmable ROM), FLASH 메모리 등과 같은 컴퓨터 판독 가능 매체에서 명령들로 구현될 수도 있다. 이 명령들은 하나 이상의 프로세서로 하여금 본 개시에 설명된 일정한 양태의 기능성을 수행하게 한다.
다양한 실시 형태를 설명하였다. 이러한 실시 형태 및 다른 실시 형태는 다음의 청구 범위 내에 있다.

Claims (44)

  1. 오디오 패킷을 생성하는 단계;
    무선 채널의 처리량을 추정하는 단계; 및
    상기 추정된 처리량에 기초하여 결정된 비디오 패킷 사이즈를 갖는 비디오 패킷을 생성하는 단계를 포함하는 방법.
  2. 제 1 항에 있어서,
    상기 비디오 패킷 사이즈는 상기 추정된 처리량과 상기 오디오 패킷의 사이즈에 기초하여 결정되는, 방법.
  3. 제 1 항에 있어서,
    상기 오디오 패킷 및 상기 비디오 패킷을 출력 큐에 배치하는 단계를 더 포함하고,
    상기 비디오 패킷 사이즈는, 상기 추정된 처리량, 상기 오디오 패킷의 사이즈, 및 상기 출력 큐에 상기 비디오 패킷을 배치시키기 전의 상기 출력 큐 내의 버퍼링된 데이터의 사이즈에 기초하여 결정되는, 방법.
  4. 제 1 항에 있어서,
    상기 오디오 패킷 및 상기 비디오 패킷을 출력 큐에 배치하는 단계, 및
    상기 출력 큐의 콘텐트 중 적어도 일부에 기초하여 MAC (Medium Access Control) 계층 패킷을 생성하는 단계를 더 포함하는, 방법.
  5. 제 1 항에 있어서,
    제 1 주기적 간격으로 오디오 프레임들을 수신하는 단계, 및
    제 2 주기적 간격으로 MAC (Medium Access Control) 계층 패킷들을 생성하는 단계를 더 포함하고,
    상기 오디오 패킷을 생성하는 단계는, 상기 오디오 프레임들 각각에 대한 오디오 패킷을 생성하는 단계, 및 상기 오디오 패킷을 다음 이용 가능한 MAC 계층 패킷에 부가하는 단계를 포함하는, 방법.
  6. 제 1 항에 있어서,
    제 1 주기적 간격으로 오디오 프레임들을 수신하는 단계, 및
    제 2 주기적 간격으로 MAC (Medium Access Control) 계층 패킷들을 생성하는 단계를 더 포함하고,
    상기 오디오 패킷을 생성하는 단계는, 상기 오디오 프레임들 중 적어도 2개의 오디오 프레임을 번들링한 오디오 패킷을 생성하는 단계, 및 상기 오디오 패킷을 다음 이용 가능한 MAC 계층 패킷에 부가하는 단계를 포함하는, 방법.
  7. 제 1 항에 있어서,
    상기 오디오 패킷 및 상기 비디오 패킷을 출력 큐에 배치하는 단계, 및
    상기 출력 큐의 콘텐트 중 적어도 일부에 기초하여 MAC (Medium Access Control) 계층 패킷을 생성하는 단계를 더 포함하고,
    상기 비디오 패킷 사이즈는, 상기 오디오 패킷의 사이즈, 상기 추정된 처리량, 및 상기 출력 큐에 상기 비디오 패킷을 배치하기 전의 상기 출력 큐 내의 버퍼링된 데이터의 사이즈에 기초하여 결정되는, 방법.
  8. 제 1 항에 있어서,
    현재 무선 채널 전송률, 무선 기지국 활동도, 및 전송 전력 제한들 중 하나 이상에 기초하여 상기 처리량을 추정하는 단계를 더 포함하는, 방법.
  9. 제 1 항에 있어서,
    상기 비디오 패킷 사이즈는 상기 무선 채널을 통한 상기 오디오 패킷의 전송시 상당한 지연을 회피하도록 충분히 작은, 방법.
  10. 제 1 항에 있어서,
    복수의 비디오 프레임들을 수신하는 단계, 및
    패킷화되지 않은 비디오 프레임 데이터의 양에 기초하여 비디오 인코딩 레이트를 조정하는 단계를 더 포함하는, 방법.
  11. 제 1 항에 있어서,
    상기 비디오 패킷 사이즈는 상기 비디오 패킷보다 상기 오디오 패킷에 대해 우선순위를 할당하는 우선순위 값에 적어도 부분적으로 기초하여 결정되고, 소정의 추정된 처리량에 대한 상기 비디오 패킷 사이즈는, 상기 우선순위 값이 감소함에 따라 증가하는, 방법.
  12. 제 1 항에 있어서,
    상기 비디오 패킷 사이즈는 최소 비디오 패킷 사이즈보다 크거나 같은, 방법.
  13. 제 1 항에 있어서,
    상기 오디오 패킷 및 상기 비디오 패킷에 기초하여 물리 계층 패킷을 생성하는 단계, 및
    상기 물리 계층 패킷을 원격 디바이스에 전송하여 이동 무선 비디오 전화통신 컨퍼런스를 지원하는 단계를 더 포함하는, 방법.
  14. 제 13 항에 있어서,
    상기 물리 계층 패킷은 사실상 cdma2000 1x EV-DO, Release 0, 표준을 따르는, 방법.
  15. 오디오 데이터를 생성하는 오디오 인코더;
    상기 오디오 데이터를 수신하고 오디오 패킷을 출력하는 오디오 버퍼;
    비디오 데이터를 생성하는 비디오 인코더; 및
    무선 채널의 처리량을 추정하고, 상기 추정된 처리량에 기초하여 결정된 비디오 패킷 사이즈를 갖는 상기 비디오 데이터로부터 비디오 패킷을 생성하는 패킷화 장치를 포함하는 시스템.
  16. 제 15 항에 있어서,
    상기 비디오 패킷 사이즈는 상기 추정된 처리량과 상기 오디오 패킷의 사이즈에 기초하여 결정되는, 시스템.
  17. 제 15 항에 있어서,
    상기 오디오 패킷 및 상기 비디오 패킷을 수신하는 출력 큐를 더 포함하고,
    상기 비디오 패킷 사이즈는, 상기 추정된 처리량, 상기 오디오 패킷의 사이즈, 및 상기 출력 큐에 상기 비디오 패킷을 배치하기 전의 상기 출력 큐 내의 버퍼링된 데이터의 사이즈에 기초하여 결정되는, 시스템.
  18. 제 15 항에 있어서,
    상기 오디오 패킷 및 상기 비디오 패킷을 수신하는 출력 큐, 및
    상기 출력 큐의 콘텐트 중 적어도 일부에 기초하여 MAC 계층 패킷을 생성하 는 MAC (Medium Access Control) 계층 모듈을 더 포함하는, 시스템.
  19. 제 15 항에 있어서,
    상기 오디오 버퍼는, 제 1 주기적 간격으로 오디오 프레임들을 수신하고, 상기 오디오 프레임들 각각에 대한 오디오 패킷을 생성하고,
    상기 MAC 계층 모듈은, 제 2 주기적 간격으로 MAC (Medium Access Control) 계층 패킷들을 생성하고, 상기 오디오 패킷을 다음 이용 가능한 MAC 계층 패킷에 부가하는, 시스템.
  20. 제 15 항에 있어서,
    상기 오디오 버퍼는, 제 1 주기적 간격으로 오디오 프레임들을 수신하고, 상기 오디오 프레임들 중 적어도 2개의 오디오 프레임을 번들링하여 상기 오디오 패킷을 형성하고,
    상기 MAC 계층 모듈은, 제 2 주기적 간격으로 MAC (Medium Access Control) 계층 패킷들을 생성하고, 상기 오디오 패킷을 다음 이용 가능한 MAC 계층 패킷에 부가하는, 시스템.
  21. 제 15 항에 있어서,
    상기 패킷화 장치는 현재 무선 채널 전송률, 무선 기지국 활동도, 및 전송 전력 제한들 중 하나 이상에 기초하여 상기 처리량을 추정하는, 시스템.
  22. 제 15 항에 있어서,
    상기 비디오 패킷 사이즈는 상기 무선 채널을 통한 상기 오디오 패킷의 전송시 상당한 지연을 회피하도록 충분히 작은, 시스템.
  23. 제 15 항에 있어서,
    상기 비디오 인코더는 복수의 비디오 프레임들을 생성하고, 패킷화되지 않은 비디오 프레임 데이터의 양에 기초하여 비디오 인코딩 레이트를 조정하는, 시스템.
  24. 제 15 항에 있어서,
    상기 패킷화 장치는 상기 비디오 패킷보다 상기 오디오 패킷에 대해 우선순위를 할당하는 우선순위 값에 적어도 부분적으로 기초하여 상기 비디오 패킷 사이즈를 결정하고,
    소정의 추정된 처리량에 대한 상기 비디오 패킷 사이즈는, 상기 우선순위 값이 감소함에 따라 증가하는, 시스템.
  25. 제 15 항에 있어서,
    상기 비디오 패킷 사이즈는 최소 비디오 패킷 사이즈보다 크거나 같은, 시스템.
  26. 제 15 항에 있어서,
    상기 오디오 패킷 및 상기 비디오 패킷에 기초하여 물리 계층 패킷을 생성하고, 상기 물리 계층 패킷을 원격 디바이스에 전송하여 이동 무선 비디오 전화통신 컨퍼런스를 지원하는 물리 계층 모듈을 더 포함하는, 시스템.
  27. 제 26 항에 있어서,
    상기 물리 계층 패킷은 사실상 cdma2000 1x EV-DO, Release 0, 표준을 따르는, 시스템.
  28. 컴퓨터 판독 가능 매체로서,
    프로세서로 하여금,
    오디오 패킷을 생성하게 하고;
    무선 채널의 처리량을 추정하게 하고;
    상기 추정된 처리량에 기초하여 결정된 비디오 패킷 사이즈를 갖는 비디오 패킷을 생성하게 하는 명령들을 포함하는, 컴퓨터 판독 가능 매체.
  29. 제 28 항에 있어서,
    상기 프로세서로 하여금, 상기 추정된 처리량과 상기 오디오 패킷의 사이즈에 기초하여 상기 비디오 패킷 사이즈를 결정하게 하는 명령들을 더 포함하는, 컴퓨터 판독 가능 매체.
  30. 제 28 항에 있어서,
    상기 프로세서로 하여금, 상기 오디오 패킷 및 상기 비디오 패킷을 출력 큐에 배치하게 하는 명령들을 더 포함하고,
    상기 비디오 패킷 사이즈는, 상기 추정된 처리량, 상기 오디오 패킷의 사이즈, 및 상기 출력 큐에 상기 비디오 패킷을 배치하기 전의 상기 출력 큐 내의 버퍼링된 데이터의 사이즈에 기초하여 결정되는, 컴퓨터 판독 가능 매체.
  31. 제 28 항에 있어서,
    상기 프로세서로 하여금, 상기 오디오 패킷 및 상기 비디오 패킷을 출력 큐에 배치하게 하고, 상기 출력 큐의 콘텐트 중 적어도 일부에 기초하여 MAC (Medium Access Control) 계층 패킷을 생성하게 하는 명령들을 더 포함하는, 컴퓨터 판독 가능 매체.
  32. 제 28 항에 있어서,
    상기 프로세서로 하여금, 제 1 주기적 간격으로 오디오 프레임들을 수신하게 하고, 제 2 주기적 간격으로 MAC (Medium Access Control) 계층 패킷들을 생성하게 하는 명령들을 더 포함하고,
    상기 오디오 패킷의 생성은, 상기 오디오 프레임들 각각에 대한 오디오 패킷의 생성, 및 상기 오디오 패킷을 다음 이용 가능한 MAC 계층 패킷에 부가하는 것을 포함하는, 컴퓨터 판독 가능 매체.
  33. 제 28 항에 있어서,
    상기 프로세서로 하여금, 제 1 주기적 간격으로 오디오 프레임들을 수신하게 하고, 제 2 주기적 간격으로 MAC (Medium Access Control) 계층 패킷들을 생성하게 하는 명령들을 더 포함하고,
    상기 오디오 패킷의 생성은, 상기 오디오 프레임들 중 적어도 2개의 오디오 프레임을 번들링하는 오디오 패킷의 생성, 및 상기 오디오 패킷을 다음 이용 가능한 MAC 계층 패킷에 부가하는 것을 포함하는, 컴퓨터 판독 가능 매체.
  34. 제 28 항에 있어서,
    상기 프로세서로 하여금, 현재 무선 채널 전송률, 무선 기지국 활동도, 및 전송 전력 제한들 중 하나 이상에 기초하여 상기 처리량을 추정하게 하는 명령들을 더 포함하는, 컴퓨터 판독 가능 매체.
  35. 제 28 항에 있어서,
    상기 비디오 패킷 사이즈는 상기 무선 채널을 통한 상기 오디오 패킷의 전송시 상당한 지연을 회피하도록 충분히 작은, 컴퓨터 판독 가능 매체.
  36. 제 28 항에 있어서,
    상기 프로세서로 하여금, 복수의 비디오 프레임들을 수신하게 하고, 패킷화되지 않은 비디오 프레임 데이터의 양에 기초하여 비디오 인코딩 레이트를 조정하게 하는 명령들을 더 포함하는, 컴퓨터 판독 가능 매체.
  37. 제 28 항에 있어서,
    상기 비디오 패킷 사이즈는 상기 비디오 패킷보다 상기 오디오 패킷에 대해 우선순위를 할당하는 우선순위 값에 적어도 부분적으로 기초하여 결정되고,
    소정의 추정된 처리량에 대한 상기 비디오 패킷 사이즈는, 상기 우선순위 값이 감소함에 따라 증가하는, 컴퓨터 판독 가능 매체.
  38. 제 28 항에 있어서,
    상기 비디오 패킷 사이즈는 최소 비디오 패킷 사이즈보다 크거나 같은, 컴퓨터 판독 가능 매체.
  39. 제 28 항에 있어서,
    상기 프로세서로 하여금, 상기 오디오 패킷 및 상기 비디오 패킷에 기초하여 물리 계층 패킷을 생성하게 하고, 상기 물리 계층 패킷을 원격 디바이스에 전송하여 이동 무선 비디오 전화통신 컨퍼런스를 지원하게 하는 명령들을 더 포함하는, 컴퓨터 판독 가능 매체.
  40. 제 39 항에 있어서,
    상기 물리 계층 패킷은 사실상 cdma2000 1x EV-DO, Release 0, 표준을 따르는, 컴퓨터 판독 가능 매체.
  41. 오디오 패킷을 생성하는 수단;
    무선 채널의 처리량을 추정하는 수단; 및
    상기 추정된 처리량에 기초하여 결정된 비디오 패킷 사이즈를 갖는 비디오 패킷을 생성하는 수단을 포함하는 시스템.
  42. 제 41 항에 있어서,
    상기 비디오 패킷 사이즈는 상기 추정된 처리량과 상기 오디오 패킷의 사이즈에 기초하여 결정되는, 시스템.
  43. 제 41 항에 있어서,
    상기 오디오 패킷 및 상기 비디오 패킷을 출력 큐에 배치하는 수단을 더 포함하고,
    상기 비디오 패킷 사이즈는, 상기 추정된 처리량, 상기 오디오 패킷의 사이즈, 및 상기 출력 큐에 상기 비디오 패킷을 배치하기 전의 상기 출력 큐 내의 버퍼링된 데이터의 사이즈에 기초하여 결정되는, 시스템.
  44. 제 41 항에 있어서,
    상기 오디오 패킷 및 상기 비디오 패킷을 출력 큐에 배치하는 수단, 및
    상기 출력 큐의 콘텐트 중 적어도 일부에 기초하여 MAC (Medium Access Control) 계층 패킷을 생성하는 수단을 더 포함하는, 시스템.
KR1020087010427A 2005-09-29 2006-09-29 비디오 전화통신을 위한 비디오 패킷 쉐이핑 KR100982155B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/240,133 US8102878B2 (en) 2005-09-29 2005-09-29 Video packet shaping for video telephony
US11/240,133 2005-09-29

Publications (2)

Publication Number Publication Date
KR20080066002A true KR20080066002A (ko) 2008-07-15
KR100982155B1 KR100982155B1 (ko) 2010-09-14

Family

ID=37836953

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087010427A KR100982155B1 (ko) 2005-09-29 2006-09-29 비디오 전화통신을 위한 비디오 패킷 쉐이핑

Country Status (6)

Country Link
US (1) US8102878B2 (ko)
EP (1) EP1929720B1 (ko)
JP (2) JP2009510942A (ko)
KR (1) KR100982155B1 (ko)
CN (1) CN101313536B (ko)
WO (1) WO2007041319A2 (ko)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7965736B2 (en) * 2005-08-24 2011-06-21 Qualcomm Incorporated Transmission of multiplex protocol data units in physical layer packets
US8102878B2 (en) 2005-09-29 2012-01-24 Qualcomm Incorporated Video packet shaping for video telephony
US7864777B1 (en) * 2005-09-30 2011-01-04 Nortel Networks Limited Transmission format selection for optimizing transmission of delay sensitive traffic
US8578046B2 (en) * 2005-10-20 2013-11-05 Qualcomm Incorporated System and method for adaptive media bundling for voice over internet protocol applications
US8842555B2 (en) * 2005-10-21 2014-09-23 Qualcomm Incorporated Methods and systems for adaptive encoding of real-time information in packet-switched wireless communication systems
US8406309B2 (en) * 2005-10-21 2013-03-26 Qualcomm Incorporated Video rate adaptation to reverse link conditions
US8548048B2 (en) * 2005-10-27 2013-10-01 Qualcomm Incorporated Video source rate control for video telephony
US8514711B2 (en) 2005-10-21 2013-08-20 Qualcomm Incorporated Reverse link lower layer assisted video error control
US7965650B2 (en) * 2006-05-18 2011-06-21 Cisco Technology, Inc. Method and system for quality monitoring of media over internet protocol (MOIP)
JP5221562B2 (ja) 2007-01-10 2013-06-26 クゥアルコム・インコーポレイテッド マルチメディア電話のためのコンテンツ依存およびリンク依存のコード化適応
US7807915B2 (en) * 2007-03-22 2010-10-05 Qualcomm Incorporated Bandwidth control for retrieval of reference waveforms in an audio device
US7984177B2 (en) * 2007-04-30 2011-07-19 Vixs Systems, Inc. Multimedia client/server system with adjustable packet size and methods for use therewith
US8797850B2 (en) * 2008-01-10 2014-08-05 Qualcomm Incorporated System and method to adapt to network congestion
US20090268707A1 (en) * 2008-04-25 2009-10-29 Interdigital Patent Holdings, Inc. Method to implement transmission time interval bundling
US20100027524A1 (en) * 2008-07-31 2010-02-04 Nokia Corporation Radio layer emulation of real time protocol sequence number and timestamp
KR100966467B1 (ko) * 2008-09-23 2010-06-28 한국전자통신연구원 영상 전송 시 플레이 타임을 이용한 버퍼 컨트롤 장치 및 방법
US20100118837A1 (en) * 2008-11-11 2010-05-13 Qualcomm Incorporated Using synchronization frames for mesh networking with piconets
KR101636258B1 (ko) * 2009-03-20 2016-07-05 삼성전자 주식회사 이동통신시스템에서 네트워크의 rach 관련 시스템 자원자동적 최적화 방법
US20110205894A1 (en) * 2010-02-24 2011-08-25 Microsoft Corporation Traffic shaping for real time media streams
US20120243602A1 (en) * 2010-09-23 2012-09-27 Qualcomm Incorporated Method and apparatus for pipelined slicing for wireless display
JP2012089961A (ja) * 2010-10-18 2012-05-10 Tohoku Univ 情報転送システム
FR2967543A1 (fr) * 2010-11-16 2012-05-18 France Telecom Procedes et dispositifs d'evaluation et d'adaptation de codage, procede et terminal de communication
US8520523B2 (en) * 2011-02-11 2013-08-27 Telefonaktiebolaget L M Ericsson (Publ) Devices and methods for managing quality of service for bearers depending on utilization
US9148379B1 (en) * 2013-01-09 2015-09-29 “Intermind” société à responsabilité limitée Method and system for prioritizing audio traffic in IP networks
KR20140117995A (ko) * 2013-03-27 2014-10-08 한국전자통신연구원 다중 사용자 영상 전송 장치 및 방법
US9407563B2 (en) 2013-08-12 2016-08-02 Qualcomm Incorporated Methods and apparatuses for adapting application uplink rate to wireless communications network
US10425294B2 (en) * 2014-01-06 2019-09-24 Cisco Technology, Inc. Distributed and learning machine-based approach to gathering localized network dynamics
JP6462423B2 (ja) * 2015-03-03 2019-01-30 株式会社日立情報通信エンジニアリング 伝送装置、伝送プログラムおよび伝送方法
US9445051B1 (en) * 2015-08-14 2016-09-13 Qualcomm Incorporated Sender side video telephony downgrade
GB201519090D0 (en) * 2015-10-28 2015-12-09 Microsoft Technology Licensing Llc Multiplexing data
WO2017074811A1 (en) * 2015-10-28 2017-05-04 Microsoft Technology Licensing, Llc Multiplexing data
US10454877B2 (en) 2016-04-29 2019-10-22 Cisco Technology, Inc. Interoperability between data plane learning endpoints and control plane learning endpoints in overlay networks
US10091070B2 (en) 2016-06-01 2018-10-02 Cisco Technology, Inc. System and method of using a machine learning algorithm to meet SLA requirements
US10963813B2 (en) 2017-04-28 2021-03-30 Cisco Technology, Inc. Data sovereignty compliant machine learning
US10477148B2 (en) 2017-06-23 2019-11-12 Cisco Technology, Inc. Speaker anticipation
JP6598310B2 (ja) * 2017-07-07 2019-10-30 Necプラットフォームズ株式会社 無線通信装置、通信制御方法および通信制御プログラム
US10608901B2 (en) 2017-07-12 2020-03-31 Cisco Technology, Inc. System and method for applying machine learning algorithms to compute health scores for workload scheduling
US10091348B1 (en) 2017-07-25 2018-10-02 Cisco Technology, Inc. Predictive model for voice/video over IP calls
WO2019106445A1 (en) 2017-11-28 2019-06-06 Marvell World Trade Ltd. Distributed checksum calculation for communication packets
US10320705B1 (en) * 2018-02-28 2019-06-11 Verizon Patent And Licensing Inc. Identifying video data included in network packets
US10469633B2 (en) * 2018-03-29 2019-11-05 Marvell World Trade Ltd. Low-latency pipeline for media-to-ethernet frame packaging
US10673994B2 (en) 2018-03-29 2020-06-02 Marvell International Ltd. Network packet generator employing multiple header templates and configurable hardware registers
US10867067B2 (en) 2018-06-07 2020-12-15 Cisco Technology, Inc. Hybrid cognitive system for AI/ML data privacy
GB2574614B (en) * 2018-06-12 2020-10-07 Advanced Risc Mach Ltd Error detection in an interconnection network for an integrated circuit
US10446170B1 (en) 2018-06-19 2019-10-15 Cisco Technology, Inc. Noise mitigation using machine learning
CN109743528A (zh) * 2018-12-29 2019-05-10 广州市保伦电子有限公司 一种视频会议的音频采集与播放优化方法、装置及介质
US11490140B2 (en) * 2019-05-12 2022-11-01 Amimon Ltd. System, device, and method for robust video transmission utilizing user datagram protocol (UDP)
CN110213549A (zh) * 2019-07-03 2019-09-06 成都汇纳智能科技有限公司 一种基于libRTMP的推流方法及系统
EP4145732A1 (en) * 2021-09-02 2023-03-08 Rohde & Schwarz GmbH & Co. KG Device and method for cooperative relaying of voice traffic in mobile ad-hoc networks
US20240107623A1 (en) * 2022-09-23 2024-03-28 Qualcomm Incorporated Transmission packet bundling for voice over network communications
CN116074464B (zh) * 2023-01-16 2023-12-15 深圳普汇智为科技有限公司 一种在线视频通讯系统及其通讯方法

Family Cites Families (121)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4774587A (en) * 1987-06-02 1988-09-27 Eastman Kodak Company Still video transceiver processor
US5341374A (en) * 1991-03-01 1994-08-23 Trilan Systems Corporation Communication network integrating voice data and video with distributed call processing
JP2861518B2 (ja) * 1991-09-03 1999-02-24 日本電気株式会社 適応多重化方式
JP3002348B2 (ja) * 1992-11-30 2000-01-24 シャープ株式会社 画像通信システム
US5367523A (en) * 1993-08-26 1994-11-22 International Business Machines Corporation Adaptive rate-based congestion and flow control in packet communications networks
KR100330293B1 (ko) * 1993-09-21 2002-03-27 이데이 노부유끼 데이타 전송 방법 및 장치, 데이타 복호화 장치, 및데이타 기록 매체
US5541919A (en) * 1994-12-19 1996-07-30 Motorola, Inc. Multimedia multiplexing device and method using dynamic packet segmentation
US5802068A (en) * 1995-06-30 1998-09-01 Nippon Steel Corporation Multiplexing apparatus of a plurality of data having different bit rates
US5768533A (en) * 1995-09-01 1998-06-16 National Semiconductor Corporation Video coding using segmented frames and retransmission to overcome channel errors
JP3068002B2 (ja) * 1995-09-18 2000-07-24 沖電気工業株式会社 画像符号化装置、画像復号化装置及び画像伝送システム
TW305043B (ko) * 1995-09-29 1997-05-11 Matsushita Electric Ind Co Ltd
US6002802A (en) 1995-10-27 1999-12-14 Kabushiki Kaisha Toshiba Video encoding and decoding apparatus
JP3651706B2 (ja) 1995-10-27 2005-05-25 株式会社東芝 動画像符号化装置
US5790538A (en) * 1996-01-26 1998-08-04 Telogy Networks, Inc. System and method for voice Playout in an asynchronous packet network
JP3499670B2 (ja) 1996-02-02 2004-02-23 株式会社東芝 無線通信方法、無線基地局装置及び無線端末装置
SG71709A1 (en) * 1996-05-08 2000-04-18 Matsushita Electric Ind Co Ltd Multiplex transmission method and system and audio jitter absorbing method used therein
CN1126374C (zh) * 1996-07-05 2003-10-29 日本电信电话株式会社 图象通信系统及方法
US5838678A (en) * 1996-07-24 1998-11-17 Davis; Joseph W. Method and device for preprocessing streams of encoded data to facilitate decoding streams back-to back
US6366614B1 (en) * 1996-10-11 2002-04-02 Qualcomm Inc. Adaptive rate control for digital video compression
JPH10164533A (ja) 1996-11-26 1998-06-19 Canon Inc 画像通信方法及び装置
US6633609B1 (en) * 1996-12-24 2003-10-14 Intel Corporation Method and apparatus for bit rate control in a digital video environment for arbitrary bandwidth
US6490243B1 (en) * 1997-06-19 2002-12-03 Kabushiki Kaisha Toshiba Information data multiplex transmission system, its multiplexer and demultiplexer and error correction encoder and decoder
US5969764A (en) * 1997-02-14 1999-10-19 Mitsubishi Electric Information Technology Center America, Inc. Adaptive video coding method
US6404776B1 (en) * 1997-03-13 2002-06-11 8 × 8, Inc. Data processor having controlled scalable input data source and method thereof
JPH10322673A (ja) 1997-05-15 1998-12-04 Canon Inc 通信装置及び方法及び記憶媒体
JPH10341217A (ja) 1997-06-09 1998-12-22 Kokusai Electric Co Ltd マルチメディア多重化通信システム
US6377809B1 (en) 1997-09-16 2002-04-23 Qualcomm Incorporated Channel structure for communication systems
US6154489A (en) * 1998-03-30 2000-11-28 Motorola, Inc. Adaptive-rate coded digital image transmission
US6396956B1 (en) * 1998-03-31 2002-05-28 Sharp Laboratories Of America, Inc. Method and apparatus for selecting image data to skip when encoding digital video
US6421387B1 (en) * 1998-05-15 2002-07-16 North Carolina State University Methods and systems for forward error correction based loss recovery for interactive video transmission
TW376497B (en) * 1998-05-26 1999-12-11 Koninkl Philips Electronics Nv Transmission system for transmitting a main signal and an auxiliary signal
CA2238795A1 (en) * 1998-05-28 1999-11-28 Newbridge Networks Corporation Er information acceleration in abr traffic
US6584509B2 (en) * 1998-06-23 2003-06-24 Intel Corporation Recognizing audio and video streams over PPP links in the absence of an announcement protocol
JP2000023240A (ja) 1998-06-30 2000-01-21 Matsushita Electric Ind Co Ltd 無線通信装置及び無線通信方法
US6389034B1 (en) * 1998-09-04 2002-05-14 Nortel Networks Limited System for providing stream based and packet based services
US6629318B1 (en) * 1998-11-18 2003-09-30 Koninklijke Philips Electronics N.V. Decoder buffer for streaming video receiver and method of operation
CA2257007A1 (en) * 1998-12-24 2000-06-24 Newbridge Networks Corporation Explicit rate flow control for multicast connections
US6704359B1 (en) * 1999-04-15 2004-03-09 Diva Systems Corp. Efficient encoding algorithms for delivery of server-centric interactive program guide
JP3841256B2 (ja) 2000-02-15 2006-11-01 三菱電機株式会社 通信システム及び通信方法及び送信端末
EP1130921B1 (en) * 2000-03-02 2005-01-12 Matsushita Electric Industrial Co., Ltd. Data transmission in non-reliable networks
KR100833222B1 (ko) 2000-03-29 2008-05-28 삼성전자주식회사 멀티미디어 송수신 장치 및 방법
US6694469B1 (en) 2000-04-14 2004-02-17 Qualcomm Incorporated Method and an apparatus for a quick retransmission of signals in a communication system
US6747991B1 (en) * 2000-04-26 2004-06-08 Carnegie Mellon University Filter and method for adaptively modifying the bit rate of synchronized video and audio streams to meet packet-switched network bandwidth constraints
JP3669281B2 (ja) 2000-04-27 2005-07-06 三菱電機株式会社 符号化装置および符号化方法
CN1322759C (zh) * 2000-04-27 2007-06-20 三菱电机株式会社 编码装置和编码方法
US6999432B2 (en) * 2000-07-13 2006-02-14 Microsoft Corporation Channel and quality of service adaptation for multimedia over wireless networks
US6862298B1 (en) * 2000-07-28 2005-03-01 Crystalvoice Communications, Inc. Adaptive jitter buffer for internet telephony
US6891822B1 (en) * 2000-09-08 2005-05-10 Sharewave, Inc. Method and apparatus for transferring isocronous data within a wireless computer network
EP1237345B1 (en) * 2000-10-13 2012-12-12 Sony Corporation Data communication speed control system, transmitter apparatus and receiver apparatus
US7304951B2 (en) * 2000-11-21 2007-12-04 North Carolina State University Methods and systems for rate-based flow control between a sender and a receiver
US7006510B2 (en) * 2001-01-17 2006-02-28 Optibase Ltd. Method of clock mismatch and drift compensation for packet networks
GB2399998B (en) * 2001-02-01 2005-04-13 Fujitsu Ltd Communications systems
US7058085B2 (en) * 2001-03-14 2006-06-06 Nortel Networks Limited Method and apparatus for transmitting data over a network within a specified time limit
KR100800884B1 (ko) * 2001-03-29 2008-02-04 삼성전자주식회사 이동통신 시스템에서 역방향 링크의 송신 제어 방법
KR100425253B1 (ko) 2001-04-18 2004-03-30 주식회사 현대시스콤 무선통신 시스템에서의 순방향 패킷 송수신 방법
US7054316B2 (en) * 2001-04-25 2006-05-30 Nokia Corporation Method and system for interlayer control between re-sequencing and retransmission entities
US7342901B1 (en) * 2001-05-01 2008-03-11 Nortel Networks Limited Medium access control (MAC) protocol for a wireless communication system
US6920598B2 (en) 2001-05-21 2005-07-19 Lucent Technologies Inc. System and method for error recovery using NAKs
US7193966B2 (en) * 2001-06-25 2007-03-20 Telefonakitebolaget Lm Ericsson (Publ) Triggered packet data rate change in a communication system
US7269139B1 (en) * 2001-06-27 2007-09-11 Cisco Technology, Inc. Method and apparatus for an adaptive rate control mechanism reactive to flow control messages in a packet switching system
US6741603B2 (en) * 2001-07-09 2004-05-25 Overture Networks, Inc. Use of a circular buffer to assure in-order delivery of packets
JP4272515B2 (ja) * 2001-07-27 2009-06-03 株式会社アドバンテスト 位相補正回路
US7206285B2 (en) * 2001-08-06 2007-04-17 Koninklijke Philips Electronics N.V. Method for supporting non-linear, highly scalable increase-decrease congestion control scheme
US6865374B2 (en) * 2001-09-18 2005-03-08 Koninklijke Philips Electronics N.V. Video recovery system and method
US7356079B2 (en) * 2001-11-21 2008-04-08 Vixs Systems Inc. Method and system for rate control during video transcoding
WO2003052981A1 (en) * 2001-12-14 2003-06-26 The Texas A & M University System System for actively controlling distributed applications
JP4467984B2 (ja) * 2002-01-18 2010-05-26 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ オーディオのコード化
US7483489B2 (en) * 2002-01-30 2009-01-27 Nxp B.V. Streaming multimedia data over a network having a variable bandwith
EP1335289A1 (en) * 2002-02-07 2003-08-13 Siemens Aktiengesellschaft Method for software downloads in a radio communications system
JP3900413B2 (ja) 2002-02-14 2007-04-04 Kddi株式会社 映像情報伝送方式およびプログラム
JP4116470B2 (ja) 2002-03-06 2008-07-09 ヒューレット・パッカード・カンパニー メディア・ストリーミング配信システム
JP3490425B2 (ja) 2002-03-14 2004-01-26 松下電器産業株式会社 受信装置及び受信方法
EP1359722A1 (en) * 2002-03-27 2003-11-05 BRITISH TELECOMMUNICATIONS public limited company Data streaming system and method
KR20030095995A (ko) 2002-06-14 2003-12-24 마츠시타 덴끼 산교 가부시키가이샤 미디어 전송방법 및 그 송신장치 및 수신장치
JP3730974B2 (ja) 2002-06-14 2006-01-05 松下電器産業株式会社 メディア伝送方法及びその送信装置
US7020484B2 (en) * 2002-10-29 2006-03-28 Qualcomm Incorporated Controlling multiple modems in a wireless terminal using energy-per-bit determinations
GB0229396D0 (en) 2002-12-17 2003-01-22 British Telecomm Signal processing
CN1729641A (zh) 2002-12-18 2006-02-01 皇家飞利浦电子股份有限公司 数字多媒体信息的自适应编码
JP2004253883A (ja) 2003-02-18 2004-09-09 Nec Corp 音声・画像リアルタイム通信におけるビットレート制御を実行するデータ通信装置
US7551588B2 (en) 2003-03-06 2009-06-23 Nortel Networks Limited Autonomous mode transmission from a mobile station
JP2004297186A (ja) * 2003-03-25 2004-10-21 Matsushita Electric Ind Co Ltd 送信装置および送信方法
SE0301048D0 (sv) 2003-04-07 2003-04-07 Ericsson Telefon Ab L M RLC window reconfiguration
JPWO2004093446A1 (ja) * 2003-04-17 2006-07-13 富士通株式会社 圧縮データと非圧縮データを同時転送する場合のタスクスケジューリング方法
US7477604B2 (en) 2003-05-14 2009-01-13 Ntt Docomo, Inc. Packet communications system
JP3943558B2 (ja) 2003-05-14 2007-07-11 株式会社エヌ・ティ・ティ・ドコモ パケット通信方法及びパケット通信システム。
JP2004350227A (ja) 2003-05-26 2004-12-09 Ntt Communications Kk ビデオ会議システムにおける会議クライアント装置及びそのプログラム
US20040252761A1 (en) * 2003-06-16 2004-12-16 Dilithium Networks Pty Limited (An Australian Corporation) Method and apparatus for handling video communication errors
US7050397B2 (en) 2003-07-02 2006-05-23 Nokia Corporation Apparatus, and associated method, for facilitating retransmission of data packets in a packet radio communication system that utilizes a feedback acknowledgement scheme
US7263067B2 (en) 2003-07-15 2007-08-28 Nokia Siemans Networks Oy Method and apparatus for accelerating throughput in a wireless or other telecommunication system
CN101060706B (zh) 2003-09-30 2010-12-08 三菱电机株式会社 移动通信系统
US20050249231A1 (en) * 2003-11-25 2005-11-10 Asif Khan Methods and systems for reliable distribution of media over a network
US7197026B2 (en) * 2003-12-23 2007-03-27 Nokia Corporation Method and system for RLP optimization
JP2005192073A (ja) 2003-12-26 2005-07-14 Matsushita Electric Ind Co Ltd マルチメディアデータ通信方法および装置
US7453938B2 (en) * 2004-02-06 2008-11-18 Apple Inc. Target bitrate estimator, picture activity and buffer management in rate control for video coder
JP4562402B2 (ja) 2004-02-20 2010-10-13 アルパイン株式会社 音声データの非同期通信システムおよびその通信方法
JP2005244908A (ja) * 2004-02-27 2005-09-08 Kyocera Corp 通信システム、通信装置及び通信制御方法
US20050207392A1 (en) 2004-03-19 2005-09-22 Telefonaktiebolaget Lm Ericsson (Publ) Higher layer packet framing using RLP
KR100550567B1 (ko) 2004-03-22 2006-02-10 엘지전자 주식회사 무선 네트워크망을 통해 통신하는 서버 시스템 및 그동작방법
JP3950865B2 (ja) 2004-03-30 2007-08-01 Necアクセステクニカ株式会社 Atm通信システム
US7424026B2 (en) 2004-04-28 2008-09-09 Nokia Corporation Method and apparatus providing continuous adaptive control of voice packet buffer at receiver terminal
TW201145943A (en) * 2004-05-13 2011-12-16 Qualcomm Inc Synchronization of audio and video data in a wireless communication system
KR100916274B1 (ko) 2004-06-07 2009-09-10 슬링 미디어 인코퍼레이티드 퍼스널 미디어 브로드캐스팅 시스템
KR20050121067A (ko) * 2004-06-21 2005-12-26 삼성전자주식회사 무선 채널에 의한 무선 통신 시스템 및 그의 무선 통신 방법
US7606427B2 (en) * 2004-07-08 2009-10-20 Qualcomm Incorporated Efficient rate control techniques for video encoding
KR100608061B1 (ko) * 2004-07-12 2006-08-02 삼성전자주식회사 전송 스트림 생성을 위한 다중화 방법 및 그 장치
US7551647B2 (en) 2004-07-19 2009-06-23 Qvidium Technologies, Inc. System and method for clock synchronization over packet-switched networks
DE602005003276T2 (de) 2004-08-18 2008-09-11 Infineon Technologies Ag Verfahren zur Übertragung von Informationen über eine Kommunikationsverbindung und zugehörige Vorrichtung zur Übertragung und Kommunikationsnetz
MY149811A (en) * 2004-08-30 2013-10-14 Qualcomm Inc Method and apparatus for an adaptive de-jitter buffer
US7606303B2 (en) * 2004-09-28 2009-10-20 General Instrument Corporation Method and apparatus to detect anchor frames from digital video streams
WO2007119086A1 (en) 2004-11-09 2007-10-25 Nokia Corporation Apparatus and method for arbitrary data rate ramp up after overload on wireless interface
US7492710B2 (en) * 2005-03-31 2009-02-17 Intel Corporation Packet flow control
US20070019931A1 (en) * 2005-07-19 2007-01-25 Texas Instruments Incorporated Systems and methods for re-synchronizing video and audio data
US7701851B2 (en) * 2005-07-20 2010-04-20 Vidyo, Inc. System and method for the control of the transmission rate in packet-based digital communications
RU2397614C2 (ru) * 2005-09-21 2010-08-20 ЭлДжи ЭЛЕКТРОНИКС ИНК. Способ и устройство, предназначенные для мультиплексирования множества каналов обратной связи обратной линии связи в беспроводных сетях с множеством несущих
US8102878B2 (en) 2005-09-29 2012-01-24 Qualcomm Incorporated Video packet shaping for video telephony
US8842555B2 (en) * 2005-10-21 2014-09-23 Qualcomm Incorporated Methods and systems for adaptive encoding of real-time information in packet-switched wireless communication systems
US8406309B2 (en) 2005-10-21 2013-03-26 Qualcomm Incorporated Video rate adaptation to reverse link conditions
US8548048B2 (en) 2005-10-27 2013-10-01 Qualcomm Incorporated Video source rate control for video telephony
US20080056125A1 (en) 2006-09-06 2008-03-06 Nokia Corporation Congestion control in a wireless network
KR100787314B1 (ko) 2007-02-22 2007-12-21 광주과학기술원 미디어내 동기화를 위한 적응형 미디어 재생 방법 및 장치
JP5339697B2 (ja) * 2007-08-14 2013-11-13 キヤノン株式会社 送信装置、送信方法、及びコンピュータプログラム

Also Published As

Publication number Publication date
EP1929720A2 (en) 2008-06-11
CN101313536B (zh) 2013-06-05
KR100982155B1 (ko) 2010-09-14
WO2007041319A3 (en) 2007-05-24
JP5661678B2 (ja) 2015-01-28
JP2012170120A (ja) 2012-09-06
US8102878B2 (en) 2012-01-24
CN101313536A (zh) 2008-11-26
US20070071030A1 (en) 2007-03-29
EP1929720B1 (en) 2013-03-13
JP2009510942A (ja) 2009-03-12
WO2007041319A2 (en) 2007-04-12

Similar Documents

Publication Publication Date Title
KR100982155B1 (ko) 비디오 전화통신을 위한 비디오 패킷 쉐이핑
US8548048B2 (en) Video source rate control for video telephony
KR100870215B1 (ko) 무선 통신 시스템을 통해 송신된 멀티미디어 데이터의 헤더압축
EP1845691B1 (en) Media stream relay device and method
EP2043372A1 (en) Method for audio and video synchronization, receiving and transmitting device
JP2006074555A (ja) マルチメディアゲートウェイにおける音声・動画調整方式

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130830

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140828

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160629

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 9