KR100885753B1 - 서버로부터 클라이언트로의 스트리밍 - Google Patents

서버로부터 클라이언트로의 스트리밍 Download PDF

Info

Publication number
KR100885753B1
KR100885753B1 KR1020067011180A KR20067011180A KR100885753B1 KR 100885753 B1 KR100885753 B1 KR 100885753B1 KR 1020067011180 A KR1020067011180 A KR 1020067011180A KR 20067011180 A KR20067011180 A KR 20067011180A KR 100885753 B1 KR100885753 B1 KR 100885753B1
Authority
KR
South Korea
Prior art keywords
data
file
media
meta
client
Prior art date
Application number
KR1020067011180A
Other languages
English (en)
Other versions
KR20060108706A (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 KR20060108706A publication Critical patent/KR20060108706A/ko
Application granted granted Critical
Publication of KR100885753B1 publication Critical patent/KR100885753B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • 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/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • 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/437Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server

Abstract

본 발명은 서버 및 클라이언트 간에 네트워크를 통해 메타-데이터 및 미디어-데이터를 포함하는 스트림가능한 파일을 스트리밍 또는 다운로딩하도록 하는 방법으로서, 상기 파일의 메타-데이터 중 적어도 일부분이 상기 클라이언트에 송신되고, 상기 송신된 메타-데이터가 적어도 상기 파일 내의 미디어-데이터 범위들의 위치들을 포함하는 방법에 관한 것이다. 상기 파일 내의 원하는 미디어-데이터 부분의 위치는 상기 수신된 메타-데이터를 기반으로 하여 결정된다. 상기 클라이언트에 전송될 미디어-데이터 범위를 상기 서버에 통지하라는 요구가 상기 서버에 전송된다. 상기 요구된 미디어-데이터 범위는 이후에 상기 클라이언트에 송신된다.

Description

서버로부터 클라이언트로의 스트리밍{Streaming from server to client}
본 발명은 서버로부터 클라이언트로 스트림가능한 파일을 스트리밍 또는 다운로딩하도록 하는 기술분야에 관한 것이다.
스트리밍(streaming)이란 데이터 네트워크를 통해 클라이언트에 송신되는 동안 연속을 기반으로 하여 애플리케이션이 오디오 및 비디오 스트림들과 같은 동기화된 미디어 스트림들을 플레이할 수 있는 능력을 말한다. 멀티미디어 스트리밍 시스템은 스트리밍 서버 및 접속 매체(아마도 네트워크 접속)를 통해 상기 서버에 액세스하는 다수의 클라이언트들(플레이어들)을 포함한다. 상기 클라이언트들은 상기 서버로부터 사전에 저장되거나 활동적인 멀티미디어 콘텐츠를 상기 서버로부터 꺼내서 이를 상기 콘텐츠가 다운로드되고 있는 동안 실질적으로 실시간으로 플레이백한다. 전체적인 멀티미디어 표현은 영화(movie)라고 언급될 수도 있으며 논리적인 면에서 트랙들로 분할될 수 있다. 각각의 트랙은 단일 미디어 형태(예를 들면, 비디오 프레임들)의 타이밍된 시퀀스(timed sequence)를 나타낸다. 각각의 트랙 내에서, 각각의 타이밍된 유닛이라 함은 미디어 샘플을 말한다.
스트리밍 시스템들은 서버-측 기법을 기반으로 하여 2가지 카테고리로 나누어질 수 있다. 이러한 카테고리들이란 본원 명세서에서 일반 스트리밍( normal streaming)진행 다운로딩(progressive downloading)을 말한다. 상기 일반 스트리밍에서는, 서버들이 애플리케이션-레벨 수단을 채용하여 송신된 스트림의 비트-레이트를 제어한다. 그러한 타깃은 자신의 플레이백 레이트와 대체로 동일한 레이트로 스트림을 송신하는 것이다. 몇몇 서버들은 이용가능한 네트워크 대역폭을 충족시키고 네트워크 정체(network congestion)를 회피하기 위해 멀티미디어 파일들의 콘텐츠를 황급하게 조정할 수 있다. 신뢰성이 있을 수도 있고 신뢰성이 없을 수도 있는 전송 프로토콜들 및 네트워크들이 사용될 수 있다. 신뢰성이 없는 전송 프로토콜들이 사용중에 있을 경우에, 일반 스트리밍 서버들은 멀티미디어 파일들에 상주하는 정보를 네트워크 전송 패킷들 내에 캡슐화하는 것이 전형적이다. 이는 전형적으로는 RTP/UDP(Real Time transport Protocol/User Datagram Protocol) 프로토콜들 및 RTP 페이로드 포맷들을 사용하여 특정의 프로토콜들 및 포맷들에 따라 수행될 수 있다.
또한, HTTP(Hypertext Transfer Protocol) 스트리밍, HTTP 신속-시동(fast-start), 또는 의사-스트리밍(pseudo-streaming)으로서 언급될 수 있는 진행 다운로딩은 신뢰성이 있는 전송 프로토콜의 상부에서 동작한다. 서버들은 임의의 애플리케이션-레벨 수단을 채용하여 송신된 스트림의 비트-레이트를 제어한다. 그 대신에, 상기 서버들은 신뢰성이 있는 하부 전송 프로토콜에 의해 제공되는 흐름 제어 메커니즘들에 의존할 수 있다. 신뢰성이 있는 전송 프로토콜들은 연결 지향형인 것이 전형적이다. 예를 들면, TCP(Transport Control Protocol)는 피드백 기반 알고리즘을 통해 송신된 비트-레이트를 제어하는데 사용된다. 그 결과, 애플리케이션들 이 전송 패킷들 내에 임의의 데이터를 캡슐화해야 할 필요가 없고 멀티미디어 파일들은 의사-스트리밍 시스템에서 그 자체로 송신된다. 따라서, 상기 클라이언트들은 서버측에 상주하는 파일들의 정확한 복사물들을 수신한다. 이로 인해 파일이 다시 데이터를 스트리밍해야 할 필요 없이 여러 번 플레이될 수 있다.
멀티미디어 스트리밍에 대한 콘텐츠를 생성할 경우에, 각각의 미디어 샘플이 특정한 압축 방법을 사용하여 압축됨으로써, 비트-스트림이 특정 포맷과 일치하는 결과를 초래시킨다. 미디어 압축 포맷들 외에도, 컨테이너 포맷, 다시 말하면 특히 압축된 미디어 샘플들을 서로 연관시키는 파일 포맷이 있어야 한다. 그 외에도, 상기 파일 포맷은 파일의 인덱싱에 관한 정보, 어떻게 미디어를 전송 패킷들 내에 캡슐화해야 하는 지에 관한 힌트들, 및 예를 들면 미디어 트랙들을 어떻게 동기시켜야 하는지에 관한 데이터를 포함할 수 있다. 미디어 비트 스트림들은 또한 미디어-데이터라고도 언급될 수 있지만, 멀티미디어 컨테이너 파일 내의 모든 추가 정보는 메타-데이터로서 언급될 수 있다. 상기 파일 포맷은 서버로부터 클라이언트로 데이터 파이프의 상부에서 그 자체로 스트리밍될 수 있는 경우에 스트리밍 포맷이라 언급된다. 그 결과, 스트리밍 포맷들은 단일 파일에 미디어 트랙들을 인터리브하고 미디어 데이터는 복호화 또는 플래이백 순서로 나타난다. 스트리밍 포맷들은 하부 네트워크 서비스들이 각각의 미디어 형태에 대해 개별 송신 채널을 제공하지 못할 경우에 사용되어야 한다. 스트림가능한 파일 포맷들은 데이터를 스트리밍하는 동안 스트리밍 서버에 의해 용이하게 채용될 수 있는 정보를 포함한다. 예를 들면, 상기 포맷은 서로 다른 네트워크 대역폭들에 대해 타깃이 된 미디어 비트-스트림들의 다 수의 버전들의 저장을 가능하게 할 수 있으며, 상기 스트리밍 서버는 상기 서버 및 상기 클라이언트 간의 접속에 따라 어느 비트 레이트를 사용해야 할지를 결정할 수 있다. 스트림가능한 포맷들은 그 자체로 좀처럼 스트리밍되지 않음으로써, 스트리밍가능한 포맷들은 인터리브될 수도 있고 개별 미디어 트랙들에 대한 링크들을 포함할 수 있다.
QuickTime 파일 포맷, ISO 베이스 미디어 파일 포맷, MPEG(Moving Picture Experts Group)로부터의 MP4 파일 포맷, 3GPP(Third Generation Partnershiop Project)로부터의 3GP 파일 포맷은 의사-스트림가능한 파일들의 생성을 허용한다. 의사-스트리밍이 동작하기 위해서는, 이러한 스트림가능한 파일들이 특정 방식으로 생성되어야 한다. 첫째로, 상기 파일 내의 미디어-데이터의 특징들을 정의하는 메타-데이터가 상기 파일의 개시부분에 있어야 한다. 상기 메타-데이터, 예컨대, 파일 레벨 메타-데이터 중 적어도 일부는 상기 클라이언트가 미디어-데이터를 수신할 수 있게 하기 위해 세션의 개시부분에서 상기 클라이언트에 제공되어야 한다. 둘째로, 상기 미디어-데이터는 인터리브된 방식으로 상기 파일에 내재하여야 한다. 이것이 의미하는 것은 상기 미디어-데이터가 타임라인 순서로 상기 파일 내에, 예를 들면 오디오 데이터, 비디오 데이터, 오디오 데이터, 비디오 데이터 등등으로서 저장되어야 한다. 셋째로, 상기 파일은 의사-스트림가능하기 때문에 상기 메타-데이터로 특별히 표시되어야 한다.
본 발명의 한 목적은 위에서 언급된 제약들 중 적어도 일부가 회피될 수 있게 하는 스트리밍 장치를 제공하는 것이다. 본 발명의 목적은 독립 청구항들에 개시되어 있는 것을 특징으로 하는 방법, 시스템, 클라이언트, 원격 통신 장치, 서버, 및 컴퓨터 프로그램 생성물로 달성된다. 본 발명의 몇몇 바람직한 실시예들은 종속 청구항들에 기재되어 있다.
본 발명의 한 실시태양에 의하면, 파일의 메타-데이터 중 적어도 일부분이 클라이언트에 송신되고, 상기 송신된 메타-데이터는 적어도 상기 파일 내의 미디어-데이터 범위들의 위치들을 포함한다. 상기 파일 내의 원하는 미디어-데이터 부분의 위치는 수신된 메타-데이터를 기반으로 하여 결정된다. 상기 클라이언트에 전송될 미디어-데이터 범위를 상기 서버에 통지하라는 요구가 상기 서버에 전송된다. 상기 요구된 미디어-데이터 범위는 이때에 상기 클라이언트에 송신된다.
클라이언트 및 서버 간의 세션이란 스트림가능한 파일을 송신하기 위해 상기 클라이언트 및 상기 서버 간의 임의의 논리적인 관계 또는 연결을 말한다. 파일이라는 용어는 아마도 복수 개의 미디어 소스들로부터 메타-데이터 및 미디어-데이터 모두를 포함하는 데이터의 임의 그룹화를 의미한다. 상기 원하는 미디어-데이터는 예컨대 사용자 커맨드들 또는 프리젠테이션 순서 정보를 기반으로 하여 결정될 수 있다.
본 발명의 실시태양들은 특히 파일 포맷들 및 스트리밍 장치에 관해 유연성(flexibility)을 제공하며, 특히 멀티미디어 콘텐츠 스트리밍에 대한 이점들을 제공한다. 상기 클라이언트가 상기 파일 내의 데이터 범위의 위치들을 알고 있기 때문에, 미디어 데이터 범위의 이전 부분이 스트리밍되는지 아니면 다운로드되는지, 또는 미디어 데이터 범위의 이전 부분이 스트리밍되어 있지 않은지 아니면 다운로드되어 있지 않은지와 무관하게 상기 클라이언트가 상기 파일 중 임의의 부분을 기본적으로 요구하는 것이 가능하다. 예를 들면, 사용자는 오디오를 뮤트시킬 수 있는데, 이러한 경우에 상기 클라이언트가 단지 상기 파일의 비디오 미디어 데이터를 요구하게끔만 이루어질 수 있다. 따라서, 상기 클라이언트는 순방향 찾기(seek-forward) 또는 역방향 찾기(seek-backward)가 상기 클라이언트의 사용자에 의해 수행될 경우 차후 또는 이전의 바이트 범위로 간단히 점프할 수 있다. 또한, 본 발명은 꺼낸 미디어-데이터가 한 파일로서 저장될 필요가 없도록 하는 효율적인 방식으로 상기 클라이언트가 이용가능한 메모리를 사용하는 것을 가능하게 한다. 이는 플레이-폐기 방식으로 채용될 수 있는데, 다시 말하면 그 이유는 이미 플레이된 미디어 데이터 중 일부분들이 유지될 필요가 없기 때문이다. 파일 정보에 대하여, 본 발명은 상기 미디어 데이터가 상기 파일 내에서 임의의 순서를 이루는 것을 가능하게 하는데, 그 이유는 상기 클라이언트가 원하는 순서로 미디어-데이터의 개별 범위를 요구할 수 있기 때문이다.
이하에서는 첨부도면들 및 바람직한 실시예들을 통해 본 발명이 더 상세하게 설명될 것이다.
도 1은 멀티미디어 콘텐츠 스트리밍용 송신 시스템을 예시하는 블록 선도이다.
도 2는 본 발명의 한 실시예에 따른 클라이언트의 기능들을 예시하는 도면이 다.
도 3은 본 발명의 한 실시예에 따른 서버의 기능들을 예시하는 도면이다.
도 1에는 멀티미디어 콘텐츠 스트리밍용 송신 시스템이 예시되어 있다. 상기 시스템은 편집기로도 언급될 수 있는 부호기(ENC)로서, 전형적으로는 복수 개의 미디어 소스(MS)로부터의 송신을 위해 미디어 콘텐츠 데이터를 준비하는 부호기(EMC), 네트워크(NW)를 통해 부호화된 멀티미디어 파일들을 송신하는 스트리밍 서버(SS), 및 상기 파일들을 수신하는 복수 개의 클라이언트들(C)을 포함한다. 상기 콘텐츠는 활동적인 표현(live presentation)을 레코딩하는 레코더, 예컨대, 비디오 카메라로부터 획득될 수도 있고, 상기 콘텐츠는 비디오 테이프, CD, DVD, 하드 디스크 등등과 같은 저장 장치상에 사전에 저장될 수도 있다. 상기 콘텐츠는 예컨대 비디오, 오디오, 스틸 이미지들일 수 있으며 상기 콘텐츠는 데이터 파일들을 또한 포함할 수 있다. 상기 부호기(ENC)로부터의 멀티미디어 파일들은 상기 서버(SS)에 송신된다. 상기 서버(SS)는 복수 개의 클라이언트들(C)에게 서비스를 제공하고 유니캐스트 또는 멀티캐스트 경로들을 사용하여 부호기(ENC)로부터 바로 또는 서버 데이터베이스로부터 멀티미디어 파일들을 송신함으로써 클라이언트 요구들에 응답할 수 있다. 상기 네트워크(NW)는 예컨대, 이동 통신 네트워크, 구내 정보 통신 네트워크, 방송 네트워크 또는 게이트웨이들에 의해 분리된 다수의 다른 네트워크일 수 있다. 여기서 유념해야 할 점은 도 1에서 (ENC에 의한) 콘텐츠 생성 기능들 및 (SS에 의한) 스트리밍 기능들이 분리되어 있지만, 이들이 동일한 장치, 또 는 3개 이상의 장치들에 의해 수행될 수 있다.
이하의 실시예들은 스트림가능한 파일들의 다운로딩 또는 스트리밍을 가능하게 하는 임의의 무선 및/또는 유선 원격 통신 시스템에서 적용될 수 있다. 하부 전송 계층은 회선 교환 또는 패킷 교환 데이터 접속을 채용할 수 있다. 그러한 통신 네트워크 중 한 예는 3GPP가 개발한 제3세대 이동 통신 시스템이다. 이하의 실시예들에서는, HTTP 프로토콜이 한 스트림가능한 파일 중 적어도 여러 부분들을 전송하기 위해 적용되는 것으로 가정된 것이다. HTTP/TCP 외에도, 다른 전송 계층 프로토콜들이 또한 사용될 수 있다. 예를 들면, WAP(Wireless Application Protocol; 무선 응용 프로토콜) 슈트(suite)의 무선 트랜잭션 프로토콜(Wireless Transaction Protocol; WTP) 또는 파일 전송 프로토콜(File Transfer Protocol; FTP)이 전송 기능들을 제공할 수 있다.
스트림가능한 파일을 통해 반송되는 메타-데이터는 다음과 같이 분류될 수 있다. 메타-데이터 일부분의 범위는 전체 파일인 것이 전형적이다. 그러한 메타-데이터는 정확한 디스플레이 사각형 크기의 사용 또는 표시를 통한 미디어 코덱들의 식별을 포함할 수 있다. 이러한 종류의 메타-데이터는 파일-레벨 메타-데이터(또는 프리젠테이션-레벨 메타-데이터)로서 언급될 수 있다. 메타-데이터의 다른 한 부분은 전용 미디어 샘플들에 관한 것이다. 그러한 메타-데이터는 바이트 단위의 크기 및 샘플 형태의 표시를 포함할 수 있다. 그러한 메타-데이터는 샘플 전용 메타-데이터로서 언급될 수 있다.
미디어 복호화 및 플레이백이 파일-레벨 메타-데이터 없이 가능하지 않은 것 이 전형적이기 때문에, 그러한 메타-데이터가 파일 헤더 섹션으로서 그러한 메타-데이터가 스트리밍 파일들의 개시부분에 나타난다. 한 실시예에 의하면, 적어도 미디어-데이터 오프셋 위치들을 결정하는 정보가 파일-레벨 메타-데이터로서 상기 파일의 개시부분에 결정된다. 샘플 전용 메타-데이터는 메타-데이터와 인터리브될 수도 있고 샘플 전용 메타-데이터는 통합 섹션으로서 파일-레벨 메타-데이터와 인터리브되거나 파일-레벨 메타-데이터와 인터리브된 직후의 파일의 개시부분에 나타날 수 있다.
도 2에는 도 1의 클라이언트(C)와 같은 스트리밍 클라이언트의 기능들이 예시되어 있다. 단계(201)에서는, 클라이언트가 스트림가능한 파일의 스트리밍 또는 다운로딩을 위해 서버와의 세션을 설정한다. 이러한 단계 동안, 송신 자원들이 예약되며 논리 접속이 예컨대 도 1의 네트워크(NW)를 통해 서버 및 클라이언트 사이에 설정된다. 단계(202)에서는, 클라이언트가 적어도 메타-데이터 부분의 크기를 나타내는 파일의 부분을 서버로부터 요구할 경우에 실제 스트리밍 또는 다운로딩이 개시된다. 이러한 정보는 상기 파일의 개시부분에 존재하는 것이 전형적이며 당연히 적용된 파일 포맷에 의존한다. 일례로서, 3GP 파일 포맷에서는, 이러한 정보가 "moov" 박스에 앞서 4 바이트로 특정되며, 이러한 파일 포맷이 적용될 경우에, 그에 따라 상기 클라이언트는 이러한 4 비트를 요구(202)하고 차후에 이를 검사(204)하도록 이루어진다. 상기 클라이언트는 예컨대 URI(Uniform Resource Identifier)를 통해 해당 파일을 나타낸다. 그 결과로, 클라이언트는 이러한 정보를 포함하는 파일의 부분 또는 범위를 나타냄으로써 파일의 특정 부분을 요구한다.
단계(203)에서는, 클라이언트가 적어도 메타-데이터의 크기를 나타내는 파일의 부분을 수신한다. 이러한 수신된 정보를 기반으로 하여, 클라이언트는 파일의 메타-데이터 부분의 위치를 결정하고, 특정된 메타-데이터 범위에 대한 요구를 형성(204)한다. 클라이언트는 모든 메타-데이터 또는 단지 그 중 일부만을 요구할 수 있다. 이러한 요구는 단계(205)에서 상기 서버에 전송된다.
단계(206)에서, 상기 클라이언트는 메타-데이터를 수신하고 스트리밍 또는 다운로딩 세션 동안 메타-데이터를 저장하는 것이 바람직하다. 상기 수신된 메타-데이터는 적어도 상기 파일 내의 메타-데이터 범위들의 위치들을 포함한다. 이와 같은 미디어-데이터 범위들은 적용된 파일 포맷에 의존하여 변할 수 있으며, 예컨대 상기 미디어-데이터 범위들은 트랙과 같이 단지 하나만의 미디어 샘플 또는 한 그룹의 미디어 샘플들을 결정하고, 하나 이상의 미디어 형태들을 포함한다. 이러한 정보를 기반으로 하여, 클라이언트는 미디어-데이터의 바이트 오프셋 위치들을 결정할 수 있다. 클라이언트가 다른 미디어-데이터 범위들 또는 부분들의 위치들을 알고 있는 경우에, 클라이언트는 어느 미디어 데이터 범위들이 스트리밍되는 것이 바람직한지 아니면 다운로딩되는 것이 바람직한지를 결정할 수 있다. 이는 사용자 프롬프트 기능을 포함할 수 있다. 전형적으로는, 이미 수신된 메타-데이터가 파일-레벨 디스플레이 및/또는 복호화 순서 정보를 포함하고 이를 기반으로 하여 요구될 메타-데이터 범위들이 결정된다. 클라이언트가 원하는 하나 이상의 미디어-데이터 범위들을 알고 있는 경우에, 클라이언트는 수신된 위치 특정 메타-데이터를 기반으로 하여 상기 파일 내의 하나 이상의 미디어-데이터 범위들의 위치를 결정(207)한 다. 이어서, 클라이언트는 클라이언트에 전송될 적어도 하나의 미디어-데이터 범위를 표시하는 요구를 형성(208)하고, 이러한 요구를 상기 서버에 전송(209)한다. 상기 미디어-데이터 범위들은 적어도 요구되는 제l 및 최종 바이트 값들을 결정하는 바이트 범위 값들로서 상기 요구에서(그리고 또한 메타-데이터에서) 특정될 수 있다. 상기 구현 및 하부 전송 프로토콜에 의존하여, 하나 이상의 미디어 데이터 범위들이 특정될 수 있다.
예를 들면, 3GP, ISO 및 MP4 파일 포맷들이 적용될 경우에, 상기 메타-데이터 범위들 또는 부분들의 위치들은 상기 메타-데이터에 내재하는 샘플-천크 및 천크(chunk) 오프셋 박스에 의해 식별될 수 있다. 이러한 정보 필드들을 검사함으로써, 클라이언트는 상기 파일의 개시부분에 대하여 각각의 샘플의 바이트 범위들을 식별할 수 있다. ISO 순응 파일 포맷의 이러한 필드들 및 다른 부분들에 관한 더 많은 정보에 대하여는, 2001년 7월 20일자 ISO/IEC JTC1/SC29/WG11 사양서 "ISO Media File format specification MP4 Technology under consideration for ISO/IEC 14496-1:2001 Amd 3"을 참조하기 바란다. 더 구체적으로는, 5.3장에는 박스 정의들이 기재되어 있다.
단계(210)에서는, 클라이언트가 단계(208,209)의 요구에 표시된 범위에서 찾아 볼 수 있는 요구된 미디어 데이터를 수신한다. 이후에 상기 미디어-데이터는 적합한 경우에 사용될 수 있고, 전형적으로는 상기 미디어-데이터는 사용자를 위해 (충분한 미디어-데이터가 수신될 경우에) 파싱(parsing) 및 플레이되지만, 상기 미디어-데이터는 또한 차후의 사용을 위해 저장될 수 있다. 한 실시예에서는, 단 계(210)에서, 클라이언트(C)가 상기 서버(SS)로부터 압축 및 다중화된 멀티미디어 파일 부분들을 수신한다. 클라이언트(C)는 여러 부분을 파싱 및 역다중화하여 개별 미디어 트랙들을 획득한다. 이후에 이러한 미디어 트랙들이 압축해제되어 재구성된 미디어 트랙들을 제공하고 상기 재구성된 미디어 트랙들은 이후에 사용자 인터페이스의 출력 장치들을 사용하여 플레이아웃(play out)될 수 있다. 이러한 기능들 외에도, 제어기 유닛은 최종 사용자 동작들을 통합하도록, 다시 말하면 최종 사용자 입력에 따라 플레이백을 제어하고 클라이언트 서버-제어부를 조종하도록 클라이언트 내에 제공된다. 독립 미디어 플레이어 애플리케이션 또는 블라우저 플러그-인은 플레이백 기능을 제공할 수 있다.
특히 스트리밍 목적들을 위해 단계들(208,209)에서 미디어-데이터 중 단지 비교적 작은 부분들만을 요구하는 것이 매우 유용하다. 따라서, 한 실시예에서는, 클라이언트가 예컨대 제때 복호화 및 디스플레이 순서로 프리젠테이션의 다른 부분들에 대하여 연속적으로 요구들을 형성 및 전송하도록 이루어진다. 그러나, 사용자가 예를 들면 몇몇 부분들을 스킵하기를 원할 수 있기 때문에 미디어-데이터 부분들에 대한 요구들의 순서는 서로 다를 수 있다. 따라서, 클라이언트는 사용자로부터의 커맨드를 기반으로 하여, 특정 시한 이후에, 상기 파일의 프리젠테이션의 상태를 기반으로 하여, 또는 기타의 기준에 대하여 단계(207) 또는 단계(208)로 복귀하도록 이루어질 수 있다.
앞서 언급한 바와 같이, 클라이언트는 미디어-데이터 부분들, 다시 말하면 수신된 메타-데이터에 내재하는 복호화 순서 정보 필드 및 디스플레이를 기반으로 하여 단계(208)에서 요구되는 메타-데이터의 순서를 결정하도록 이루어지는 것이 전형적이다. 예를 들면, 3GP, ISO 및 MP4 파일 포맷들에서, 시간-샘플 원자(time-to-sample atom)는 프리젠테이션 시간으로부터 미디어 샘플들로의 매핑을 수행한다. 클라이언트는 이러한 정보를 사용하여 샘플들의 요구 순서를 이해하고, 바이트 위치 관련 메타-데이터를 사용하여 샘플들을 바이트 범위들에 매핑하도록 이루어질 수 있다.
도 3에는 서버가 스트림가능한 파일을 전송하는 기능들이 예시되어 있다. 도 3의 기능들이 적용되는 서버는 도 1의 SS와 같은 스트리밍 서버일 수 있지만, 클라이언트들로부터의 요구들을 기반으로 하여 스트림가능한 파일들을 파싱 및 전송하는 것이 가능한 임의의 서버일 수 있다. 요구되는 파일은 서버 장치 내에 저장될 수도 있고 상기 서버는 요구되는 파일을 상기 요구에 대한 응답으로서 기타의 엔티티로부터 액세스 및/또는 다운로드할 수 있다. 단계(301)에서는, 상기 서버가 스트림가능한 파일을 스트리밍하거나 다운로딩하기 위해 클라이언트와의 세션을 설정한다. 단계(302)에서는, 상기 서버가 적어도 메타-데이터 부분의 크기를 표시하는 파일의 부분에 대하여 상기 클라이언트로부터 요구를 수신한다. 상기 표시된 범위를 기반으로 하여, 상기 서버는 언급된 파일 내에서 그러한 범위의 콘텐츠를 결정하도록, 다시 말하면 적어도 상기 메타-데이터 부분의 크기를 결정하는 필드의 값을 결정하도록 이루어진다. 상기 서버는 적어도 상기 메타-데이터의 크기를 표시하는 파일의 부분을 포함하는 응답 메시지를 형성(303)하고 이를 클라이언트에 전송하도록 이루어진다.
단계(304)에서는, 상기 서버가 클라이언트에 전송될 미디어-데이터 범위에 관한 표시를 포함하는 요구를 수신한다. 위에서 언급된 방식과 유사한 방식으로, 상기 서버는 이때에 상기 파일의 요구된 범위를 결정하고 응답 메시지를 형성하는데, 이는 구 후에 클라이언트에 전송(305)된다.
단계(306)에서, 상기 서버는 클라이언트에 전송될 적어도 하나의 메타-데이터 범위를 표시하라는 요구를 클라이언트로부터 수신한다. 상기 서버는 상기 파일로부터 요구된 적어도 하나의 미디어-데이터 범위를 결정하고 상기 요구된 미디어-데이터 범위를 포함하는 응답을 형성(307)한다. 다음으로는, 상기 서버가 클라이언트에 상기 응답을 전송(308)한다. 위에서 언급된 바와 같이, 클라이언트는 여러 요구를 개시할 수 있는데, 이 경우에는 프로세스가 단계(306)로 복귀한다.
또한 본 발명이 기능적으로 어떻게 수행될 수 있는지에 대한 다른 실시예들이 존재한다. 한 실시예에서는, 단계들(202-206,302-303)이 불필요하지만, 단계(201) 이후에는 클라이언트가 어떠한 범위도 갖지 않거나 소정의 (큰) 범위를 갖고서 요구에 따른 스트리밍 또는 다운로딩을 간단히 개시한다. 클라이언트가 서로 다른 미디어-데이터 범위들 또는 부분들의 위치들, 예컨대 바이트 오프셋 위치들을 기술하는 메타-데이터 부분을 수신한 경우에, 클라이언트는 단계(207)로 진입할 수 있다.
요구들 및 응답들이 임의의 신뢰성 있는 전송 프로토콜을 사용하여 클라이언트 및 서버 간에 전송될 수 있다. 그 중 한 프로토콜은 HTTP이다. 한 실시예에 따른 HTTP 버전 1.1의 범위 특징은 도 2 및 도 3과 관련하여 위에서 언급된 바와 같 이 요구되는 미디어-데이터 및/또는 메타-데이터의 범위를 표시할 목적들로 사용될 수 있다. 따라서, 한 실시예에 따른 클라이언트는 상기 파일의 URI 및 아마도 기타의 정보 외에도 상기 파일에 내재하는 미디어-데이터/메타-데이터의 하나 이상의 바이트 범위들을 바이트 범위 매개변수로 포함하는 HTTP GET 요구를 형성하도록 이루어진다. HTTP 기능에 관한 더 많은 정보에 대하여는, 1999년 6월 IETF RFC 2616, "Hypertext Transfer Protocol -- HTTP /1.1"을 참조하기 바란다. 특히, 범위들의 사용은 3.12, 13.5.4 및 14.35.1에 기재되어 있다. 클라이언트가 HTTP 사양들에 따라 HTTP GET 요구들을 형성하도록 이루어질 경우에, 임의의 HTTP v. 1.1 순응 서버가 하나 이상의 범위들을 포함하는 요구들에 응답할 수 있다. 따라서, 바람직한 실시예에서, 어떠한 변경도 HTTP 서버들에서 필요하지 않다. 위에서 언급된 바와 같이, 한 실시예에서, 아마도 짧은 시간 간격들로 미디어-데이터 부분들에 대한 연속적인 요구들을 전송하는 것이 필요하다. 한 실시예에 의하면, HTTP 파이프라이닝 기법이 이러한 목적에 적용된다. 이러한 기법은 클라이언트로 하여금 각각의 응답을 대기하지 않고 복수 개의 요구들을 전송할 수 있게 하여, 단일의 TCP 접속이 더 짧은 경과 시간을 갖더라도 훨씬 더 효율적으로 사용되는 것을 허용한다. 따라서, 클라이언트는 단계(209)에서 파이프라인된 HTTP GET 요구들을 전송하도록 이루어진다. 위에서 언급된 바와 같이, 이에 대한 변형예는 하나의 요구 내에 복수 개의 바이트 범위들을 통합하는 것이다.
한 실시예에 의하면, 단지 메타-데이터의 한 부분만이 단계들(204,205)에서 요구된다. 따라서, 상기 클라이언트는 예컨대, 미디어-데이터 수신 위상 동안 메타 -데이터 중 적어도 다른 어떤 부분을 차후에 요구하도록 이루어질 수 있다. 클라이언트는 상기 메타-데이터 중 어느 부분이 아직 수신되지 않고 있는지를 결정하고 그리고 하나 이상의 미디어-데이터 범위들을 요구하는 것과 관련하여 동시에 또는 개별적인 요구로 수신되지 않은 메타-데이터 부분을 요구할 수 있다(단계들(207-209)). 이때에 상기 서버는 상기 파일 내의 표시된 범위들을 결정한 다음에 그러한 범위들을 클라이언트에 전송하도록 이루어진다. 한 부가적인 실시예에 의하면, 상기 서버는 한 응답으로 요구된 메타-데이터 및 미디어-데이터를 인터리브하도록 이루어지는데, 그 이유는 클라이언트가 또한 메타-데이터로부터 미디어-데이터를 파싱 및 분리하도록 이루어지기 때문이다.
위에서 언급된 특징들은 임의의 스트림가능한 파일 포맷에 대해 수행될 수 있다. 사용될 수 있는 파일 포맷들의 몇몇 예는 MPEG-4(MP4) 파일 포맷, QuickTime 포맷, ISO 베이스 미디어 파일 포맷 및 3GP 파일 포맷을 포함한다.
세션의 개시부분에서 수신 및 저장되는 메타-데이터는 이하의 미디어-데이터 부분들에 대한 필요한 모든 메타-데이터를 포함할 수 있다. 미디어-데이터 샘플들 및 상기 미디어-데이터 샘플들에 관련된 메타-데이터가 독립 세그먼트들로서 그룹화되는 세그먼트된 파일 포맷을 채용하는 것이 또한 가능하다. 이러한 세그먼트들은 필요한 미디어 데이터가 캡처링 및 부호화되기 바로 전에 생성 및 저장될 수 있다. 어떠한 방식으로 세그먼트를 통한 이러한 종류의 파일 포맷을 형성 및 채용하는지에 관한 더 많은 정보에 대하여는, 본원 명세서에 참조병합되는 특허출원공개 WO03/028293을 참조하기 바란다.
위에서 언급된 파일 포맷들에 대하여는, 임의의 원하는 순서와는 무관하게 상기 파일의 임의 부분들을 플레이하는 것이 가능하다. 미디어-데이터 부분은 상기 미디어-데이터 부분이 수신 장치(C)에서 파싱된 이후에 삭제(임시 메모리로부터 제거)될 수 있다. 따라서, 더 적은 임시 저장 공간이 필요한데, 그 이유는 단지 메타-데이터만, 세그먼트된 접근방법에서는 단지 파일-레벨 메타-데이터만이 상기 파일의 파싱 동안 유지되어야 할 필요가 있기 때문이다. 상기 파일을 파싱하는 장치가 또한 멀티미디어 파일을 플레이할 경우에, 미디어-데이터(및 세그먼트된 접근방법에서는 상기 미디어-데이터에 직접 관련된 메타-데이터)는 플레이 이후에 영구적으로 제거될 수 있다. 이는 필요한 메모리 자원들의 양을 부가적으로 감소시킨다.
본 발명은 기존의 원격 통신 장치들에서 구현될 수 있다. 그러한 원격 통신 장치들 모두는 프로세서들 및 메모리를 지니며, 이들을 통해 본 발명의 기능이 구현될 수 있다. 특정 프로그램 코드는 프로세서에서 실행될 경우에 위에서 언급된 클라이언트 및/또는 서버에 대한 본 발명의 기능 중 적어도 일부분을 구현하게 할 수 있으며 상기 프로그램 코드는 외부 저장 매체 또는 원격 통신 장치로부터 상기 장치에 엠베드될 수도 있고 외부 저장 매체 또는 원격 통신 장치로부터 상기 장치에 로드될 수도 있다. 개별 논리 컴포넌트들로 이루어진 회로 또는 하나 이상의 주문형 집적회로(application-specific integrated circuit; ASIC)들과 같은 서로 다른 하드웨어 구현예들이 또한 가능하다. 이러한 기법들의 조합 또한 가능하다.
당업자라면 기술의 발전에 따라 본 발명의 개념이 다른 여러 방식으로 구현될 수 있다는 점을 분명히 알 수 있을 것이다. 그러므로, 본 발명 및 그의 실시예 들은 위의 예들에 국한되지 않고 첨부된 청구항들의 범위 및 사상 내에서 변경가능하다.

Claims (26)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 원격 통신 장치를 제어하기 위한 컴퓨터 프로그램을 포함하는 컴퓨터로 읽을 수 있는 기록매체에 있어서,
    상기 컴퓨터 프로그램은,
    메타-데이터 및 미디어-데이터를 포함하는 스트림가능한 파일을 스트리밍 또는 다운로딩하기 위해 상기 원격 통신 장치로 하여금 서버와의 세션을 설정하게 하는 프로그램 코드,
    상기 원격 통신 장치로 하여금 상기 파일의 메타-데이터 중 적어도 일부분을 상기 서버로부터 수신하게 하는 프로그램 코드로서, 상기 수신된 메타-데이터가 적어도 상기 파일 내의 미디어-데이터 범위들의 위치들을 포함하는 프로그램 코드,
    상기 원격 통신 장치로 하여금 상기 수신된 메타-데이터를 기반으로 하여 상기 파일 내의 원하는 미디어-데이터 부분의 위치를 결정하게 하는 프로그램 코드, 및
    상기 원격 통신 장치로 하여금 상기 클라이언트에 전송될 미디어-데이터 범위를 상기 서버에 통지하라는 요구를 상기 서버에 전송하게 하는 프로그램 코드를 포함하며,
    상기 컴퓨터 프로그램은,
    상기 원격 통신 장치로 하여금 상기 파일 내의 메타-데이터의 크기를 나타내는 상기 파일 중 적어도 일부분을 상기 서버로부터 요구하도록 하는 프로그램 코드,
    상기 원격 통신 장치로 하여금 상기 메타-데이터의 크기를 나타내는 상기 파일 중 적어도 일부분을 상기 서버로부터 수신하도록 하는 프로그램 코드, 및
    상기 원격 통신 장치로 하여금 상기 수신된 크기 정보를 기반으로 하여 상기 파일 내의 메타-데이터 부분의 위치를 결정하도록 하는 프로그램 코드를 더 포함하는 컴퓨터로 읽을 수 있는 기록매체.
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
KR1020067011180A 2003-11-07 2004-11-04 서버로부터 클라이언트로의 스트리밍 KR100885753B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/704,357 2003-11-07
US10/704,357 US20050102371A1 (en) 2003-11-07 2003-11-07 Streaming from a server to a client

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020087026030A Division KR20080108568A (ko) 2003-11-07 2004-11-04 서버로부터 클라이언트로의 스트리밍

Publications (2)

Publication Number Publication Date
KR20060108706A KR20060108706A (ko) 2006-10-18
KR100885753B1 true KR100885753B1 (ko) 2009-02-26

Family

ID=34552104

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020087026030A KR20080108568A (ko) 2003-11-07 2004-11-04 서버로부터 클라이언트로의 스트리밍
KR1020067011180A KR100885753B1 (ko) 2003-11-07 2004-11-04 서버로부터 클라이언트로의 스트리밍

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020087026030A KR20080108568A (ko) 2003-11-07 2004-11-04 서버로부터 클라이언트로의 스트리밍

Country Status (8)

Country Link
US (1) US20050102371A1 (ko)
EP (1) EP1680898A1 (ko)
JP (1) JP4516082B2 (ko)
KR (2) KR20080108568A (ko)
CN (1) CN1902865A (ko)
AU (1) AU2004307804B2 (ko)
TW (1) TW200522632A (ko)
WO (1) WO2005046140A1 (ko)

Families Citing this family (151)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7068729B2 (en) * 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US6307487B1 (en) 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
US7333798B2 (en) 2002-08-08 2008-02-19 Value Added Communications, Inc. Telecommunication call management and monitoring system
US8509736B2 (en) 2002-08-08 2013-08-13 Global Tel*Link Corp. Telecommunication call management and monitoring system with voiceprint verification
EP1552617A2 (en) 2002-10-05 2005-07-13 Digital Fountain, Inc. Systematic encoding and decoding of chain reaction codes
US7979886B2 (en) 2003-10-17 2011-07-12 Telefonaktiebolaget Lm Ericsson (Publ) Container format for multimedia presentations
US7673062B2 (en) * 2003-11-18 2010-03-02 Yahoo! Inc. Method and apparatus for assisting with playback of remotely stored media files
US7519274B2 (en) 2003-12-08 2009-04-14 Divx, Inc. File format for multiple track digital data
US8472792B2 (en) 2003-12-08 2013-06-25 Divx, Llc Multimedia distribution system
WO2005064891A1 (en) * 2003-12-27 2005-07-14 Sk Telecom Co., Ltd. RTSP-Based Multimedia Control Method
US7720983B2 (en) * 2004-05-03 2010-05-18 Microsoft Corporation Fast startup for streaming media
JP4971144B2 (ja) * 2004-05-07 2012-07-11 デジタル ファウンテン, インコーポレイテッド ファイルダウンロードおよびストリーミングのシステム
US20060037057A1 (en) * 2004-05-24 2006-02-16 Sharp Laboratories Of America, Inc. Method and system of enabling trick play modes using HTTP GET
US7783021B2 (en) 2005-01-28 2010-08-24 Value-Added Communications, Inc. Digital telecommunications call management and monitoring system
JP4719506B2 (ja) * 2005-05-19 2011-07-06 キヤノン株式会社 端末装置、コンテンツ再生方法、及びコンピュータプログラム
US8438281B2 (en) * 2005-07-06 2013-05-07 Cisco Technology, Inc. Techniques for accounting for multiple transactions in a transport control protocol (TCP) payload
CN100444546C (zh) * 2005-08-11 2008-12-17 腾讯科技(深圳)有限公司 一种移动终端及在移动终端上实现流媒体下载的方法
CN101300810A (zh) * 2005-09-01 2008-11-05 诺基亚公司 用于将svg内容嵌入进iso基本媒体文件格式以便渐进地下载或流式传输富媒体内容的方法
WO2007074520A1 (ja) * 2005-12-27 2007-07-05 Mitsubishi Denki Kabushiki Kaisha 配信装置及び再生装置
EP1969856B1 (en) * 2006-01-05 2012-08-15 Telefonaktiebolaget LM Ericsson (publ) Media container file management
US9294728B2 (en) 2006-01-10 2016-03-22 Imagine Communications Corp. System and method for routing content
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
US7515710B2 (en) 2006-03-14 2009-04-07 Divx, Inc. Federated digital rights management scheme including trusted systems
US7971129B2 (en) 2006-05-10 2011-06-28 Digital Fountain, Inc. Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9178535B2 (en) * 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US7729381B2 (en) * 2006-09-15 2010-06-01 At&T Intellectual Property I, L.P. In-band media performance monitoring
US8180920B2 (en) 2006-10-13 2012-05-15 Rgb Networks, Inc. System and method for processing content
WO2008086313A1 (en) 2007-01-05 2008-07-17 Divx, Inc. Video distribution system including progressive playback
US20080168516A1 (en) * 2007-01-08 2008-07-10 Christopher Lance Flick Facilitating Random Access In Streaming Content
US7797633B2 (en) * 2007-01-08 2010-09-14 Apple Inc. Streaming to media device during acquisition with random access
US20080201158A1 (en) 2007-02-15 2008-08-21 Johnson Mark D System and method for visitation management in a controlled-access environment
US8489702B2 (en) 2007-06-22 2013-07-16 Apple Inc. Determining playability of media files with minimal downloading
US8627509B2 (en) 2007-07-02 2014-01-07 Rgb Networks, Inc. System and method for monitoring content
US9852219B2 (en) * 2007-08-20 2017-12-26 Nokia Technologies Oy Segmented metadata and indexes for streamed multimedia data
BRPI0721958A2 (pt) * 2007-08-30 2014-03-18 Thomson Licensing Um sistema ponto a ponto e cache unificado para serviços de conteúdo em redes em malha sem fios
US9357061B2 (en) 2007-09-10 2016-05-31 Dsi-Iti, Llc System and method for the automatic distribution of inmate phone recordings
JP5027305B2 (ja) * 2007-09-12 2012-09-19 デジタル ファウンテン, インコーポレイテッド 信頼できる通信を可能にするためのソース識別情報の生成および伝達
WO2009036461A2 (en) * 2007-09-13 2009-03-19 Lightspeed Audio Labs, Inc. System and method for streamed-media distribution using a multicast, peer-to-peer network
US8295457B2 (en) 2007-09-26 2012-10-23 Dsi-Iti, Llc System and method for controlling free phone calls through an institutional phone system
US8635360B2 (en) 2007-10-19 2014-01-21 Google Inc. Media playback point seeking using data range requests
CN101861583B (zh) 2007-11-16 2014-06-04 索尼克Ip股份有限公司 用于多媒体文件的分级及简化索引结构
CN101911693A (zh) * 2007-12-03 2010-12-08 诺基亚公司 用于以iso基本媒体文件格式存储通知消息的系统和方法
US8543720B2 (en) * 2007-12-05 2013-09-24 Google Inc. Dynamic bit rate scaling
TW200943975A (en) * 2008-01-09 2009-10-16 Nokia Corp Systems and methods for media container file generation
US9705935B2 (en) * 2008-01-14 2017-07-11 Qualcomm Incorporated Efficient interworking between circuit-switched and packet-switched multimedia services
US9185158B2 (en) * 2008-04-09 2015-11-10 Level 3 Communications, Llc Content delivery in a network
US9426244B2 (en) 2008-04-09 2016-08-23 Level 3 Communications, Llc Content delivery in a network
US9106802B2 (en) 2008-04-17 2015-08-11 Sony Corporation Dual-type of playback for multimedia content
US7979570B2 (en) * 2008-05-12 2011-07-12 Swarmcast, Inc. Live media delivery over a packet-based computer network
CN101287107B (zh) * 2008-05-29 2010-10-13 腾讯科技(深圳)有限公司 媒体文件的点播方法、系统和设备
WO2009155356A1 (en) 2008-06-18 2009-12-23 Onion Networks, KK Traffic and cost containment for internet access by adapting the coding rate when distributing- media content
US9473812B2 (en) 2008-09-10 2016-10-18 Imagine Communications Corp. System and method for delivering content
US8081635B2 (en) * 2008-10-08 2011-12-20 Motorola Solutions, Inc. Reconstruction of errored media streams in a communication system
WO2010045289A1 (en) 2008-10-14 2010-04-22 Ripcode, Inc. System and method for progressive delivery of transcoded media content
CN101729875A (zh) * 2008-10-24 2010-06-09 鸿富锦精密工业(深圳)有限公司 多媒体文件播放方法和媒体播放装置
WO2010065757A1 (en) 2008-12-04 2010-06-10 Swarmcast, Inc. Adaptive playback rate with look-ahead
TWI392309B (zh) * 2008-12-11 2013-04-01 Ind Tech Res Inst 接合多媒體串流於通訊網路的裝置與方法
WO2010085470A1 (en) 2009-01-20 2010-07-29 Ripcode, Inc. System and method for splicing media files
JP2010212948A (ja) * 2009-03-10 2010-09-24 Sony Corp 再生装置、再生方法、記録装置、記録方法、プログラム、及び、データ構造
US8909806B2 (en) * 2009-03-16 2014-12-09 Microsoft Corporation Delivering cacheable streaming media presentations
US20100262711A1 (en) * 2009-04-09 2010-10-14 Nokia Corporation Systems, methods, and apparatuses for media file streaming
US9948708B2 (en) * 2009-06-01 2018-04-17 Google Llc Data retrieval based on bandwidth cost and delay
CA2765532C (en) * 2009-06-15 2015-06-02 Research In Motion Limited Methods and apparatus to facilitate client controlled sessionless adaptation
US9680892B2 (en) 2009-06-26 2017-06-13 Adobe Systems Incorporated Providing integration of multi-bit-rate media streams
US8205004B1 (en) 2009-06-26 2012-06-19 Adobe Systems Incorporated Multi-bit-rate streaming delivery
US9537957B2 (en) 2009-09-02 2017-01-03 Lenovo (Singapore) Pte. Ltd. Seamless application session reconstruction between devices
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
US20110096828A1 (en) * 2009-09-22 2011-04-28 Qualcomm Incorporated Enhanced block-request streaming using scalable encoding
US9237387B2 (en) 2009-10-06 2016-01-12 Microsoft Technology Licensing, Llc Low latency cacheable media streaming
CN101697584B (zh) * 2009-10-16 2011-11-09 深圳市同洲电子股份有限公司 一种文件适配方法、系统以及文件管理系统
US8914835B2 (en) * 2009-10-28 2014-12-16 Qualcomm Incorporated Streaming encoded video data
CN102055718B (zh) * 2009-11-09 2014-12-31 华为技术有限公司 一种在http streaming系统中实现分层请求内容的方法,装置和系统
KR101750049B1 (ko) 2009-11-13 2017-06-22 삼성전자주식회사 적응적인 스트리밍 방법 및 장치
KR101750048B1 (ko) 2009-11-13 2017-07-03 삼성전자주식회사 변속 재생 서비스 제공 방법 및 장치
KR101786051B1 (ko) 2009-11-13 2017-10-16 삼성전자 주식회사 데이터 제공 방법 및 장치와 데이터 수신 방법 및 장치
KR101777347B1 (ko) 2009-11-13 2017-09-11 삼성전자주식회사 부분화에 기초한 적응적인 스트리밍 방법 및 장치
CN102082761A (zh) * 2009-11-27 2011-06-01 浙江省公众信息产业有限公司 一种流媒体协议转换系统及其方法
EP2507995A4 (en) 2009-12-04 2014-07-09 Sonic Ip Inc SYSTEMS AND METHODS FOR TRANSPORTING ELEMENTARY BIT TRAIN CRYPTOGRAPHIC MATERIAL
KR101737084B1 (ko) 2009-12-07 2017-05-17 삼성전자주식회사 메인 콘텐트에 다른 콘텐트를 삽입하여 스트리밍하는 방법 및 장치
US8266314B2 (en) * 2009-12-16 2012-09-11 International Business Machines Corporation Automated audio or video subset network load reduction
KR101777348B1 (ko) 2010-02-23 2017-09-11 삼성전자주식회사 데이터 전송 방법 및 장치와 데이터 수신 방법 및 장치
WO2011108893A2 (en) * 2010-03-05 2011-09-09 Samsung Electronics Co., Ltd. Method and apparatus for generating and reproducing adaptive stream based on file format, and recording medium thereof
CN102195936B (zh) * 2010-03-09 2016-06-15 新奥特(北京)视频技术有限公司 多媒体文件的存储方法及系统、读取方法及系统
KR20110105710A (ko) * 2010-03-19 2011-09-27 삼성전자주식회사 복수의 챕터를 포함하는 콘텐트를 적응적으로 스트리밍하는 방법 및 장치
KR101837687B1 (ko) 2010-06-04 2018-03-12 삼성전자주식회사 콘텐트의 품질을 결정하는 복수의 인자에 기초한 적응적인 스트리밍 방법 및 장치
US9049497B2 (en) 2010-06-29 2015-06-02 Qualcomm Incorporated Signaling random access points for streaming video data
KR20120034550A (ko) * 2010-07-20 2012-04-12 한국전자통신연구원 스트리밍 컨텐츠 제공 장치 및 방법
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
CN102143133B (zh) * 2010-08-05 2013-12-18 华为技术有限公司 Http流播放方式中支持广告内容的方法、装置和系统
US9319448B2 (en) * 2010-08-10 2016-04-19 Qualcomm Incorporated Trick modes for network streaming of coded multimedia data
EP3742741A1 (en) * 2010-09-01 2020-11-25 Ideahub Inc. Method and device for providing content via http adaptive streaming using a media presentation description including a group element
US9467493B2 (en) 2010-09-06 2016-10-11 Electronics And Telecommunication Research Institute Apparatus and method for providing streaming content
EP2615841B1 (en) 2010-09-06 2017-12-13 Electronics And Telecommunications Research Institute Apparatus and method for providing streaming content
KR101754414B1 (ko) * 2010-09-06 2017-07-07 한국전자통신연구원 스트리밍 컨텐츠 제공 장치 및 방법
US20130173760A1 (en) * 2010-09-20 2013-07-04 Humax Co., Ltd. Processing method to be implemented upon the occurrence of an expression switch in http streaming
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 한국항공대학교산학협력단 스트리밍 콘텐츠 제공 장치 및 방법
US10911550B2 (en) 2010-11-09 2021-02-02 Microsoft Technology Licensing, Llc Partial loading and editing of documents from a server
US8880633B2 (en) * 2010-12-17 2014-11-04 Akamai Technologies, Inc. Proxy server with byte-based include interpreter
CN102656857B (zh) * 2010-12-17 2015-01-07 华为技术有限公司 一种启动阶段的流媒体数据获取、发送方法及装置
US9247312B2 (en) 2011-01-05 2016-01-26 Sonic Ip, Inc. Systems and methods for encoding source media in matroska container files for adaptive bitrate streaming using hypertext transfer protocol
WO2012093202A1 (en) * 2011-01-07 2012-07-12 Nokia Corporation Method and apparatus for signaling presentation
US8849950B2 (en) 2011-04-07 2014-09-30 Qualcomm Incorporated Network streaming of video data using byte range requests
KR101285654B1 (ko) * 2011-07-06 2013-08-14 주식회사 씬멀티미디어 메타 데이터와 미디어 데이터가 분리되어 있는 파일 형식의 멀티미디어 컨텐츠를 프로그래시브 다운로드하기 위한 실시간 트랜스코딩 장치
US20130042100A1 (en) * 2011-08-09 2013-02-14 Nokia Corporation Method and apparatus for forced playback in http streaming
US9467708B2 (en) 2011-08-30 2016-10-11 Sonic Ip, Inc. Selection of resolutions for seamless resolution switching of multimedia content
US8787570B2 (en) 2011-08-31 2014-07-22 Sonic Ip, Inc. Systems and methods for automatically genenrating top level index files
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US8909922B2 (en) 2011-09-01 2014-12-09 Sonic Ip, Inc. Systems and methods for playing back alternative streams of protected content protected using common cryptographic information
CN103227803A (zh) * 2012-01-30 2013-07-31 华为技术有限公司 一种物联网资源获取的方法、客户端和物联网资源装置
US9106474B2 (en) * 2012-03-28 2015-08-11 National Instruments Corporation Lossless data streaming to multiple clients
US8892638B2 (en) * 2012-05-10 2014-11-18 Microsoft Corporation Predicting and retrieving data for preloading on client device
KR102020363B1 (ko) * 2012-10-31 2019-09-10 삼성전자 주식회사 적응형 스트리밍을 이용한 미디어 세그먼트 송수신 방법 및 장치
US9596288B2 (en) 2012-12-04 2017-03-14 Pixia Corp. Method and system of requesting information from a server computer
US9191457B2 (en) 2012-12-31 2015-11-17 Sonic Ip, Inc. Systems, methods, and media for controlling delivery of content
US10015437B2 (en) * 2013-01-15 2018-07-03 Qualcomm Incorporated Supporting transport diversity and time-shifted buffers for media streaming over a network
CN104661058B (zh) * 2013-11-20 2018-01-16 深圳市云帆世纪科技有限公司 Mp4视频点播的数据流传输方法、客户端及点播系统
CN104702576B (zh) 2013-12-09 2018-02-09 腾讯科技(深圳)有限公司 语音传输方法、装置和语音服务系统
US9280413B2 (en) 2013-12-12 2016-03-08 Talkatone, Llc Redundant encoding
US9282133B2 (en) * 2013-12-12 2016-03-08 Ooma, Inc. Communicating control information within a real-time stream
US10095759B1 (en) 2014-01-27 2018-10-09 Microstrategy Incorporated Data engine integration and data refinement
US11386085B2 (en) 2014-01-27 2022-07-12 Microstrategy Incorporated Deriving metrics from queries
US10255320B1 (en) 2014-01-27 2019-04-09 Microstrategy Incorporated Search integration
US11921715B2 (en) 2014-01-27 2024-03-05 Microstrategy Incorporated Search integration
US20150319612A1 (en) 2014-05-01 2015-11-05 Global Tel*Link Corp. System and Method for Authenticating Called Parties of Individuals Within a Controlled Environment
US10225298B2 (en) 2015-01-06 2019-03-05 Divx, Llc Systems and methods for encoding and sharing content between devices
US10412138B2 (en) 2015-03-02 2019-09-10 Qualcomm Incorporated Indication for partial segment
US10749930B2 (en) 2015-03-02 2020-08-18 Qualcomm Incorporated Indication for partial segment
US10659507B2 (en) * 2015-03-02 2020-05-19 Qualcomm Incorporated Indication for partial segment
US10075755B2 (en) * 2015-09-18 2018-09-11 Sorenson Media, Inc. Digital overlay offers on connected media devices
US9769310B2 (en) 2015-11-19 2017-09-19 Global Tel*Link Corporation Authentication and control of incoming communication
KR20180107160A (ko) * 2016-02-17 2018-10-01 삼성전자주식회사 멀티미디어 서비스의 컨텐츠 관련 정보 제공 방법 및 장치
US10572961B2 (en) 2016-03-15 2020-02-25 Global Tel*Link Corporation Detection and prevention of inmate to inmate message relay
US9609121B1 (en) 2016-04-07 2017-03-28 Global Tel*Link Corporation System and method for third party monitoring of voice and video calls
US10735431B2 (en) 2016-11-02 2020-08-04 Global Tel*Link Corp. Control of internet browsing in a secure environment
US10708369B2 (en) 2016-11-02 2020-07-07 Global Tel*Link Corp. Control of internet browsing in a secure environment
US9990826B1 (en) 2016-12-07 2018-06-05 Global Tel*Link Corporation System for monitoring offender during correctional supervisory program
US9794399B1 (en) 2016-12-23 2017-10-17 Global Tel*Link Corporation System and method for multilingual authentication access to communication system in controlled environment
US10027797B1 (en) 2017-05-10 2018-07-17 Global Tel*Link Corporation Alarm control for inmate call monitoring
US10225396B2 (en) 2017-05-18 2019-03-05 Global Tel*Link Corporation Third party monitoring of a activity within a monitoring platform
US10860786B2 (en) 2017-06-01 2020-12-08 Global Tel*Link Corporation System and method for analyzing and investigating communication data from a controlled environment
US9912821B1 (en) 2017-06-30 2018-03-06 Global Tel*Link Corporation Call processing system for modifying inmate communication limits
JP2019191931A (ja) * 2018-04-25 2019-10-31 富士通株式会社 情報処理システム、入力値検証支援プログラム、および入力値検証プログラム
US11614970B2 (en) 2019-12-06 2023-03-28 Microstrategy Incorporated High-throughput parallel data transmission
US11567965B2 (en) 2020-01-23 2023-01-31 Microstrategy Incorporated Enhanced preparation and integration of data sets

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003073768A1 (en) 2002-02-25 2003-09-04 Sony Electronics, Inc. Method and apparatus for supporting avc in mp4

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5892915A (en) * 1997-04-25 1999-04-06 Emc Corporation System having client sending edit commands to server during transmission of continuous media from one clip in play list for editing the play list
US6574618B2 (en) * 1998-07-22 2003-06-03 Appstream, Inc. Method and system for executing network streamed application
US6934723B2 (en) * 1999-12-23 2005-08-23 International Business Machines Corporation Method for file system replication with broadcasting and XDSM
EP1146729A3 (en) * 2000-03-15 2005-07-06 International Business Machines Corporation Method and system for streaming media data in heterogenous environments
EP1273152B1 (en) * 2000-04-08 2006-08-02 Sun Microsystems, Inc. Method of streaming a single media track to multiple clients
US20020083124A1 (en) * 2000-10-04 2002-06-27 Knox Christopher R. Systems and methods for supporting the delivery of streamed content
US8831995B2 (en) * 2000-11-06 2014-09-09 Numecent Holdings, Inc. Optimized server for streamed applications
US7143433B1 (en) * 2000-12-27 2006-11-28 Infovalve Computing Inc. Video distribution system using dynamic segmenting of video data files
US7130908B1 (en) * 2001-03-13 2006-10-31 Intelsat Ltd. Forward cache management between edge nodes in a satellite based content delivery system
US7089309B2 (en) * 2001-03-21 2006-08-08 Theplatform For Media, Inc. Method and system for managing and distributing digital media
US6757735B2 (en) * 2001-07-03 2004-06-29 Hewlett-Packard Development Company, L.P. Method for distributing multiple description streams on servers in fixed and mobile streaming media systems
FI20011871A (fi) * 2001-09-24 2003-03-25 Nokia Corp Multimediadatan prosessointi
US20030122966A1 (en) * 2001-12-06 2003-07-03 Digeo, Inc. System and method for meta data distribution to customize media content playback
FI20012558A (fi) * 2001-12-21 2003-06-22 Oplayo Oy Menetelmä ja järjestely videoesityksen lähettämiseksi
US20030135633A1 (en) * 2002-01-04 2003-07-17 International Business Machines Corporation Streaming and managing complex media content on Web servers
US7941553B2 (en) * 2002-10-18 2011-05-10 International Business Machines Corporation Method and device for streaming a media file over a distributed information system
US20060092938A1 (en) * 2003-02-26 2006-05-04 Koninklijke Philips Electronics N.V. System for broadcasting multimedia content
US7606928B2 (en) * 2003-03-21 2009-10-20 Nokia Corporation Method and device for controlling receiver buffer fullness level in multimedia streaming
KR100781511B1 (ko) * 2005-06-29 2007-12-03 삼성전자주식회사 홈 네트워크를 기반으로 하는 스트리밍 서비스 방법 및시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003073768A1 (en) 2002-02-25 2003-09-04 Sony Electronics, Inc. Method and apparatus for supporting avc in mp4

Also Published As

Publication number Publication date
AU2004307804B2 (en) 2010-03-04
AU2004307804A1 (en) 2005-05-19
JP2007515096A (ja) 2007-06-07
US20050102371A1 (en) 2005-05-12
KR20060108706A (ko) 2006-10-18
TW200522632A (en) 2005-07-01
CN1902865A (zh) 2007-01-24
AU2004307804A2 (en) 2005-05-19
WO2005046140A1 (en) 2005-05-19
JP4516082B2 (ja) 2010-08-04
KR20080108568A (ko) 2008-12-15
EP1680898A1 (en) 2006-07-19

Similar Documents

Publication Publication Date Title
KR100885753B1 (ko) 서버로부터 클라이언트로의 스트리밍
US20230179837A1 (en) Network Video Streaming with Trick Play Based on Separate Trick Play Files
US20030061369A1 (en) Processing of multimedia data
TWI668982B (zh) 用於多媒體和檔案傳輸的傳輸介面的方法及伺服器設備、及用於記錄相關指令於其上的電腦可讀取儲存媒體
US9247317B2 (en) Content streaming with client device trick play index
CN111837403B (zh) 处理用于以流传送媒体数据的交互性事件
US9596522B2 (en) Fragmented file structure for live media stream delivery
TW201725911A (zh) 決定用於媒體傳輸的媒體傳遞事件位置
WO2004077790A1 (en) System for broadcasting multimedia content
US20110299586A1 (en) Quality adjustment using a fragmented media stream
KR102085192B1 (ko) 렌더링 시간 제어
US20220131921A1 (en) Multicast to unicast conversion
Lohan et al. Integrated system for multimedia delivery over broadband ip networks
US20220131920A1 (en) Multicast to unicast conversion
Setlur et al. More: a mobile open rich media environment
Kalva Delivering MPEG-4 Based Audio-Visual Services
Bechqito High Definition Video Streaming Using H. 264 Video Compression
Ohlenroth et al. RTP packetization of MPEG-4 elementary streams
WO2015064384A1 (ja) 送信装置、送信方法、受信装置、及び、受信方法
KR101568317B1 (ko) Ip 카메라에서 hls 프로토콜을 지원하는 시스템 및 그 방법
Bouzakaria Advanced contributions in HTTP adaptive streaming
Althun et al. Streaming services: Specification and implementation based on XML and JMF
Ho Mobile Multimedia Streaming Library

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
A107 Divisional application of patent
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee