KR20040068505A - 파일 분할 분배 방법 - Google Patents

파일 분할 분배 방법 Download PDF

Info

Publication number
KR20040068505A
KR20040068505A KR1020040004687A KR20040004687A KR20040068505A KR 20040068505 A KR20040068505 A KR 20040068505A KR 1020040004687 A KR1020040004687 A KR 1020040004687A KR 20040004687 A KR20040004687 A KR 20040004687A KR 20040068505 A KR20040068505 A KR 20040068505A
Authority
KR
South Korea
Prior art keywords
file
clips
media
clip
time
Prior art date
Application number
KR1020040004687A
Other languages
English (en)
Other versions
KR101138897B1 (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 KR20040068505A publication Critical patent/KR20040068505A/ko
Application granted granted Critical
Publication of KR101138897B1 publication Critical patent/KR101138897B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/2312Data placement on disk arrays
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01KANIMAL HUSBANDRY; AVICULTURE; APICULTURE; PISCICULTURE; FISHING; REARING OR BREEDING ANIMALS, NOT OTHERWISE PROVIDED FOR; NEW BREEDS OF ANIMALS
    • A01K13/00Devices for grooming or caring of animals, e.g. curry-combs; Fetlock rings; Tail-holders; Devices for preventing crib-biting; Washing devices; Protection against weather conditions or insects
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47CCHAIRS; SOFAS; BEDS
    • A47C27/00Spring, stuffed or fluid mattresses or cushions specially adapted for chairs, beds or sofas
    • A47C27/08Fluid mattresses or cushions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Environmental Sciences (AREA)
  • Zoology (AREA)
  • Animal Husbandry (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 클러스터 비디오 서버들에 적합한 소스 파일들의 클립들의 분배 저장 방법에 관한 것으로, 본 발명에 따른 파일 분할 분배 방법은 소스 파일을 분석하는 단계; 상기 분석에 따라 상기 소스 파일을 클립들로 분할하는 단계; 및 상기 분할된 클립들을 상기 클립들에 대응하는 노드들로 분배하는 단계를 포함한다.

Description

파일 분할 분배 방법{Method for splitting and distributing a file}
본 발명은 정보 처리 및 저장 방법에 관한 것으로, 병행 분배 처리 기술 및 비디오 처리 기술의 교차 영역을 포함하고, 클러스터(cluster) 비디오 서버들에 적합한 소스 파일들의 클립들의 분배 저장 방법에 관한 것이다.
광대역 네트워크 및 음성/영상 디지털 인코딩(encoding) 기술들의 발전과 함께, 스트리밍 미디어(streaming media) 및 리치 미디어(rich media)가 점점 더 광범위하게 사용되고 있다. 이런 기술들에 있어서 중요하고도 기본적인 장치는 비디오 서버이다. 실용적인 요구들에 대처하기 위하여, 비디오 서버는 높은 퍼포먼스를 요구한다. 스트리밍 미디어 서비스들은 항상 많은 데이터량 및 엄격한 실시간 요구로 특징지어진다. 일반적인 단일 서버 아키텍처(architecture)는 CPU, 메모리, 네트워크, 및 하드디스크에 의해 야기된 병목 현상(bottleneck)으로 인하여 여러 다스들(dozens)의 클라이언트들에 대해서만 서비스를 할 수 있어, 많은 사용자들을 서비스하는 스트리밍 미디어 서비스에는 적합하지 않다는 문제점이 있었다. 반면, 고성능 서버는 매우 비싸다.
높은 확장 능력 및 클러스터의 낮은 가격 때문에, 클러스터 기반 기술들은 비디오 서버 구현에 기술적 기초를 제공한다. 클러스터의 특출한 특징들은 저장 유닛들의 분산, 개별 노드의 자율, 중앙 집권화된 제어이다. 이러 특성들을 기반으로 하여, 클러스터 비디오 서버는 학술적 모임 및 산업에서 점점 더 많은 관심을 끌고 있다.
클러스터 비디오 서버의 키 기술들 중 하나는 필름 자원들(프로그램 자원들)의 분배 저장을 실현하는 것이다. 각 무비(movie)는 이것이 클러스터의 저장 노드들에 분배되어질 수 있도록 하기 위하여 어떤 특정 방법에 따라 분할될 필요가 있다. 따라서, 무비들의 분할들에 대하여 효율적이고, 유용한 분배 저장 방법을 발견하는 것은 매우 중요하다.
무비들의 저장을 위하여 두 가지 전형적인 솔루션들이 있다. 하나는 무비들의 재생 시간을 기반으로 하여 무비를 똑같은 시간 길이의 여러 부분들로 나누는 것이다(P. Shenoy, P. Goyal, 및 H. M. Vin, "멀티미디어 서버 디자인에서의 이슈", ACM Computing Survey, Vol. 27, No. 4, pp.636-639, 1995년 12월). 다른 방법은 무비들의 크기를 기반으로 하여, 무비를 동일한 파일 크기의 여러 부분들로 나누는 것이다(P. Shenoy 및 H. M. Vin, "멀티미디어 파일 서버에 대한 효율적인스트라이핑(striping) 기술들", 제 7 번째 NOSSDAV(Network and Operating System Support for Digital Audio and Video)에 관한 국제 워크숍 회보, pp. 25-36, 1997년 3월). 전자는 동일한 시간 길이를 기반으로 하는 것이고, 후자는 동일한 공간을 기반으로 하는 것이다. 이 두 방법들 모두 어떤 문제점들을 가지고 있다. 동시에 분할 기법을 실현하는 것이 어렵다. 여기에는 두 가지 이유가 있다. 한편, 미디어 데이터의 압축비와 각 미디어 포맷의 저장 포맷은 다르다. 또 다른 한편, 동일한 미디어 포맷의 파일들 중에서, 다른 기간들에서의 장면 변화는 동일한 시간 길이의 미디어 데이터의 저장 공간이 다르기 때문에 예측될 수 없다. 둘째로, 이 방법은 완전히 다른 미디어 포맷들을 처리할 수 있을 만큼 충분히 일반적이지 않다. 동일한 공간 크기를 기반으로 하는 분할 기법에 있어서, 임의적 접근은 쉽게 처리될 수 없다. 하나의 무비에서 다른 미디어 스트림들이 클립들에서 동기화되지 않을 것이기 때문에, 이것은 재생 시 품질 문제로 귀결된다. 셋째로, 이 방법은 두 저장 노드들을 가로지르는 두 개의 연속 클립들의 동기 처리를 필요로 한다. 이 과정은 동시에 여러 스트림들을 처리하는 시스템의 기능을 감소시킨다. 또 다른 한편, 이것은 비디오 서버에서의 미디어 데이터의 인터페이스 모듈을 구현하는 어려움을 증가시키고, 제어 노드들 및 데이터 노드들의 내부 통신 트래픽을 증가시킨다.
본 발명이 이루고자 하는 기술적 과제는 현재의 비디오 분할 및 분배 문제를 효과적으로 해결하기 위하여, 본 발명은 클러스터 비디오 서버들에 대한 새로운 비디오 분할 및 분배 설계를 제공하는데 있다. 이때, 새로운 비디오 분할 및 분배 설계에서 각 비디오 슬라이스(slice)의 시간 길이 문제 및 공간 길이 문제가 고려된다. 동시에, 분열된 비디오 슬라이스들을 클러스터 비디오 서버들의 다른 서버 노드들에 설정하기 위하여 분배 설계를 사용하며, 이것은 병행 처리 특성을 효과적으로 활용하는데 유용하다.
도 1은 본 발명의 바람직한 일 실시예에 따른 미디어 파일들의 분할 과정을 도시한 도면이다.
도 2는 본 발명의 바람직한 일 실시예에 따른 미디어 파일 분할 장치의 구성도이다.
도 3은 RTP 프로토콜에 따른 스트리밍 미디어 네트워크 패킷의 포맷을 도시한 도면이다.
도 4는 본 발명의 바람직한 일 실시예에 따른 색인 파일의 구조를 도시한 도면이다.
도 5는 본 발명의 바람직한 일 실시예에 따른 SDP 파일의 구조를 도시한 도면이다.
도 6은 본 발명의 바람직한 일 실시예에 따른 클립의 구조를 도시한 도면이다.
도 7은 본 발명의 바람직한 일 실시예에 따른 클립 헤더의 구조를 도시한 도면이다.
도 8은 본 발명의 바람직한 일 실시예에 따른 미디어 스트림의 메시지 헤더의 구조를 도시한 도면이다.
도 9는 본 발명의 바람직한 일 실시예에 따른 스트리밍 미디어 데이터의 구조를 도시한 도면이다.
도 10은 본 발명의 바람직한 일 실시예에 따른 미디어 파일 분석 및 태스크 목록 생성 방법의 흐름도이다.
도 11은 본 발명의 바람직한 일 실시예에 따른 태스크 목록의 구조를 도시한 도면이다.
도 12는 본 발명의 바람직한 일 실시예에 따른 파일 분할 방법의 흐름도이다.
상기 기술적 과제를 해결하기 위한 본 발명에 따른 파일 분할 분배 방법은 소스 파일을 분석하는 단계; 상기 분석에 따라 상기 소스 파일을 클립들로 분할하는 단계; 및 상기 분할된 클립들을 상기 클립들에 대응하는 노드들로 분배하는 단계를 포함한다.
상기 다른 기술적 과제를 해결하기 위하여, 본 발명은 상기된 파일 분할 분배 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다.
이하에서는 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다.
도 1은 본 발명의 바람직한 일 실시예에 따른 미디어 파일들의 분할 과정을 도시한 도면이다.
먼저, 클립 구조, 스트리밍 미디어 네트워크 패킷 구조, 미디어 데이터의 분할 제어 파일 구조, 및 분할 분배 배치 기법과 같은 필요한 정보를 정의한다(11, 12, 13). 이어서, 소스 파일들의 기본 정보를 수집하고, 다음의 분할을 위한 준비한다(14, 15). 마지막으로, 태스크 목록을 제공하는 스트리밍 미디어 파일을 분석하고, 태스크 목록을 처리한다(16, 17, 18). 상세히 설명하면, 다음과 같다.
먼저, 네트워크 메시지들을 정의하기 위하여 스트림 미디어 네트워크 패킷 정의 과정이 수행된다(11). 네트워크 패킷 구조를 기반으로 하여, 분배 제어 파일 정의 과정 및 클립 정의 과정은 미디어 분배 제어 정보 파일들의 구조 및 클립들의 전체 구조를 정의하기 위하여 동시에 수행된다(12, 13). 이어서, 미디어 파일 정보 수집 과정이 다음 작업을 준비하기 위한 미디어 파일들의 기본 정보를 획득하기 위하여 수행된다(14). 그 동안, 클라이언트들의 분할 요청들이 수행된다(15). 클라이언트들의 요청들은 키 파라미터들에 따라 선택된다. 여기에는 두 가지 방법들이 있다. 하나는 클라이언트들이 분할의 양에 따라 얼마나 많은 클립들을 정의할 수 있느냐 하는 것이고, 다른 하나는 클립들의 수가 획득되도록 하기 위하여 미디어 파일들의 재생 시간을 획득하기 위한 클립 시간의 재생 시간을 조절하는 것이다. 이어서, 클라이언트들에 의하여 정의된 클립들의 배치 요청들을 획득하기 위한 클립 배치 기법 정의 과정이 수행되고(16), 분할 태스크 및 관련 제어 정보 파일들을 획득하기 위하여 스트리밍 미디어 파일 분석 과정 및 태스크 목록 생성 과정이 수행된다(17).
이어서, 분할 태스크 처리 과정이 수행된다(18). 여러 쓰레드들이 생성된다. 각 쓰레드는 분할 태스크를 수행한다. 이 태스크는 처음에 분할 태스크 데이터 구조 속에 있는 정보를 읽는다. 이어서, 파일을 오픈하고, 분할 태스크 구조 속에서 참조되는 공간 이탈 장소(space deviation place)를 지정한다. 이어서, 미디어 데이터의 팩(pack)을 읽는다. 스트리밍 미디어 네트워크 패킷 구조 정의 모듈 속에서묘사된 방법에 따라, 여러 스트리밍 미디어 네트워크 패킷은 생성될 것이다. 이것은 또한 RTP(Real-time Transport Protocol) 패킷으로 불린다. 모든 관련 팩들이 읽혀질 때까지 상기된 과정을 반복한다. 이때, 클립들이 생성된다.
마지막으로, 분할 전송 저장 과정이 수행된다(19). 각 클립은 클립 배치 기법의 요청에 따라 관련 클러스터의 저장 노드 속에 저장될 것이다. 이와 같이 분할 태스크는 완료된다. 또한, 디스패치(dispatch) 시간 정보는 고객이 결정한 것이 성공적이었는 지를 판단하기 위하여 기록된다.
도 2는 본 발명의 바람직한 일 실시예에 따른 미디어 파일 분할 장치의 구성도이다.
도 2를 참조하면, 본 실시예에 따른 미디어 파일 분할 장치는 클라이언트 요청 정보 수집 모듈(21), 파일 정의 모듈(22), 및 분할 전송 저장 처리 모듈(23)을 포함한다. 클라이언트 요청 정보 수집 모듈(21)은 분할 시간 요청 수집 모듈(211) 및 분할 배치 기법 요청 수집 모듈(212)을 포함한다. 파일 정의 모듈은 스트리밍 미디어 네트워크 패킷 정의 모듈(221), 분배 제어 파일 정의 모듈(222), 클립 배치 기법 정의 모듈(223), 및 클립 정의 모듈(224)을 포함한다.
스트리밍 미디어 네트워크 패킷 정의 모듈(221)을 상세히 설명하면 다음과 같다.
스트리밍 미디어 네트워크 패킷 정의 모듈(221)은 스트리밍 네트워크 패킷의 구조를 정의한다. 본 실시예에서, 스트리밍 네트워크 패킷의 기본적인 구조는 스트리밍 미디어 프로토콜의 표준에 따른다. 스트리밍 미디어에 관한 여러 국제 표준프로토콜들이 있다. RTSP(Real-Time Streaming Protocol)은 클라이언트 및 서버 사이의 순서 상호 제어를 위하여 사용된다. RTP/RTSP는 네트워크 스트리밍 미디어 패킷을 조정하고, 제어하기 위하여 사용된다. SDP(Session Description Protocol)는 클라이언트와 서버의 연결 기술을 위하여 사용된다.
도 3은 RTP 프로토콜에 따른 스트리밍 미디어 네트워크 패킷의 포맷을 도시한 도면이다.
도 3을 참조하면, 디코딩 유닛은 디코더에 의하여 수신되고, 디코딩될 수 있는 데이터 유닛이다. 이 유닛의 공간적 크기는 일반적으로 고정되어 있다. 이 크기는 Decoding Unit Size로 표시된다. MPEG-1을 예로 들면, 이 크기는 약 2000 바이트이고, 다른 압축비에 따라 약간의 차이가 있다. 도 3에 도시된 바와 같이, 본 실시예는 패킷의 크기를 고정시킨다. 문제의 키 포인트는 각 디코딩 유닛을 여러 패킷들로 자르는 것이다. 명확하게, 대부분의 패킷들의 크기는 아직도 패킷의 조정된 고정 크기에 의존한다. 나머지 패킷들의 크기는 디코딩 유닛이 잘려진 후의 나머지 데이터의 크기에 의존한다. 디코딩 유닛이 고정된 크기이기 때문에 패킷의 크기 역시 고정된다.
디코딩 유닛이 잘려진 후에, 이것은 클라이언트 내에서 정리되어야 한다. 이 과정은 RTP 표준 프로토콜이 타임 스탬프, 일련 번호, 및 미디어 마크를 갖는 프로토콜 패킷의 헤더를 조정하는 것을 보장하기 위한 필요한 정보를 제공한다. 이 과정은 동일한 디코딩 유닛 내에 있는 여러 RTP 패킷들이 동일한 타임 스탬프를 갖도록 조정한다. 그러나, 일련 번호는 원 데이터 이동에 따라서 점진적으로 증가된다.도 3을 참조하면, 관련 패킷은 재생될 수 있는 완전 디코딩 유닛으로 용이하게 조직될 수 있다.
분배 제어 파일 정의 모듈(222)을 상세히 설명하면 다음과 같다.
필름 소스 파일은 여러 클립들로 잘려 여러 노드에 저장된다. 클라이언트가 어떤 필름을 재생하기를 요청할 때, 누락 없이 필름의 모든 클립들을 전체적으로 디스패치(dispatch)하는 비디오 서버를 보장하는 방법은 매우 중요하다. 이것은 효율적인 필름 분할 제어 정보를 제공하는 저장 시스템을 요청한다.
이 과정에서, 재생 길이 일련 번호의 기본 정보, 저장 위치, 및 필요 대역폭은 고정된 방식으로 추출될 것이다. 본 실시예에서는 각 클립의 재생을 기본 재생 태스크로 불리도록 규정한다. 그러므로, 전체 필름 재생에 있어서, 재생 태스크 목록이 있을 것이다. 재생 태스크 목록은 비디오 서버에 의해 메모리로 읽혀지고, 그런 다음, 디스패치가 정확히 실현될 것이다.
이 과정에 포함된 두 개의 분배 제어 파일들이 있다. 하나는 색인 파일이고, 다른 하나는 SDP 파일이다.
도 4는 본 발명의 바람직한 일 실시예에 따른 색인 파일의 구조를 도시한 도면이다.
도 4를 참조하면, 색인 파일은 재생 태스크 목록, 필름 자원 파일 이름, 필름 자원 공간 크기, 필름 자원 시간 길이, 필름 자원 분할 량, 및 필름 자원 핫 스폿으로 구성된다. 재생 태스크 목록은 모든 재생 태스크들을 포함한다. 각 재생 태스크는 시작 시간, 종료 시간, 시작 일련 번호, 종료 일련 번호, 및 태스크 클립의노드의 IP 주소로 구성된다.
도 5는 본 발명의 바람직한 일 실시예에 따른 SDP 파일의 구조를 도시한 도면이다.
도 5를 참조하면, SDP 파일은 클라이언트의 디코딩 전에 필름 자원의 기본 정보 및 준비 정보를 기술하기 위하여 사용된다. 이것은 미디어 타입 번호, 필름 자원 내의 미디어 스트림들의 양, 필름 자원의 시간 길이, 및 클라이언트 세션의 유일한 마크로 구성된다.
클립 정의 모듈(224)을 상세히 설명하면 다음과 같다.
이 과정의 키 파일은 클립이다. 클립의 구조는 개별적인 표준을 가지고 있다. 본 실시예에서는 특정 미디어 형식 없이도 작동할 수 있도록 하기 위하여, 이 표준에 따라서 파일 분할 모듈(25)은 파일들을 정확히 어떤 미디어 형식으로 자른다.
도 6은 본 발명의 바람직한 일 실시예에 따른 클립의 구조를 도시한 도면이다.
도 6을 참조하면, 클립은 다음과 같은 부분들로 구성된다.
1) 클립 헤더
2) 미디어 스트림의 메시지 헤더
3) 미디어 스트림의 패킷
상기된 부분들 중, 2) 및 3)은 쌍으로 나타난다. 만약, 이 클립에 두 개의 스트림들이 있다면, 이것은 2) 및 3)의 쌍을 포함한다.
이 세 부분의 상세한 구조는 다음과 같다.
도 7은 본 발명의 바람직한 일 실시예에 따른 클립 헤더의 구조를 도시한 도면이다.
도 7을 참조하면, 클립 헤더의 어떤 데이터 구조의 정의를 알 수 있다.
클립 헤더는 분할의 기본 정보를 기술한다. 이것은 일련 번호, 시간 길이, 미디어 스트림들의 양, 평균 네트워크 대역폭, 및 분할의 버전 번호로 구성된다. 대역폭이 분배될 수 있도록 하기 위하여 평균 네트워크 대역폭은 비디오 서버에 전원이 들어온 후에 네트워크 대역폭의 이용률을 추정하기 위하여 사용된다.
도 8은 본 발명의 바람직한 일 실시예에 따른 미디어 스트림의 메시지 헤더의 구조를 도시한 도면이다.
도 8을 참조하면, 미디어 스트림 메시지 헤더의 데이터 구조의 상세한 정의를 알 수 있다.
미디어 스트림의 메시지 헤더는 미디어 스트림의 기본 정보를 기술한다. 미디어 스트림은 비디오 스트림, 오디오 스트림, 또는 시스템 스트림을 참조한다. 다른 코딩 표준에 따른 비디오 스트림은 다른 미디어 스트림으로 참조된다. 이 부분은 다음 정보로 구성된다: 미디어 스트림의 표시(디코더를 식별하기 위하여 사용된다), 미디어 스트림의 재생 시간 길이, 미디어 스트림의 압축비, 및 데이터 시작 위치(읽기 인터페이스의 미디어 데이터의 위치를 제공한다).
도 9는 본 발명의 바람직한 일 실시예에 따른 스트리밍 미디어 데이터의 구조를 도시한 도면이다.
도 9를 참조하면, 스트리밍 미디어 데이터의 구조를 알 수 있다.
스트리밍 미디어 네트워크 패킷 정의 모듈(221)에서, 스트리밍 미디어 패킷의 구조는 상세하게 기술된다. 도 3은 한 일련 번호가 부호 없는 정수라는 것을 보여준다. 이 일련 번호는 제한된 범위 내에 있기 때문에, 일련 번호의 값이 되돌아가는 것이 가능하다. 타임 스탬프의 값은 32 비트의 부호 없는 정수이다. 그리고, 이것은 시간과 미디어 스트림의 비트율의 곱이다. 임의적으로 접근하는 연산을 동반하는 요청이 있다면, 일련 번호들 및 타임 스탬프들의 값들이 되돌아갈 가능성이 없을 것이다. 스트리밍 미디어 패킷들은 미디어 스트림들의 ID들, 패킷 일련 번호, 및 실제 재생 되돌림 점(0으로부터 카운트된다)을 포함하여 캡슐화되는 것이 매우 필요하다.
스트리밍 미디어 파일 기본 정보 수집 모듈(23)을 상세히 설명하면 다음과 같다.
모든 데이터 구조들은 이 방법에 정의되어 있다. 이 모듈(23)의 목표는 공간 크기, 미디어 스트림들의 번호, 각 미디어 스트림의 시간 길이, 각 미디어 스트림의 미디어 포맷 ID, 및 소스 파일의 전체 시간 길이를 포함하는 소스 미디어 파일들의 기본 정보들을 수집하는 것이다. 각 미디어 스트림의 특성은 다르기 때문에, 다른 미디어 스트림들에 대하여 다른 모듈을 프로그램하는 것이 필요하다.
MPEG-1 시스템 스트림은 소스 미디어 파일들의 기본 정보를 수집하는 법의 예로서 기술된다. 그 과정은 다음과 같다.
첫 번째 단계 : MPEG-1 미디어 포맷의 파일 구조는 엄격한 정의에 의한다.소스 미디어 파일 내에 시스템 헤더가 있다. 미디어 포맷 아이디, 압축비, 및 기타 다른 정보는 이 시스템 헤더로부터 수집될 수 있다.
두 번째 단계 : 미디어 데이터는 분석되어야 한다. MPEG-1의 미디어 데이터는 많은 팩들로 조직될 수 있다. 각 팩의 크기는 고정된다. 따라서, 이것은 위에서 관련된 개개의 디코딩 유닛이 된다. 각 팩은 팩의 재생 시간을 기록하는 고정된 메시지 헤더를 갖는다. 그러므로, 시작으로부터 끝까지, 즉 마지막 팩의 헤더가 분석될 때까지 소스 미디어 파일의 전체 재생 시간은 수집될 수 있다. 상기된 두 단계들로서 미디어 파일들의 정보를 수집하는 작업은 완료될 수 있다.
클립 배치 기법 정의 모듈(223)을 상세히 설명하면 다음과 같다.
클립은 어떤 규칙들 및 기법들에 따라서 모든 저장 노드들에 저장된다. 배치 기법이 고안될 때, 핫 필름들의 높은 방문 주파수(high visiting frequency), 각 저장 노드의 부하 균형, 및 시스템의 백업은 고려되어야 한다. 이 모듈은 데이터 배치 기법 옵션, 필름들의 핫 레벨 옵션, 및 데이터 배치 알고리즘을 포함한다.
이 시스템은 데이터 배치 기법에 클라이언트의 제어를 제공한다. 먼저, 전형적인 데이터 배치 기법이 제공된다, 즉 라운드 로빈(round robin)이 제공된다. 두 번째로, 각 필름들의 핫 레벨 옵션들이 클라이언트들에 의해서 부여되고, 한 필름의 각 클립의 사본들을 결정하기 위하여 사용된다. 이 시스템은 클라이언트에 의해서 제공된 위의 정보에 따라 필름들의 모든 클립들의 분배 저장을 끝마칠 수 있다.
핫 레벨 옵션은 Hot으로서 정의된다. 데이터 구조는 다음과 같이 정의된다.
Hot_Level {
First_Level; // level 1. 모든 클립들은 어떤 사본도 갖지 않는다.
Second_Level; // level 2. 미디어 파일의 각 클립은 사본을 갖는다.
Third_Level; // level 3. 미디어 파일의 각 클립은 두 개의 사본들을 갖는다.
Top_Level; // the top level. 미디어 파일의 각 클립은 세개의 사본들을 갖는다. };
라운드 로빈 기법의 알고리즘은 다음과 같다.
N 저장 노드들이 부여된다 : Host[I], I=1,2,……N,;
한 필름의 모든 M 클립들이 정의된다 : Clips[I], I=1,2,……M.
첫 번째 사본들 설정이 정의된다 : Clip_One[I], I=1,2,……M;
두 번째 사본들 설정이 정의된다 : Clip_two[I], I=1,2,……M;
세 번째 사본들 설정이 정의된다 : Clip_three[I], I=1,2,……M.
핫 레벨 파라미터가 First_Level일 때,
I 번째 클립의 저장 위치는 Host[a]가 된다 : Host[a]=I mod N;
핫 레벨 파라미터가 Second_Level일 때,
I 번째 클립의 저장 위치는 Host[a]가 된다 : Host[a]=I mod N;
첫 번째 사본 설정에 있어서 J 번째 사본 클립은 Host[b]가 된다 :
Hos[b]=(J mod N)+1;
핫 레벨 파라미터가 Third_Level일 때,
I 번째 클립의 저장 위치는 Host[a]가 된다 : Host[a]=I mod N;
첫 번째 사본 설정에 있어서 J 번째 사본 클립은 Host[b]가 된다 :
Host[b]=(J mod N)+1;
두 번째 사본 설정에 있어서 K 번째 사본 클립은 Host[c]가 된다 :
Host[c]=(K mod N)+2;
핫 레벨 파라미터가 Top_Level일 때,
I 번째 클립의 저장 위치는 Host[a]가 된다 : Host[a]=I mod N;
첫 번째 사본 설정에 있어서 J 번째 사본 클립은 Host[b]가 된다 :
Host[b]=(J mod N)+1;
두 번째 사본 설정에 있어서 K 번째 사본 클립은 Host[c]가 된다 :
Host[c]=(K mod N)+2;
세 번째 사본 설정에 있어서 L 번째 사본 클립은 Host[d]가 된다 :
Host[d]=(L mod N)+3;
스트리밍 미디어 파일 분석/태스크 목록 생성 모듈(24)은 파일들의 정보를 수집하여, 파일들을 클립들로 분할할 준비를 한다. 데이터 배치 기법은 클라이언트의 요청들로부터 해석(parse)될 수 있다. 반면, 미디어 파일들은 각 클립의 공간 간격 점들, 시간 간격 점들, 및 네트워크 패킷들의 일련 번호 범위를 알아내기 위하여 분석되어져야 한다. 그런 다음, 파일들을 클립들로 분할하는 법에 관한 태스크는 생성될 수 있다(111-114).
도 10은 본 발명의 바람직한 일 실시예에 따른 미디어 파일 분석 및 태스크 목록 생성 방법의 흐름도이다.
도 10을 참조하면, 스트리밍 미디어 파일 분석/태스크 목록 생성 모듈(24)에서 수행되는 과정은 다음과 같이 기술될 수 있다.
첫 번째 단계는 미디어 파일들의 생성된 기본 정보에 따라 정의된 팩 마크를 탐색하는 것이다(101-105).
두 번째 단계에서, 팩 유닛의 데이터는 타임 스탬프 및 일련 번호를 분석하기 위하여 처리되어야 한다(106-108).
세 번째 단계에서, 타임 스탬프는 각 클립의 종료 시간과 비교되어야 한다. 동등하다면, 클립 목록 아이템은 색인 파일들로 기록될 수 있다(109). 그렇지 않으면, 다음 팩 데이터 유닛이 다시 다루어진다.
도 11은 본 발명의 바람직한 일 실시예에 따른 태스크 목록의 구조를 도시한 도면이다.
도 11을 참조하면, 태스크 목록들에는 소스 파일들에서의 공간 오프셋, 시작 시간 점, 종료 시간 점, 및 처리가 성공적인지 여부를 나타내는 플래그를 포함하는 각 클립의 기본 정보를 기록한다.
도 12는 본 발명의 바람직한 일 실시예에 따른 파일 분할 방법의 흐름도이다.
도 12를 참조하면, 파일 분할 모듈(25)에서 수행되는 과정은 다음과 같이 기술될 수 있다.
이 과정에서, 멀티 쓰레드들은 상기된 태스크 목록들에 따라 파일들을 클립들로 분할하기 위하여 생성된다. 이 과정은 다음과 같이 기술된다.
첫 번째 단계는 한 소스 파일의 클립들의 수를 획득하는 색인 파일들을 읽고, 그런 다음 클립 수에 따라 멀티 쓰레드들을 생성한다(121-123).
두 번째 단계는 태스크 목록들을 획득하기 위하여 색인 파일들을 읽는 것을 계속하고, 각 분할 태스크를 개설하기 위하여 관련 쓰레드들에 목록들 내의 각 아이템을 전송한다(124).
어떤 분할 태스크에 대해서, 세 번째 단계는 소스 파일들을 분석하고, 팩 마크들의 위치를 지정한다(125). 마크를 만날 때, 팩은 읽어내어지고, 네트워크 패킷들의 데이터 구조를 정의하는 모듈에 따라 여러 네트워크 패킷들로 분할된다(126-128). 이때, 모든 네트워크 패킷들은 관련 클립들로 기록될 것이다.
네 번째 단계는 모든 대응하는 데이터 유닛들이 다루어질 때까지 세 번째 단계를 반복할 것이다. 모든 분할 작업이 완료된다(129).
각 분할 태스크의 과정에서, 분할 작업의 백분율이 클라이언트에게 보여질 것이다. 그리고, 스케줄링 시간 정보는 그것이 성공적인지에 관한 클라이언트 판단을 위하여 기록되어질 것이다.
클립 전송/저장 모듈(26)을 상세히 설명하면 다음과 같다.
이 모듈은 대응 저장 노드들 상에 있는 상기된 모듈들에 의하여 생성된 클립들을 저장하는 것이다.
먼저, 저장 노드들의 네트워크 주소들은 데이터 배치 기법에서 정의된 위치 요청들에 따라 수집된다. 두 번째로, 수집된 클립들은 전송되고, 저장된다.
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다.
상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장매체를 포함한다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
본 발명에 따르면, 포괄적으로 표준 미디어 포맷들, 미디어 스트림들의 분할 기술, 및 미디어 스트림들에 대한 실시간 전송 프로토콜 실현 기술을 사용하여, 시간 및 공간상의 전통적 방법들의 장점을 가지고 있으면서도, 클러스터 시스템들의 파워를 효율적으로 사용할 수 있다는 효과가 있다. 본 발명의 세부적인 효과는 다음과 같다.
1) 높은 일반성
이론적으로, 본 시스템은 모든 현재의 미디어 형식들을 지원할 수 있고, 그것은 어떤 특정 미디어 형식에 의존하지 않는다. 다른 미디어 형식들이 다른 코딩 표준과 저장 형식을 갖고 있음에도 불구하고, 그들은 동일한 특성을 가지고 있다. 즉, 그것들은 시간 색인에 따라 미디어 데이터를 조직하고, 그 미디어에 저장된다.
2) 높은 유용성
본 발명에서 제시된 분할 분배된 미디어 데이터에 대한 저장 시스템은 안정적이고, 신뢰성이 높다. 그것은 유일 형식 표준을 갖고 있는 비디오 서버의 상위 계층에서의 읽기/쓰기 인터페이스와 교환한다. 이 방식에서, 파일 읽기/쓰기 인터페이스는 단순 및 명확해진다. 전 서버의 고장률은 명확히 감소되고, 전 서버의 신뢰도는 증가된다.
3) 높은 효율
분할 분배 저장 기술은 비디오 서버를 고 효율로 만든다. 모든 필름들이 저장 시스템에 들어가기 전에, 그것들은 본 발명의 파일 분할 과정을 받아들여야 한다. 분할 분배 방식으로 클립들은 여러 노드들에 저장된다. 파일은 고 효율 및 안정적으로 분할된다. 그것의 속도도 보증된다.
4) 클러스터 비디오 서버들의 품질의 현저한 증가
파일 분할을 통하여, 본 발명은 모든 저장된 미디어 파일들에 대한 단일 표준 구조를 제공하고, 미디어 파일의 효율을 증가시킨다. 미디어 데이터의 효율을 증가시킨다. 파일이 미디어 데이터의 네트워크로 전송하기 위하여 읽는 동안, 트랜잭션 캐싱(transaction caching)의 회수가 1/3으로 감소되며, 따라서 서버 노드들의 시스템 자원들을 절약할 수 있다. 반면, 데이터 패킷들의 크기는 거의 동일하며, 네트워크 대역폭은 합리적으로 사용될 수 있다. 네트워크 자원들이 소비될 수 있는 대역폭을 점거하는 급격한 변화들이 없을 것이다.
5) 비디오 서버의 분배 기록 기능의 실현을 위한 이익
쌍방향 서버로서, 비디오는 기록 기능을 갖고 있어야 한다. 이 기능은 원거리 교육, 라이브 레포트(live report) 등을 위하여 널리 사용된다. 분배 기록 기능을 실현하는 기술적인 어려움은 기록된 미디어 데이터를 여러 노드들에 분배하여 저장하고, 그 동안 온라인 클라이언트들의 실시간 커맨드를 제공하는 법이다. 본 발명에서 고안된 미디어 파일들의 유일 표준 형식은 데이터 분배 임의 방문의 분배 저장에 대한 장점이 있다. 이것은 분배 기록 기능의 상기된 어려움들을 극복한다.
6) 미디어 스트리밍 서비스에 대한 클라이언트 재생 장치의 디자인에 대한 장점
스트리밍 미디어에 대한 클라이언트 재생 장치를 디자인하는 심각한 어려움은 네트워크 스트리밍 미디어 패킷들을 조직하는 법이다. 클라이언트 측에서 데이터를 수신한 후에 메시지들을 조직하고, 여러 스트림들을 동기시키는 미디어 패킷에서 여러 스트림들에 관한 기술적 어려움이 있다. 본 발명에서 스트리밍 미디어 네트워크 패킷의 구조는 공시 과정을 절약한다. 여러 스트림들은 전송하기 위하여 하나로 결합될 수 있다. 이와 같이 패킷의 조직은 비교적 단순하다.

Claims (11)

  1. (a) 소스 파일을 분석하는 단계;
    (b) 상기 분석에 따라 상기 소스 파일을 클립들로 분할하는 단계; 및
    (c) 상기 분할된 클립들을 상기 클립들에 대응하는 노드들로 분배하는 단계를 포함하는 것을 특징으로 하는 파일 분할 분배 방법.
  2. 제 1 항에 있어서,
    상기 소스 파일은 스트리밍 미디어 파일인 것을 특징으로 하는 파일 분할 분배 방법.
  3. 제 1 항에 있어서,
    상기 소스 파일을 전송하는 네트워크 패킷의 구조, 상기 클립들을 분배하는 것을 제어하기 위한 분배 제어 파일의 구조, 및 상기 클립들의 구조를 정의하는 단계를 포함하고,
    상기 (a) 단계는 상기 정의된 구조들을 기반으로 분석하는 것을 특징으로 하는 파일 분할 분배 방법.
  4. 제 3 항에 있어서,
    상기 네트워크 패킷의 구조는 RTP(Real-time Transport Protocol)에서의 스트리밍 미디어 데이터 메시지의 주요 부분의 형식과 일치하고, 미디어 타입, 시퀀스 번호, 타임 스탬프, 동기 소스, 및 미디어 데이터를 포함하는 것을 특징으로 하는 파일 분할 분배 방법.
  5. 제 3 항에 있어서,
    상기 분배 제어 파일은 색인 파일 및 SDP 파일을 포함하고, 상기 색인 파일은 상기 소스 파일의 이름, 저장 공간, 시간 길이, 클립 수, 및 핫 스폿을 포함하고, 상기 SDP 파일은 상기 소스 파일의 미디어 타입, 스트림 수, 시간 길이, 및 스트리밍 세션의 ID를 포함하는 것을 특징으로 하는 파일 분할 분배 방법.
  6. 제 3 항에 있어서,
    상기 클립들의 구조는 상기 클립들의 헤더, 소정 스트림의 헤더, 및 네트워크 패킷을 포함하는 것을 특징으로 하는 파일 분할 분배 방법.
  7. 제 1 항에 있어서,
    상기 (a) 단계는 상기 클립들의 공간 간격 점들, 시간 간격 점들, 및 네트워크 패킷들의 일련 번호 범위를 획득하기 위하여 분석하고, 상기 획득된 클립들의 공간 간격 점들, 시간 간격 점들, 및 네트워크 패킷들의 일련 번호 범위를 기반으로 태스크 목록을 생성하는 것을 특징으로 하는 파일 분할 분배 방법.
  8. 제 7 항에 있어서,
    상기 (b) 단계는 상기 클립들의 수를 획득하기 위하여 색인 파일을 읽고, 상기 획득된 클립들의 수에 따라 쓰레드들을 생성하고, 상기 생성된 태스크 목록을 획득하기 위하여 색인 파일을 읽고, 분할 태스크를 개설하기 위하여 상기 생성된 쓰레드들에 상기 획득된 태스크 목록 내의 각 아이템을 전송하고,상기 생성된 분할 태스크에 대하여 팩 마크들의 위치를 상기소스파일 내의 정의된 위치로 지정하고, 상기 지정된 팩 마크에 따라 분할하는 것을 특징으로 하는 파일 분할 분배 방법.
  9. 제 1 항에 있어서,
    클라이언트로부터 상기 소스 파일에 대한 분할 요청을 수신하는 단계; 및
    상기 수신된 분할 요청을 분석하여 클립 배치 기법을 정의하는 단계를 포함하고,
    상기 (c) 단계는 상기 클립 배치 기법에 따라 분배하는 것을 특징으로 하는 파일 분할 분배 방법.
  10. 제 9 항에 있어서,
    상기 클립 대치 기법은 데이터 대치 기법의 옵션, 상기 소스 파일의 핫 레벨, 및 상기 분배에 관한 알고리즘을 포함하는 것을 특징으로 하는 파일 분할 분배 방법.
  11. 제 1 항 내지 제 10 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020040004687A 2003-01-25 2004-01-26 파일 분할 분배 방법 KR101138897B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN03118543.6 2003-01-25
CNB031185436A CN1195274C (zh) 2003-01-25 2003-01-25 基于集群视频服务器的节目源分片分布式存储方法

Publications (2)

Publication Number Publication Date
KR20040068505A true KR20040068505A (ko) 2004-07-31
KR101138897B1 KR101138897B1 (ko) 2012-05-14

Family

ID=27634418

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040004687A KR101138897B1 (ko) 2003-01-25 2004-01-26 파일 분할 분배 방법

Country Status (3)

Country Link
US (1) US8667158B2 (ko)
KR (1) KR101138897B1 (ko)
CN (1) CN1195274C (ko)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1653361A4 (en) * 2003-08-08 2006-12-13 Onkyo Kk NETWORK AV SYSTEM
GB2409299B (en) * 2003-12-18 2007-11-07 Ibm A system for preparing data
US8868772B2 (en) * 2004-04-30 2014-10-21 Echostar Technologies L.L.C. Apparatus, system, and method for adaptive-rate shifting of streaming content
US7818444B2 (en) 2004-04-30 2010-10-19 Move Networks, Inc. Apparatus, system, and method for multi-bitrate content streaming
EP1596396A1 (en) * 2004-05-15 2005-11-16 Deutsche Thomson-Brandt Gmbh Method for splitting a data stream
CN100377536C (zh) * 2004-07-30 2008-03-26 Ut斯达康通讯有限公司 用于流媒体服务的负载模拟器以及负载模拟系统
JP2006185016A (ja) * 2004-12-27 2006-07-13 Hitachi Ltd コンテンツ移動制御装置及び方法
CN100405795C (zh) * 2005-02-24 2008-07-23 广东省电信有限公司研究院 分布式对等流媒体的服务系统及其点播节目的实现方法
US8291095B2 (en) * 2005-04-20 2012-10-16 Limelight Networks, Inc. Methods and systems for content insertion
US8738787B2 (en) * 2005-04-20 2014-05-27 Limelight Networks, Inc. Ad server integration
EP1889151A2 (en) * 2005-05-21 2008-02-20 Kula Media Group Media distribution over a network
DE102005057568B4 (de) 2005-12-02 2021-06-17 Robert Bosch Gmbh Sendeeinrichtung und Empfangseinrichtung
US8555335B2 (en) * 2006-11-01 2013-10-08 Microsoft Corporation Securing distributed application information delivery
CN101193273B (zh) * 2006-11-20 2010-07-14 中兴通讯股份有限公司 一种实时多媒体图像信息存储和播放方法
CN101202882B (zh) * 2007-07-19 2010-09-15 深圳市同洲电子股份有限公司 一种媒体资源传输方法、系统及机顶盒
CN101146110B (zh) * 2007-09-25 2011-06-29 深圳市迅雷网络技术有限公司 一种播放流媒体的方法
CN101409823B (zh) * 2007-10-10 2012-04-25 华为技术有限公司 一种网络个人录像机的实现方法、装置和系统
CN101141627A (zh) * 2007-10-23 2008-03-12 深圳市迅雷网络技术有限公司 一种流媒体文件的存储系统及方法
CN101198016A (zh) * 2007-12-05 2008-06-11 中兴通讯股份有限公司 交互式个人电视媒体交付系统的内容发布和存储方法
CN101667441B (zh) * 2008-09-02 2012-06-20 北京赛金传媒科技有限公司 一种播放列表处理方法和系统
CN101888540B (zh) * 2009-05-13 2012-09-05 中兴通讯股份有限公司 一种在流媒体文件中承载ts流的方法及装置
CN101720005B (zh) * 2009-12-18 2012-02-08 中兴通讯股份有限公司 一种频道时移分片录制的方法及系统
CN101825926B (zh) * 2010-04-13 2012-05-30 苏州达通泰科信息技术有限公司 具有网络直放功能的流媒体服务器
JP5941270B2 (ja) * 2010-12-17 2016-06-29 キヤノン株式会社 情報処理装置、情報処理方法
CN102118438A (zh) * 2011-01-17 2011-07-06 中兴通讯股份有限公司 IPTV系统中直播apple媒体流的方法和装置
CN102196298A (zh) * 2011-05-19 2011-09-21 广东星海数字家庭产业技术研究院有限公司 一种分布式视频点播系统与方法
CN102231860B (zh) * 2011-06-03 2014-03-19 南京远古科技有限公司 一种直播时移数据存储方法
CN102611679A (zh) * 2011-10-26 2012-07-25 苏州闻道网络科技有限公司 基于局域网多核节点的多核并行音频转换方法
KR101949123B1 (ko) * 2012-02-27 2019-02-18 삼성전자주식회사 데이터 복호화 장치 및 방법
CN102663005B (zh) * 2012-03-19 2014-03-26 杭州海康威视数字技术股份有限公司 基于云计算的海量视频文件存储系统、分析方法及其系统
CN102833336A (zh) * 2012-08-31 2012-12-19 河海大学 分散分布式信息采集与并发处理系统中数据分包处理方法
CN102880658B (zh) * 2012-08-31 2016-11-16 电子科技大学 基于地震数据处理的分布式文件管理系统
CN104104971B (zh) * 2013-04-02 2018-12-07 腾讯科技(深圳)有限公司 一种视频文件处理方法及系统
US9378075B2 (en) * 2013-05-15 2016-06-28 Amazon Technologies, Inc. Reducing interference through controlled data access
CN104702654B (zh) * 2014-02-25 2019-04-30 杭州海康威视数字技术股份有限公司 基于视频云存储系统的存储与提取性能平衡的方法与装置
CN103905695B (zh) * 2014-04-10 2018-01-09 中央电视台 一种素材处理方法及装置
CN105100146B (zh) * 2014-05-07 2018-07-20 腾讯科技(深圳)有限公司 数据存储方法、装置及系统
CN105450967B (zh) * 2014-07-31 2019-05-03 杭州海康威视数字技术股份有限公司 对视频录像数据进行打包的方法及装置
CN104837029B (zh) * 2015-05-08 2018-07-03 厦门大学 一种高清视频点播系统的资源硬盘的存储和访问方法
CN106686411A (zh) * 2015-11-10 2017-05-17 中兴通讯股份有限公司 流媒体频道录制方法、装置及回看方法、装置及服务器
CN105357504A (zh) * 2015-12-17 2016-02-24 深圳市科漫达智能管理科技有限公司 一种视频流数据的录像与回放方法及装置
CN105979297B (zh) * 2016-06-14 2019-03-19 天脉聚源(北京)传媒科技有限公司 一种收看时长统计方法及系统
CN106101745A (zh) * 2016-06-14 2016-11-09 天脉聚源(北京)传媒科技有限公司 一种视频播放方法及系统
US10387207B2 (en) * 2016-12-06 2019-08-20 International Business Machines Corporation Data processing
CN106972955A (zh) * 2017-03-06 2017-07-21 深圳市盛弘电气股份有限公司 一种充电桩实时保存bms通信报文的方法以及直流充电桩
CN108900638A (zh) * 2018-08-08 2018-11-27 陈若天 一种在不中断并发异步连接的情况下确保全带宽使用的方法
CN109033439B (zh) * 2018-08-15 2019-11-19 中科驭数(北京)科技有限公司 流式数据的处理方法和装置
CN109359216A (zh) * 2018-08-27 2019-02-19 博康智能信息技术有限公司 一种基于时空循环构造的视频特征均匀散列存储方法
CN111708914A (zh) * 2020-06-11 2020-09-25 北京百度网讯科技有限公司 用于视频处理的方法、装置、电子设备和存储介质
CN112261118B (zh) * 2020-10-19 2022-03-25 腾讯科技(深圳)有限公司 多媒体数据的异常检测方法、终端及服务器
CN112543355B (zh) * 2020-11-25 2022-08-12 南通亿荣网络科技有限公司 一种分布式音视频传输方法及系统
CN113824771A (zh) * 2021-08-25 2021-12-21 深圳市玩物科技有限公司 文件传输方法、装置、设备、存储介质及程序产品
US20230076014A1 (en) * 2021-08-27 2023-03-09 AirMettle, Inc. Partitioning, processing, and protecting media data
CN115174578B (zh) * 2022-07-25 2023-10-20 上海网达软件股份有限公司 一种基于Kubernetes的点播并行转码方法、装置及存储介质

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2164518B (en) * 1984-09-14 1987-12-02 Philips Electronic Associated Rotating television pictures
US5884028A (en) * 1994-07-29 1999-03-16 International Business Machines Corporation System for the management of multiple time-critical data streams
US5668948A (en) * 1994-09-08 1997-09-16 International Business Machines Corporation Media streamer with control node enabling same isochronous streams to appear simultaneously at output ports or different streams to appear simultaneously at output ports
US5530557A (en) * 1994-09-12 1996-06-25 International Business Machines Corporation Online placement of video files determined by a function of the bandwidth to space ratio of each of the storage devices in a server environment
US6305019B1 (en) * 1997-01-13 2001-10-16 Diva Systems Corporation System for interactively distributing information services having a remote video session manager
US7143177B1 (en) * 1997-03-31 2006-11-28 West Corporation Providing a presentation on a network having a plurality of synchronized media types
US6573907B1 (en) * 1997-07-03 2003-06-03 Obvious Technology Network distribution and management of interactive video and multi-media containers
WO1999008203A1 (en) * 1997-08-08 1999-02-18 Pics Previews, Inc. An audiovisual content distribution system
US6675189B2 (en) * 1998-05-28 2004-01-06 Hewlett-Packard Development Company, L.P. System for learning and applying integrated task and data parallel strategies in dynamic applications
US6144375A (en) * 1998-08-14 2000-11-07 Praja Inc. Multi-perspective viewer for content-based interactivity
US6704790B1 (en) * 1998-09-16 2004-03-09 Microsoft Corporation Server-side stream switching
US7024466B2 (en) * 2000-04-07 2006-04-04 Movielink, Llc Network configured for delivery of content for download to a recipient
JP4517267B2 (ja) * 2000-04-21 2010-08-04 ソニー株式会社 記録装置および方法、再生装置および方法、プログラム、並びに記録媒体
EP1198133A4 (en) * 2000-04-21 2004-10-06 Sony Corp INFORMATION PROCESSING DEVICE AND METHOD, PROGRAM AND RECORDED MEDIUM
US6782550B1 (en) * 2000-06-16 2004-08-24 Minerva Networks, Inc. Program guide with a current-time bar
JP2003199045A (ja) * 2001-12-26 2003-07-11 Victor Co Of Japan Ltd 情報記録信号の生成方法、情報信号の再生方法、情報信号の伝送方法、情報記録信号生成装置、情報信号再生装置、情報信号伝送装置、情報信号記録媒体、及び情報信号伝送用プログラム
US7451229B2 (en) * 2002-06-24 2008-11-11 Microsoft Corporation System and method for embedding a streaming media format header within a session description message

Also Published As

Publication number Publication date
CN1195274C (zh) 2005-03-30
KR101138897B1 (ko) 2012-05-14
US20040210948A1 (en) 2004-10-21
US8667158B2 (en) 2014-03-04
CN1434386A (zh) 2003-08-06

Similar Documents

Publication Publication Date Title
KR101138897B1 (ko) 파일 분할 분배 방법
US7287180B1 (en) Hardware independent hierarchical cluster of heterogeneous media servers using a hierarchical command beat protocol to synchronize distributed parallel computing systems and employing a virtual dynamic network topology for distributed parallel computing system
US7143433B1 (en) Video distribution system using dynamic segmenting of video data files
CN100430915C (zh) 交互式宽带服务器系统及内容引擎
US7039784B1 (en) Video distribution system using dynamic disk load balancing with variable sub-segmenting
US7324555B1 (en) Streaming while fetching broadband video objects using heterogeneous and dynamic optimized segmentation size
KR101089562B1 (ko) 고화질 미디어 방송을 위한 피투피 라이브 스트리밍 시스템 및 방법
US7246369B1 (en) Broadband video distribution system using segments
CN109672856B (zh) 资源同步方法和装置
US20140165119A1 (en) Offline download method, multimedia file download method and system thereof
US20100241757A1 (en) System and Method for Storing Streaming Media File
WO1996017306A2 (en) Media server
CN108287905B (zh) 一种网络流特征的提取与存储方法
JP2012517160A (ja) ビデオストリーミングのシームレスな巻戻しおよび再生のためのサーバー側サポート
EP1095337A1 (en) Inexpensive, scalable and open-architecture media server
CN110489484A (zh) 数据同步方法、装置、可读存储介质及电子设备
WO2010043146A1 (zh) 媒体文件存储处理与业务处理方法及装置、服务器集群
US20030154246A1 (en) Server for storing files
CN110493344B (zh) 文件下载方法和装置
EP1627500B1 (en) Service management using multiple service location managers
CN111212255A (zh) 监控资源获取方法、装置及计算机可读存储介质
Jin et al. Owl: a new multimedia data splitting scheme for cluster video server
Liao et al. A new distributed storage scheme for cluster video server
Curcio et al. Design and evaluation of a multimedia storage server for mixed traffic
Orji et al. Spatio-temporal effects of multimedia objects storage and delivery for video-on-demand systems

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160330

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170330

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee