KR100486713B1 - 멀티미디어 스트리밍 장치 및 방법 - Google Patents

멀티미디어 스트리밍 장치 및 방법 Download PDF

Info

Publication number
KR100486713B1
KR100486713B1 KR10-2002-0056487A KR20020056487A KR100486713B1 KR 100486713 B1 KR100486713 B1 KR 100486713B1 KR 20020056487 A KR20020056487 A KR 20020056487A KR 100486713 B1 KR100486713 B1 KR 100486713B1
Authority
KR
South Korea
Prior art keywords
multimedia
packet
data
information
frame
Prior art date
Application number
KR10-2002-0056487A
Other languages
English (en)
Other versions
KR20040025994A (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 삼성전자주식회사
Priority to KR10-2002-0056487A priority Critical patent/KR100486713B1/ko
Priority to US10/646,831 priority patent/US20050076136A1/en
Priority to JP2003306615A priority patent/JP3957666B2/ja
Priority to CNB031556116A priority patent/CN100382499C/zh
Priority to DE2003144017 priority patent/DE10344017B4/de
Publication of KR20040025994A publication Critical patent/KR20040025994A/ko
Application granted granted Critical
Publication of KR100486713B1 publication Critical patent/KR100486713B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/12Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
    • 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
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • 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/70Media network packetisation
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

네트워크의 상태에 따라 멀티미디어 데이터를 적응적으로 전송하는 멀티미디어 스트리밍 장치 및 방법이 개시된다. 상기 멀티미디어 스트리밍 장치는, 서비스하고자 하는 멀티미디어 데이터에 대응되는 메타 데이터의 분석 결과와, 상기 멀티미디어 데이터를 받아들이는 클라이언트에 의해 측정된 네트워크 대역폭 정보에 응답해서, 소정의 서비스 품질 레벨에 해당되는 멀티미디어 데이터를 스트리밍한다. 그 결과, 서버에 부담을 주지 않으면서 네트워크 대역폭 변화에 따른 적응적 멀티미디어 스트리밍을 수행할 수 있다.

Description

멀티미디어 스트리밍 장치 및 방법{Apparatus and method for streaming multimedia data}
본 발명은 멀티미디어 데이터의 전송에 관한 것으로, 특히 네트워크의 상태에 따라 멀티미디어 데이터를 적응적으로 전송하는 멀티미디어 스트리밍 장치 및 방법에 관한 것이다.
스트리밍(streaming)은 전송되는 데이터를 마치 끊임없고 지속적인 물의 흐름처럼 처리할 수 있는 기술을 의미한다. 스트리밍 기술은 인터넷의 성장과 함께 더욱 더 중요해지고 있는데, 그 이유는 대부분의 사용자가 대용량 멀티미디어 파일들을 즉시 다운로드 할 만큼 빠른 접속회선을 가지고 있지 못하기 때문이다. 스트리밍 기술을 이용하면, 파일이 모두 전송되기 전에라도 클라이언트 브라우저 또는 플러그인이 데이터의 표현을 시작할 수 있다.
그러나, 스트리밍 환경에서 네트워크의 상태는 항상 일정한 상태를 유지하지 않는다. 일반적으로, 초기 네트워크 대역폭에 맞게 멀티미디어 스트리밍 서비스를 하더라도 서비스 대상이 많아지면 대역폭이 감소하게 되고 더 심할 경우 네트워크 혼잡(Congestion)상태가 발생하게 되어 안정된 서비스를 보장할 수 없게 된다. 따라서, 네트워크 변화에 따라 전송률을 변화시키는 스트리밍 서비스가 필요하다.
적응적 스트리밍은 네트워크의 상태 변화에 따라 전송량을 적절하게 조절하는 기술로서, 이를 구현하는 예는 다음과 같다.
2000년 1월, Aharoni 등에 의해 취득된 U.S. Pat. No. 6,014,694, "SYSTEM FOR ADAPTIVE VIDEO/AUDIO TRANSPORT OVER A NETWORK"에는 예상되는 비트율을 몇 단계로 나누고 각 비트율에 해당하는 멀티미디어 스트림을 각각 만들어 함께 저장하는 다중 비트 스트림 서비스가 개시된다. 이 방법은 한 프레임씩 해당 스트림을 저장하거나 각 비트율 레벨에 해당되는 스트림을 따로 따로 저장한 후, 각 서버에서 해당 스트림을 선택적으로 스트리밍한다. 그러나, 이 방법은 하나의 멀티미디어 컨텐츠를 서비스하기 위한 저장 스트림의 크기가 큰 단점이 있다.
2000년 7월, Guetz 등에 의해 취득된 U.S. Pat. No. 6,091,777, "CONTINUOUSLY ADAPTIVE DIGITAL VIDEO COMPRESSION SYSTEM AND METHOD FOR A WEB STREAMER"에는 채널 대역폭과 클라이언트의 리소스 상태를 고려하여 전송시 영상의 압축률을 조절하여 부호화하는 방법이 개시된다. 그러나, 이 방법은 매 프레임마다 현재 대역폭과 이전 프레임의 압축률을 비교하여 다음 프레임의 압축률을 조절하기 때문에, 계산량이 많고, 서버에서의 오버헤드가 큰 단점이 있다.
2001년 1월, Zhang 등에 의해 취득된 U.S. Pat. No. 6,181,711, "SYSTEM AND METHOD FOR TRANSPORTING A COMPRESSED VIDEO AND DATA BIT STREAM OVER A COMMUNICATION CHANNEL"에는 미리 압축된 데이터의 비트율을 변환하여 네트워크의 대역폭에 맞게 재 부호화하여 전송하는 방법이 개시된다. 상기 비트율 변환은 복호화 과정, 비트율 변환과정, 및 부호화 과정을 포함하는데, 상기 방법에 의하면 네트워크의 대역폭이 변할 때마다 상기 과정을 거쳐 비트율 변환 수행해야 하므로 서버의 부담이 증가하는 단점을 가진다. 그리고 실시간 부호화가 충분히 이루어지지 않으면 안정적인 서비스를 보장할 수 없는 단점이 있다.
본 발명이 이루고자 하는 기술적 과제는, 서버에 부담을 주지 않으면서 네트워크 대역폭의 변화에 따라 적응적으로 전송률을 변화시켜 최적의 멀티미디어 스트리밍 서비스를 제공하는 멀티미디어 스트리밍 장치 및 방법을 제공하는데 있다.
상기의 과제를 이루기 위하여 본 발명에 의한 멀티미디어 스트리밍 장치는, 크게 멀티미디어 스트리밍 서버와 멀티미디어 스트리밍 클라이언트로 구성된다. 멀티미디어 스트리밍 서버는 서비스하고자 하는 멀티미디어 데이터에 대응되는 메타 데이터의 분석 결과와 외부로부터 입력된 네트워크 대역폭 정보에 응답해서, 소정의 서비스 품질 레벨에 해당되는 멀티미디어 데이터를 스트리밍 한다. 그리고, 멀티미디어 스트리밍 클라이언트는, 멀티미디어 데이터를 수신한 시간과 상기 멀티미디어 데이터의 크기 정보를 이용하여 상기 서버가 연결된 네트워크의 대역폭을 측정하고, 측정된 상기 대역폭 정보를 상기 서버에게 전송한다.
상기의 과제를 이루기 위하여 본 발명에 의한 멀티미디어 스트리밍 서버는, 데이터 저장부, 메타데이터 분석부, 메시지 수신부, 서비스 품질(QoS) 처리부, 버퍼, 패킷 생성부, 및 패킷 전송부를 포함한다. 데이터 저장부는 서비스하고자 하는 멀티미디어 데이터와, 상기 멀티미디어 데이터와 관련된 메타 데이터를 저장한다. 메타데이터 분석부는 상기 메타 데이터를 분석하고, 분석 결과를 디스크립터 형태로 출력한다. 메시지 수신부는 상기 클라이언트로부터 네트워크 대역폭 정보를 받아들인다. 서비스 품질(QoS) 처리부는 상기 디스크립터 정보와 상기 네트워크 대역폭 정보에 응답해서 서비스 가능한 서비스 품질 레벨을 선택하고, 선택된 상기 서비스 품질 레벨에 해당되는 멀티미디어 데이터를 상기 데이터 저장부로부터 추출한다. 버퍼는 상기 추출된 데이터를 저장한다. 패킷 생성부는 상기 버퍼에 저장된 데이터를 패킷화 한다. 패킷 전송부는 상기 버퍼에 저장된 데이터를 일정한 시간 간격으로 상기 클라이언트에게 전송한다.
상기의 과제를 이루기 위하여 본 발명에 의한 멀티미디어 스트리밍 클라이언트는, 패킷 수신부, 버퍼, 멀티미디어 디코더, 대역폭 측정부, 및 메시지 전송부를 포함한다. 패킷 수신부는 상기 서버로부터 상기 멀티미디어 데이터를 받아들인다. 버퍼는 수신된 상기 멀티미디어 데이터를 저장한다. 멀티미디어 디코더는 상기 버퍼에 저장된 데이터를 재생한다. 대역폭 측정부는 상기 패킷 수신부에서 상기 멀티미디어 데이터를 수신한 시간과 상기 데이터의 크기 정보를 이용하여 네트워크 대역폭을 측정한다. 메시지 전송부는 상기 네트워크 대역폭에 따라 상기 서버로부터 전송되는 상기 멀티미디어 데이터의 전송률이 조절될 수 있도록, 측정된 상기 네트워크 대역폭을 상기 서버에게 전송한다.
상기의 과제를 이루기 위하여 본 발명에 의한 멀티미디어 스트리밍 방법은, (a) 클라이언트가 서버에게 서비스 요청 메시지 및 세션 연결 요청 메시지를 전송하는 단계; (b) 상기 요청 메시지에 대한 서비스 확인 메시지 및 더미 패킷 쌍을 상기 클라이언트에게 전송하는 단계; (c) 상기 서버로부터 입력되는 상기 패킷 쌍에 응답해서 상기 네트워크의 초기 대역폭 값을 결정하고, 결정된 상기 초기 대역폭 값을 상기 서버에게 전송하는 단계; (d) 상기 클라이언트로부터 전송된 상기 초기 대역폭 정보와 메타 데이터의 분석결과 얻어진 디스크립터 정보를 비교하여 적절한 서비스 품질 레벨을 정하고, 상기 서비스 품질 레벨에 대응되는 전송률에 따라 멀티미디어 스트리밍 서비스를 시작하는 단계; (e) 상기 서버의 스트리밍 서비스를 통해 수신된 패킷 정보에 응답해서 상기 네트워크 대역폭을 주기적으로 측정하고, 측정된 상기 대역폭 값을 상기 서버에게 전송하는 단계; 및 (f) 상기 클라이언트로부터 전송된 상기 네트워크 대역폭 값에 따라 소정의 멀티미디어 스트림을 추출하고, 추출된 상기 멀티미디어 스트림을 상기 클라이언트에게 전송하는 단계를 포함하는 것을 특징으로 한다.
상기의 과제를 이루기 위하여 본 발명에 의한 멀티미디어 스트리밍 방법은, (a) 클라이언트로부터 네트워크의 대역폭을 수신하는 단계; (b) 서비스하고자 하는 멀티미디어 데이터에 대응되는 메타 데이터의 분석 결과로 얻어진 디스크립터를 근거로 하여 현재의 타임 세그먼트를 선택하는 단계; (c) 선택된 상기 세그먼트에 대해 상기 디스크립터에 정의되어 있는 목표 비트율과 상기 네트워크 대역폭을 비교하여 서비스 가능한 서비스 품질 레벨을 선택하는 단계; 및 (d) 선택된 상기 서비스 품질 레벨에 해당되는 프레임들을 추출하여 일정 시간마다 상기 클라이언트에게 전송하는 단계를 포함하는 것을 특징으로 한다.
상기의 과제를 이루기 위하여 본 발명에 의한 네트워크 대역폭 측정 방법은, (a) 누적 패킷 크기 값을 0으로 세팅하는 단계; (b) 상기 서버로부터 패킷을 수신하기 시작하는 단계; (c) 첫 번째 패킷이 수신된 시간을 T1로 설정하는 단계; (d) 상기 패킷이 입력된 후 마지막 패킷이 입력될 때까지 매 패킷이 입력될 때마다 상기 누적 패킷 크기 값에 해당 패킷의 크기 값을 누적해서 더하는 단계; (e) 마지막 패킷이 입력되면 상기 마지막 패킷이 수신된 시간을 T2로 설정하는 단계; (f) 을 계산하여 상기 네트워크 대역폭을 측정하는 단계; 및 (g) 상기 측정된 네트워크 대역폭 정보를 상기 서버에게 피드백 하는 단계를 포함하는 것을 특징으로 한다.
이하에서, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 상세히 설명한다.
도 1은 가변적인 네트워크 환경에서 적응적 멀티미디어 스트리밍 서비스를 제공하는, 본 발명의 바람직한 실시예에 따른 멀티미디어 스트리밍 서버(100)의 블록도이다. 도 1을 참조하면, 본 발명에 따른 멀티미디어 스트리밍 서버(100)는 데이터 저장부(101), 메타데이터(metadata) 분석부(110), 서비스 품질(Quality of Service, 이하 QoS라 칭함) 처리부(130), 메시지 수신부(160), 버퍼(170), 패킷 생성부(180), 및 패킷 전송부(190)를 포함한다. 그리고, QoS 처리부(130)는 서비스 레벨 선택부(140)와 프레임 선택부(150)를 포함한다.
데이터 저장부(101)는 서비스하고자 하는 압축 멀티미디어 데이터와, 상기 멀티미디어 데이터와 관련된 메타 데이터를 저장한다. 여기서, 멀티미디어 데이터는 오디오 데이터, 비디오 데이터와 같은 동영상 데이터, 정지 영상 데이터, 텍스트 데이터, 및 그래픽 데이터 중 어느 하나의 형태로 저장된다. 그리고, 상기 멀티미디어 데이터는, 공간상 스케일러블 기능, 품질 스케일러블 기능, 시간상 스케일러블 기능, 및 FGS(fine grain scalable) 기능 중 어느 하나를 갖는 비트 스트림으로 구성된다. 메타데이터 분석부(110)는 메타 데이터를 분석하고, 분석 결과를 디스크립터(descriptor) 형태로 출력한다. QoS 처리부(130)는 메타 데이터의 디스크립터 정보와 네트워크 대역폭 정보에 응답해서 QoS 처리를 수행한다. 메시지 수신부(160)는 서버는 클라이언트로부터 네트워크(1)의 상태 정보(즉, 네트워크 대역폭 정보)를 받아들인다. 버퍼(170)는 2개의 버퍼로 구성되며, 상기 버퍼들은 패킷을 저장하기 위한 패킷 저장 버퍼와 패킷을 전송하기 위한 패킷 전송 버퍼로 구분된다. 패킷 생성부(180)는 패킷 전송용 버퍼에 저장된 데이터를 패킷화 하는 기능을 수행하고, 패킷 전송부(190)는 버퍼(103)에 저장된 데이터를 일정한 시간 간격으로 네트워크(1)로 전송한다.
QoS 처리부(130)의 QoS 처리 과정은 다음과 같다. 먼저, 서비스 레벨 선택부(140)는 메시지 수신부(160)로부터 네트워크 대역폭 값을 입력받아, 디스크립터에 미리 정의되어 있는 QoS 레벨별 목표 비트율과 상기 대역폭을 비교하여 서비스 가능한 QoS 레벨을 선택한다. 그리고, 멀티미디어 데이터(10)로부터 현재의 QoS 레벨에 해당되는 프레임들을 추출하여 버퍼(170)에 저장한다.
메타 데이터(20)에는 각 레벨에 해당하는 프레임들의 포인터 정보가 저장되어 있어, 버퍼(170)에 저장되어 있는 파일에서 직접 접근이 가능하다. 패킷 생성부(180)는 버퍼(170)에 저장된 데이터를 일정한 크기로 잘라 패킷화 하고, 패킷 전송부(190)는 버퍼(103)에 저장된 데이터를 일정한 시간마다 네트워크(1)로 전송한다. 패킷 전송부(190)는 데이터 전송시 패킷을 동일한 간격으로 보내어, 클라이언트(도 6의 300)에서 대역폭 측정이 정확하게 수행될 수 있도록 한다. 패킷 전송 간격과 패킷의 크기는 서비스하는 데이터의 평균 비트율에 따라 조정된다.
메타 데이터(20)는 XML(eXtensible Markup Language)을 기반으로 하여 정의되며, XML이 가지는 장점인 확장성과 호환성을 가진다. 메타 데이터(20)는, 서버(100)와 클라이언트 사이에 스트리밍 서비스 요청이 이루어지면, 메타 데이터 분석부(110)에 의해 분석(parsing)되고, 서버(100) 내에서 내부적으로 사용될 수 있도록 디스크립터 형태로 저장된다.
도 2는 본 발명의 바람직한 실시예에 따른 메타 데이터의 구조를 보여주는 도면이다. 도 2에서 사각형으로 표시된 부분들(21-26)은 노드 객체를 나타내고, 노드간에 연결된 선은 노드들(21-26)간의 상하 연결 관계를 나타낸다. 그리고, 선 연결 부분에 표시된 숫자는 하나의 노드에 대해 객체들이 얼마나 많이 관여하는가를 보여주는 카디널리티(cardinality)를 나타낸다. 여기서, 선 연결 부분에 표시된 숫자 "1.1"은 두 연결 관계가 최대, 최소 각각 하나임을 나타내고 "0, *"은 두 연결 관계가 최소 0, 최대 무한대임을 각각 나타낸다. 그리고 "1, *" 는 두 연결 관계가 최소 1, 최대 무한대임을 각각 나타낸다.
예를 들어, "1, 1"로 표시된 STREAMING HINT 노드(21)와 HEADER GROUP HINT 노드(22) 사이의 관계는, STREAMING HINT 노드(21)의 하위에 HEADER GROUP HINT 노드(22)가 반드시 하나만 존재하고, 2개 이상 존재할 수 없음을 나타낸다. 그리고 "1, *"로 표시된 STREAMING HINT 노드(21)와 SEGMENT GROUP HINT 노드(24) 사이의 관계는, STREAMING HINT 노드(21) 하위에 반드시 1개 이상의 SEGMENT GROUP HINT 노드(24)가 존재해야 하며, 존재하는 SEGMENT GROUP HINT 노드(24)의 개수는 제한이 없음을 나타낸다.
도 2에서, STREAMING HINT 노드(21)는 최상위 노드로서, 메타 데이터(20)의 컨트롤 타입(control)과 노드의 계층 구조 타입(Hierarchy)을 명시해주는 속성 값을 가진다. STREAMING HINT 노드(21)에 명기된 컨트롤 타입에는 targetBitrateControl, targetQualityControl, targetComplexityControl, targetProfileControl, targetSpeedControl, targetDirectionControl, 및 targetDeviceControl이 포함된다.
targetBitrateControl은 네트워크 대역폭의 변화에 따라 전송 비트율을 조절하기 위한 속성 값이고, targetQualityControl은 서비스할 멀티미디어 데이터의 목표 품질을 조절하기 위한 속성 값이다. targetComplexityControl은 클라이언트의 리소스 상태에 따라서 차별화된 서비스를 지원하기 위한 속성 값이고, targetProfileControl은 멀티미디어 데이터의 압축 포맷에 따라 차별화된 서비스를 지원하기 위한 속성 값이며, targetSpeedControl은 클라이언트에서의 재생 속도 조절 요청에 따라 서비스 속도를 조절하기 위한 속성 값이다. 그리고, targetDirectionControl은 클라이언트에서의 재생 방향 조절 요청에 따라 서비스 방향을 조절하기 위한 속성 값이고, targetDeviceControl은 클라이언트 단말기의 종류에 따라 차별화된 서비스들을 지원하기 위한 속성 값이다. 이외에도, STREAMING HINT 노드(21)에는 상기와 같은 컨트롤 타입 외에도 QoS를 위한 컨트롤 타입들이 추가적으로 정의될 수 있다. 이 같은 STREAMING HINT 노드(21)의 컨트롤 속성 값에 따라서 메타 데이터의 속성이 다르게 기술된다.
STREAMING HINT 노드(21)의 계층 구조 타입은 독립형(Independent)과 의존형(Dependent)으로 구분되며, 이에 따라 타입에 따라 하위 노드의 구조가 달라진다. 특히, MEDIA SEGMENT HINT 노드(25)는, 그것의 구조에 따라 독립형 메타데이터 또는 의존형 메타 데이터를 구성할 수 있다.
도 3은 본 발명의 일 실시예에 따른 독립형 메타 데이터의 구조를 나타내는 도면이고, 도 4는 본 발명의 일 실시예에 따른 의존형 메타 데이터의 구조를 나타내는 도면이다.
도 3을 참조하면, 각각의 MEDIA SEGMENT HINT 노드(2511, 2512, 2513)는 서로에 대해 각각 독립적인 연결 관계를 갖는다. 반면 도 4를 참조하면, 제 2 MEDIA SEGMENT HINT 노드(2522)는 제 1 MEDIA SEGMENT HINT 노드(2521)에 대해 종속적인 연결 관계를 갖는 것을 알 수 있다. 여기서, 독립형 메타 데이터는 상위 노드에 대한 참조나 재사용 없이 각각의 노드들이 서비스 레벨에 해당하는 멀티미디어 데이터의 프레임 정보를 가지는 반면, 의존형 메타 데이터는 각 레벨별로 중복되는 정보를 상위 노드에서 참조하고 하위 노드에서는 추가 정보만 기술하는 차이점을 갖는다.
다시 도 2를 참조하면, STREAMING HINT 노드(21)는 헤더 정보를 가지는 HEADER GROUP HINT 노드(22)와, 멀티미디어를 시간 단위인 세그먼트로 나눌 때 각 세그먼트 정보를 구성하는 SEGMENT GROUP HINT 노드(24)로 구분된다.
HEADER GROUP HINT 노드(22)는 서비스하는 멀티미디어 객체의 개수만큼 FRAME HEADER HINT 노드(23)를 가지며, 각각의 FRAME HEADER HINT 노드(23)는 각 노드의 고유 정보를 나타내는 속성 값을 가진다.
FRAME HEADER HINT 노드(23)의 속성 값에는 streamID, streamType, scalability, sourceLocator, frameRate, avgBitrate 등이 있다. 이들 중 streamID는 각 멀티미디어 데이터를 구별하기 위한 고유 아이디이고, streamType은 멀티미디어 타입을 나타내는 속성 값으로서 visual/audio/other 타입으로 구분된다. scalability는 스케일러블 기능의 종류를 나타내는 속성 값으로서, spatial/temporal/snr/fgs(fine grain scalability) 타입으로 구분된다. spatial은 공간상의 스케일러블(scalable) 속성 값을 나타내고, temporal은 시간상의 스케일러블 속성 값을 나타내며, 그리고 snr은 품질상의 스케일러블 속성 값을 각각 나타낸다. sourceLocator는 서버(100)의 데이터 저장부(101)에 저장되어 있는 멀티미디어 데이터의 위치 정보를 나타낸다. 그리고 frameRate은 멀티미디어 데이터의 프레임율을, avgBitrate은 멀티미디어 데이터의 평균 비트율을 각각 나타낸다.
SEGMENT GROUP HINT 노드(24)는 전체 멀티미디어 스트림을 일정한 시간 간격으로 나눌 때, 매 시간 단위의 멀티미디어 스트림을 세그먼트로 정의한다. 그리고, 각 세그먼트에 대해 QoS 레벨의 수만큼 MEDIA SEGMENT HINT 노드(25)를 가진다. QoS 레벨이 커지게 되면 MEDIA SEGMENT HINT 노드(25)의 수가 증가하여 메타 데이터(20)의 크기가 증가하게 되지만, 더욱 세분화된 서비스가 가능해 진다.
MEDIA SEGMENT HINT 노드(25)는, QoS 레벨 인덱스를 나타내는 레벨 속성과 해당 QoS 레벨에서 서비스되는 프레임의 전체 수를 나타내는 numofFrames 속성 값과, 해당 QoS 레벨의 프레임을 서비스 할 때의 평균 비트율을 나타내는 targetBitarate 속성 값을 갖는다. MEDIA SEGMENT HINT 노드(25)는 실제 전송될 멀티미디어 프레임 정보를 가지는 적어도 하나 이상의 MEDIA FRAME HINT 노드들(26)을 포함하며, MEDIA SEGMENT HINT 노드(25)는 numofFrames 속성 값에 해당되는 개수만큼 MEDIA FRAME HINT 노드(26)를 갖는다.
MEDIA FRAME HINT 노드(26)는 streamID, CTS, DTS, CodingType, frameOffset, frameLength, frameNo 등의 속성 값을 가진다. streamID는 여러 개의 멀티미디어 객체가 동시에 서비스 될 경우 각 멀티미디어 스트림을 구분하기 위한 고유 아이디로서, FRAME HEADER HINT 노드(23)의 streamID와 동일한 값을 가진다. DTS와 CTS는 프레임의 디코딩 시간 정보와 재생 시간 정보를 각각 나타낸다. CodingType은 프레임 코딩시 프레임 참조 방식에 따라 각 프레임을 I 프레임/P 프레임/B 프레임으로 구분한다. 그리고 frameOffset은 데이터 저장부(101)에 저장되어 있는 멀티미디어 데이터의 프레임별 위치 정보를 나타내고, frameLegnth는 해당 프레임의 크기를 나타낸다. 그리고, frameNo는 해당 프레임의 번호를 나타낸다.
MEDIA FRAME HINT 노드(26)의 이러한 속성 값은 데이터 저장부(101)에 저장되어 있는 멀티미디어 데이터(10)에 대한 직접 접근을 가능케 한다. 이와 같은 메타 데이터의 자료 구조를 이용하게 되면, 복수 개의 멀티미디어 스트림을 동시에 서비스 할 경우에도 적응적인 멀티미디어 스트리밍이 가능하게 된다.
도 5는 네트워크의 대역폭 변화에 맞게 전송 비트율을 조절하여 비디오 스트림과 오디오 스트림을 동시에 스트리밍하기 위한, 본 발명의 일 실시예에 따른 메타 데이터의 구조를 보여주는 도면이다.
도 5를 참조하면, 단위 세그먼트에 대한 각각의 QoS 레벨에 해당되는 MEDIA SEGMENT HINT 노드들(2531, 2532, …)은 비디오와 오디오 스트림의 프레임 정보를 함께 가지고 있으며, MEDIA FRAME HINT 노드(2631, …, 263n)의 streamID 속성 값을 이용하여 각 멀티미디어 데이터의 스트림을 구분하여 접근한다. 예를 들어, streamID 0이 비디오 데이터 스트림으로 정의되고, streamID 1이 오디오 데이터 스트림으로 정의된 경우, MEDIA FRAME HINT 노드(26)의 streamID 속성 값이 streamID 0을 나타내는가, 또는 streamID 1을 나타내는가에 따라서 해당 멀티미디어 데이터에 접근하게 된다. 이와 같이, 복수 개의 스트림을 동시에 서비스 할 경우, 메타 데이터에 서비스 될 멀티미디어 프레임을 함께 정의해 주게 되면, 대역폭에 맞게 전송률도 조절할 수 있고 멀티미디어 간 동기화 문제도 해결 할 수 있게 된다.
도 6은 서버(100)에서 전송된 멀티미디어 패킷을 처리하는 본 발명의 바람직한 실시예에 따른 멀티미디어 스트리밍 클라이언트(300)의 블록도이다. 도 6을 참조하면, 본 발명에 따른 멀티미디어 스트리밍 클라이언트(300)는, 패킷 수신부(310), 버퍼(320), 멀티미디어 디코더(330), 대역폭 측정부(340) 및 메시지 전송부(350)를 포함한다.
패킷 수신부(310)는 서버(100)로부터 멀티미디어 스트림을 받아들이고, 버퍼(320)는 수신된 멀티미디어 스트림 데이터를 저장한다. 멀티미디어 디코더(330)는 버퍼(320)에 저장된 데이터를 재생하고, 대역폭 측정부(340)는 패킷 수신부(310)에서 멀티미디어 패킷을 수신한 시간과 패킷의 크기 정보를 이용하여 네트워크 대역폭을 측정한다.
서버(100)는 데이터 전송시 일정 시간 간격으로 버퍼(170)에 있는 모든 패킷을 패킷 그룹 단위로 전송하는데, 패킷 전송시 패킷 번호도 함께 전송한다. 패킷 수신부(310)는 서버(100)로부터 전송된 패킷 번호를 이용하여 패킷 그룹의 첫 번째 패킷과 마지막 패킷을 구분한다. 첫 번째 패킷을 받은 시간을 t1, 마지막 패킷을 받은 시간을 t2라 정의하고, 패킷 그룹의 데이터 크기를 Sp라 정의하면, 네트워크의 대역폭은 [수학식 1]에 의해 구해질 수 있다.
이 때, 시간의 단위는 ms(millisecond), 데이터 크기 단위는 바이트(byte), 대역폭의 측정 단위는 bps(bits per second)가 각각 사용된다. 그리고, 측정된 대역폭은 대역폭의 변화가 있을 때마다 메시지 전송부(350)에서 서버(100)로 주기적으로 피드백 된다.
도 7은 도 1 및 도 6에 도시된 서버(100) 및 클라이언트(300) 사이에서 수행되는 멀티미디어 스트리밍 동작을 설명하기 위한 도면이다. 도 7을 참조하면, 본 발명에 따른 적응적 멀티미디어 스트리밍 방법은, 메타 데이터를 이용하여 데이터 전송시 네트워크의 대역폭에 맞게 서버(100)와 클라이언트(300) 사이의 데이터 전송률을 조절한다. 이를 위해 클라이언트(300)는 먼저 서버(100)에게 서비스 요청과 세션 연결 요청 메시지를 전송한다(참조번호 ⑴ 참조). 서버(100)는 클라이언트(300)로부터의 서비스 요청을 확인하고(참조번호 ⑵ 참조), 서비스 확인 메시지와 더불어 더미(dummy) 패킷 쌍을 클라이언트(300)에게 전송한다(참조번호 ⑶ 참조).
클라이언트(300)는 서버(100)로부터 입력되는 패킷 쌍에 응답해서 초기 대역폭을 측정한다(참조번호 ⑷ 참조). 서버(100)로부터 전송되는 두 패킷의 크기는 서버(100)의 패킷 생성부(180)에서 멀티미디어 데이터를 패킷화할 때 패킷을 자르는 단위 크기와 동일하게 설정되고, 패킷의 전송 간격 또한 멀티미디어 데이터의 전송 간격과 동일하게 설정된다. 서버(100)로부터 더미 패킷 쌍을 받아들인 클라이언트(300)는 [수학식 1]을 이용하여 초기 대역폭 값을 결정하고, 이를 서버(100)에게 전송한다(참조번호 ⑸ 참조).
클라이언트(300)에서 초기 대역폭을 측정하여 전송하게 되면, 서버(100)는 메타 데이터를 분석(parsing)하여 디스크립터 형태로 저장하고, 초기 대역폭과 디스크립터 정보를 비교하여 적절한 QoS 레벨을 정하여 멀티미디어 스트리밍 서비스를 시작하게 된다(참조번호 ⑹ 참조). 클라이언트(300)는 서버(100)로부터 전송 받은 패킷 정보를 이용하여 주기적으로 네트워크 대역폭을 측정하고(참조번호 ⑺ 참조), 측정된 대역폭 값을 서버(100)에게 전송한다(참조번호 ⑻ 참조). 서버(100)는 클라이언트(300)로부터 전송된 대역폭 값에 따라 소정의 멀티미디어 스트림을 추출하고(참조번호 ⑼ 참조), 추출된 멀티미디어 스트림을 클라이언트에게 전송한다(참조번호 ⑽ 참조). 이 때, 멀티미디어 스트리밍 서버(100)와 클라이언트(300) 사이에서 수행되는 데이터 전송 과정은 다음과 같다.
앞에서 설명한 바와 같이, 버퍼(170)는 그것의 용도에 따라서 패킷을 저장하기 위한 패킷 저장 버퍼와, 패킷을 전송하기 위한 패킷 전송 버퍼로 구분된다. QoS 처리부(130)는 패킷 전송부(190)가 패킷 전송 버퍼에 저장된 패킷을 전송하는 동안 QoS 레벨에 해당하는 프레임들을 패킷 저장 버퍼에 저장한다. 이 때, 수행되는 패킷 전송은 일정한 시간 간격으로 이루어진다. 패킷을 전송하고 소정의 시간이 경과한 후 다음 패킷을 전송할 시간이 되면, 패킷 전송부(190)는 이전의 패킷 저장 버퍼를 현재 패킷을 전송하기 위한 패킷 전송 버퍼로 사용하고, 전송 후 비어 있는 이전의 패킷 전송 버퍼를 패킷을 저장하기 위한 패킷 저장 버퍼로 사용한다. 이와 같은 버퍼(170)의 반복적인(recursive) 운용에 따르면, 네트워크 상태의 변화를 최소화하면서도 연속적인 스트리밍을 수행할 수 있다.
패킷 전송부(190)는 일정한 시간 간격마다 패킷 전송 버퍼에 저장된 패킷들을 모두 전송하는데, 이 때 전송되는 패킷들을 패킷 그룹이라 정의한다. 패킷 그룹 단위의 패킷들은 전송 시 패킷의 순서를 나타내는 패킷 번호를 가진다. 클라이언트(300)는 이 같은 패킷 번호에 의해서 패킷의 순서와 패킷 그룹의 시작과 끝을 결정하며, 패킷 그룹 단위로 대역폭을 측정한다. 클라이언트에서 대역폭을 측정하는 과정은 다음과 같다.
도 8은 도 6에 도시된 클라이언트의 패킷 수신부(310)에서 수행되는 네트워크 대역폭 측정 방법을 보여주는 흐름도이다.
도 8을 참조하면, 패킷 수신부(310)는 수신한 패킷의 전체 크기를 나타내는 누적 패킷 크기 값을 0으로 초기화한 후(3110 단계), 패킷을 수신한다(3120 단계). 패킷 수신부(310)에서는 패킷이 수신되면 패킷에서 헤더와 데이터를 분리하고, 헤더로부터 패킷 번호를 알아낸다. 그리고, 패킷 번호를 이용하여 수신된 패킷이 첫 번째 패킷인지 여부를 판별한다(3130 단계).
3130 단계에의 판별 결과, 수신된 패킷이 첫 번째 패킷이면 첫 번째 수신 패킷의 수신 시간을 TS1로 설정하고(3140 단계), 3120 단계로 되돌아가서 패킷을 계속 수신한다. 이어서, 수신된 패킷이 첫 번째 패킷인지 여부를 판별하고(3130 단계), 수신된 패킷이 첫 번째 패킷이 아니면, 상기 패킷이 마지막 패킷인지 여부를 판별한다(3150 단계).
3150 단계에서의 판별 결과, 수신된 패킷이 마지막 패킷이 아니면 기존의 누적 패킷 크기 값에 현재 패킷의 크기 값을 누적해서 더해주고, 3120 단계로 되돌아가서 패킷을 계속 수신한다. 이어서, 수신된 패킷이 첫 번째 패킷인지 여부를 판별하고(3130 단계), 수신된 패킷이 첫 번째 패킷이 아니면, 상기 패킷이 마지막 패킷인지 여부를 다시 판별한다(3150 단계).
3150 단계에서의 판별 결과, 수신된 패킷이 마지막 패킷이면 마지막 수신 패킷의 수신 시간을 TS2로 설정하고(3170 단계), 첫 번째 패킷의 수신 시간 TS1과, 마지막 패킷의 수신 시간 TS2, 및 누적 패킷 크기 값을 [수학식 1]에 대입해서, 즉 을 계산해서 네트워크의 대역폭을 측정한다(3180 단계).
도 9는 도 1에 도시된 서버(100)에서 수행되는 멀티미디어 스트리밍 서비스 과정을 보여주는 흐름도이다. 도 9를 참조하면, 먼저 서버(100)는 클라이언트(300)로부터 네트워크의 대역폭을 수신하고(1100 단계), 메타 데이터에서 만들어진 디스크립터로부터 현재의 타임 세그먼트를 선택한다(1200 단계). 그리고, 선택된 세그먼트에 대해 디스크립터에 정의되어 있는 목표 비트율과 대역폭을 비교하여 서비스 가능한 QoS 레벨을 선택한다(1400 단계). QoS 레벨의 수는 메타 데이터를 정의할 때 결정하고, 각 레벨의 목표 비트율은 멀티미디어 데이터의 평균 비트율을 기준으로 하여 결정한다. 메타 데이터에는 각 레벨마다 해당 프레임들의 정보가 포함되므로, QoS 레벨이 결정되면 그 레벨에 해당하는 프레임들만 추출하여(1500 단계) 버퍼에 저장한다(1700 단계). 그리고, 패킷 전송부(190)를 통해 버퍼(170)에 저장된 데이터를 일정 시간마다 클라이언트(300)에게 전송한다.
도 10은 네트워크의 대역폭 변화에 맞게 전송 비트율을 조절하여 멀티미디어 데이터에 대한 스트리밍 서비스를 적응적으로 제공하는 일 예를 보여주는 도면이다.
도 10을 참조하면, 예를 들어 클라이언트(300)에 의해 검출된 현재 네트워크의 대역폭이 400kbps일 경우, 서버(100)는 메타 데이터로부터 적절한 QoS 레벨을 선택하게 된다. 도 10에서 알 수 있는 바와 같이, 네트워크의 대역폭이 400kbps인 경우 QoS 레벨은 3 단계로 구성되며, 이 때 각각의 MEDIA SEGMENT HINT 노드(2541-2543)들은 QoS 레벨을 나타내게 된다. 예를 들어, MEDIA SEGMENT HINT 노드(2541-2543)의 속성 중 하나인 targetBitarate 값이 레벨 1의 경우 192kbps로 설정되고, 레벨 2의 경우 356 kbps로 설정되고, 레벨 3의 경우 689 kbps로 설정된다면, 현재 대역폭(즉, 400 kbps)과 가장 근접한 목표 비트율 값을 가진 레벨 2가 서비스 레벨로 선택된다.
MEDIA SEGMENT HINT 노드(2541-2543)는 해당 노드의 하위에 MEDIA FRAME HINT 노드들(2641, 2642, …, 264m)을 가지며, 각각의 MEDIA FRAME HINT 노드(2641, 2642, …, 264m)에는 해당 목표 비트율을 지원할 수 있는 프레임들의 정보가 저장된다. 이 경우, 네트워크의 대역폭은 400kbps로 고정되지 않고 달라질 수 있는데, 네트워크의 대역폭이 달라지게 되면, 그에 따라 선택되는 QoS 레벨 또한 달라지게 된다. 따라서, 서버(100)가 현재 네트워크의 대역폭에 대응되는 QoS 레벨(예를 들면, QoS 레벨 2)에 해당하는 프레임들을 선택해서 전송하게 되면, 데이터 전송률이 현재 네트워크의 대역폭에 맞게 조절되므로, 적응적 스트리밍이 가능하게 된다.
도 11은 QoS 레벨을 3으로 둔 경우, 본 발명에 따른 적응적 스트리밍 방법에 의한 멀티미디어 스트림의 비트율 변화를 보여주는 도면이다. 도 11에 도시된 그래프는, 352×288 크기의 CIF(Common Intermediate Format) 사이즈, 30 fps의 프레임율(frame rate), 및 658 kbps의 평균 비트율을 갖는 시퀀스 데이터를 이용한 적응적 스트리밍 결과이다. 이는 QoS 레벨을 세 개로 구분 할 때, 시간의 흐름에 따른 네트워크 대역폭(net_bw)과 변형 전 비트율(org_bitrate), 본 발명에 의해 변형된 데이터의 비트율(adt_bitrate)의 변화를 각각 나타낸다.
도 11을 참조하면, 네트워크 대역폭(net_bw)은 A 구간에서 점차 감소하고, B 구간에서는 최저가 되며, C 구간에서 다시 회복하는 형태로 변화한다. 이 때, A 구간에서 변형 전의 원래 데이터의 비트율(org_bitrate)은 네트워크 대역폭(net_bw) 보다 작으므로, QoS 레벨에 의한 비트율 변형은 발생하지 않는다. 그리고, C 구간에서도 마찬가지로 원래 데이터의 비트율(org_bitrate)이 네트워크 대역폭(net_bw) 보다 작으므로, QoS 레벨에 의한 비트율 변형은 발생하지 않는다. 그러나, B 구간에서는 네트워크 대역폭(net_bw) 보다 전송되는 데이터의 비트율(org_bitrate)이 크므로, 이 상태가 오래 지속 될 경우 네트워크 혼잡(Network Congestion)이 발생하게 되고, 전송 중 패킷의 손실이 발생하게 된다. 따라서, 본 발명에서는 B 구간에 대해서 QoS 레벨에 따라 네트워크의 대역폭(net_bw)에 맞게 비트율을 조절하여, 네트워크 전송시 발생될 수 있는 패킷 손실을 방지한다.
도 12는 도 11과 같이 QoS 레벨을 3으로 둔 경우에 대한 PSNR(Peak Signal to Noise Ratio) 값의 변화를 보여주는 도면이다.
PSNR은 아래의 [수학식 2]와 [수학식 3]을 이용하여 계산한다.
[수학식 2]는 원래 영상에 대한 복호화 된 영상의 RMSE(Root Mean Square Error)를 계산하는 식이다. 여기서, f(i,j)는 원래 영상의 픽셀 값을 의미하고, 는 복호화 된 영상의 픽셀 값을 의미한다. 그리고, M 및 N은 원래 영상의 픽셀 개수 및 복호화 된 영상의 픽셀 개수를 각각 의미한다.
[수학식 2]에 의해 원래 영상에 대한 복호화 된 영상의 RMSE가 구해지고 나면, 아래와 같이 PSNR 값이 계산된다.
도 12의 그래프에서 PSNR 값이 극심하게 떨어지는 부분은, 비트율 변환을 위해 프레임 손실(frame drop)이 발생되는 부분을 나타내며, 이 때의 평균 PSNR은 34.87dB 값을 가진다.
도 13은 QoS 레벨을 5로 둔 경우, 본 발명에 따른 적응적 스트리밍 방법에 의한 멀티미디어 스트림의 비트율 변화를 보여주는 도면이고, 도 14는 도 13과 같이 QoS 레벨을 5로 둔 경우에 대한 PSNR 값의 변화를 보여주는 도면이다. 도 13 및 도 14에 도시된 그래프는 도 11 및 도 12와 동일한 조건 하에서 구해진 실험 결과들이다.
도 13을 참조하면, QoS 레벨을 5로 둔 경우의 변형된 데이터의 비트율(adt_bitrate)은, QoS 레벨을 3으로 둔 도 11의 경우에 비해 네트워크 대역폭(net_bw) 변화에 좀 더 근접하여 서비스된다. 그러므로, 프레임 손실율과 평균 비트율에 있어서, QoS 레벨을 3으로 둔 경우보다 좀 더 향상된 결과를 얻게 된다.
이어서 도 14를 참조하면, 도 14의 그래프는 도 12의 그래프에 비해 PSNR 값이 극심하게 떨어지는 부분이 줄어듦을 알 수 있다. 이는, 프레임 손실이 발생되는 부분이 줄어듦을 의미한다. 도 14와 같이 QoS 레벨을 5로 둔 경우의 평균 PSNR은 35.57dB 값을 가진다.
도 15는 QoS 레벨을 7로 둔 경우, 본 발명에 따른 적응적 스트리밍 방법에 의한 멀티미디어 스트림의 비트율 변화를 보여주는 도면이고, 도 16은 도 15와 같이 QoS 레벨을 7로 둔 경우에 대한 PSNR 값의 변화를 보여주는 도면이다. 도 15 및 도 16에 도시된 그래프는 도 11 및 도 12와 동일한 조건 하에서 구해진 실험 결과들이다.
도 15를 참조하면, QoS 레벨을 7로 둔 경우의 변형된 데이터의 비트율(adt_bitrate)은, QoS 레벨을 3 또는 5로 둔 경우에 비해 네트워크 대역폭(net_bw) 변화에 더욱 근접하여 서비스된다. 그러므로, 프레임 손실율과 평균 비트율에 있어서, QoS 레벨을 3 또는 5로 둔 경우보다 좀 더 향상된 결과를 얻게 된다.
이어서 도 16을 참조하면, 도 16의 그래프는 도 12 및 도 14의 그래프에 비해 PSNR 값이 극심하게 떨어지는 부분이 현저히 줄어듦을 알 수 있다. 이는, 프레임 손실이 발생되는 부분이 현저하게 줄어듦을 의미한다. 도 16과 같이 QoS 레벨을 7로 둔 경우의 평균 PSNR은 35.89dB 값을 가진다.
도 11 내지 도 16에서 얻어진 결과들을 표로 정리하면 다음과 같다.
QoS 레벨 개수 프레임 손실율(%) 평균비트율(bps) 평균 PSNR(dB)
3 19.3 583.596 34.87
5 12.7 608.964 35.57
7 9.6 621.112 35.89
[표 1] 및 도 11 내지 도 16에서 알 수 있는 바와 같이, 본 발명은 QoS 레벨 개수가 증가할수록(즉, QoS 레벨이 세분화 될 수록) 네트워크 변화에 좀 더 근접하여 서비스할 수 있으며, QoS 레벨 개수가 증가할수록 프레임 손실율이 줄어들고, 평균 비트율과 평균 PSNR이 증가하게 된다. 따라서, QoS 레벨 개수가 증가할수록 보다 섬세한 전송률 제어가 가능해 진다.
이와 같은 본 발명에 따른 적응적 스트리밍 장치 및 방법은, 네트워크의 상태와 서비스를 받는 터미널의 종류에 상관없이 최적의 멀티미디어 스트리밍 서비스가 가능하다. 그리고, 멀티미디어 데이터와 함께 메타 데이터만 기술해 주기만 하면, 서비스하는 컨텐츠의 포맷에 관계없이 적용이 가능하고, 기존의 방법에 비해 스트리밍시 서버의 부담이 줄어들게 된다. 또한, 본 발명은 유선 통신망은 물론, 무선 통신망에서의 데이터 스트리밍에도 적용 가능하다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드로 저장되고 실행될 수 있다.
이상에 설명한 바와 같이, 본 발명에 의한 멀티미디어 스트리밍 장치 및 방법에 의하면, 메타 데이터를 이용하여 네트워크의 대역폭에 맞게 전송 데이터의 비트율을 조절함으로써, 서버에 부담을 주지 않으면서 네트워크 대역폭 변화에 따라 적응적으로 멀티미디어 스트리밍 서비스를 제공할 수 있다.
도 1은 가변적인 네트워크 환경에서 적응적 멀티미디어 스트리밍 서비스를 제공하는, 본 발명의 바람직한 실시예에 따른 멀티미디어 스트리밍 서버의 블록도이다.
도 2는 본 발명의 바람직한 실시예에 따른 메타 데이터의 구조를 보여주는 도면이다.
도 3은 본 발명의 일 실시예에 따른 독립형 메타 데이터의 구조를 나타내는 도면이다.
도 4는 본 발명의 일 실시예에 따른 의존형 메타 데이터의 구조를 나타내는 도면이다.
도 5는 네트워크의 대역폭 변화에 맞게 전송 비트율을 조절하여 비디오 스트림과 오디오 스트림을 동시에 스트리밍하기 위한, 본 발명의 일 실시예에 따른 메타 데이터의 구조를 보여주는 도면이다.
도 6은 서버에서 전송된 멀티미디어 패킷을 처리하는 본 발명의 바람직한 실시예에 따른 멀티미디어 스트리밍 클라이언트의 블록도이다.
도 7은 도 1 및 도 6에 도시된 서버 및 클라이언트 사이에서 수행되는 멀티미디어 스트리밍 동작을 개략적으로 보여주는 도면이다.
도 8은 도 6에 도시된 클라이언트에서 수행되는 네트워크 대역폭 측정 방법을 보여주는 흐름도이다.
도 9는 도 1에 도시된 서버에서 수행되는 멀티미디어 스트리밍 서비스 과정을 보여주는 흐름도이다.
도 10은 네트워크의 대역폭 변화에 맞게 전송 비트율을 조절하여 멀티미디어 데이터에 대한 스트리밍 서비스를 적응적으로 제공하는 일 예를 보여주는 도면이다.
도 11은 QoS 레벨을 3으로 둔 경우, 본 발명에 따른 적응적 스트리밍 방법에 의한 멀티미디어 스트림의 비트율 변화를 보여주는 도면이다.
도 12는 도 11과 같이 QoS 레벨을 3으로 둔 경우에 대한 PSNR(Peak Signal to Noise Ratio) 값의 변화를 보여주는 도면이다.
도 13은 QoS 레벨을 5로 둔 경우, 본 발명에 따른 적응적 스트리밍 방법에 의한 멀티미디어 스트림의 비트율 변화를 보여주는 도면이다.
도 14는 도 13과 같이 QoS 레벨을 5로 둔 경우에 대한 PSNR 값의 변화를 보여주는 도면이다.
도 15는 QoS 레벨을 7로 둔 경우, 본 발명에 따른 적응적 스트리밍 방법에 의한 멀티미디어 스트림의 비트율 변화를 보여주는 도면이다.
도 16은 도 15와 같이 QoS 레벨을 7로 둔 경우에 대한 PSNR 값의 변화를 보여주는 도면이다.
< 도면의 주요 부분에 대한 부호의 설명 >
1 : 네트워크 10 : 멀티미디어 데이터
20 : 메타 데이터 100 : 멀티미디어 스트리밍 서버
300 : 멀티미디어 스트리밍 클라이언트

Claims (55)

  1. 삭제
  2. 서비스하고자 하는 멀티미디어 데이터에 대응되는 메타 데이터의 분석 결과와 외부로부터 입력된 네트워크 대역폭 정보에 응답해서, 소정의 서비스 품질 레벨에 해당되는 멀티미디어 데이터를 스트리밍하는 멀티미디어 스트리밍 서버; 및
    멀티미디어 데이터를 수신한 시간과 상기 멀티미디어 데이터의 크기 정보를 이용하여 상기 서버가 연결된 네트워크의 대역폭을 측정하고, 측정된 상기 대역폭 정보를 상기 서버에게 전송하는 멀티미디어 스트리밍 클라이언트를 포함하며,
    상기 멀티미디어 스트리밍 서버는
    서비스하고자 하는 멀티미디어 데이터와, 상기 멀티미디어 데이터와 관련된 메타 데이터를 저장하는 데이터 저장부;
    상기 메타 데이터를 분석하고, 분석 결과를 디스크립터 형태로 출력하는 메타데이터 분석부;
    상기 클라이언트로부터 네트워크 대역폭 정보를 받아들이는 메시지 수신부;
    상기 디스크립터 정보와 상기 네트워크 대역폭 정보에 응답해서 서비스 가능한 서비스 품질 레벨을 선택하고, 선택된 상기 서비스 품질 레벨에 해당되는 멀티미디어 데이터를 상기 데이터 저장부로부터 추출하는 서비스 품질(QoS) 처리부;
    상기 추출된 데이터를 저장하는 버퍼;
    상기 버퍼에 저장된 데이터를 패킷화 하는 패킷 생성부; 및
    상기 버퍼에 저장된 데이터를 일정한 시간 간격으로 상기 클라이언트에게 전송하는 패킷 전송부를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  3. 제 2 항에 있어서, 상기 서비스 품질 처리부는,
    상기 디스크립터에 정의되어 있는 서비스 품질 레벨별 목표 비트율과 상기 대역폭을 비교하여 소정의 서비스 품질 레벨을 선택하는 서비스 레벨 선택부; 및
    상기 데이터 저장부에 저장되어 있는 상기 멀티미디어 데이터 중 상기 서비스 품질 레벨에 해당되는 프레임들을 추출하여 상기 버퍼에 저장하는 프레임 선택부를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  4. 제 2 항에 있어서, 상기 버퍼는,
    상기 패킷을 저장하기 위한 패킷 저장 버퍼; 및
    상기 패킷을 전송하기 위한 패킷 전송 버퍼를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  5. 제 2 항에 있어서,
    상기 멀티미디어 데이터는, 오디오 데이터, 동영상 데이터, 정지 영상 데이터, 텍스트 데이터, 및 그래픽 데이터 중 어느 하나의 형태를 가지는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  6. 제 2 항에 있어서,
    상기 멀티미디어 데이터는, 공간상 스케일러블 기능, 품질 스케일러블 기능, 시간상 스케일러블 기능, 및 FGS(fine grain scalable) 기능 중 어느 하나를 갖는 비트 스트림으로 구성되는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  7. 제 2 항에 있어서,
    상기 메타 데이터는 XML(eXtensible Markup Language)을 기반으로 하여 정의되는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  8. 제 2 항에 있어서,
    상기 메타 데이터는 상기 멀티미디어 데이터 및 스트리밍 관련 정보를 갖는 트리(tree) 형태의 계층 구조를 가지는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  9. 제 8 항에 있어서, 상기 메타 데이터는
    상기 메타 데이터의 컨트롤 타입과 노드의 계층 구조 타입을 명시해주는 스트리밍 힌트(STREAMING HINT) 노드;
    상기 스트리밍 힌트 노드 하위에 연결되어, 상기 멀티미디어 데이터의 헤더 정보를 갖는 헤더 그룹 힌트(HEADER GROUP HINT) 노드;
    상기 스트리밍 힌트 노드 하위에 연결되어, 상기 멀티미디어를 일정시간 간격의 세그먼트로 나눌 때 각 세그먼트의 정보를 갖는 적어도 하나 이상의 세그먼트 그룹 힌트(SEGMENT GROUP HINT) 노드;
    상기 헤더 그룹 힌트 노드 하위에 연결되어, 상기 노드 각각의 고유 정보를 나타내는 속성 값을 갖는 적어도 하나 이상의 프레임 헤더 힌트(FRAME HEADER HINT) 노드;
    상기 세그먼트 그룹 힌트 노드 하위에 연결되어, 상기 서비스 품질 레벨 각각에 대한 속성 정보를 갖는 적어도 하나 이상의 미디어 세그먼트 힌트(MEDIA SEGMENT HINT) 노드; 및
    상기 미디어 세그먼트 힌트 노드 하위에 연결되어, 실제 전송될 멀티미디어 프레임 정보를 갖는 적어도 하나 이상의 미디어 프레임 힌트(MEDIA FRAME HINT) 노드를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  10. 제 9 항에 있어서, 상기 스트리밍 힌트 노드는,
    상기 네트워크 대역폭의 변화에 따라 전송 비트율을 조절하기 위한 타겟 비트율 조절자;
    서비스할 멀티미디어 데이터의 서비스 품질을 조절하기 위한 타겟 품질 제어 조절자;
    상기 클라이언트의 리소스 복잡도에 따라서 차별화된 서비스를 지원하기 위한 타겟 복잡도 조절자;
    상기 멀티미디어 데이터의 압축 포맷에 따라 차별화된 서비스를 지원하기 위한 타겟 프로파일 조절자;
    상기 클라이언트에서의 재생 속도 조절 요청에 따라 서비스 속도를 조절하기 위한 타겟 속도 조절자;
    상기 클라이언트에서의 재생 방향 조절 요청에 따라 서비스 방향을 조절하기 위한 타겟 방향 조절자; 및
    상기 클라이언트의 단말기 종류에 따라 차별화된 서비스들을 지원하기 위한 타겟 디바이스 조절자를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  11. 제 9 항에 있어서, 상기 헤더 그룹 힌트 노드는
    복수 개의 멀티미디어 객체가 동시에 서비스 될 경우, 각각의 멀티미디어 스트림을 구별하기 위한 스트림 식별자;
    상기 멀티미디어 데이터의 종류를 구분하기 위한 스트림 타입 식별자;
    상기 멀티미디어 데이터에 대한 스케일러블 기능의 종류를 구분하기 위한 스케일러블 기능 식별자;
    상기 데이터 저장부에 저장되어 있는 상기 멀티미디어 데이터의 위치 정보를 나타내는 소오스 위치 식별자;
    상기 멀티미디어 데이터의 프레임율을 나타내는 프레임율 식별자; 및
    상기 멀티미디어 데이터의 평균 비트율을 나타내는 평균 비트율 식별자를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  12. 제 9 항에 있어서,
    상기 헤더 그룹 힌트 노드는 서비스하는 멀티미디어 객체 수만큼 프레임 헤더 힌트 노드를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  13. 제 9 항에 있어서,
    상기 세그먼트 그룹 힌트 노드는 상기 서비스 품질 레벨의 개수만큼 상기 미디어 세그먼트 힌트 노드를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  14. 제 9 항에 있어서,
    상기 미디어 세그먼트 힌트 노드는 각각의 서비스 품질 레벨에서 서비스되는 프레임의 전체 개수만큼 미디어 프레임 힌트 노드를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  15. 제 9 항에 있어서, 상기 미디어 프레임 힌트 노드는
    복수 개의 멀티미디어 객체가 동시에 서비스 될 경우, 각각의 멀티미디어 스트림을 구별하기 위한 스트림 식별자;
    프레임의 디코딩 시간 정보와 재생 시간 정보를 각각 나타내는 디코딩/재생시간 식별자;
    프레임 코딩시 상기 프레임이 참조된 방식에 따라 각 프레임을 I 프레임/P 프레임/B 프레임으로 구분하는 코딩 타입 식별자;
    상기 데이터 저장부에 저장되어 있는 상기 멀티미디어 데이터의 프레임별 위치 정보를 나타내는 프레임 오프셋 식별자;
    해당 프레임의 크기를 나타내는 프레임 길이 식별자; 및
    해당 프레임의 번호를 나타내는 프레임 번호 식별자를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  16. 제 9 항에 있어서,
    상기 메타 데이터는 상기 미디어 세그먼트 힌트 노드의 속성에 따라 독립형 메타데이터와 의존형 메타데이터로 구분되는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  17. 제 16 항에 있어서,
    상기 독립형 메타 데이터의 각 노드들은 상위 노드에 대한 참조나 재사용 없이 각각의 서비스 품질 레벨에 해당되는 멀티미디어 데이터의 프레임 정보를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  18. 제 16 항에 있어서,
    상기 의존형 메타 데이터의 각 노드들은 서비스 품질 레벨별로 중복되는 정보는 해당 노드의 상위 노드에서 참조하고, 상기 노드들의 하위 노드에서는 추가 정보만 기술하는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  19. 제 2 항에 있어서,
    상기 서비스 품질 레벨의 개수가 증가하게 되면, 상기 멀티미디어 스트리밍 서버의 프레임 손실율은 점차 줄어들고, 평균 비트율과 평균 PSNR(Peak Signal to Noise Ratio) 값은 점차 증가하는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  20. 제 2 항에 있어서, 상기 멀티미디어 스트리밍 클라이언트는
    상기 서버로부터 상기 멀티미디어 데이터를 받아들이는 패킷 수신부;
    수신된 상기 멀티미디어 데이터를 저장하는 버퍼;
    상기 버퍼에 저장된 데이터를 재생하는 멀티미디어 디코더;
    상기 패킷 수신부에서 상기 멀티미디어 데이터를 수신한 시간과 상기 데이터의 크기 정보를 이용하여 네트워크 대역폭을 측정하는 대역폭 측정부; 및
    상기 네트워크 대역폭에 따라 상기 서버로부터 전송되는 상기 멀티미디어 데이터의 전송률이 조절될 수 있도록, 측정된 상기 네트워크 대역폭을 상기 서버에게 전송하는 메시지 전송부를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  21. 제 20 항에 있어서,
    상기 패킷 수신부는 수신된 상기 멀티미디어 데이터의 패킷 번호를 참조하여 각 패킷 그룹의 첫 번째 패킷과 마지막 패킷을 구분하는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  22. 제 21 항에 있어서,
    상기 네트워크 대역폭은, 상기 첫 번째 패킷이 수신된 시간이 t1, 상기 마지막 패킷이 수신된 시간이 t2, 그리고 상기 패킷 그룹 데이터의 크기가 Sp일 때,
    의 값을 가지는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  23. 제 20 항에 있어서,
    상기 대역폭 측정부는 상기 네트워크 대역폭의 변화가 있을 때마다 상기 네트워크 대역폭 정보를 상기 메시지 전송부를 통해 상기 서버에게 피드백 하는 것을 특징으로 하는 멀티미디어 스트리밍 장치.
  24. 서비스하고자 하는 멀티미디어 데이터와, 상기 멀티미디어 데이터와 관련된 메타 데이터를 저장하는 데이터 저장부;
    상기 메타 데이터를 분석하고, 분석 결과를 디스크립터 형태로 출력하는 메타데이터 분석부;
    네트워크 상에 연결된 클라이언트로부터 네트워크 대역폭 정보를 받아들이는 메시지 수신부;
    상기 디스크립터 정보와 상기 네트워크 대역폭 정보에 응답해서 서비스 가능한 서비스 품질 레벨을 선택하고, 선택된 상기 서비스 품질 레벨에 해당되는 멀티미디어 데이터를 상기 데이터 저장부로부터 추출하는 서비스 품질(QoS) 처리부;
    상기 추출된 데이터를 저장하는 버퍼;
    상기 버퍼에 저장된 데이터를 패킷화 하는 패킷 생성부; 및
    상기 버퍼에 저장된 데이터를 일정한 시간 간격으로 상기 클라이언트에게 전송하는 패킷 전송부를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  25. 제 24 항에 있어서, 상기 서비스 품질 처리부는,
    상기 디스크립터에 정의되어 있는 서비스 품질 레벨별 목표 비트율과 상기 대역폭을 비교하여 소정의 서비스 품질 레벨을 선택하는 서비스 레벨 선택부; 및
    상기 데이터 저장부에 저장되어 있는 상기 멀티미디어 데이터 중 상기 서비스 품질 레벨에 해당되는 프레임들을 추출하여 상기 버퍼에 저장하는 프레임 선택부를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  26. 제 24 항에 있어서, 상기 버퍼는,
    상기 패킷을 저장하기 위한 패킷 저장 버퍼; 및
    상기 패킷을 전송하기 위한 패킷 전송 버퍼를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  27. 제 24 항에 있어서,
    상기 멀티미디어 데이터는, 오디오 데이터, 동영상 데이터, 정지 영상 데이터, 텍스트 데이터, 및 그래픽 데이터 중 어느 하나의 형태를 가지는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  28. 제 24 항에 있어서,
    상기 멀티미디어 데이터는, 공간상 스케일러블 기능, 품질 스케일러블 기능, 시간상 스케일러블 기능, 및 FGS(fine grain scalable) 기능 중 어느 하나를 갖는 비트 스트림으로 구성되는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  29. 제 24 항에 있어서,
    상기 메타 데이터는 XML(eXtensible Markup Language)을 기반으로 하여 정의되는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  30. 제 24 항에 있어서,
    상기 메타 데이터는 상기 멀티미디어 데이터 및 스트리밍 관련 정보를 갖는 트리(tree) 형태의 계층 구조를 가지는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  31. 제 30 항에 있어서, 상기 메타 데이터는
    상기 메타 데이터의 컨트롤 타입과 노드의 계층 구조 타입을 명시해주는 스트리밍 힌트(STREAMING HINT) 노드;
    상기 스트리밍 힌트 노드 하위에 연결되어, 상기 멀티미디어 데이터의 헤더 정보를 갖는 헤더 그룹 힌트(HEADER GROUP HINT) 노드;
    상기 스트리밍 힌트 노드 하위에 연결되어, 상기 멀티미디어를 일정시간 간격의 세그먼트로 나눌 때 각 세그먼트의 정보를 갖는 적어도 하나 이상의 세그먼트 그룹 힌트(SEGMENT GROUP HINT) 노드;
    상기 헤더 그룹 힌트 노드 하위에 연결되어, 상기 노드 각각의 고유 정보를 나타내는 속성 값을 갖는 적어도 하나 이상의 프레임 헤더 힌트(FRAME HEADER HINT) 노드;
    상기 세그먼트 그룹 힌트 노드 하위에 연결되어, 상기 서비스 품질 레벨 각각에 대한 속성 정보를 갖는 적어도 하나 이상의 미디어 세그먼트 힌트(MEDIA SEGMENT HINT) 노드; 및
    상기 미디어 세그먼트 힌트 노드 하위에 연결되어, 실제 전송될 멀티미디어 프레임 정보를 갖는 적어도 하나 이상의 미디어 프레임 힌트(MEDIA FRAME HINT) 노드를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  32. 제 31 항에 있어서, 상기 스트리밍 힌트 노드는,
    상기 네트워크 대역폭의 변화에 따라 전송 비트율을 조절하기 위한 타겟 비트율 조절자;
    서비스할 멀티미디어 데이터의 서비스 품질을 조절하기 위한 타겟 품질 제어 조절자;
    상기 클라이언트의 리소스 복잡도에 따라서 차별화된 서비스를 지원하기 위한 타겟 복잡도 조절자;
    상기 멀티미디어 데이터의 압축 포맷에 따라 차별화된 서비스를 지원하기 위한 타겟 프로파일 조절자;
    상기 클라이언트에서의 재생 속도 조절 요청에 따라 서비스 속도를 조절하기 위한 타겟 속도 조절자;
    상기 클라이언트에서의 재생 방향 조절 요청에 따라 서비스 방향을 조절하기 위한 타겟 방향 조절자; 및
    상기 클라이언트의 단말기 종류에 따라 차별화된 서비스들을 지원하기 위한 타겟 디바이스 조절자를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  33. 제 31 항에 있어서, 상기 헤더 그룹 힌트 노드는
    복수 개의 멀티미디어 객체가 동시에 서비스 될 경우, 각각의 멀티미디어 스트림을 구별하기 위한 스트림 식별자;
    상기 멀티미디어 데이터의 종류를 구분하기 위한 스트림 타입 식별자;
    상기 멀티미디어 데이터에 대한 스케일러블 기능의 종류를 구분하기 위한 스케일러블 기능 식별자;
    상기 데이터 저장부에 저장되어 있는 상기 멀티미디어 데이터의 위치 정보를 나타내는 소오스 위치 식별자;
    상기 멀티미디어 데이터의 프레임율을 나타내는 프레임율 식별자; 및
    상기 멀티미디어 데이터의 평균 비트율을 나타내는 평균 비트율 식별자를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  34. 제 31 항에 있어서,
    상기 헤더 그룹 힌트 노드는 서비스하는 멀티미디어 객체 수만큼 프레임 헤더 힌트 노드를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  35. 제 31 항에 있어서,
    상기 세그먼트 그룹 힌트 노드는 상기 서비스 품질 레벨의 개수만큼 상기 미디어 세그먼트 힌트 노드를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  36. 제 31 항에 있어서,
    상기 미디어 세그먼트 힌트 노드는 각각의 서비스 품질 레벨에서 서비스되는 프레임의 전체 개수만큼 미디어 프레임 힌트 노드를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  37. 제 31 항에 있어서, 상기 미디어 프레임 힌트 노드는
    복수 개의 멀티미디어 객체가 동시에 서비스 될 경우, 각각의 멀티미디어 스트림을 구별하기 위한 스트림 식별자;
    프레임의 디코딩 시간 정보와 재생 시간 정보를 각각 나타내는 디코딩/재생시간 식별자;
    프레임 코딩시 상기 프레임이 참조된 방식에 따라 각 프레임을 I 프레임/P 프레임/B 프레임으로 구분하는 코딩 타입 식별자;
    상기 데이터 저장부에 저장되어 있는 상기 멀티미디어 데이터의 프레임별 위치 정보를 나타내는 프레임 오프셋 식별자;
    해당 프레임의 크기를 나타내는 프레임 길이 식별자; 및
    해당 프레임의 번호를 나타내는 프레임 번호 식별자를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  38. 제 31 항에 있어서,
    상기 메타 데이터는 상기 미디어 세그먼트 힌트 노드의 속성에 따라 독립형 메타데이터와 의존형 메타데이터로 구분되는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  39. 제 38 항에 있어서,
    상기 독립형 메타 데이터의 각 노드들은 상위 노드에 대한 참조나 재사용 없이 각각의 서비스 품질 레벨에 해당되는 멀티미디어 데이터의 프레임 정보를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  40. 제 38 항에 있어서,
    상기 의존형 메타 데이터의 각 노드들은 서비스 품질 레벨별로 중복되는 정보는 해당 노드의 상위 노드에서 참조하고, 상기 노드들의 하위 노드에서는 추가 정보만 기술하는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  41. 제 24 항에 있어서,
    상기 서비스 품질 레벨의 개수가 증가하게 되면, 상기 멀티미디어 스트리밍 서버의 프레임 손실율은 점차 줄어들고, 평균 비트율과 평균 PSNR(Peak Signal to Noise Ratio) 값은 점차 증가하는 것을 특징으로 하는 멀티미디어 스트리밍 서버.
  42. 네트워크 상에 연결된 서버로부터 멀티미디어 데이터를 받아들이는 패킷 수신부;
    수신된 상기 멀티미디어 데이터를 저장하는 버퍼;
    상기 버퍼에 저장된 데이터를 재생하는 멀티미디어 디코더;
    상기 패킷 수신부에서 상기 멀티미디어 데이터를 수신한 시간과 상기 데이터의 크기 정보를 이용하여 네트워크 대역폭을 측정하는 대역폭 측정부; 및
    상기 네트워크 대역폭에 따라 상기 서버로부터 전송되는 상기 멀티미디어 데이터의 전송률이 조절될 수 있도록, 측정된 상기 네트워크 대역폭을 상기 서버에게 전송하는 메시지 전송부를 포함하며,
    상기 대역폭 측정부는 상기 네트워크 대역폭의 변화가 있을 때마다 상기 네트워크 대역폭 정보를 상기 메시지 전송부를 통해 상기 서버에게 피드백 하는 것을 특징으로 하는 멀티미디어 스트리밍 클라이언트.
  43. 제 42 항에 있어서,
    상기 패킷 수신부는 수신된 상기 멀티미디어 데이터의 패킷 번호를 참조하여 각 패킷 그룹의 첫 번째 패킷과 마지막 패킷을 구분하는 것을 특징으로 하는 멀티미디어 스트리밍 클라이언트.
  44. 제 43 항에 있어서,
    상기 네트워크 대역폭은, 상기 첫 번째 패킷이 수신된 시간이 t1, 상기 마지막 패킷이 수신된 시간이 t2, 그리고 상기 패킷 그룹 데이터의 크기가 Sp일 때,
    의 값을 가지는 것을 특징으로 하는 멀티미디어 스트리밍 클라이언트.
  45. 삭제
  46. 네트워크를 통해 연결된 서버와 클라이언트간에 수행되는 멀티미디어 스트리밍 방법에 있어서:
    (a) 상기 클라이언트가 상기 서버에게 서비스 요청 메시지 및 세션 연결 요청 메시지를 전송하는 단계;
    (b) 상기 요청 메시지에 대한 서비스 확인 메시지 및 더미 패킷 쌍을 상기 클라이언트에게 전송하는 단계;
    (c) 상기 서버로부터 입력되는 상기 패킷 쌍에 응답해서 상기 네트워크의 초기 대역폭 값을 결정하고, 결정된 상기 초기 대역폭 값을 상기 서버에게 전송하는 단계;
    (d) 상기 클라이언트로부터 전송된 상기 초기 대역폭 정보와 메타 데이터의 분석결과 얻어진 디스크립터 정보를 비교하여 적절한 서비스 품질 레벨을 정하고, 상기 서비스 품질 레벨에 대응되는 전송률에 따라 멀티미디어 스트리밍 서비스를 시작하는 단계;
    (e) 상기 서버의 스트리밍 서비스를 통해 수신된 패킷 정보에 응답해서 상기 네트워크 대역폭을 주기적으로 측정하고, 측정된 상기 대역폭 값을 상기 서버에게 전송하는 단계; 및
    (f) 상기 클라이언트로부터 전송된 상기 네트워크 대역폭 값에 따라 소정의 멀티미디어 스트림을 추출하고, 추출된 상기 멀티미디어 스트림을 상기 클라이언트에게 전송하는 단계를 포함하며,
    상기 (e) 단계는
    (e-1) 누적 패킷 크기 값을 0으로 세팅하는 단계;
    (e-2) 상기 서버로부터 패킷을 수신하기 시작하는 단계;
    (e-3) 첫 번째 패킷이 수신된 시간을 T1로 설정하는 단계;
    (e-4) 상기 패킷이 입력된 후 마지막 패킷이 입력될 때까지 매 패킷이 입력될 때마다 상기 누적 패킷 크기 값에 해당 패킷의 크기 값을 누적해서 더하는 단계;
    (e-5) 마지막 패킷이 입력되면 상기 마지막 패킷이 수신된 시간을 T2로 설정하는 단계;
    (e-6) 을 계산하여 상기 네트워크 대역폭을 측정하는 단계; 및
    (e-7) 상기 측정된 네트워크 대역폭 정보를 상기 서버에게 피드백 하는 단계를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 방법.
  47. 삭제
  48. 네트워크를 통해 클라이언트와 연결된 서버의 스트리밍 방법에 있어서:
    (a) 상기 클라이언트로부터 상기 네트워크의 대역폭을 수신하는 단계;
    (b) 서비스하고자 하는 멀티미디어 데이터에 대응되는 메타 데이터의 분석 결과로 얻어진 디스크립터를 근거로 하여 현재의 타임 세그먼트를 선택하는 단계;
    (c) 선택된 상기 세그먼트에 대해 상기 디스크립터에 정의되어 있는 목표 비트율과 상기 네트워크 대역폭을 비교하여 서비스 가능한 서비스 품질 레벨을 선택하는 단계; 및
    (d) 선택된 상기 서비스 품질 레벨에 해당되는 프레임들을 추출하여 일정 시간마다 상기 클라이언트에게 전송하는 단계를 포함하는 것을 특징으로 하는 멀티미디어 스트리밍 방법.
  49. 제 46 항 또는 제 48 항에 있어서,
    상기 멀티미디어 데이터는, 오디오 데이터, 동영상 데이터, 정지 영상 데이터, 텍스트 데이터, 및 그래픽 데이터 중 어느 하나의 형태를 가지는 것을 특징으로 하는 멀티미디어 스트리밍 방법.
  50. 제 49 항에 있어서,
    상기 멀티미디어 데이터는, 공간상 스케일러블 기능, 품질 스케일러블 기능, 시간상 스케일러블 기능, 및 FGS(fine grain scalable) 기능 중 어느 하나를 갖는 비트 스트림으로 구성되는 것을 특징으로 하는 멀티미디어 스트리밍 방법.
  51. 제 46 항 또는 제 48 항에 있어서,
    상기 메타 데이터는 XML(eXtensible Markup Language)을 기반으로 하여 정의되는 것을 특징으로 하는 멀티미디어 스트리밍 방법.
  52. 제 51 항에 있어서,
    상기 메타 데이터는 상기 멀티미디어 데이터 및 스트리밍 관련 정보를 갖는 트리(tree) 형태의 계층 구조를 가지는 것을 특징으로 하는 멀티미디어 스트리밍 방법.
  53. 제 46 항 또는 제 48 항에 있어서,
    상기 서비스 품질 레벨의 개수가 증가하게 되면, 상기 서버의 프레임 손실율은 점차 줄어들고, 평균 비트율과 평균 PSNR(Peak Signal to Noise Ratio) 값은 점차 증가하는 것을 특징으로 하는 멀티미디어 스트리밍 방법.
  54. 네트워크를 통해 서버로부터 멀티미디어 데이터를 받아들이는 클라이언트의 네트워크 대역폭 측정 방법에 있어서:
    (a) 누적 패킷 크기 값을 0으로 세팅하는 단계;
    (b) 상기 서버로부터 패킷을 수신하기 시작하는 단계;
    (c) 첫 번째 패킷이 수신된 시간을 T1로 설정하는 단계;
    (d) 상기 패킷이 입력된 후 마지막 패킷이 입력될 때까지 매 패킷이 입력될 때마다 상기 누적 패킷 크기 값에 해당 패킷의 크기 값을 누적해서 더하는 단계;
    (e) 마지막 패킷이 입력되면 상기 마지막 패킷이 수신된 시간을 T2로 설정하는 단계;
    (f) 을 계산하여 상기 네트워크 대역폭을 측정하는 단계; 및
    (g) 상기 측정된 네트워크 대역폭 정보를 상기 서버에게 피드백 하는 단계를 포함하는 것을 특징으로 하는 네트워크 대역폭 측정 방법.
  55. 제 46 항 또는 제 54 항 중 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR10-2002-0056487A 2002-09-17 2002-09-17 멀티미디어 스트리밍 장치 및 방법 KR100486713B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR10-2002-0056487A KR100486713B1 (ko) 2002-09-17 2002-09-17 멀티미디어 스트리밍 장치 및 방법
US10/646,831 US20050076136A1 (en) 2002-09-17 2003-08-25 Apparatus and method for streaming multimedia data
JP2003306615A JP3957666B2 (ja) 2002-09-17 2003-08-29 マルチメディアストリーミング装置、マルチメディアストリーミングサーバ、マルチメディアストリーミングクライアント、マルチメディアストリーミング方法及びそのプログラムを記録した記録媒体
CNB031556116A CN100382499C (zh) 2002-09-17 2003-08-29 用于流式传输多媒体数据的装置和方法
DE2003144017 DE10344017B4 (de) 2002-09-17 2003-09-15 Server, Client, Vorrichtung und Verfahren zum Streamen von Multimediadaten und Netzwerkbandbreitenmessverfahren

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0056487A KR100486713B1 (ko) 2002-09-17 2002-09-17 멀티미디어 스트리밍 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20040025994A KR20040025994A (ko) 2004-03-27
KR100486713B1 true KR100486713B1 (ko) 2005-05-03

Family

ID=31944878

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0056487A KR100486713B1 (ko) 2002-09-17 2002-09-17 멀티미디어 스트리밍 장치 및 방법

Country Status (5)

Country Link
US (1) US20050076136A1 (ko)
JP (1) JP3957666B2 (ko)
KR (1) KR100486713B1 (ko)
CN (1) CN100382499C (ko)
DE (1) DE10344017B4 (ko)

Families Citing this family (211)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030097443A1 (en) * 2001-11-21 2003-05-22 Richard Gillett Systems and methods for delivering content over a network
EP3401794A1 (en) 2002-01-08 2018-11-14 Seven Networks, LLC Connection architecture for a mobile network
US8468126B2 (en) 2005-08-01 2013-06-18 Seven Networks, Inc. Publishing data in an information community
US7853563B2 (en) 2005-08-01 2010-12-14 Seven Networks, Inc. Universal data aggregation
US7917468B2 (en) 2005-08-01 2011-03-29 Seven Networks, Inc. Linking of personal information management data
KR100927313B1 (ko) * 2003-01-24 2009-11-18 주식회사 케이티 이더넷 서비스의 대역폭 제어 장치 및 그 방법
US7415528B2 (en) * 2003-12-27 2008-08-19 Electronics And Telecommunications Research Institute Apparatus and method for transmitting hierarchically multimedia data TS to prevent jitter of timing information and for recovering the multimedia data TS
EP1587275B1 (de) * 2004-04-13 2012-05-23 SMSC Europe GmbH Netzwerk mit flexiblem Multimedia Data Routing
US8219702B2 (en) * 2004-04-30 2012-07-10 Canon Kabushiki Kaisha Video delivery apparatus and method
US7818444B2 (en) 2004-04-30 2010-10-19 Move Networks, Inc. Apparatus, system, and method for multi-bitrate content streaming
US8868772B2 (en) 2004-04-30 2014-10-21 Echostar Technologies L.L.C. Apparatus, system, and method for adaptive-rate shifting of streaming content
US7889697B2 (en) * 2004-05-04 2011-02-15 Qualcomm Incorporated Method and apparatus for content delivery to a mobile device
KR100858849B1 (ko) * 2004-05-04 2008-09-17 퀄컴 인코포레이티드 모바일 디바이스로의 콘텐츠 전송 방법 및 장치
JP2005333478A (ja) * 2004-05-20 2005-12-02 Mitsumi Electric Co Ltd ストリーミングコンテンツ再生方法及びそれを用いたインターネット接続装置
FR2872317A1 (fr) * 2004-06-08 2005-12-30 Do Labs Sa Procede pour ameliorer la qualite d'utilisation d'un service relatif a au moins une donnee multimedia
DE102004029872B4 (de) * 2004-06-16 2011-05-05 Deutsche Telekom Ag Verfahren und Anordnung zur Verbesserung der Qualität bei der Übertragung codierter Audio-/Video-Signale
US7441271B2 (en) 2004-10-20 2008-10-21 Seven Networks Method and apparatus for intercepting events in a communication system
US8010082B2 (en) 2004-10-20 2011-08-30 Seven Networks, Inc. Flexible billing architecture
US7706781B2 (en) 2004-11-22 2010-04-27 Seven Networks International Oy Data security in a mobile e-mail service
FI117152B (fi) 2004-12-03 2006-06-30 Seven Networks Internat Oy Sähköpostiasetusten käyttöönotto matkaviestimelle
US8873669B1 (en) * 2004-12-20 2014-10-28 Apple Inc. Adaptable codec for selecting encoding scheme based on quality of experience
US7686209B2 (en) * 2005-02-28 2010-03-30 Federal Reserve Bank Of Dallas Cash letter print streams with audit data
CN100391142C (zh) * 2005-03-02 2008-05-28 华为技术有限公司 终端动态修改流媒体业务分组数据协议服务质量的方法
US7752633B1 (en) 2005-03-14 2010-07-06 Seven Networks, Inc. Cross-platform event engine
US7586936B2 (en) 2005-04-01 2009-09-08 International Business Machines Corporation Host Ethernet adapter for networking offload in server environment
US7697536B2 (en) * 2005-04-01 2010-04-13 International Business Machines Corporation Network communications for operating system partitions
US20060221953A1 (en) * 2005-04-01 2006-10-05 Claude Basso Method and apparatus for blind checksum and correction for network transmissions
US7903687B2 (en) 2005-04-01 2011-03-08 International Business Machines Corporation Method for scheduling, writing, and reading data inside the partitioned buffer of a switch, router or packet processing device
US7881332B2 (en) * 2005-04-01 2011-02-01 International Business Machines Corporation Configurable ports for a host ethernet adapter
US7577151B2 (en) * 2005-04-01 2009-08-18 International Business Machines Corporation Method and apparatus for providing a network connection table
US7706409B2 (en) 2005-04-01 2010-04-27 International Business Machines Corporation System and method for parsing, filtering, and computing the checksum in a host Ethernet adapter (HEA)
US7508771B2 (en) * 2005-04-01 2009-03-24 International Business Machines Corporation Method for reducing latency in a host ethernet adapter (HEA)
US7606166B2 (en) 2005-04-01 2009-10-20 International Business Machines Corporation System and method for computing a blind checksum in a host ethernet adapter (HEA)
US7492771B2 (en) 2005-04-01 2009-02-17 International Business Machines Corporation Method for performing a packet header lookup
US8589508B2 (en) * 2005-04-07 2013-11-19 Opanga Networks, Inc. System and method for flow control in an adaptive file delivery system
US7500010B2 (en) * 2005-04-07 2009-03-03 Jeffrey Paul Harrang Adaptive file delivery system and method
US20060235883A1 (en) 2005-04-18 2006-10-19 Krebs Mark S Multimedia system for mobile client platforms
US7796742B1 (en) 2005-04-21 2010-09-14 Seven Networks, Inc. Systems and methods for simplified provisioning
US8438633B1 (en) 2005-04-21 2013-05-07 Seven Networks, Inc. Flexible real-time inbox access
US8683066B2 (en) * 2007-08-06 2014-03-25 DISH Digital L.L.C. Apparatus, system, and method for multi-bitrate content streaming
US8370514B2 (en) 2005-04-28 2013-02-05 DISH Digital L.L.C. System and method of minimizing network bandwidth retrieved from an external network
KR100843073B1 (ko) 2005-06-10 2008-07-03 삼성전자주식회사 오류 정정 패킷을 이용한 전송률 제어 방법 및 이를 이용한통신 장치
WO2006136660A1 (en) 2005-06-21 2006-12-28 Seven Networks International Oy Maintaining an ip connection in a mobile network
KR100677462B1 (ko) * 2005-06-23 2007-02-02 엘지전자 주식회사 스트리밍서비스를 위한 휴대단말기의 대역폭산정시스템 및방법
US20070022215A1 (en) * 2005-07-19 2007-01-25 Singer David W Method and apparatus for media data transmission
KR101233150B1 (ko) * 2005-07-19 2013-02-15 엘지전자 주식회사 서비스 연결 설정 및 제어 방법
US8069166B2 (en) 2005-08-01 2011-11-29 Seven Networks, Inc. Managing user-to-user contact with inferred presence information
JP4661447B2 (ja) * 2005-08-16 2011-03-30 ソニー株式会社 送受信システムおよび方法、送信装置および方法、受信装置および方法、並びに、プログラム
KR100678957B1 (ko) * 2005-08-31 2007-02-06 삼성전자주식회사 네트워크 상에서 존재하는 네트워크 장치들간의 멀티미디어데이터를 공유하는 장치 및 그 방법
KR100703801B1 (ko) * 2005-10-21 2007-04-06 삼성전자주식회사 Av 태스크 계산 방법, av 태스크 계산을 위한 요약정보 제공 방법 및 이를 위한 장치
US7894815B2 (en) * 2005-10-21 2011-02-22 Electronics And Telecommunications Research Institute Device for providing hand-off quality of service of inter-access systems and method thereof
US8145757B2 (en) * 2005-11-30 2012-03-27 Lg Electronics Inc. Method for changing service quality of a content adaptively
TW200826584A (en) * 2005-12-21 2008-06-16 Koninkl Philips Electronics Nv A method and apparatus for sharing data content between a transmitter and a receiver
CN101009695A (zh) * 2006-01-26 2007-08-01 华为技术有限公司 一种媒体协商的方法和***
US8125486B2 (en) * 2006-02-23 2012-02-28 Los Alamos National Security, Llc Combining multi-layered bitmap files using network specific hardware
US7769395B2 (en) 2006-06-20 2010-08-03 Seven Networks, Inc. Location-based operations and messaging
KR100686395B1 (ko) * 2006-03-22 2007-02-22 주식회사 씨엑스피 패킷 필터링을 통한 네트워크 적응적 생방송 멀티미디어스트리밍 시스템 및 그 방법
JP5357747B2 (ja) * 2006-03-28 2013-12-04 オランジュ ビットストリームを記述するファイルを生成する方法、対応する装置及びコンピュータプログラムプロダクト
KR101322392B1 (ko) * 2006-06-16 2013-10-29 삼성전자주식회사 스케일러블 코덱의 부호화 및 복호화 방법 및 장치
US8050266B2 (en) * 2006-07-20 2011-11-01 Oracle America, Inc. Low impact network debugging
KR100925507B1 (ko) * 2006-12-04 2009-11-05 한국전자통신연구원 콘텐츠 전송 시스템 및 콘텐츠 전송 방법
KR101287841B1 (ko) * 2006-12-28 2013-07-18 엘지전자 주식회사 인터넷 방송 수신기에서의 방송 프로그램 수신방법
US9794310B2 (en) * 2007-01-11 2017-10-17 Samsung Electronics Co., Ltd. Meta data information providing server, client apparatus, method of providing meta data information, and method of providing content
US20080195748A1 (en) * 2007-02-09 2008-08-14 Melodeo Inc. Data delivery
US8566695B2 (en) * 2007-03-30 2013-10-22 Sandisk Technologies Inc. Controlling access to digital content
US20080240168A1 (en) * 2007-03-31 2008-10-02 Hoffman Jeffrey D Processing wireless and broadband signals using resource sharing
US8805425B2 (en) 2007-06-01 2014-08-12 Seven Networks, Inc. Integrated messaging
US8693494B2 (en) 2007-06-01 2014-04-08 Seven Networks, Inc. Polling
KR100908868B1 (ko) * 2007-09-28 2009-07-21 주식회사 넥스지 가상 인터페이스를 통해 연결된 서버와 클라이언트사이에서 각 회선별로 트래픽을 분배하여 데이터를전송하는 방법 및 시스템
US20090125636A1 (en) * 2007-11-13 2009-05-14 Qiong Li Payload allocation methods for scalable multimedia servers
EP2210191A1 (en) * 2007-11-15 2010-07-28 Sk Telecom Co., LTD System and method for producing importance rate-based rich media, and server applied to the same
KR100919589B1 (ko) * 2007-11-15 2009-10-01 에스케이 텔레콤주식회사 리치미디어 서버와 리치미디어 전송 시스템 및 리치미디어전송 방법
US8364181B2 (en) 2007-12-10 2013-01-29 Seven Networks, Inc. Electronic-mail filtering for mobile devices
US8793305B2 (en) 2007-12-13 2014-07-29 Seven Networks, Inc. Content delivery to a mobile device from a content service
US9002828B2 (en) 2007-12-13 2015-04-07 Seven Networks, Inc. Predictive content delivery
JP2009152952A (ja) * 2007-12-21 2009-07-09 Nec Corp 配信システム、配信方法及びプログラム
US9313245B2 (en) * 2007-12-24 2016-04-12 Qualcomm Incorporated Adaptive streaming for on demand wireless services
US8107921B2 (en) 2008-01-11 2012-01-31 Seven Networks, Inc. Mobile virtual network operator
US8862657B2 (en) 2008-01-25 2014-10-14 Seven Networks, Inc. Policy based content service
US20090193338A1 (en) 2008-01-28 2009-07-30 Trevor Fiatal Reducing network and battery consumption during content delivery and playback
US20110035442A1 (en) * 2008-04-10 2011-02-10 Telefonaktiebolaget Lm Ericsson (Publ) Adaption of Metadata Based on Network Conditions
US8325800B2 (en) 2008-05-07 2012-12-04 Microsoft Corporation Encoding streaming media as a high bit rate layer, a low bit rate layer, and one or more intermediate bit rate layers
US8379851B2 (en) 2008-05-12 2013-02-19 Microsoft Corporation Optimized client side rate control and indexed file layout for streaming media
US7949775B2 (en) 2008-05-30 2011-05-24 Microsoft Corporation Stream selection for enhanced media streaming
US8787947B2 (en) 2008-06-18 2014-07-22 Seven Networks, Inc. Application discovery on mobile devices
US8078158B2 (en) 2008-06-26 2011-12-13 Seven Networks, Inc. Provisioning applications for a mobile device
US8261312B2 (en) * 2008-06-27 2012-09-04 Cisco Technology, Inc. Linear hint video streaming
KR101065972B1 (ko) * 2008-08-26 2011-09-19 에스케이 텔레콤주식회사 미디어 스트리밍을 위한 전송 대역폭 측정 시스템 및 그 방법
US8265140B2 (en) * 2008-09-30 2012-09-11 Microsoft Corporation Fine-grained client-side control of scalable media delivery
MY164504A (en) * 2008-10-03 2017-12-29 Mimos Berhad Method to assign traffic priority or bandwidth for application at the end users-device
US8909759B2 (en) * 2008-10-10 2014-12-09 Seven Networks, Inc. Bandwidth measurement
KR101106366B1 (ko) * 2008-10-24 2012-01-18 에스케이플래닛 주식회사 모바일 스트리밍을 위한 단말기, 서버, 시스템 및 그 방법
KR100970388B1 (ko) * 2008-10-31 2010-07-15 한국전자통신연구원 네트워크 흐름기반 스케일러블 비디오 코딩 적응 장치 및 그 방법
KR101051709B1 (ko) * 2008-12-18 2011-07-25 (주)씨디네트웍스 데이터 전송 방법 및 장치
KR101025539B1 (ko) * 2009-03-26 2011-04-04 (주)필링크 스트리밍 및 다운로드 시스템의 유효 대역폭 측정 방법 및 그 시스템
US8499059B2 (en) * 2009-05-04 2013-07-30 Rovi Solutions Corporation System and methods for buffering of real-time data streams
KR20120018145A (ko) * 2009-05-06 2012-02-29 톰슨 라이센싱 프리젠테이션 장치 능력에 따라서 최적화된 멀티미디어 콘텐츠를 전송하기 위한 방법 및 시스템
CN102498715B (zh) * 2009-05-19 2015-09-30 宝美瑞思网络有限公司 带宽回收用受管理自适应比特率的方法、装置
KR101148072B1 (ko) * 2009-05-26 2012-05-24 한국산업기술대학교산학협력단 멀티미디어 지원 시스템 및 그 지원방법
KR101104164B1 (ko) * 2009-09-21 2012-01-13 애니포인트 미디어 그룹 Bd―j규격을 지원하는 재생 장치를 위한 순차적 다운로드 서비스 제공 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체
US20110096828A1 (en) * 2009-09-22 2011-04-28 Qualcomm Incorporated Enhanced block-request streaming using scalable encoding
US9191437B2 (en) * 2009-12-09 2015-11-17 International Business Machines Corporation Optimizing data storage among a plurality of data storage repositories
US8874712B2 (en) * 2010-01-20 2014-10-28 Futurewei Technologies, Inc. System and method for differentiated services in adaptive streaming
US9510029B2 (en) 2010-02-11 2016-11-29 Echostar Advanced Technologies L.L.C. Systems and methods to provide trick play during streaming playback
EP2362651A1 (en) * 2010-02-19 2011-08-31 Thomson Licensing Multipath delivery for adaptive streaming
CN102812683B (zh) * 2010-02-19 2016-08-17 瑞典爱立信有限公司 用于在http流传输中进行自适应的方法和装置
WO2011108852A2 (en) * 2010-03-02 2011-09-09 Samsung Electronics Co., Ltd. Method and apparatus for adaptive streaming using scalable video coding scheme
AU2011221678B2 (en) 2010-03-05 2014-08-14 Samsung Electronics Co., Ltd. Method and apparatus for generating and reproducing adaptive stream based on file format, and recording medium thereof
US9043731B2 (en) 2010-03-30 2015-05-26 Seven Networks, Inc. 3D mobile user interface with configurable workspace management
US8301794B2 (en) * 2010-04-16 2012-10-30 Microsoft Corporation Media content improved playback quality
CN107104945B (zh) * 2010-06-04 2020-10-30 微软技术许可有限责任公司 用于服务器辅助的视频会话的方法和装置
KR20120034550A (ko) * 2010-07-20 2012-04-12 한국전자통신연구원 스트리밍 컨텐츠 제공 장치 및 방법
JP5620578B2 (ja) 2010-07-26 2014-11-05 セブン ネットワークス インコーポレイテッド 複数のアプリケーションにわたるモバイルネットワークトラフィック調整
GB2495877B (en) 2010-07-26 2013-10-02 Seven Networks Inc Distributed implementation of dynamic wireless traffic policy
US8838783B2 (en) 2010-07-26 2014-09-16 Seven Networks, Inc. Distributed caching for resource and mobile network traffic management
US8886176B2 (en) 2010-07-26 2014-11-11 Seven Networks, Inc. Mobile application traffic optimization
CN106330905B (zh) * 2010-09-01 2020-12-01 艾迪尔哈布股份有限公司 内容提供方法和接收提供的内容的方法
US9467493B2 (en) 2010-09-06 2016-10-11 Electronics And Telecommunication Research Institute Apparatus and method for providing streaming content
US9986009B2 (en) * 2010-10-06 2018-05-29 Electronics And Telecommunications Research Institute Apparatus and method for providing streaming content
KR101206698B1 (ko) * 2010-10-06 2012-11-30 한국항공대학교산학협력단 스트리밍 콘텐츠 제공 장치 및 방법
WO2012060997A2 (en) 2010-11-01 2012-05-10 Michael Luna Application and network-based long poll request detection and cacheability assessment therefor
US9330196B2 (en) 2010-11-01 2016-05-03 Seven Networks, Llc Wireless traffic management system cache optimization using http headers
WO2012061437A1 (en) 2010-11-01 2012-05-10 Michael Luna Cache defeat detection and caching of content addressed by identifiers intended to defeat cache
US8484314B2 (en) 2010-11-01 2013-07-09 Seven Networks, Inc. Distributed caching in a wireless network of content delivered for a mobile application over a long-held request
US8903954B2 (en) 2010-11-22 2014-12-02 Seven Networks, Inc. Optimization of resource polling intervals to satisfy mobile device requests
US8843153B2 (en) 2010-11-01 2014-09-23 Seven Networks, Inc. Mobile traffic categorization and policy for network use optimization while preserving user experience
US9060032B2 (en) 2010-11-01 2015-06-16 Seven Networks, Inc. Selective data compression by a distributed traffic management system to reduce mobile data traffic and signaling traffic
US9021048B2 (en) 2010-11-01 2015-04-28 Seven Networks, Inc. Caching adapted for mobile application behavior and network conditions
WO2012060995A2 (en) 2010-11-01 2012-05-10 Michael Luna Distributed caching in a wireless network of content delivered for a mobile application over a long-held request
WO2012061430A2 (en) 2010-11-01 2012-05-10 Michael Luna Distributed management of keep-alive message signaling for mobile network resource conservation and optimization
KR101649533B1 (ko) * 2010-11-02 2016-08-19 엘지전자 주식회사 미디어 콘텐트 송수신 방법 및 그를 이용한 송수신 장치
KR101173946B1 (ko) * 2010-11-04 2012-08-14 전자부품연구원 홈 네트워크 시스템에서 어플리케이션 서비스 방법 및 어플리케이션 공유 방법
GB2495463B (en) 2010-11-22 2013-10-09 Seven Networks Inc Aligning data transfer to optimize connections established for transmission over a wireless network
WO2012094675A2 (en) 2011-01-07 2012-07-12 Seven Networks, Inc. System and method for reduction of mobile network traffic used for domain name system (dns) queries
KR101739272B1 (ko) 2011-01-18 2017-05-24 삼성전자주식회사 멀티미디어 스트리밍 시스템에서 컨텐트의 저장 및 재생을 위한 장치 및 방법
US8156239B1 (en) 2011-03-09 2012-04-10 Metropcs Wireless, Inc. Adaptive multimedia renderer
EP2688297A4 (en) 2011-03-16 2014-08-27 Korea Electronics Telecomm DEVICE AND METHOD FOR PROVIDING STREAMING CONTENT USING PREPARATIONS
GB2505103B (en) 2011-04-19 2014-10-22 Seven Networks Inc Social caching for device resource sharing and management cross-reference to related applications
WO2012149221A2 (en) 2011-04-27 2012-11-01 Seven Networks, Inc. System and method for making requests on behalf of a mobile device based on atomic processes for mobile network traffic relief
US8621075B2 (en) 2011-04-27 2013-12-31 Seven Metworks, Inc. Detecting and preserving state for satisfying application requests in a distributed proxy and cache system
EP2737741A4 (en) 2011-07-27 2015-01-21 Seven Networks Inc SURVEILLANCE OF MOBILE APPLICATION ACTIVITIES IN SEARCH OF MALICIOUS TRAFFIC ON A MOBILE DEVICE
WO2013024966A1 (ko) * 2011-08-18 2013-02-21 엘지전자 주식회사 콘텐트 수신 방법 및 장치
US9445136B2 (en) * 2011-09-21 2016-09-13 Qualcomm Incorporated Signaling characteristics of segments for network streaming of media data
WO2013042636A1 (ja) * 2011-09-21 2013-03-28 日本電気株式会社 配信ネットワークとサーバ及び配信方法
CN102510424B (zh) * 2011-10-17 2014-04-16 广东轩辕网络科技股份有限公司 实现多媒体数据在移动终端设备上展现的方法及其应用***
GB2499539B (en) * 2011-10-27 2017-05-03 Lg Electronics Inc Method for transreceiving media content and device for transreceiving using same
US9402200B2 (en) * 2011-11-29 2016-07-26 Telefonaktiebolaget L M Ericsson (Publ) Flow based packet manipulation congestion control
US8868753B2 (en) 2011-12-06 2014-10-21 Seven Networks, Inc. System of redundantly clustered machines to provide failover mechanisms for mobile traffic management and network resource conservation
US8934414B2 (en) 2011-12-06 2015-01-13 Seven Networks, Inc. Cellular or WiFi mobile traffic optimization based on public or private network destination
KR101922552B1 (ko) 2011-12-06 2018-11-29 삼성전자주식회사 멀티미디어 컨텐트 전송 시스템에서 적응적 스트리밍을 이용한 트래픽 제어 방법 및 장치
US9277443B2 (en) 2011-12-07 2016-03-01 Seven Networks, Llc Radio-awareness of mobile device for sending server-side control signals using a wireless network optimized transport protocol
EP2788889A4 (en) 2011-12-07 2015-08-12 Seven Networks Inc FLEXIBLE AND DYNAMIC INTEGRATION SCHEMES OF A TRAFFIC MANAGEMENT SYSTEM WITH VARIOUS NETWORK OPERATORS TO REDUCE NETWORK TRAFFIC
WO2013090212A1 (en) 2011-12-14 2013-06-20 Seven Networks, Inc. Mobile network reporting and usage analytics system and method using aggregation of data in a distributed traffic optimization system
US9832095B2 (en) 2011-12-14 2017-11-28 Seven Networks, Llc Operation modes for mobile traffic optimization and concurrent management of optimized and non-optimized traffic
WO2013090821A1 (en) 2011-12-14 2013-06-20 Seven Networks, Inc. Hierarchies and categories for management and deployment of policies for distributed wireless traffic optimization
WO2013103988A1 (en) 2012-01-05 2013-07-11 Seven Networks, Inc. Detection and management of user interactions with foreground applications on a mobile device in distributed caching
CN102547389B (zh) * 2012-01-16 2014-12-10 何建亿 一种网络自适应的流媒体QoS控制方法
US9203864B2 (en) 2012-02-02 2015-12-01 Seven Networks, Llc Dynamic categorization of applications for network access in a mobile network
WO2013116852A1 (en) 2012-02-03 2013-08-08 Seven Networks, Inc. User as an end point for profiling and optimizing the delivery of content and data in a wireless network
US8812695B2 (en) 2012-04-09 2014-08-19 Seven Networks, Inc. Method and system for management of a virtual network connection without heartbeat messages
US10263899B2 (en) 2012-04-10 2019-04-16 Seven Networks, Llc Enhanced customer service for mobile carriers using real-time and historical mobile application and traffic or optimization data associated with mobile devices in a mobile network
US9819715B2 (en) * 2012-06-21 2017-11-14 Adobe Systems Incorporated Client side control of adaptive streaming
WO2014011216A1 (en) 2012-07-13 2014-01-16 Seven Networks, Inc. Dynamic bandwidth adjustment for browsing or streaming activity in a wireless network based on prediction of user behavior when interacting with mobile applications
EP2902909A4 (en) * 2012-09-28 2016-06-01 Nec Corp DISTRIBUTED MEMORY DEVICE, MEMORY NOTES, DATA PROCESSING PROCEDURES AND PROGRAM
EP2908547B1 (en) 2012-10-10 2019-12-04 Fujitsu Client Computing Limited Information-processing device, information-processing system, information-processing program, and moving image data transmission/reception method adapting the frame rate of moving image data based on frame similarity
US9161258B2 (en) 2012-10-24 2015-10-13 Seven Networks, Llc Optimized and selective management of policy deployment to mobile clients in a congested network to prevent further aggravation of network congestion
CN102905045A (zh) * 2012-10-26 2013-01-30 北京奇虎科技有限公司 向计算终端提供图片数据的方法及服务器
KR20140075829A (ko) * 2012-11-26 2014-06-20 한국전자통신연구원 투명 인터넷 캐시 서버와 콘텐츠 전달망을 결합한 콘텐츠 전달 시스템 및 방법
KR20140078507A (ko) * 2012-12-17 2014-06-25 주식회사 캐스트이즈 수요 적응형 스트리밍
US20140177497A1 (en) 2012-12-20 2014-06-26 Seven Networks, Inc. Management of mobile device radio state promotion and demotion
US9654533B2 (en) * 2013-01-17 2017-05-16 Electronics And Telecommunications Research Institute Method of adaptively delivering media based on reception status information from media client and apparatus using the same
US9271238B2 (en) 2013-01-23 2016-02-23 Seven Networks, Llc Application or context aware fast dormancy
US8874761B2 (en) 2013-01-25 2014-10-28 Seven Networks, Inc. Signaling optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols
US9680689B2 (en) * 2013-02-14 2017-06-13 Comcast Cable Communications, Llc Fragmenting media content
CN104020986B (zh) * 2013-02-28 2019-01-01 腾讯科技(深圳)有限公司 一种屏幕录制方法及装置
US9326185B2 (en) 2013-03-11 2016-04-26 Seven Networks, Llc Mobile network congestion recognition for optimization of mobile traffic
EP2779578B1 (en) * 2013-03-15 2019-11-20 Samsung Electronics Co., Ltd. Data Transmitting Apparatus, Data Receiving Apparatus, Data Transceiving System, Method for Transmitting Data, and Method for Receiving Data
US9723245B2 (en) 2013-03-15 2017-08-01 Samsung Electronics Co., Ltd. Data transmitting apparatus, data receiving apparatus, data transceiving system, method for transmitting data, and method for receiving data
US10284612B2 (en) * 2013-04-19 2019-05-07 Futurewei Technologies, Inc. Media quality information signaling in dynamic adaptive video streaming over hypertext transfer protocol
US9065765B2 (en) 2013-07-22 2015-06-23 Seven Networks, Inc. Proxy server associated with a mobile carrier for enhancing mobile traffic management in a mobile network
DE102013220901A1 (de) 2013-10-15 2015-04-16 Continental Automotive Gmbh Verfahren zur Übertragung von digitalen Audio- und/oder Videodaten
KR101505669B1 (ko) 2013-10-15 2015-03-24 옵티시스 주식회사 통신, 자기진단 및 제어를 수행하는 디지털-영상 전송 장치
KR102158733B1 (ko) * 2013-10-16 2020-09-22 삼성전자 주식회사 자원 제어 장치 및 방법
US10135896B1 (en) * 2014-02-24 2018-11-20 Amazon Technologies, Inc. Systems and methods providing metadata for media streaming
US9788078B2 (en) * 2014-03-25 2017-10-10 Samsung Electronics Co., Ltd. Enhanced distortion signaling for MMT assets and ISOBMFF with improved MMT QoS descriptor having multiple QoE operating points
US10366101B2 (en) 2014-04-15 2019-07-30 Splunk Inc. Bidirectional linking of ephemeral event streams to creators of the ephemeral event streams
US11281643B2 (en) 2014-04-15 2022-03-22 Splunk Inc. Generating event streams including aggregated values from monitored network data
US10462004B2 (en) 2014-04-15 2019-10-29 Splunk Inc. Visualizations of statistics associated with captured network data
US10127273B2 (en) 2014-04-15 2018-11-13 Splunk Inc. Distributed processing of network data using remote capture agents
US10693742B2 (en) 2014-04-15 2020-06-23 Splunk Inc. Inline visualizations of metrics related to captured network data
US9923767B2 (en) 2014-04-15 2018-03-20 Splunk Inc. Dynamic configuration of remote capture agents for network data capture
US9762443B2 (en) 2014-04-15 2017-09-12 Splunk Inc. Transformation of network data at remote capture agents
US10700950B2 (en) * 2014-04-15 2020-06-30 Splunk Inc. Adjusting network data storage based on event stream statistics
US11086897B2 (en) 2014-04-15 2021-08-10 Splunk Inc. Linking event streams across applications of a data intake and query system
US10523521B2 (en) 2014-04-15 2019-12-31 Splunk Inc. Managing ephemeral event streams generated from captured network data
US10360196B2 (en) 2014-04-15 2019-07-23 Splunk Inc. Grouping and managing event streams generated from captured network data
CN105099929B (zh) * 2014-04-18 2018-11-27 海尔集团公司 网络控制方法、装置及相应设备
CN104602227A (zh) * 2015-02-02 2015-05-06 携程计算机技术(上海)有限公司 网络自适应的移动应用数据加载方法
CN106464942B (zh) * 2015-03-20 2020-03-10 华为技术有限公司 流媒体资源的下载方法、装置和终端设备
US10516892B2 (en) * 2015-09-28 2019-12-24 Cybrook Inc. Initial bandwidth estimation for real-time video transmission
US10756997B2 (en) 2015-09-28 2020-08-25 Cybrook Inc. Bandwidth adjustment for real-time video transmission
US10506257B2 (en) 2015-09-28 2019-12-10 Cybrook Inc. Method and system of video processing with back channel message management
US10291680B2 (en) * 2015-12-23 2019-05-14 Board Of Trustees Of Michigan State University Streaming media using erasable packets within internet queues
JP6971998B2 (ja) * 2016-02-17 2021-11-24 サムスン エレクトロニクス カンパニー リミテッド マルチメディアサービスのコンテンツ関連情報提供方法及び装置
KR101774466B1 (ko) * 2016-02-24 2017-09-05 옵티시스 주식회사 디스플레이-포트 광 커넥터
KR20170130253A (ko) * 2016-05-18 2017-11-28 에스케이텔레콤 주식회사 적응형 스트리밍 서비스 제공 방법 및 이를 위한 장치
US11010400B1 (en) * 2017-02-15 2021-05-18 Citigroup Technology, Inc. Computer file copy systems and methods
US10505677B2 (en) 2017-10-29 2019-12-10 Mellanox Technologies, Ltd. Fast detection and retransmission of dropped last packet in a flow
JP7496677B2 (ja) * 2019-09-30 2024-06-07 株式会社ソニー・インタラクティブエンタテインメント 画像データ転送装置、画像表示システム、および画像圧縮方法
CN114651449B (zh) * 2020-04-26 2023-09-29 华为技术有限公司 一种流媒体参数动态自适应网络的调整方法及装置
CN115086226B (zh) * 2022-05-30 2023-09-08 北京邮电大学 一种匿名网络中匿名链路建立方法和***

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4827339A (en) * 1986-02-20 1989-05-02 Kokusai Denshin Denwa Co., Ltd. Moving picture signal transmission system
KR20010020498A (ko) * 1997-06-26 2001-03-15 사이트릭스 시스템스, 인크. 네트웍을 통한 적합한 비디오/오디오의 전송을 위한 시스템
KR20020000745A (ko) * 2001-11-15 2002-01-05 박홍성 무선 데이터통신망에서 데이터 스트리밍을 위한 필터링시스템 및 그 방법
KR20030035525A (ko) * 2001-10-31 2003-05-09 삼성전자주식회사 네트워크에 적응적인 실시간 멀티미디어 스트리밍 시스템및 방법

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9326276D0 (en) * 1993-12-23 1994-02-23 Newbridge Network Corp Frame relay interface
KR100270354B1 (ko) * 1996-11-20 2000-11-01 정선종 이기종망간의 중계 서버 및 실시간 중계 방법
US5802106A (en) * 1996-12-06 1998-09-01 Packeteer, Inc. Method for rapid data rate detection in a packet communication environment without data rate supervision
JP3193947B2 (ja) * 1997-01-08 2001-07-30 株式会社ディジタル・ビジョン・ラボラトリーズ データ送信システム及びデータ送信方法
US6181711B1 (en) * 1997-06-26 2001-01-30 Cisco Systems, Inc. System and method for transporting a compressed video and data bit stream over a communication channel
US6091777A (en) * 1997-09-18 2000-07-18 Cubic Video Technologies, Inc. Continuously adaptive digital video compression system and method for a web streamer
WO1999044335A2 (en) * 1998-02-27 1999-09-02 Seiko Epson Corporation Predictive bandwidth allocation method and apparatus
US6771595B1 (en) * 1999-08-31 2004-08-03 Intel Corporation Apparatus and method for dynamic resource allocation in a network environment
US7095782B1 (en) * 2000-03-01 2006-08-22 Koninklijke Philips Electronics N.V. Method and apparatus for streaming scalable video
US20020069419A1 (en) * 2000-12-01 2002-06-06 Pierre-Guillaume Raverdy System and method for streaming video information to a user device
AU2002247257A1 (en) * 2001-03-02 2002-09-19 Kasenna, Inc. Metadata enabled push-pull model for efficient low-latency video-content distribution over a network
CN1225097C (zh) * 2001-06-22 2005-10-26 北京天助基业科技发展有限公司 一种互联网中的数据调度方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4827339A (en) * 1986-02-20 1989-05-02 Kokusai Denshin Denwa Co., Ltd. Moving picture signal transmission system
KR20010020498A (ko) * 1997-06-26 2001-03-15 사이트릭스 시스템스, 인크. 네트웍을 통한 적합한 비디오/오디오의 전송을 위한 시스템
KR20030035525A (ko) * 2001-10-31 2003-05-09 삼성전자주식회사 네트워크에 적응적인 실시간 멀티미디어 스트리밍 시스템및 방법
KR20020000745A (ko) * 2001-11-15 2002-01-05 박홍성 무선 데이터통신망에서 데이터 스트리밍을 위한 필터링시스템 및 그 방법

Also Published As

Publication number Publication date
JP3957666B2 (ja) 2007-08-15
DE10344017A1 (de) 2004-03-25
CN1490980A (zh) 2004-04-21
DE10344017B4 (de) 2009-02-26
JP2004112789A (ja) 2004-04-08
US20050076136A1 (en) 2005-04-07
KR20040025994A (ko) 2004-03-27
CN100382499C (zh) 2008-04-16

Similar Documents

Publication Publication Date Title
KR100486713B1 (ko) 멀티미디어 스트리밍 장치 및 방법
US11076187B2 (en) Systems and methods for performing quality based streaming
US10547659B2 (en) Signaling and processing content with variable bitrates for adaptive streaming
US7295520B2 (en) System and method of network adaptive real-time multimedia streaming
US8606966B2 (en) Network adaptation of digital content
EP2919453B1 (en) Video stream switching
US7975063B2 (en) Informative data streaming server
RU2728534C2 (ru) Устройство обработки информации и способ обработки информации
JP5147950B2 (ja) 可変帯域幅のチャンネルを介してサイマル放送を行う装置および方法
KR101557250B1 (ko) 스트리밍 미디어의 통계적 멀티플렉싱
US20020131496A1 (en) System and method for adjusting bit rate and cost of delivery of digital data
US20080133766A1 (en) Method and apparatus for streaming media to a plurality of adaptive client devices
US20160037176A1 (en) Automatic and adaptive selection of profiles for adaptive bit rate streaming
CN103650451A (zh) 网络容量优化的自适应http流播
KR101718127B1 (ko) 상황 인지 스트리밍 서비스를 위한 콘텐츠 패키징 시스템 및 스트리밍 방법
US11671336B2 (en) ABR control
EP2566171A1 (en) Method for adapting the segment size in transcoded multimedia streams
EP4218248A1 (en) Adaptive bit rate streaming with two delivery rate estimates

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: 20080312

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee