KR101320277B1 - 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하기 위한 방법, 시스템 및 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능 기억 매체, 그리고 연속 재생 또는 스트리밍 재생 중 하나에 대한 요청을 서비스하는 방법 - Google Patents
멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하기 위한 방법, 시스템 및 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능 기억 매체, 그리고 연속 재생 또는 스트리밍 재생 중 하나에 대한 요청을 서비스하는 방법 Download PDFInfo
- Publication number
- KR101320277B1 KR101320277B1 KR1020107025705A KR20107025705A KR101320277B1 KR 101320277 B1 KR101320277 B1 KR 101320277B1 KR 1020107025705 A KR1020107025705 A KR 1020107025705A KR 20107025705 A KR20107025705 A KR 20107025705A KR 101320277 B1 KR101320277 B1 KR 101320277B1
- Authority
- KR
- South Korea
- Prior art keywords
- transport stream
- playback
- streaming playback
- metadata
- multimedia content
- Prior art date
Links
- 238000000034 method Methods 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 8
- 230000009977 dual effect Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
- H04N7/17318—Direct or substantially direct transmission and handling of requests
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/61—Network physical structure; Signal processing
- H04N21/6106—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
- H04N21/6125—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8455—Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/161—Encoding, multiplexing or demultiplexing different image signal components
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/172—Processing image signals image signals comprising non-image signal components, e.g. headers or format information
- H04N13/178—Metadata, e.g. disparity information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/85406—Content authoring involving a specific file format, e.g. MP4 format
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하는 것은, 멀티미디어 콘텐츠의 기본 스트림을 고정된 길이의 영상 그룹으로 부호화하는 단계, 상기 부호화된 멀티미디어 콘텐츠를 전송 스트림으로 다중화하는 단계, 상기 전송 스트림 내부에서 각 GOP 헤더의 데이터 오프셋들을 찾아내는 단계 및 상기 전송 스트림과 함께 상기 데이터 오프셋들을 서버로 업로드하는 단계를 포함한다.
Description
<관련 출원의 상호 참조>
본 출원은 2008년 4월 17일자로 출원된, 발명의 명칭이 "내장된 타이밍 정보 및 기타 의미 제약을 갖는 시청각 콘텐츠를 스트리밍하기 위한 메커니즘(Mechanism for Streaming Audiovisual Content with Embedded Timing Information and Other Semantic Constraints)"인 미국 가특허 출원 제61/045,917호의 35 U.S.C. §119(e) 하에서의 우선권의 이익을 주장한다. 상기 가특허 출원의 개시는 참조로서 본 명세서에 포함된다.
본 발명은 멀티미디어 콘텐츠에 관한 것이며, 보다 구체적으로는 이러한 멀티미디어 콘텐츠를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하는 것에 관한 것이다.
인터넷을 통해 미디어를 스트리밍함으로써 웹 사용자는 소리와 동영상을 구비한 멀티미디어를 경험할 수 있게 되었다. 인터넷을 통해 미디어를 스트리밍하는 것은 저비용이며, 편리하고, 하나의 글로벌 통신 표준을 사용하는 기술적인 단순함을 제공한다. 이러한 강력한 통신 수단으로의 접근을 한때 거부했던 사용자들도 이제는 웹을 사용하여 전 세계의 사람들과 접속한다.
멀티미디어 스트리밍은 멀티미디어 파일을 압축한 후 이것을 작은 패킷들로 쪼개어 동작한다. 이후, 패킷들은 잇따라서 인터넷을 통해 전송된다. 요청했던 사용자에게 패킷들이 도달하면, 패킷들은 사용자의 시스템에서 재생될 수 있는 형태로 압축해제되어 다시 어셈블링된다. 끊김 없는 재생이라는 착각을 유지하기 위해, 많은 패킷들이 재생 전에 사용자의 기계로 다운로드되고 사용자의 기계에서 버퍼링된다. 버퍼링된 패킷이 재생됨에 따라, 더 많은 패킷이 재생을 위해 다운로드되고 대기된다(queue up).
그러나, 오디오-비디오 시스템은 통상, 멀티미디어 콘텐츠가 스트리밍 재생을 위해 특별히 구성되지 않는다면 부분적으로 다운로드된 콘텐츠의 재생을 막는 타이밍 정보 및 기타 의미 제약을 갖는다. 그러므로, 콘텐츠의 연속 재생 및 스트리밍 재생을 위해 별도의 파일들이 만들어지고 저장된다.
일 구현에서, 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하는 방법이 개시된다. 이 방법은, 멀티미디어 콘텐츠의 기본 스트림을 고정된 길이의 영상 그룹으로 부호화하는 단계; 상기 부호화된 멀티미디어 콘텐츠를 전송 스트림(transport stream)으로 다중화하는 단계; 상기 전송 스트림 내부에서 각 GOP 헤더의 데이터 오프셋들을 찾아내는 단계; 및 상기 전송 스트림과 함께 상기 데이터 오프셋들을 서버로 업로드하는 단계를 포함한다.
다른 구현에서, 연속 재생 또는 스트리밍 재생 중 하나에 대한 요청을 서비스(service)하는 방법이 개시된다. 이 방법은, (1) 연속 재생에 대한 요청이 수신될 경우, (a) 전송 스트림 전체를 클라이언트에 전송하는 단계; 및 (2) 스트리밍 재생에 대한 요청이 수신될 경우, (a) 상기 스트리밍 재생의 청크 크기(chunk size)를 결정하는 단계; (b) 상기 청크 크기와 가장 일치하는 본래의 GOP 길이의 고정된 배수를 결정하는 단계 -상기 본래의 GOP 길이는 멀티미디어 콘텐츠의 기본 스트림을 부호화하는 데에 사용되는 GOP의 고정된 길이임-; 및 (c) 상기 결정된, 기본 스트림의 본래의 GOP 길이의 고정된 배수를 클라이언트에 전송하는 단계를 포함한다.
또 다른 구현에서, 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하기 위한 시스템이 개시된다. 이 시스템은, 멀티미디어 콘텐츠의 기본 스트림을 고정된 길이의 GOP(group of pictures)로 부호화하도록 구성된 인코더; (1) 상기 부호화된 멀티미디어 콘텐츠를 전송 스트림으로 다중화하고, (2) 상기 전송 스트림 내부에서 각 GOP 헤더의 데이터 오프셋들을 찾아내며, (3) 상기 전송 스트림과 함께 상기 데이터 오프셋들을 업로드하도록 구성된 멀티플렉서를 포함한다.
추가의 구현에서, 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하기 위한 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능 기억 매체가 개시된다. 이 컴퓨터 프로그램은, 컴퓨터로 하여금, 멀티미디어 콘텐츠의 기본 스트림을 고정된 길이의 영상 그룹으로 부호화하고; 상기 부호화된 멀티미디어 콘텐츠를 전송 스트림으로 다중화하고; 상기 전송 스트림 내부에서 각 GOP 헤더의 데이터 오프셋들을 찾아내며; 상기 전송 스트림과 함께 상기 데이터 오프셋들을 서버로 업로드하게 하는 실행가능 명령어들을 포함한다.
본 발명의 기타 특징 및 이점들은 이하의 상세한 설명 및 첨부된 도면을 리뷰한 후 당업자들에게 보다 명백하게 될 것이다.
도 1은 본 발명의 일 구현에 따라, 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하기 위한 프로세스를 도시하는 흐름도.
도 2는 본 발명의 일 구현에 따라, 연속 재생 또는 스트리밍 재생 둘 중 하나에 대한 요청을 서비스하기 위한 프로세스를 도시하는 흐름도.
도 3은 본 발명의 일 구현에 따라, 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하기 위한 듀얼 재생 가능 시스템의 블록도.
도 4a는 컴퓨터 시스템 및 사용자를 나타내는 도면.
도 4b는 듀얼 재생 가능 시스템을 호스팅하는 컴퓨터 시스템을 도시하는 기능 블록도.
도 2는 본 발명의 일 구현에 따라, 연속 재생 또는 스트리밍 재생 둘 중 하나에 대한 요청을 서비스하기 위한 프로세스를 도시하는 흐름도.
도 3은 본 발명의 일 구현에 따라, 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하기 위한 듀얼 재생 가능 시스템의 블록도.
도 4a는 컴퓨터 시스템 및 사용자를 나타내는 도면.
도 4b는 듀얼 재생 가능 시스템을 호스팅하는 컴퓨터 시스템을 도시하는 기능 블록도.
본 명세서에 개시된 일부 구현들은 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하기 위한 기술을 제공한다. 본 명세서를 읽은 후에는 각종 대안의 구현 및 대안의 응용의 본 발명을 어떻게 구현할 것인가가 명백하게 될 것이다. 그러나, 본 발명의 각종 구현이 본 명세서에서 설명되지만, 이러한 구현은 예로서 제시(present)된 것일 뿐이며, 제한하지 않는다는 것을 이해할 것이다. 이와 같이, 각종 대안의 구현에 대한 이러한 구체적인 설명은 본 발명의 범위 또는 폭을 제한하는 것으로 해석되어서는 안 된다.
일례에서, 콘텐츠 제공자는 콘텐츠 항목(예를 들면, DVD 또는 블루레이 디스크 포맷의 영화)에 대한 부호화된 데이터를 생성하고, 이 부호화된 데이터를 서버 컴퓨터 시스템에 저장한다. 이 부호화된 데이터는 연속 재생에 사용될 수 있다(예를 들면, 부호화된 데이터 전체가 저장 장치에 존재할 때 부호화된 데이터의 콘텐츠를 보여줌(present)). 이것은 광 디스크 또는 하드 디스크 드라이브에 저장되어 있던 디지털 파일(들)로부터 영화를 보여주는 통상적인 방법이다. 그러나, 부호화된 데이터 자체는 모든 세트의 부호화된 데이터가 기억 장치에 존재할 때에만 보여질 수 있다. 따라서, 클라이언트 컴퓨터 시스템의 연속 재생 또는 연속 프레젠테이션을 제공하기 위해서는, 서버 시스템은 클라이언트 시스템에 부호화된 데이터 전체를 제공한다. 일단 클라이언트 시스템이 부호화된 데이터 전체를 가지면, 클라이언트 시스템은 연속 재생을 위해 그것을 사용할 수 있다.
콘텐츠 제공자는 또한 클라이언트 컴퓨터 시스템의 스트리밍 재생 또는 스트리밍 프레젠테이션(예를 들면, 부호화된 데이터의 일부만이 저장 장치에 존재하는 경우 부호화된 데이터의 콘텐츠를 보여줌)을 위한 스트리밍 재생 메타데이터를 생성한다. 이러한 재생 유형(즉, 스트리밍 재생)은 부호화된 데이터가 네트워크 서버로부터 다운로드됨에 따라 콘텐츠를 점진적으로 보여줄 때 사용된다. 이 (스트리밍 재생용) 메타데이터는 부호화된 데이터로부터 스트리밍 재생을 제공하는 데에 필요한 타이밍 정보 및 의미 정보를 나타낸다. 메타데이터는 클라이언트 시스템에 고유하며, 부호화된 데이터가 생성된 후에 생성될 수 있다. 클라이언트 컴퓨터 시스템에 스트리밍 재생 또는 스트리밍 프레젠테이션을 제공하기 위해, 콘텐츠 제공자의 서버 시스템은 스트리밍 재생 메타데이터를 클라이언트 시스템에 제공한 후 클라이언트 시스템에 부호화된 데이터를 스트리밍한다. 일 구현에서, 스트리밍 재생 메타데이터의 일부 또한 클라이언트에 스트리밍될 수 있다. 클라이언트 시스템은, 콘텐츠를 보여줄 수 있는 부호화된 데이터가 수신될 때, 수신된 스트리밍 재생 메타데이터를 사용하여 부호화된 데이터를 처리한다.
콘텐츠 데이터의 연속 재생 버전을 준비하기 위해 콘텐츠 데이터가 부호화될 때, 부호화된 동일한 데이터가 연속 재생과 스트리밍 재생 둘 다에 사용될 수 있게 하는 메타데이터가 생성되어 보존된다. 부호화는 콘텐츠 데이터의 트랜스코딩, 압축 및/또는 기타 처리를 포함한다. 기타 처리로는, 스트리밍 재생 메타데이터의 생성 및 보존, 스트리밍 재생 메타데이터와 부호화된 데이터를 사용하여 스트리밍 재생을 제공하는 것을 포함하며, 이 부호화된 데이터는 연속 재생에 또한 사용될 수 있다.
상술한 바와 같이, 오디오-비디오 시스템은 통상 부분적으로 다운로드된 콘텐츠의 재생을 방지하는 타이밍 정보 및 기타 의미 제약을 갖는다. 따라서, 콘텐츠의 연속 재생 및 스트리밍 재생을 위해 별도의 파일들이 만들어져야 한다. 새로운 오디오-비디오 시스템에서는, 연속 재생용으로 생성된 콘텐츠가 스트리밍 재생을 제공하기 위해 재사용될 수 있다. 새로운 시스템은 멀티미디어 콘텐츠의 단일 부호(encode)를 생성하고, 모든 의미 정보를 담고 있는(capture) 메타데이터를 생성한다. 일 경우에서, 의미 정보는 멀티미디어 콘텐츠를 스트리밍하기 위해 조정될 필요가 있는 정보를 포함한다. 다른 경우에서, 메타데이터를 사용하여 본래의 부호에서 오프셋을 찾아내고, 스트리밍 호환(streaming-compliant) 버전을 전달한다. 오프셋을 동적으로 찾아내는 이 기능의 이점으로는, 중간 지점에서부터 스트리밍할 수 있는 기능과 네트워크 속도에 기초하여 청크 크기(chunk size)를 조정할 수 있는 기능이 있다. 이러한 기능은 또한 멀티미디어 콘텐츠로의 임의 접근에서도 사용될 수 있다.
일 특정 구현에서, 멀티미디어 콘텐츠의 기본 스트림은 고정된 길이의 영상 그룹(GOP(a group of pictures) 길이)으로 부호화된다. 이리하여 모든 GOP 헤더가 스트리밍에 사용될 수 있는 경계가 된다. 그러므로, 멀티미디어 콘텐츠가 일단 부호화되면, 멀티미디어 콘텐츠는 전송 스트림(transport stream)으로 다중화되고, 이 다중화된 스트림으로부터, 전송 스트림 내부에서 각 GOP 헤더의 데이터 오프셋을 찾아낸다. 이후 전송 스트림과 함께 데이터 오프셋은 서버로 업로드된다. 서버가 연속 재생 요청을 수신하면, 전송 스트림 전체가 전송된다. 이와는 다르게, 스트리밍 재생 요청이 수신되면, 스트리밍 재생의 청크 크기가 결정된다. 이것은 클라이언트 또는 서버에 의해 행해질 수 있다. 이어서, 이 청크 크기와 가장 일치하는 본래의 GOP의 길이의 배수로 멀티미디어 데이터가 전송된다. 따라서, 스트리밍 재생 및 연속 재생 둘 다에 동일한 전송 스트림이 사용된다.
도 1은 본 발명의 일 구현에 따라, 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하기 위한 프로세스(100)를 도시하는 흐름도이다. 도 1에 도시된 구현에서, 멀티미디어 콘텐츠의 기본 스트림은 박스(102)에서 고정된 길이의 영상 그룹(GOP 길이)으로 부호화된다. 이리하여 모든 GOP 헤더가 스트리밍에 사용될 수 있는 경계가 된다. 박스(102)에서 멀티미디어 콘텐츠가 일단 부호화되면, 이 부호화된 멀티미디어 콘텐츠는 박스(104)에서 전송 스트림으로 다중화된다. 박스(106)에서는, 이 다중화된 스트림으로부터, 전송 스트림 내부에서 각 GOP 헤더의 데이터 오프셋을 찾아낸다. 이후 박스(108)에서, 전송 스트림과 함께 데이터 오프셋은 서버로 업로드된다.
도 2는 본 발명의 일 구현에 따라, 연속 재생 요청 또는 스트리밍 재생 요청 둘 중 하나를 서비스하기 위한 프로세스(200)를 도시하는 흐름도이다. 예를 들면, 박스(210)에서 서버가 연속 재생 요청을 수신하면, 박스(220)에서 전송 스트림 전체를 전송한다. 이와는 달리, 박스(210)에서 스트리밍 재생 요청이 수신되면, 박스(230)에서 스트리밍 재생의 청크 크기가 결정된다. 이것은 클라이언트 또는 서버에 의해 행해질 수 있다. 이어서, 박스(232)에서, 청크 크기와 가장 일치하는 본래의 GOP 길이의 고정된 배수가 결정된다. 박스(234)에서, 기본 스트림의 GOP 길이의 결정된 고정된 배수가 전송된다. 따라서, 스트리밍 재생과 연속 재생 둘 다에 동일한 전송 스트림이 사용된다.
도 3은 본 발명의 일 구현에 따라, 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하기 위한 듀얼 재생 가능 시스템(300)의 블록도이다. 도 3의 도시된 구현에서, 시스템(300)은 콘텐츠 제공자(310), 서버(320) 및 클라이언트(330)를 포함한다. 콘텐츠 제공자(310)는 또한 멀티미디어 콘텐츠(312), 인코더(314) 및 멀티플렉서(316)를 포함한다. 일부 구현에서, 서버(320)는 콘텐츠 제공자(310)에 의해 동작되는 서버로서 구성되고, 콘텐츠 제공자(310) 내에 구성된다.
먼저, 인코더(314)는 멀티미디어 콘텐츠(312)의 기본 스트림을 고정된 길이의 영상 그룹(GOP 길이)으로 부호화한다. 이리하여 모든 GOP 헤더가 스트리밍에 사용될 수 있는 경계가 된다. 멀티미디어 콘텐츠가 일단 부호화되면, 멀티플렉서(316)는 이 부호화된 멀티미디어 콘텐츠를 전송 스트림으로 다중화한다. 이 다중화된 스트림으로부터, 전송 스트림 내부에서 각 GOP 헤더의 데이터 오프셋을 찾아낸다. 이후, 콘텐츠 제공자(310)는 전송 스트림과 함께 데이터 오프셋을 서버(320)로 업로드한다.
또한, 서버(320)는 클라이언트(330)로부터 재생 요청 유형(예를 들면, 스트리밍 재생 또는 연속 재생)을 수신한다. 서버(320)가 연속 재생 요청을 수신하면, 서버(320)는 클라이언트(330)에 전송 스트림 전체를 전송한다. 이와는 달리, 즉, 서버(320)가 스트리밍 재생 요청을 수신하면, 서버(320)(또는 클라이언트(330))는 스트리밍 재생의 청크 크기를 결정한다. 이어서, 서버(320)(또는 클라이언트(330))는 이 청크 크기와 가장 일치하는 본래의 GOP 길이의 고정된 배수를 결정하고, 이 기본 스트림의 GOP 길이의 결정된 고정된 배수를 클라이언트(330)에 전송한다. 따라서, 스트리밍 재생과 연속 재생 둘 다에 동일한 전송 스트림이 사용된다.
도 4a는 컴퓨터 시스템(400)과 사용자(402)를 묘사한 것이다. 사용자(402)는 컴퓨터 시스템(400)을 사용하여 연속 재생 및 스트리밍 재생 둘 다의 용도의 멀티미디어 데이터를 제공한다. 컴퓨터 시스템(400)은 듀얼 재생 가능 시스템(490)을 저장하고 실행시킨다.
도 4b는 듀얼 재생 가능 시스템(490)을 호스팅하는 컴퓨터 시스템(400)을 도시하는 기능 블록도이다. 제어기(410)는 프로그램가능한 프로세서이며, 컴퓨터 시스템(400) 및 그 구성요소들의 동작을 제어한다. 제어기(410)는 메모리(420) 또는 내장 제어기 메모리(미도시)로부터 (예를 들면, 컴퓨터 프로그램의 형태로) 명령어를 로드하고, 이 명령어들을 실행시켜 시스템(400)을 제어한다. 그 실행 시, 제어기(410)는 소프트웨어 시스템으로서 듀얼 재생 가능 시스템(490)을 제공한다. 대안으로, 이 서비스는 제어기(410) 또는 컴퓨터 시스템(400)의 별도의 하드웨어 구성요소로서 구현될 수 있다.
메모리(420)는 컴퓨터 시스템(400)의 다른 구성요소가 사용할 수 있도록 데이터를 일시적으로 저장한다. 일 구현에서, 메모리(420)는 RAM으로서 구현된다. 일 구현에서, 메모리(420)는 또한 플래시 메모리 및/또는 ROM과 같은 장기 또는 영속 메모리를 포함한다.
기억 장치(430)는 듀얼 재생 가능 시스템(490)에 의해 사용되는 데이터를 저장하는 것과 같이, 컴퓨터 시스템(400)의 다른 구성요소가 사용할 수 있도록 데이터를 일시적으로 또는 장기간 저장한다. 일 구현에서, 기억 장치(430)는 하드 디스크 드라이브이다.
매체 디바이스(440)는 착탈가능 매체를 수용하여 삽입된 매체에 대해 데이터를 판독하거나 및/또는 데이터를 기입한다. 일 구현에서, 예를 들면, 이 매체 디바이스(440)는 광 디스크 드라이브이다.
사용자 인터페이스(450)는 컴퓨터 시스템(400)의 사용자로부터 사용자 입력을 받아들이고 이 정보를 사용자에게 보여주는 구성요소를 포함한다. 일 구현에서, 사용자 인터페이스(450)는 키보드, 마우스, 오디오 스피커 및 표시 장치를 포함한다. 제어기(410)는 사용자로부터의 입력을 사용하여 컴퓨터 시스템(400)의 동작을 조정한다.
I/O 인터페이스(460)는 외부 기억 장치 또는 주변 장치(예를 들어, 프린터 또는 PDA)와 같은 대응하는 I/O 디바이스에 접속하기 위한 하나 이상의 I/O 포트를 포함한다. 일 구현에서, I/O 인터페이스(460)의 포트로는, USB 포트, PCMCIA 포트, 직렬 포트 및/또는 병렬 포트가 있다. 또 다른 구현에서, I/O 인터페이스(460)는 외부 장치와 무선으로 통신하기 위한 무선 인터페이스를 포함한다.
네트워크 인터페이스(470)는 이더넷 접속을 지원하는 RJ-45 또는 (802.11을 포함하지만 이에 한정되지 않는) "Wi-Fi" 인터페이스와 같은 유선 및/또는 무선 네트워크 접속을 포함한다.
컴퓨터 시스템(400)은 컴퓨터 시스템의 통상적인 추가의 하드웨어 및 소프트웨어(예를 들면, 전원, 냉각 시스템, 운영 체제)를 포함하지만, 이들 구성요소는 명료함을 위해 도 4b에는 구체적으로 도시되지는 않았다. 다른 구현에서, 상이한 구성의 컴퓨터 시스템(예를 들면, 상이한 버스 또는 상이한 기억 장치 구성 또는 멀티 프로세서 구성)이 사용될 수 있다.
각종 구현은, 예를 들면, ASICs(application specific integrated circuits) 또는 FPGAs(field programmable gate arrays)와 같은 구성요소를 사용하여 하드웨어로 주로 구현되거나 또는 구현될 수 있다. 본 명세서에 설명된 기능을 행할 수 있는 하드웨어 상태 머신의 구현은 또한 당업자에게 명백할 것이다. 각종 구현은 또한 하드웨어와 소프트웨어 둘 다의 조합을 사용하여 구현될 수 있다.
또한, 당업자들은 상술된 도면과 관련하여 설명된 각종의 도시된 논리 블록, 모듈, 커넥터, 데이터 경로, 회로 및 방법의 단계 및 본 명세서에 개시된 구현이 종종 전자 하드웨어, 컴퓨터 소프트웨어 또는 이 둘의 조합으로서 구현될 수 있음을 이해할 것이다. 하드웨어 및 소프트웨어의 이러한 상호교환성을 명백하게 도시하기 위해, 도시된 각종 구성요소, 블록, 모듈, 회로 및 단계들은 일반적으로 그 기능성의 견지에서 설명되었다. 이러한 기능성이 하드웨어로서 또는 소프트웨어로서 구현되는지의 여부는, 시스템 전체에 부여된 특정 응용 및 설계 제약조건에 좌우된다. 당업자들은 특정 응용 각각에 대해 설명된 기능성을 각종 방식으로 구현할 수 있으나, 이러한 구현 결정이 본 발명의 범위에서 벗어나게 하는 것으로서 해석되어져서는 안 된다. 또한, 모듈, 블록, 회로 또는 단계 내의 기능을 그룹핑하는 것은 설명의 편이를 위해서이다. 특정 기능 또는 특정 단계가 본 발명에서 벗어나지 않고 하나의 모듈, 블록 또는 회로에서 다른 모듈, 블록 또는 회로로 이동될 수 있다.
또한, 본 명세서에 개시된 구현과 관련하여 설명된, 도시된 각종 논리 블록, 모듈, 커넥터, 데이터 경로, 회로 및 방법의 단계는, 범용 프로세서, DSP(digital signal processor), ASIC, FPGA 또는 기타 프로그래밍가능한 논리 디바이스, 별개의 게이트 또는 트랜지스터 로직, 별개의 하드웨어 구성요소, 또는 본 명세서에 설명된 기능을 행하도록 설계된 이들의 임의의 조합으로 구현되거나 또는 행해질 수 있다. 범용 프로세서는 마이크로프로세서일 수 있지만, 대안으로는, 프로세서는 임의의 프로세서, 제어기, 마이크로컨트롤러 또는 상태 머신일 수 있다. 프로세서는 예를 들면, DSP와 마이크로프로세서의 조합과 같은 컴퓨팅 장치의 조합, 복수의 마이크로프로세서, DSP 코어와 결합된 하나 이상의 마이크로프로세서, 또는 이러한 임의의 기타의 구성으로서 구현될 수 있다.
또한, 본 명세서에 설명된 구현과 관련하여 설명된 방법의 단계 또는 알고리즘은 하드웨어로, 프로세서에 의해 실행되는 소트프웨어 모듈로, 또는 이 둘의 조합으로 바로 구현될 수 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터, 하드 디스크, 착탈가능 디스크, CD-ROM 또는 네트워크 기억 매체를 포함하는 임의의 다른 형태의 기억 매체에 있을 수 있다. 기억 매체는 프로세서가 기억 매체로부터 정보를 판독할 수 있고, 이에 정보를 기입할 수 있도록 프로세서에 결합될 수 있다. 대안으로, 기억 매체는 프로세서에 통합될 수도 있다. 프로세서와 기억 매체는 또한 ASIC 내에 있을 수도 있다.
개시된 구현에 대한 상술된 설명은 당업자가 본 발명을 행하거나 또는 사용할 수 있게 하기 위해 제공된다. 이 구현에 대한 각종 변경은 당업자들에게는 명백할 것이며, 본 명세서에 설명된 포괄적인 원리는 본 발명의 사상 또는 범위를 벗어나지 않고 다른 구현에 적용될 수 있다. 따라서, 본 명세서에서 제시된 설명 및 도면이 본 발명의 현재의 바람직한 구현을 나타내기 때문에 본 발명에 의해 폭넓게 고찰되는 내용을 나타낸다는 것을 이해할 것이다. 또한, 본 발명의 범위가 당업자에게 명백할 수 있는 기타의 구현을 완전히 망라하고 따라서 본 발명의 범위가 첨부되는 특허청구범위에 의해서만 제한된다는 것을 이해할 것이다.
310 : 콘텐츠 제공자
312 : 멀티미디어 콘텐츠
314 : 인코더
316 : 멀티플렉서
320 : 서버
330 : 클라이언트
312 : 멀티미디어 콘텐츠
314 : 인코더
316 : 멀티플렉서
320 : 서버
330 : 클라이언트
Claims (18)
- 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하는 방법으로서,
멀티미디어 콘텐츠의 기본 스트림을, 고정된 길이의, 오프셋을 갖는 영상 그룹으로 부호화하는 단계;
상기 부호화된 멀티미디어 콘텐츠를 전송 스트림으로 다중화하는 단계;
상기 전송 스트림 내부에서 각 GOP(group of pictures) 헤더의 데이터 오프셋들을 포함하는 메타데이터를 찾아내는 단계 - 상기 메타데이터는 상기 스트리밍 재생을 제공하는 데에 필요한 타이밍 및 의미 정보를 나타냄 - ; 및
상기 전송 스트림과 함께 상기 메타데이터를 서버로 업로드하는 단계를 포함하고,
상기 메타데이터는 상기 부호화단계에서의 상기 오프셋을 찾을 수 있도록 조정되고,
상기 스트리밍 재생의 청크 크기(chunk size)는, 상기 멀티미디어 콘텐츠를 임의 접근할 수 있도록, 상기 전송 스트림의 속도에 기초해서 결정되고 조정되는, 멀티미디어 데이터 사용 방법. - 제1항에 있어서, 상기 서버가 연속 재생 요청을 수신할 때, 상기 전송 스트림 전체를 클라이언트로 전송하는 단계를 더 포함하는, 멀티미디어 데이터 사용 방법.
- 제1항에 있어서,
상기 서버가 스트리밍 재생 요청을 수신할 때,
상기 청크 크기와 가장 일치하는 본래의 GOP 길이의 고정된 배수를 결정하는 단계; 및
상기 전송 스트림 내부에서 각 GOP 헤더의 데이터 오프셋들을 이용해서, 상기 결정된, 기본 스트림의 본래의 GOP 길이의 고정된 배수를 전송하는 단계
를 더 포함하는, 멀티미디어 데이터 사용 방법. - 제1항에 있어서,
상기 의미 정보는 상기 멀티미디어 콘텐츠를 클라이언트에게 스트림하기 위해 조정될 필요가 있는 정보인, 멀티미디어 데이터 사용 방법. - 삭제
- 제4항에 있어서, 상기 스트리밍 재생 메타데이터의 일부를 상기 클라이언트에 스트리밍하는 단계를 더 포함하는, 멀티미디어 데이터 사용 방법.
- 연속 재생 또는 스트리밍 재생 중 하나에 대한 요청을 서비스(service)하는 방법으로서,
(1) 연속 재생에 대한 요청이 수신될 경우,
(a) 전송 스트림 전체를 클라이언트에 전송하는 단계; 및
(2) 스트리밍 재생에 대한 요청이 수신될 경우,
(a) 상기 스트리밍 재생의 청크 크기를 결정하는 단계;
(b) 상기 청크 크기와 가장 일치하는 본래의 GOP 길이의 고정된 배수를 결정하는 단계 - 상기 본래의 GOP 길이는 멀티미디어 콘텐츠의 기본 스트림을 부호화하는 데에 사용되는 GOP의 고정된 길이임 -; 및
(c) 전송 스트림 내부에서 각 GOP 헤더의 데이터 오프셋들을 이용해서, 상기 결정된, 기본 스트림의 본래의 GOP 길이의 고정된 배수를 클라이언트에 전송하는 단계 - 상기 전송 스트림은 멀티미디어 콘텐츠의 기본 스트림을 고정된 길이의 GOP로 부호화하는 단계; 상기 부호화된 멀티미디어 콘텐츠를 상기 전송 스트림으로 다중화하는 단계; 상기 전송 스트림 내부에서 각 GOP 헤더의 데이터 오프셋들을 포함하는 메타 데이터를 찾아내는 단계에 의해서 구성되며, 상기 데이터 오프셋들은 상기 스트리밍 재생을 제공하는 데에 필요한 타이밍 및 의미 정보를 나타냄 -
를 포함하고,
상기 메타데이터는 상기 오프셋을 찾을 수 있도록 조정되고,
상기 스트리밍 재생의 청크 크기(chunk size)는, 상기 멀티미디어 콘텐츠를 임의 접근할 수 있도록, 상기 전송 스트림의 속도에 기초해서 조정되는, 연속 재생 또는 스트리밍 재생 중 하나에 대한 요청을 서비스하는 방법. - 제7항에 있어서, 상기 요청은 서버에서 수신되는, 연속 재생 또는 스트리밍 재생 중 하나에 대한 요청을 서비스하는 방법.
- 삭제
- 제8항에 있어서, 상기 본래의 GOP 길이의 고정된 배수를 결정하는 단계는, 스트리밍 재생 메타데이터를 생성하는 단계를 포함하는, 연속 재생 또는 스트리밍 재생 중 하나에 대한 요청을 서비스하는 방법.
- 제10항에 있어서,
스트리밍 재생 메타데이터를 제공하는 단계; 및
상기 부호화된 멀티미디어 콘텐츠를 상기 클라이언트로 스트리밍하는 단계
를 더 포함하는, 연속 재생 또는 스트리밍 재생 중 하나에 대한 요청을 서비스하는 방법. - 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하기 위한 시스템으로서,
멀티미디어 콘텐츠의 기본 스트림을 고정된 길이의 GOP로 부호화하도록 구성된 인코더; 및
(1) 상기 부호화된 멀티미디어 콘텐츠를 전송 스트림으로 다중화하고,
(2) 상기 전송 스트림 내부에서 각 GOP 헤더의 데이터 오프셋들을 포함하는 메타데이터를 찾아내며 - 상기 메타데이터는 상기 스트리밍 재생을 클라이언트에게 제공하는 데에 필요한 타이밍 및 의미 정보를 나타내고, 상기 메타데이터는 상기 오프셋을 찾을 수 있도록 조정되고, 상기 스트리밍 재생의 청크 크기(chunk size)는, 상기 멀티미디어 콘텐츠를 임의 접근할 수 있도록, 상기 전송 스트림의 속도에 기초해서 결정되고 조정됨 -
(3) 상기 전송 스트림과 함께 상기 메타데이터를 업로드하도록 구성된 멀티플렉서
를 포함하는, 멀티미디어 데이터를 사용하기 위한 시스템. - 제12항에 있어서,
(1) 클라이언트로부터 재생 요청 유형을 수신하고;
(2) 서버가 스트리밍 재생 요청을 수신한 경우에는 전송 스트림 전체를 상기 클라이언트에 전송하고;
(3) (a) 상기 스트리밍 재생의 청크 크기를 결정하고, (b) 상기 청크 크기와 가장 일치하는 본래의 GOP 길이의 고정된 배수를 결정하며 - 상기 본래의 GOP 길이는 멀티미디어 콘텐츠의 기본 스트림을 부호화하는 데에 사용되는 GOP의 고정된 길이임 -, (c) 상기 전송 스트림 내부에서 각 GOP 헤더의 데이터 오프셋들을 이용해서, 상기 결정된, 기본 스트림의 본래의 GOP 길이의 고정된 배수를 상기 클라이언트에 전송하도록 구성된 서버
를 더 포함하는, 멀티미디어 데이터를 사용하기 위한 시스템. - 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하기 위한 컴퓨터 프로그램을 저장하는 비일시적(non-transitory) 컴퓨터 판독가능 기억 매체로서,
상기 컴퓨터 프로그램은 컴퓨터로 하여금,
멀티미디어 콘텐츠의 기본 스트림을, 고정된 길이의, 오프셋을 갖는 영상 그룹으로 부호화하고;
상기 부호화된 멀티미디어 콘텐츠를 전송 스트림으로 다중화하고;
상기 전송 스트림 내부에서 각 GOP 헤더의 데이터 오프셋들을 포함하는 스트리밍 재생 메타데이터를 찾아내고 - 상기 스트리밍 재생 메타데이터는 상기 스트리밍 재생을 클라이언트에게 제공하는 데에 필요한 타이밍 및 의미 정보를 나타냄 -;
상기 전송 스트림과 함께 상기 메타데이터를 서버로 업로드하게 하는 실행가능 명령어들을 포함하고,
상기 메타데이터는 상기 부호화단계에서의 상기 오프셋을 찾을 수 있도록 조정되고,
상기 스트리밍 재생의 청크 크기(chunk size)는, 상기 멀티미디어 콘텐츠를 임의 접근할 수 있도록, 상기 전송 스트림의 속도에 기초해서 결정되고 조정되는, 비일시적 컴퓨터 판독가능 기억 매체. - 제14항에 있어서, 컴퓨터로 하여금,
상기 서버가 연속 재생 요청을 수신할 때 클라이언트에 상기 전송 스트림 전체를 전송하게 하는 실행가능 명령어들을 더 포함하는, 비일시적 컴퓨터 판독가능 기억 매체. - 제14항에 있어서, 상기 서버가 스트리밍 재생 요청을 수신할 경우, 컴퓨터로 하여금,
상기 청크 크기와 가장 일치하는 본래의 GOP 길이의 고정된 배수를 결정하며;
상기 전송 스트림 내부에서 각 GOP 헤더의 데이터 오프셋들을 이용해서, 상기 결정된, 기본 스트림의 본래의 GOP 길이의 고정된 배수를 전송하게 하는 실행가능 명령어들을 더 포함하는, 비일시적 컴퓨터 판독가능 기억 매체. - 제14항에 있어서, 컴퓨터로 하여금 데이터 오프셋들을 찾아내게 하는 실행가능 명령어들은, 컴퓨터로 하여금 상기 스트리밍 재생 메타데이터를 생성하게 하는 실행가능 명령어를 포함하는, 비일시적 컴퓨터 판독가능 기억 매체.
- 제17항에 있어서, 컴퓨터로 하여금 상기 스트리밍 재생 메타데이터의 일부를 상기 클라이언트에 스트리밍하게 하는 실행가능 명령어들을 더 포함하는, 비일시적 컴퓨터 판독가능 기억 매체.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US4591708P | 2008-04-17 | 2008-04-17 | |
US61/045,917 | 2008-04-17 | ||
PCT/US2009/041009 WO2009151789A2 (en) | 2008-04-17 | 2009-04-17 | Dual-type of playback for multimedia content |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137008651A Division KR20130044368A (ko) | 2008-04-17 | 2009-04-17 | 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하기 위한 방법, 시스템 및 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능 기억 매체, 그리고 연속 재생 또는 스트리밍 재생 중 하나에 대한 요청을 서비스하는 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110044169A KR20110044169A (ko) | 2011-04-28 |
KR101320277B1 true KR101320277B1 (ko) | 2013-10-23 |
Family
ID=41202061
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137008651A KR20130044368A (ko) | 2008-04-17 | 2009-04-17 | 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하기 위한 방법, 시스템 및 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능 기억 매체, 그리고 연속 재생 또는 스트리밍 재생 중 하나에 대한 요청을 서비스하는 방법 |
KR1020107025705A KR101320277B1 (ko) | 2008-04-17 | 2009-04-17 | 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하기 위한 방법, 시스템 및 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능 기억 매체, 그리고 연속 재생 또는 스트리밍 재생 중 하나에 대한 요청을 서비스하는 방법 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137008651A KR20130044368A (ko) | 2008-04-17 | 2009-04-17 | 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하기 위한 방법, 시스템 및 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능 기억 매체, 그리고 연속 재생 또는 스트리밍 재생 중 하나에 대한 요청을 서비스하는 방법 |
Country Status (7)
Country | Link |
---|---|
US (1) | US9106802B2 (ko) |
EP (1) | EP2272004A4 (ko) |
JP (2) | JP2011518521A (ko) |
KR (2) | KR20130044368A (ko) |
CN (1) | CN102084355B (ko) |
CA (1) | CA2721700C (ko) |
WO (1) | WO2009151789A2 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI548266B (zh) * | 2014-06-24 | 2016-09-01 | 愛爾達科技股份有限公司 | 多媒體檔案儲存系統與相關裝置 |
KR102413839B1 (ko) * | 2017-11-15 | 2022-06-28 | 삼성전자 주식회사 | 컨텐츠 제공장치, 그 제어방법 및 기록매체 |
KR102238720B1 (ko) * | 2019-07-05 | 2021-04-09 | 라인플러스 주식회사 | 인코딩과 업로딩의 병행 처리를 통해 미디어 파일의 전송 시간을 단축시킬 수 있는 방법 및 시스템 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020048450A1 (en) * | 2000-09-15 | 2002-04-25 | International Business Machines Corporation | System and method of processing MPEG streams for file index insertion |
US20030115282A1 (en) * | 2001-11-28 | 2003-06-19 | Rose Steven W. | Interactive broadband server system |
KR100604631B1 (ko) | 1997-07-25 | 2006-07-28 | 소니 가부시끼 가이샤 | 편집 장치, 편집 방법, 재부호화 장치, 재부호화 방법,스플라이싱 장치 및 스플라이싱 방법 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6792047B1 (en) * | 2000-01-04 | 2004-09-14 | Emc Corporation | Real time processing and streaming of spliced encoded MPEG video and associated audio |
JP4773664B2 (ja) * | 2000-01-10 | 2011-09-14 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | Mpegシーケンスのスタート時におけるシステムタイムクロックの設定方法 |
KR100317303B1 (ko) * | 2000-01-10 | 2001-12-22 | 구자홍 | 방송 프로그램 녹화 및 재생시 a/v와 데이터간 동기화장치 |
WO2001060059A1 (en) * | 2000-02-07 | 2001-08-16 | Sony Corporation | Image processor and image processing method and recorded medium |
JP3774358B2 (ja) | 2000-07-14 | 2006-05-10 | 株式会社東芝 | 携帯通信端末を利用したコンテンツサービス方法 |
US6760042B2 (en) * | 2000-09-15 | 2004-07-06 | International Business Machines Corporation | System and method of processing MPEG streams for storyboard and rights metadata insertion |
KR20020032803A (ko) * | 2000-10-27 | 2002-05-04 | 구자홍 | 스트리밍 서비스를 위한 파일 구조 |
EP1973294A1 (en) | 2001-01-30 | 2008-09-24 | Electronics and Telecommunications Research Institute | Method and apparatus for delivery of metadata synchronized to multimedia contents |
US7174561B2 (en) * | 2001-04-13 | 2007-02-06 | Emc Corporation | MPEG dual-channel decoder data and control protocols for real-time video streaming |
JP2004013527A (ja) * | 2002-06-06 | 2004-01-15 | Sony Corp | コンテンツ配信装置及び方法 |
US6938047B2 (en) * | 2003-02-19 | 2005-08-30 | Maui X-Stream, Inc. | Methods, data structures, and systems for processing media data streams |
KR100589823B1 (ko) | 2003-02-19 | 2006-06-14 | 비브콤 인코포레이티드 | 생방송 프로그램에 대한 빠른 메타데이터 서비스 제공방법, 하이라이트 실시간 생성 방법 및 방송 프로그램스트림 임의 접근 방법 |
US7735104B2 (en) | 2003-03-20 | 2010-06-08 | The Directv Group, Inc. | System and method for navigation of indexed video content |
KR100524770B1 (ko) * | 2003-09-17 | 2005-10-31 | 엘지전자 주식회사 | 주문형 비디오 서비스 장치 및 방법 |
US20050102371A1 (en) | 2003-11-07 | 2005-05-12 | Emre Aksu | Streaming from a server to a client |
US20050207569A1 (en) * | 2004-03-16 | 2005-09-22 | Exavio, Inc | Methods and apparatus for preparing data for encrypted transmission |
US7577340B2 (en) * | 2004-07-21 | 2009-08-18 | Panasonic Corporation | Device and method for recording real-time data |
KR100651486B1 (ko) * | 2004-12-07 | 2006-11-29 | 삼성전자주식회사 | 네트워크를 통해 멀티미디어 컨텐츠를 전송하는 장치 및방법 |
US20060218251A1 (en) * | 2005-03-14 | 2006-09-28 | Matsushita Electric Industrial Co., Ltd. | AV server, AV contents reproducing apparatus, AV contents transmitting method, program and recording medium |
EP1968318B1 (en) * | 2005-12-27 | 2014-05-07 | Mitsubishi Electric Corporation | Distribution apparatus and playback apparatus |
US8214516B2 (en) * | 2006-01-06 | 2012-07-03 | Google Inc. | Dynamic media serving infrastructure |
US8942182B2 (en) * | 2006-11-21 | 2015-01-27 | Blackberry Limited | Adjustable download rate for a portable electronic device |
US7962640B2 (en) * | 2007-06-29 | 2011-06-14 | The Chinese University Of Hong Kong | Systems and methods for universal real-time media transcoding |
-
2009
- 2009-04-17 KR KR1020137008651A patent/KR20130044368A/ko not_active Application Discontinuation
- 2009-04-17 EP EP09763081A patent/EP2272004A4/en not_active Ceased
- 2009-04-17 CA CA2721700A patent/CA2721700C/en not_active Expired - Fee Related
- 2009-04-17 CN CN200980123103.4A patent/CN102084355B/zh not_active Expired - Fee Related
- 2009-04-17 WO PCT/US2009/041009 patent/WO2009151789A2/en active Application Filing
- 2009-04-17 JP JP2011505238A patent/JP2011518521A/ja active Pending
- 2009-04-17 KR KR1020107025705A patent/KR101320277B1/ko active IP Right Grant
- 2009-04-17 US US12/426,006 patent/US9106802B2/en active Active
-
2014
- 2014-06-26 JP JP2014130880A patent/JP6118292B2/ja not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100604631B1 (ko) | 1997-07-25 | 2006-07-28 | 소니 가부시끼 가이샤 | 편집 장치, 편집 방법, 재부호화 장치, 재부호화 방법,스플라이싱 장치 및 스플라이싱 방법 |
US20020048450A1 (en) * | 2000-09-15 | 2002-04-25 | International Business Machines Corporation | System and method of processing MPEG streams for file index insertion |
KR100592750B1 (ko) | 2000-09-15 | 2006-06-26 | 인터내셔널 비지네스 머신즈 코포레이션 | 파일 인덱스 삽입을 위한 엠펙 스트림 처리 시스템 및 방법 |
US20030115282A1 (en) * | 2001-11-28 | 2003-06-19 | Rose Steven W. | Interactive broadband server system |
Also Published As
Publication number | Publication date |
---|---|
CA2721700C (en) | 2019-07-16 |
WO2009151789A3 (en) | 2010-02-25 |
WO2009151789A2 (en) | 2009-12-17 |
JP2014212558A (ja) | 2014-11-13 |
CA2721700A1 (en) | 2009-12-17 |
JP2011518521A (ja) | 2011-06-23 |
US20090265479A1 (en) | 2009-10-22 |
KR20130044368A (ko) | 2013-05-02 |
KR20110044169A (ko) | 2011-04-28 |
CN102084355B (zh) | 2016-11-23 |
EP2272004A2 (en) | 2011-01-12 |
JP6118292B2 (ja) | 2017-04-19 |
CN102084355A (zh) | 2011-06-01 |
US9106802B2 (en) | 2015-08-11 |
EP2272004A4 (en) | 2012-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6839257B2 (ja) | 送信方法、受信方法、送信装置および受信装置 | |
JP5288710B2 (ja) | マルチメディアデータを記録した情報保存媒体、その再生方法及び再生装置 | |
TWI643502B (zh) | 內容重製系統、內容重製裝置、程式、內容重製方法、及提供內容伺服器 | |
JP7100175B2 (ja) | 送信方法及び送信装置 | |
JP7246508B2 (ja) | Httpによる動的適応ストリーミングのための方法及び装置 | |
WO2020183900A1 (ja) | 情報処理装置、再生処理装置、情報処理方法及び再生処理方法 | |
KR101320277B1 (ko) | 멀티미디어 데이터를 연속 재생 및 스트리밍 재생 둘 다의 용도로 사용하기 위한 방법, 시스템 및 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능 기억 매체, 그리고 연속 재생 또는 스트리밍 재생 중 하나에 대한 요청을 서비스하는 방법 | |
KR101863598B1 (ko) | 스트리밍 서비스를 위한 클라이언트의 동작 방법 | |
KR20140007893A (ko) | 비디오 스트림을 최적화하기 위한 방법 | |
US20110276662A1 (en) | Method of constructing multimedia streaming file format, and method and apparatus for servicing multimedia streaming using the multimedia streaming file format | |
JP2015523762A (ja) | コンテンツダウンロードのためのシステム及び方法 | |
US9398351B2 (en) | Method and apparatus for converting content in multimedia system | |
US10484725B2 (en) | Information processing apparatus and information processing method for reproducing media based on edit file | |
JP2014131307A (ja) | 情報処理装置、情報処理方法およびプログラム | |
JP2016040919A (ja) | 情報処理装置、情報処理方法およびプログラム | |
JP2024515488A (ja) | スタッキング特性を有するプレロール、ミッドロールおよびエンドロールをサポートするためのmpeg dash用の補助mpdに関する方法、装置、媒体 | |
KR20210108114A (ko) | Http 기반 라이브 스트리밍 방법 및 장치 | |
KR20110123644A (ko) | 멀티미디어 스트리밍 파일 포맷 구조 및 그를 이용한 멀티미디어 스트리밍 서비스 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
J201 | Request for trial against refusal decision | ||
AMND | Amendment | ||
A107 | Divisional application of patent | ||
B701 | Decision to grant | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20160928 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20181001 Year of fee payment: 6 |