KR102602898B1 - 서버 디바이스, 정보 처리 방법, 및 비일시적 컴퓨터 판독가능 기록 매체 - Google Patents

서버 디바이스, 정보 처리 방법, 및 비일시적 컴퓨터 판독가능 기록 매체 Download PDF

Info

Publication number
KR102602898B1
KR102602898B1 KR1020210023102A KR20210023102A KR102602898B1 KR 102602898 B1 KR102602898 B1 KR 102602898B1 KR 1020210023102 A KR1020210023102 A KR 1020210023102A KR 20210023102 A KR20210023102 A KR 20210023102A KR 102602898 B1 KR102602898 B1 KR 102602898B1
Authority
KR
South Korea
Prior art keywords
data
transmission
unit
storage unit
transmitted
Prior art date
Application number
KR1020210023102A
Other languages
English (en)
Other versions
KR20210130092A (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 KR20210130092A publication Critical patent/KR20210130092A/ko
Application granted granted Critical
Publication of KR102602898B1 publication Critical patent/KR102602898B1/ko

Links

Images

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/631Multimode Transmission, e.g. transmitting basic layers and enhancement layers of the content over different transmission paths or transmitting with different error corrections, different keys or with different transmission protocols
    • 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/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • 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/23113Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving housekeeping operations for stored content, e.g. prioritizing content for deletion because of storage space restrictions
    • 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/2343Processing 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
    • H04N21/234381Processing 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 by altering the temporal resolution, e.g. decreasing the frame rate by frame skipping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • H04N21/8173End-user applications, e.g. Web browser, game
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8455Structuring 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/765Interface circuits between an apparatus for recording and another apparatus
    • H04N5/77Interface circuits between an apparatus for recording and another apparatus between a recording apparatus and a television camera
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Computer And Data Communications (AREA)

Abstract

실시예에 따르면, 서버 디바이스는 데이터 수신 유닛, 전달 유닛, 제1 저장 유닛, 및 저장 제어 유닛을 포함한다. 데이터 수신 유닛은 송신 디바이스로부터 송신 데이터의 제1 데이터를 수신한다. 데이터 수신 유닛은 송신 요청에 응답하여 송신 디바이스로부터 송신된 송신 데이터의 제2 데이터를 추가로 수신한다. 전달 유닛은 제1 데이터 및 제2 데이터를 수신 디바이스에 전달한다. 제1 저장 유닛은 제1 데이터 및 제2 데이터를 저장한다. 저장 제어 유닛은 제1 데이터 및 제2 데이터 중 적어도 하나를 미리 결정된 조건에 따라 제1 저장 유닛으로부터 삭제하고, 삭제된 데이터의 적어도 일부를 포함하는 데이터를 제2 저장 유닛에 저장한다.

Description

서버 디바이스, 정보 처리 방법, 및 비일시적 컴퓨터 판독가능 기록 매체{SERVER DEVICE, INFORMATION PROCESSING METHOD, AND NON-TRANSITORY COMPUTER READABLE RECORDING MEDIUM}
본 출원은 2020년 4월 21일자로 출원된 일본 특허 출원 제2020-075375호에 기초하고 그로부터 우선권의 이익을 주장하고; 그 전체 내용은 본 명세서에 참고로 포함된다.
본 명세서에 설명된 실시예들은 일반적으로 서버 디바이스, 정보 처리 방법, 및 컴퓨터 프로그램 제품에 관한 것이다.
HLS(HTTP Live Streaming) 및 MPEG-DASH(Moving Picture Experts Group-Dynamic Adaptive Streaming over HTTP)와 같은 적응적 스트리밍(adaptive streaming)은 예를 들어, 카메라에 의해 촬영된 비디오(동화상 데이터)를 전달 및 모니터링하는 시스템(비디오 전달 시스템 및 비디오 모니터링 시스템)에 적용될 수 있다.
그러나, 종래 기술에서는, 데이터(비디오 등)를 송신하기 위한 네트워크 회선 상의 부하와 시스템 상의 처리 부하가 증가할 위험이 있다. 예를 들어, 접속된 카메라들의 수가 증가함에 따라, 카메라들로부터 비디오를 송신하기 위한 네트워크 회선 상의 부하 및 비디오를 기록 및 전달하는 서버 상의 처리 부하가 증가할 수 있다.
실시예에 따르면, 서버 디바이스는 데이터 수신 유닛 및 전달 유닛을 포함한다. 데이터 수신 유닛은 복수의 송신 데이터의 일부인 제1 데이터를 송신 디바이스로부터 수신한다. 전달 유닛은 제1 데이터를 수신 디바이스에 전달한다. 데이터 수신 유닛은 복수의 송신 데이터 중에서 제1 데이터 이외의 제2 데이터를 추가로 수신하고, 제2 데이터는 제2 데이터에 대한 송신 요청에 응답하여 송신 디바이스로부터 송신된다. 전달 유닛은 제2 데이터를 수신 디바이스에 전달한다. 서버 디바이스는 제1 저장 유닛 및 저장 제어 유닛을 추가로 포함한다. 제1 저장 유닛은 송신 디바이스로부터 송신된 제1 데이터 및 제2 데이터를 저장한다. 저장 제어 유닛은 제1 저장 유닛에 저장된 제1 데이터 및 제2 데이터 중 적어도 하나를 미리 결정된 조건에 따라 제1 저장 유닛으로부터 삭제하고, 삭제된 데이터의 적어도 일부를 포함하는 데이터를 제2 저장 유닛에 저장한다.
도 1은 본 실시예에 따른 비디오 전달 시스템의 블록도이고;
도 2는 본 실시예의 비디오 전달 시스템에 의한 전달 처리의 개요를 도시하는 도면이고;
도 3은 본 실시예의 비디오 전달 시스템의 각각의 디바이스의 기능 블록도이고;
도 4는 전달 리스트의 데이터 구조의 일례를 도시하는 도면이고;
도 5는 판정 정보의 데이터 구조의 일례를 도시하는 도면이고;
도 6은 본 실시예에 따른 송신 처리의 흐름도이고;
도 7은 저장된 데이터의 송신 처리의 흐름도이고;
도 8은 본 실시예에 따른 리스트 생성 처리의 흐름도이고;
도 9는 본 실시예에 따른 판정 정보 생성 처리의 흐름도이고;
도 10은 본 실시예에서의 콘텐츠 전달 처리의 시퀀스도이고;
도 11은 판정 정보를 사용하여 전달 리스트를 판정하는 일례를 도시하는 도면이고;
도 12는 갱신된 판정 정보의 일례를 도시하는 도면이고;
도 13은 판정 정보를 사용하여 전달 리스트를 판정하는 일례를 도시하는 도면이고;
도 14는 변형예의 비디오 전달 시스템의 구성예를 도시하는 도면이고;
도 15는 변형예의 비디오 전달 시스템에 의한 전달 처리의 개요를 도시하는 도면이고;
도 16은 변형예의 비디오 전달 시스템의 블록도이고;
도 17은 데이터의 이동 방법의 일례를 도시하는 도면이고;
도 18은 본 실시예에 따른 송신 디바이스의 하드웨어 구성도이다.
이하, 본 발명에 따른 송신 디바이스의 바람직한 실시예에 대해서 첨부 도면들을 참조하여 상세하게 설명할 것이다.
적응적 스트리밍을 사용하는 종래의 비디오 전달 시스템에서는, 고품질 라이브 비디오 전달에 필요한 고품질 비디오 스트림(송신 데이터의 일례)을 신뢰성있게 기록하기 위해 송신 레이트가 높은 네트워크 회선을 준비할 필요가 있다.
한편, 다수의 카메라가 접속되어 있는 대규모 비디오 전달 시스템에서는, 다량의 카메라 비디오가 항상 송신된다. 따라서, 회선 부하 또는 비용을 줄이기 위해서는, 카메라와 비디오를 기록하는 서버 디바이스 사이에 송신 레이트가 낮은 네트워크 회선을 사용하는 것이 바람직하다. 그러나, 송신 레이트가 낮은 회선에서는, 라이브 비디오의 품질이 낮을 것이며, 이는 모니터링 작업에 지장을 줄 수 있다.
따라서, 본 실시예에서는, 품질을 저하시키지 않고 회선 부하 또는 처리 부하를 줄일 수 있는 비디오 전달 시스템이 실현된다.
여기서, 본 실시예가 적용될 수 있는 송신 데이터의 일례에 대해서 설명할 것이다. 송신 데이터는 동화상 데이터 및 센서 데이터와 같은, 시간 순서가 정의된 시계열 데이터를 포함한다.
동화상 데이터는, 예를 들어, 카메라 및 프레임 캡처 등의 촬영 디바이스에 의해 촬영된 데이터이다. 동화상 데이터는, 예를 들어, 촬영 디바이스로부터 실시간으로 취득되고, 전달될 콘텐츠로서 사용된다. 촬영된 후에 저장 매체에 일단 저장된 동화상 데이터는 전달될 콘텐츠로서 사용될 수 있다.
센서 데이터는 센서(검출 디바이스)에 의해 검출된 값을 나타내는 데이터이고, 예를 들어, 데이터가 검출(샘플링)된 시간에 관한 정보를 포함한다. 센서는 임의의 디바이스일 수 있다. 예를 들어, 음성을 취득하는 마이크로폰, 위치 정보를 취득하는 GPS(Global Positioning System) 디바이스, 및 검출될 주변 환경, 전자 디바이스의 온도, 속도, 압력 등을 정기적으로 또는 부정기적으로 검출하고 그것을 센서 데이터로서 출력하는 센서가 사용될 수 있다.
이하에서는, 동화상 데이터를 송신 데이터로서 주로 사용하는 일례에 대해서 설명할 것이다.
도 1은 본 실시예에 따른 비디오 전달 시스템의 구성의 일례를 도시하는 블록도이다. 도 1에 도시된 바와 같이, 비디오 전달 시스템은 송신 디바이스(100)(송신 디바이스의 일례), 서버(200)(서버 디바이스의 일례), 및 클라이언트(300)(수신 디바이스의 일례)를 포함한다. 송신 디바이스(100)와 서버(200)는 네트워크(401)에 의해 접속된다. 서버(200)와 클라이언트(300)는 네트워크(402)에 의해 접속된다.
네트워크들(401 및 402)은 인터넷과 같은 임의의 네트워크일 수 있다. 예를 들어, 네트워크들(401 및 402)은 유선 네트워크 또는 무선 네트워크일 수 있다. 또한, 네트워크들(401 및 402)은 하나의 통합 네트워크로서 구성될 수 있다.
도 1에 도시된 통신 시스템의 구성은 일례이며, 이에 한정되지 않는다. 예를 들어, 복수의 송신 디바이스(100), 서버(200), 및 클라이언트(300)가 제공될 수 있다. 또한, 송신 디바이스(100), 서버(200), 및 클라이언트(300) 각각은 하나의 디바이스에 의해 물리적으로 구성될 수 있거나, 복수의 디바이스에 의해 물리적으로 구성될 수 있다. 예를 들어, 서버(200)는 클라우드 환경 상에서 구축될 수 있다.
도 2는 본 실시예의 비디오 전달 시스템에 의한 전달 처리의 개요를 도시하는 도면이다. 송신 디바이스(100)는 비디오를 입력하고 입력된 비디오를 인코딩(코딩)한다. 송신 디바이스(100)는 H.264와 같은 규격에 따라 비디오를 압축 및 인코딩한다. 인코딩된 비디오는 예를 들어, I 픽처와 P 픽처를 포함한다. I 픽처는 인트라-프레임 예측에 의해 인코딩된 화상 데이터이고, 독립적으로 재생될 수 있는 풀-스크린 범위를 포함한다. P 픽처는 I 픽처에 기초하여 인터-프레임 예측에 의해 인코딩된 화상 데이터이다. P 픽처는 단독으로 재생될 수 없지만, I 픽처와 조합하여 재생될 수 있다.
송신 디바이스(100)는 인코딩된 화상들을 픽처들로 분할(프래그먼트화)한다. 그 후, 송신 디바이스(100)는 분할된 픽처의 일부(예를 들어, I 픽처)를 서버(200)에 송신하고, 나머지(예를 들어, P 픽처)를 저장 유닛에 저장한다. 송신 디바이스(100)는 또한 서버(200)에 송신된 픽처를 플레이백(로컬 재생), 백업 등을 위해 저장 유닛에 저장할 수 있다.
통상적으로, 서버(200)는 송신 디바이스(100)로부터 클라이언트(300)에 송신된 I 픽처만을 전달한다. 클라이언트(300)는 예를 들어, 뷰어 애플리케이션을 사용하여 전달된 비디오를 표시한다. 뷰어 애플리케이션은, 예를 들어, 비디오를 표시 및 열람하기 위한 브라우저에 포함된 애플리케이션이다. I 픽처들이 규칙적인 간격으로(예를 들어, 초당 수개의 화상 또는 몇 초마다 하나의 화상) 송신되기 때문에, 정지 화상(I 픽처)이 규칙적인 간격으로 갱신되는 비디오(파라-파라-만화, 프레임별(간헐적) 비디오)가 클라이언트(300) 상에 표시된다. 뷰어 애플리케이션은, 예를 들어, HTML(Hyper Text Markup Language) 5를 위한 애플리케이션 프로그래밍 인터페이스인 MSE(Media Source Extensions)를 사용하는 애플리케이션으로서 실현될 수 있다. 이것은 HTTP 다운로드를 사용한 스트리밍 재생을 가능하게 한다.
클라이언트(300)를 조작하는 사용자 등에 의해 P 픽처의 표시가 요청될 때, 송신 디바이스(100)는 저장된 P 픽처를 판독하고 P 픽처를 서버(200)에 송신한다. 서버(200)는 송신된 P 픽처를 클라이언트(300)에 전달한다. 서버(200)는 송신된 P 픽처를 그대로 전달하거나, 또는 화상 데이터에 대한 변환 처리(재압축 등) 이외의 처리(송신 패킷 포맷의 변경 등)만이 적용되는 P 픽처를 전달할 수 있다. 클라이언트(300)의 뷰어 애플리케이션은 이미 수신된 I 픽처 및 나중에 수신된 P 픽처를 합성 및 표시한다. 그 결과, 클라이언트(300)는 보다 매끄러운 화상을 표시할 수 있다. 송신된 데이터(예를 들어, I 픽처)가 클라이언트(300)의 저장 유닛에 저장되면, 나중에 수신된 P 픽처와의 합성 등에 사용될 수 있다. 즉, 송신 디바이스(100) 및 서버(200)로부터 송신된 데이터를 다시 송신할 필요가 없다. 따라서, 송신 데이터의 양은 P 픽처를 포함하는 모든 비디오 데이터를 재송신하는 방법과 비교하여 감소될 수 있다.
상술한 바와 같이, 서버(200)는 화상 데이터에 재압축과 같은 변환 처리를 적용하지 않고, 송신 디바이스(100)로부터 송신된 화상 데이터를 그대로 또는 송신 패킷 포맷만을 처리함으로써 클라이언트(300)에 전달한다. 예를 들어, 서버(200)는 낮은 송신 레이트에서 전달을 가능하게 하기 위해 품질을 감소시킨 비디오로 변환하는 처리를 수행할 필요가 없다. 따라서, 서버(200)의 처리 부하의 증가 및 화상 품질의 저하를 피할 수 있다. 또한, 정상 상태에서, I 픽처만이 전달되기 때문에, 통신량이 억제될 수 있다. 이러한 방식으로, 품질을 저하시키지 않고 회선 부하 및 처리 부하를 줄일 수 있다.
I 픽처는 비디오를 구성하는 데이터(동화상 데이터)의 일부이지만, 정지 화상으로서 취급될 수 있다는 점에 유의한다. 예를 들어, 클라이언트(300) 상에서 동작하는 브라우저(뷰어 애플리케이션)는 동화상 데이터에 포함되는 I 픽처를 정지 화상 데이터로서 표시할 수 있다. 따라서, I 픽처는 JPEG(Joint Photographic Experts Group)와 같은 정지 화상에 대해 압축 처리를 수행하지 않고 정지 화상 데이터로서 표시될 수 있다. JPEG 포맷 정지 화상들과 비교하여, I 픽처는 더 작은 데이터 크기(더 높은 압축 효율)를 갖기 때문에, 회선 부하 및 처리 부하를 더 줄일 수 있다. 또한, 전달된 비디오가 화상 인식에 사용될 때에도, I 픽처는 비디오를 정지 화상으로 변환하지 않고 화상 인식을 위한 입력 데이터로서 사용될 수 있다.
다음으로, 본 실시예의 비디오 전달 시스템의 각각의 디바이스의 구성의 세부사항들에 대해 설명할 것이다. 도 3은 본 실시예의 비디오 전달 시스템의 각각의 디바이스의 기능 구성의 일례를 도시하는 블록도이다.
도 3에 도시된 바와 같이, 송신 디바이스(100)는 촬영 유닛(101), 저장 유닛(121), 인코딩 유닛(111), 분할 유닛(112), 데이터 송신 유닛(113), 저장 제어 유닛(114), 및 요청 수신 유닛(115)을 포함한다.
촬영 유닛(101)은 비디오(동화상 데이터)를 촬영 및 출력한다. 촬영 유닛(101)은 예를 들어, CCD(Charge Coupled Device) 및 CIS(CMOS image sensor)와 같은 촬영 소자, 또는 프레임 메모리, 프레임 그래버(frame grabber), 및 스크린 캡처와 같은 프레임 버퍼 캡처에 의해 실현될 수 있다.
저장 유닛(121)은 송신 디바이스(100)에 의한 각종 처리에서 사용되는 각종 데이터를 저장한다. 예를 들어, 저장 유닛(121)은 촬영 유닛(101)에 의해 촬영된 비디오를 저장한다.
인코딩 유닛(111)은 촬영 유닛(101)으로부터 입력된 비디오를 인코딩한다. 인코딩 유닛(111)에 의한 인코딩 방법은 임의의 방법일 수 있고, 예를 들어, H.264와 같은 규격에 따른 인코딩 방법이 적용될 수 있다. 인코딩 유닛(111)은 예를 들어, 비디오를 압축 및 인코딩하고, I 픽처와 P 픽처를 포함하는 비디오를 출력한다. 인코딩된 비디오의 각각의 픽처는 송신될 복수의 송신 데이터에 대응한다.
분할 유닛(112)은 인코딩된 비디오를, 서버(200)에 송신될 데이터(제1 데이터)와, 송신없이 저장 유닛(121)에 저장될 데이터(제2 데이터)로 분할한다. 예를 들어, 분할 유닛(112)은 I 픽처가 서버(200)에 송신될 데이터(프래그먼트 데이터)가 되고, P 픽처가 저장 유닛(121)에 저장될 데이터(프래그먼트 데이터)가 되도록, 각 픽처마다 인코딩된 화상을 분할한다. 분할 유닛(112)은 분할된 픽처들 각각이 하나의 파일(프래그먼트 파일)이 되도록 비디오를 분할할 수 있다. 저장 유닛(121)에 저장된 데이터에 관하여, 분할 유닛(112)은 복수의 픽처가 하나의 파일에 포함되도록 데이터를 분할할 수 있다.
분할 유닛(112)에 의해 데이터를 분할하는 방법은 이에 한정되지 않으며, 임의의 방법이 사용될 수 있다. 예를 들어, 분할 유닛(112)은 인코딩된 비디오를 고정된 수로 복수의 I 픽처 중에서 선택된 I 픽처와 다른 픽처(나머지 I 픽처 및 P 픽처)로 분할할 수 있다. 또한, 예를 들어, 분할 유닛(112)은 인코딩된 비디오를 I 픽처 및 복수의 P 픽처로부터 고정된 수로 선택된 P 픽처와 다른 픽처들(나머지 P 픽처)로 분할할 수 있다. 또한, 예를 들어, 분할 유닛(112)은 인코딩된 비디오를 복수의 I 픽처로부터 고정된 수로 선택된 I 픽처, 복수의 P 픽처로부터 고정된 수로 선택된 P 픽처, 및 다른 픽처들(나머지 I 픽처 및 P 픽처)로 분할할 수 있다.
서버(200)로 송신된 데이터는 서버(200)가 그대로 전달할 수 있는 포맷으로 표현될 수 있다. 예를 들어, 분할 유닛(112)은 포맷이 프래그먼트화된 MP4(fMP4)와 같은 규격에 따르도록 분할된 데이터를 변환할 수 있다.
서버(200)로 송신된 데이터는 서버(200)에 의해 전달된 포맷으로 변환될 수 있는 데이터(메타데이터)가 추가되는 포맷으로 표현될 수 있다. 예를 들어, 분할 유닛(112)은 서버(200)가 데이터를 fMP4와 같은 규격에 따른 포맷으로 변환할 수 있도록 변환에 필요한 정보를 포함하는 메타데이터를 분할된 데이터에 추가할 수 있다. 변환에 필요한 정보는, 예를 들어, 송신 디바이스(100)를 식별하는 정보(IP 어드레스, 포트 번호 등), 시간(예를 들어, 화상의 날짜, 시간, 분, 및 초), 및 시간 내의 화상의 위치(예를 들어, 선두로부터의 번호를 나타내는 정보)를 포함한다.
분할 유닛(112)은 네트워크(401)의 대역에 따라 서버(200)로 송신되는 데이터의 크기 또는 인코딩량을 변경할 수 있다. 예를 들어, 분할 유닛(112)은 지연 등이 발생하지 않고 네트워크(401)의 할당된 대역 내에서 송신될 수 있는 크기에 대응하는 데이터, 또는 네트워크(401)의 대역 내에서 인코딩 비트 레이트를 갖는 데이터를 서버(200)로 송신될 데이터로서 분할할 수 있다. 예를 들어, 네트워크(401)의 대역이 큰 경우에, 분할 유닛(112)은 I 픽처 및 P 픽처의 일부를 서버(200)에 송신될 데이터로서 분할하고, 대역이 작아짐에 따라, I 픽처만 또는 I 픽처의 일부(예를 들어, I 픽처들을 고정된 수로 씨닝함)를 서버(200)에 송신될 데이터로서 분할할 수 있다. P 픽처를 부분적으로 전달하기 위한 인코딩 방법으로서, 예를 들어, 일본 특허 제6239472호에 기재된 방법이 사용될 수 있다.
분할 유닛(112)은 네트워크(401)의 대역 또는 클라이언트(300) 또는 서버(200)로부터의 요청에 따라 전술한 바와 같은 분할 방법을 동적으로 스위칭함으로써 서버(200)로 송신하는 데이터의 크기 또는 인코딩량을 변경할 수 있다.
인코딩 유닛(111)에 의해 인코딩된 데이터가 단순히 분할되면, 분할된 데이터의 크기는 일치하지 않을 수 있다. 예를 들어, 인코딩 유닛(111)이 네트워크(401)의 대역에 따라 각각의 화상의 인코딩량을 조정하는 기능을 갖는 경우, 각각의 I 픽처의 크기와 각각의 P 픽처의 크기는 서로 상이할 수 있다. 따라서, 이러한 방식으로 인코딩된 각각의 픽처 중에서, 예를 들어, I 픽처가 서버(200)에 송신될 데이터로서 분할되면, 분할된 I 픽처들 각각의 크기도 서로 상이할 수 있다.
따라서, 인코딩 유닛(111)은 분할된 데이터의 크기 또는 인코딩 비트 레이트가 지연 등이 발생하지 않고 할당된 네트워크(401)의 대역 내에서 송신될 수 있는 크기 또는 인코딩 비트 레이트가 되도록 네트워크(401)의 대역에 따라 인코딩량을 조정할 수 있다. 예를 들어, 분할 유닛(112)이 I 픽처만이 서버(200)에 송신되도록 비디오를 분할하면, 인코딩 유닛(111)은 I 픽처의 크기가 지연 등이 없이 네트워크(401)의 대역 내에서 송신될 수 있는 특정 크기가 되거나, 또는 네트워크(401)의 대역 내의 인코딩 비트 레이트가 되도록 비디오를 인코딩할 수 있다.
데이터 송신 유닛(113)은 서버(200)와 같은 외부 디바이스에 데이터를 송신한다. 예를 들어, 데이터 송신 유닛(113)은 분할 유닛(112)에 의해 분할된 데이터 중에서 서버(200)에 송신될 데이터(제1 데이터)를 서버(200)에 송신한다. 또한, 데이터 송신 유닛(113)이 요청 수신 유닛(115)(후술함)에 의해 저장 유닛(121)에 저장된 데이터 송신 요청을 수신한 경우에, 데이터 송신 유닛(113)은 요청한 데이터를 서버(200)에 송신한다.
저장 제어 유닛(114)은 저장 유닛(121)에 대한 저장 처리를 제어한다. 예를 들어, 저장 제어 유닛(114)은 분할 유닛(112)에 의해 분할된 데이터 중에서 서버(200)에 송신되지 않는 데이터를 저장 유닛(121)에 저장한다. 저장 제어 유닛(114)은 서버(200)에 송신된 데이터(제1 데이터)를 저장 유닛(121)에 저장할 수 있다. 이때, 저장 제어 유닛(114)은 송신된 데이터(제1 데이터)가 송신되었거나 또는 제2 데이터가 송신되지 않았다는 것을 나타내는 메타데이터를 사용하여 저장된 데이터를 관리할 수 있다. 저장 제어 유닛(114)은 미리 결정된 조건에 따라 저장 유닛(121)에 저장된 데이터를 삭제할 수 있다. 예를 들어, 저장 제어 유닛(114)은 데이터가 저장되고나서 특정 기간이 경과한 데이터를 삭제할 수 있다.
요청 수신 유닛(115)은 서버(200)로부터 저장 유닛(121)에 저장된 데이터의 송신 요청을 수신한다. 요청이 서버(200) 이외의 제어 서버 등을 통해 클라이언트(300)로부터 송신되는 구성의 경우에, 요청 수신 유닛(115)은 그러한 제어 서버로부터 저장 유닛(121)에 저장된 데이터에 대한 송신 요청을 수신할 수 있다.
상기 유닛들(인코딩 유닛(111), 분할 유닛(112), 데이터 송신 유닛(113), 저장 제어 유닛(114), 및 요청 수신 유닛(115)) 각각은, 예를 들어, 하나 이상의 프로세서에 의해 실현된다. 예를 들어, 유닛들 각각은 CPU(central processing unit)와 같은 프로세서로 하여금 프로그램을 실행하게 하는 것에 의해, 즉 소프트웨어에 의해 실현될 수 있다. 유닛들 각각은 전용 집적 회로(IC), 즉, 하드웨어와 같은 프로세서에 의해 실현될 수 있다. 유닛들 각각은 소프트웨어와 하드웨어를 조합하여 사용함으로써 실현될 수 있다. 복수의 프로세서를 사용할 때, 각각의 프로세서는 유닛들 중 하나 또는 유닛들 중 2개 이상을 실현할 수 있다.
송신 디바이스(100)의 각각의 기능은 물리적으로 또는 논리적으로 상이한 복수의 디바이스에 전달될 수 있다는 점에 유의한다. 예를 들어, 촬영 유닛(101)과 인코딩 유닛(111)을 포함하는 디바이스(도 2의 비디오 입력 및 인코더)와 나머지 각각의 유닛을 포함하는 디바이스(도 2의 프래그먼트화 및 저장 유닛)로 분할될 수 있다. 이 경우, 인코딩 유닛(111)에 의해 인코딩된 데이터는 예를 들어, 네트워크 또는 동축 케이블과 같은 통신 경로에 의해 후자의 디바이스에 입력된다. 후자의 디바이스는 통신 경로를 통해 인코딩된 데이터를 취득하도록 구성될 수 있다.
다음으로, 서버(200)의 구성에 대해서 설명할 것이다. 서버(200)는 전달 리스트 및 판정 정보를 네트워크(402)를 통해 클라이언트(300)에 전달한다. 전달 리스트는 전달될 데이터(이하, 콘텐츠라고도 함)에 관한 정보를 기술한 리스트이다. 통상적으로, 콘텐츠 전달자(content deliverer)는 콘텐츠 취득처 및 비트 레이트와 같은 메타데이터를 전달 리스트에 기술한다. 콘텐츠 취득자는 전달 리스트를 취득 및 분석함으로써 취득될 콘텐츠를 특정할 수 있다.
전달 리스트에 기술된 콘텐츠는 송신될 수 있는 콘텐츠뿐만 아니라, 송신될 수 없는 콘텐츠, 송신을 허용하지 않는 콘텐츠 등을 포함할 수 있다. 판정 정보는 수신 디바이스(클라이언트(300))가 전달 리스트에 포함된 콘텐츠의 송신을 요청할지의 여부를 판정하기 위한 정보이다.
도 3에 도시된 바와 같이, 서버(200)는 검출 유닛(201), 리스트 생성 유닛(211), 판정 정보 생성 유닛(212), 리스트 송신 유닛(213), 판정 정보 송신 유닛(214), 요청 송수신 유닛(215), 전달 유닛(216), 데이터 수신 유닛(217), 저장 제어 유닛(218), 일시 저장 유닛(221), 및 저장 유닛(222)을 포함한다.
검출 유닛(201)은 콘텐츠가 송신될 수 있다는 것을 검출한다. 예를 들어, 검출 유닛(201)은 콘텐츠가 콘텐츠를 제공하는 제공 디바이스(예를 들어, 송신 디바이스(100))에 의해 제공될 때 콘텐츠가 송신될 수 있다고 판정한다. 검출 유닛(201)은 콘텐츠가 저장되는 저장 영역(예를 들어, 일시 저장 유닛(221))을 모니터링할 수 있고, 콘텐츠가 저장될 때 콘텐츠가 송신될 수 있다고 판정할 수 있다.
리스트 생성 유닛(211)은 전달 리스트를 생성한다. 리스트 생성 유닛(211)은 예를 들어, 클라이언트(300)가 전달 리스트를 생성 및 송신하도록 요청할 때 전달 리스트를 생성한다. 전달 리스트를 생성하기 위한 트리거는 이에 한정되지 않으며, 임의의 트리거일 수 있다. 예를 들어, 리스트 생성 유닛(211)은 특정 기간이 경과할 때마다 다음 기간에 송신될 콘텐츠의 전달 리스트를 발생할 수 있다. 리스트 생성 유닛(211)은 콘텐츠가 제공 디바이스에 의해 제공될 때 또는 생성이 지시될 때 전달 리스트를 생성할 수 있다.
도 4는 전달 리스트의 데이터 구조의 일례를 도시하는 도면이다. 도 4에 도시된 바와 같이, 전달 리스트는 콘텐츠를 식별하는 식별 정보를 포함한다. 도 4는 콘텐츠의 URL(Uniform Resource Locator)을 식별 정보로서 사용하는 일례를 나타낸 도시한다. 식별 정보로서, 콘텐츠가 식별될 수 있는 한 URL 이외의 정보가 사용될 수 있다. 전달 리스트는 식별 정보 이외의 정보를 포함할 수 있다. 본 실시예에서는, 예를 들어, 분할된 데이터(픽처 등)마다 URL을 포함하는 전달 리스트가 작성된다.
도 3으로 되돌아가면, 판정 정보 생성 유닛(212)은 판정 정보를 생성한다. 예를 들어, 판정 정보 생성 유닛(212)은 콘텐츠가 송신될 수 있을 때 콘텐츠가 송신될 수 있다는 것을 나타내는 판정 정보를 생성하고, 콘텐츠가 송신될 수 없을 때 콘텐츠가 송신될 수 없다는 것을 나타내는 판정 정보를 생성한다. 또한, 콘텐츠가 송신될 수 있는지의 여부를 나타내는 상황이 변경될 때, 판정 정보 생성 유닛(212)은 변경된 상황에 대응하도록 갱신된 판정 정보를 생성한다.
판정 정보 생성 유닛(212)은 예를 들어, 클라이언트(300)가 판정 정보가 생성 및 송신되도록 요청할 때 판정 정보를 생성한다. 리스트 생성 유닛(211)에 의해 전달 리스트가 생성될 때, 판정 정보 생성 유닛(212)은 그 시간에 판정 정보를 생성할 수 있다. 판정 정보를 생성하기 위한 트리거는 이에 한정되지 않으며, 임의의 트리거일 수 있다. 예를 들어, 판정 정보 생성 유닛(212)은 예를 들어, 특정 기간이 경과할 때마다 검출 유닛(201)을 사용하여 콘텐츠가 송신될 수 있는지의 여부를 검출할 수 있고, 검출 결과에 따라 갱신된 판정 정보를 생성할 수 있다.
도 5는 판정 정보의 데이터 구조의 일례를 도시하는 도면이다. 도 5의 판정 정보는 도 4의 전달 리스트에 기재된 4개의 콘텐츠가 송신될 수 있는지의 여부를 판정하기 위한 판정 정보의 일례이다. 예를 들어, "o"는 콘텐츠가 송신될 수 있다는 것을 나타내고, "x"는 콘텐츠가 송신될 수 없다는 것을 나타낸다. 도 5의 예에서는, 도 4의 4개의 URL에 대응하는 4개의 콘텐츠("ContentA_1", "ContentA_2", "ContentA_3", 및 "ContentA_4")에 대응하는 4개의 판정 정보("o" 또는 "x")가 대응하는 순서로 지정되어 있다.
각각의 콘텐츠에 대한 판정 정보를 지정할 수 있는 방법이라면, 도 5 이외의 데이터 구조의 판정 정보가 사용될 수 있다. 예를 들어, 콘텐츠 식별 정보는 판정 정보와 연관될 수 있다. 어느 전달 리스트에 판정 정보가 대응하는지를 식별할 수 있도록 하기 위해, 전달 리스트를 식별하기 위한 정보를 판정 정보와 연관시킬 수 있다.
콘텐츠가 송신될 수 있다는 것은 예를 들어, 전달될 콘텐츠가 서버(200)에 제공되고 클라이언트(300)로 송신될 수 있는 상태이다. 송신될 수 없는 콘텐츠는 예를 들어, 전달될 콘텐츠가 서버(200)에 아직 제공되지 않았고 클라이언트(300)로 송신될 수 없는 상태를 의미한다. 서버(200)는 클라이언트(300)로부터의 요청에 응답하여 콘텐츠를 송신(풀 타입 송신(pull type transmission))할 수 있거나, 또는 클라이언트(300)로부터의 요청없이 콘텐츠를 송신(푸시 타입 송신(push type transmission))할 수 있다.
콘텐츠가 제공되는지의 여부에 관계없이, 서버(200)는 콘텐츠가 송신될 수 있는지의 여부를 지정할 수 있다. 예를 들어, 통신 부하를 줄이기 위해, 송신이 가능하지 않다는 것을 나타내는 판정 정보가 제공된 복수의 콘텐츠 중 일부 또는 전부에 대해 생성될 수 있고, 이러한 콘텐츠들은 송신되지 않을 수 있다. 이러한 방식으로, 송신될 수 있는 콘텐츠는 그 후에 송신가능하지 않을 수 있다.
판정 정보는 각각의 콘텐츠마다 하나이거나 복수개일 수 있다. 예를 들어, 콘텐츠의 하나 이상의 메타데이터가 판정 정보로서 사용될 수 있다. 메타데이터는 예를 들어, 콘텐츠의 범위, 콘텐츠의 데이터 길이, 콘텐츠의 타입 등을 나타내는 범위 정보이다. 범위 정보는 예를 들어, 특정 데이터 중에서 콘텐츠로서 전달될 데이터의 범위를 지정하는 정보이다. 범위 정보가 확정될 때, 확정된 범위 정보가 판정 정보로서 설정되고, 범위 정보가 미확정될 때, 범위 정보가 미확정되었다는 것을 나타내는 미리 결정된 정보(미확정된 정보)가 판정 정보로서 설정된다. 미확정된 정보가 범위 정보에 판정 정보로서 설정될 때, 클라이언트(300)는 대응하는 콘텐츠가 송신될 수 없다고 판정할 수 있다. 이러한 방식으로, 메타데이터가 판정 정보로서 사용될 때, 메타데이터에 기초하여 콘텐츠가 송신될 수 있는지의 여부를 판정할 수 있는 데이터 포맷을 정의하는 것으로 충분하다.
도 3으로 되돌아가면, 리스트 송신 유닛(213)은 리스트 생성 유닛(211)에 의해 생성된 전달 리스트를 클라이언트(300)에 송신한다. 예를 들어, 리스트 송신 유닛(213)은 콘텐츠의 송신을 시작하기 전에 미리 클라이언트(300)에 전달 리스트를 송신한다. 판정 정보 송신 유닛(214)은 판정 정보 생성 유닛(212)에 의해 생성된 판정 정보를 클라이언트(300)에 송신한다.
요청 송수신 유닛(215)은 각종 요청을 송수신한다. 예를 들어, 요청 송수신 유닛(215)은 클라이언트(300)로부터 전달 리스트 송신 요청, 판정 정보 송신 요청, 및 콘텐츠 송신 요청을 수신한다. 또한, 요청 송수신 유닛(215)은 저장 유닛(121)에 저장된 콘텐츠에 대한 송신 요청을 송신 디바이스(100)에 송신한다.
전달 유닛(216)은 요청된 콘텐츠를 송신 요청을 송신한 클라이언트(300)에 송신한다. 푸시 타입 송신이 채택될 때, 전달 유닛(216)은 클라이언트(300)로부터의 요청없이 콘텐츠를 송신할 수 있다.
데이터 수신 유닛(217)은 송신 디바이스(100)로부터 송신된 데이터를 수신한다. 예를 들어, 데이터 수신 유닛(217)은 분할된 데이터를 서버(200)에 송신되는 데이터로서 수신한다. 저장 유닛(121)에 저장된 데이터에 대한 송신 요청을 송신하면, 데이터 수신 유닛(217)은 송신 요청에 응답하여 송신 디바이스(100)에 의해 송신된 데이터를 수신한다.
저장 제어 유닛(218)은 일시 저장 유닛(221) 및 저장 유닛(222)에 대한 저장 처리를 제어한다. 송신 디바이스(100)로부터 송신된 데이터 및 서버(200)에 의해 전달될 포맷으로 변환된 송신 디바이스(100)로부터 송신된 데이터가 저장 유닛(222)에 저장되고나서 전달되도록 구성될 때, 저장 유닛(222)에 데이터를 저장하는 처리는 전달 속도를 따라가지 못할 수 있고, 저장 유닛(222)에 데이터를 기입하는 처리는 일시적으로 동결되는 등으로 인해, 기입 처리의 이상을 초래할 수 있고, 이는 정상적인 전달을 막을 수 있다. 따라서, 저장 제어 유닛(218)은 송신 디바이스(100)로부터 송신된 데이터를, 전술한 기입 처리의 이상을 일으키지 않는 저장 매체인 일시 저장 유닛(221)에 저장한다. 데이터가 일시 저장 유닛(221)에 저장되는 경우에, 전달 유닛(216)은 일시 저장 유닛(221)으로부터 데이터를 판독하고 그 데이터를 클라이언트(300)에 전달한다. 이때, 송신 디바이스(100)로부터 송신된 데이터는 최종적으로 저장 유닛(222)에 저장된다. 따라서, 전달 유닛(216)은 클라이언트(300)로부터의 요청에 응답하여 저장 유닛(222)으로부터 전달된 것처럼 동작할 수 있다. 즉, 일시 저장 유닛(221)에 저장된 데이터는 저장 유닛(222)에 저장된 데이터에 대한 요청에 응답하여 반환될 수 있다. 이러한 기능은 이 파일들의 연관을 서버(200) 상에 기록(데이터베이스, 파일, 심벌 링크 등)하고 전달시에 그것을 참조함으로써 실현될 수 있다.
그 후, 저장 제어 유닛(218)은 일시 저장 유닛(221)에 저장된 데이터를 저장 유닛(222)에 기입하는 처리(기입 처리)를 수행한다. 기입 처리에서, 저장 제어 유닛(218)은 일시 저장 유닛(221)에 저장된 복수의 데이터를 하나의 데이터로 결합하고, 그 결합된 데이터를 저장 유닛(222)에 저장할 수 있다. 예를 들어, 저장 제어 유닛(218)은 특정 기간 내에 촬영된 복수의 데이터를 하나의 파일에 포함되도록 결합하고, 그 결합된 파일을 저장 유닛(222)에 기입할 수 있다. 그 결과, 저장 유닛(222)에 저장된 파일들의 수가, 예를 들어, 오퍼레이팅 시스템의 허용량을 초과하기 때문에, 데이터가 저장될 수 없는 문제를 회피할 수 있다.
복수의 데이터를 하나의 데이터로 결합하고 그 결합된 데이터를 저장 유닛(222)에 저장한 후에, 결합된 데이터에 포함된 데이터에 대한 송신 요청이 클라이언트(300)로부터 수신될 때, 결합된 데이터로부터 대응하는 데이터를 특정하는 기능이 필요하게 된다. 따라서, 리스트 생성 유닛(211)은, 예를 들어, 대응하는 데이터를 특정하기 위한 특정 정보를 포함하도록 전달 리스트를 갱신할 수 있다. 리스트 생성 유닛(211)은 조합된 파일 내에서의 데이터의 위치를 나타내는 특정 정보(선두로부터의 바이트 오프셋 등)가 데이터의 식별 정보(URL 등)와 연관시킨 전달 리스트를 작성하고, 생성된 전달 리스트를 클라이언트(300)에 송신한다.
클라이언트(300)가 갱신된 전달 리스트를 참조하여 데이터의 송신을 요청하는 경우에, 클라이언트(300)는 요청된 데이터의 식별 정보와 함께 연관된 특정 정보를 특정한다. 예를 들어, 클라이언트(300)는 특정 정보를 데이터의 식별 정보를 나타내는 URL에 추가함으로써 데이터를 요청한다. 클라이언트(300)는 헤더(예를 들어, HTTP 확장 헤더)에 특정 정보를 포함하는 송신 요청에 의해 데이터를 요청할 수 있다.
이 때 요청된 파일명은 분할 전의 원래의 파일명일 수 있다. 이것은 데이터가 클라이언트(300) 상에 이미 수신되고 캐시되었는지를 판정하는 것을 용이하게 하고, 취득된 데이터의 재취득을 억제할 수 있다. 이 경우, 서버(200)는 원래의 분할된 파일(프래그먼트 파일)로부터 조합된 데이터(조합된 파일)를 특정할 필요가 있다. 이 목적을 위해, (1) 프래그먼트 파일에 대한 조합된 파일의 정보가 클라이언트(300)에 송신될 특정 정보로서 미리 송신되고, 클라이언트(300)가 요청시에 이를 HTTP 확장 헤더에서 기술하고, (2) 서버(200)가 요청된 프래그먼트 파일명으로부터의 요청에 응답할 때 조합된 파일을 스스로 특정하는 방법들이 있다. (2)와 관련하여, (2-1) 조합된 파일을 작성할 때 프래그먼트 파일과의 연관성을 기록하고(데이터베이스, 파일, 심벌 링크 등), (2-2) 명명 규칙에 의해 자체-해결을 설정하는(예를 들어, 도 4의 예에서, ContentsA_1 내지 ContentsA_4의 조합된 파일명은 ContentsA임) 것을 생각할 수 있다.
서버(200)는 클라이언트(300)로부터 송신된 특정 정보를 사용하여 조합된 데이터로부터의 대응하는 데이터를 특정하고, 그 특정된 데이터를 요청하는 클라이언트(300)에 전달한다.
저장 제어 유닛(218)은 미리 결정된 조건에 따라 저장 유닛(222)에 저장된 데이터를 삭제할 수 있다. 예를 들어, 저장 제어 유닛(218)은 데이터가 저장되고나서 특정 기간이 경과한 데이터를 삭제할 수 있다. 저장 제어 유닛(218)은 특정 기간이 경과할 때마다 단계적으로 데이터를 삭제할 수 있다. 예를 들어, 저장 제어 유닛(218)은 미리 결정된 기간(예를 들어, 1일)이 경과한 후에 저장 유닛(222)으로부터 P 픽처의 전부 또는 일부를 삭제하고, 그 후, 미리 결정된 기간(제1 기간과 동일하거나 상이할 수 있음)이 경과할 때마다 단계적으로 P 픽처 또는 I 픽처를 씨닝하기 위해 저장 유닛(222)으로부터 P 픽처 또는 I 픽처를 추가로 삭제한다. 이러한 처리에 의해, 장기간 기록에 대한 저장 용량을 삭감하고 싶을 때, 예를 들어, 화상을 품질이 저하된 비디오로 변환하는 처리를 수행하지 않고, 시간의 경과에 따라 간헐도가 증가하는 비디오를 획득할 수 있다. P 픽처의 단계적인 삭제에 대해서는, 예를 들어, 일본 특허 제6239472호에 기재된 인코딩 방법이 사용될 수 있다.
또한, 저장 제어 유닛(218)은 예를 들어, 송신된 데이터를 우선적으로 삭제할 수 있다. 이 때, 저장 제어 유닛(218)은 데이터가 송신되었는지의 여부를 나타내는 메타데이터를 사용하여 데이터가 송신되었는지의 여부를 판정할 수 있다. 또한, 저장 제어 유닛(218)은 삭제 처리에서의 참조를 위해 다른 메타데이터를 미리 준비할 수 있다. 이러한 메타데이터는 예를 들어, 어느 데이터가 어느 픽처에 대응하는지를 판정할 수 있는 데이터이다. 보다 구체적으로는, 메타데이터는, 예를 들어, 시간(화상의 날짜, 시간, 분, 및 초 등), 시간 내에서의 화상의 위치(예를 들어, 선두부터 번호를 나타내는 정보), 파일명, 및 파일의 선두부터의 바이트 오프셋을 포함한다.
일시 저장 유닛(221)은 수신한 데이터를 일시적으로 저장한다. 예를 들어, 일시 저장 유닛(221)은 DRAM(Dynamic Random Access Memory) 등의 휘발성 메모리에 의해 구성될 수 있다.
저장 유닛(222)은 서버(200)에 의해 사용되는 각종 데이터를 저장한다. 예를 들어, 저장 유닛(222)은 전달될 콘텐츠, 생성된 전달 리스트, 및 생성된 판정 정보를 저장한다. 저장 유닛(222)은 메모리 카드, RAM(Random Access Memory), HDD(Hard Disk Drive), 및 광 디스크와 같은 임의의 통상적으로 사용되는 저장 매체에 의해 구성될 수 있다.
전술한 기록 처리의 이상이 발생하지 않으면, 일시 저장 유닛(221)은 제공되지 않을 수 있다는 점에 유의한다.
상기 유닛들(검출 유닛(201), 리스트 생성 유닛(211), 판정 정보 생성 유닛(212), 리스트 송신 유닛(213), 판정 정보 송신 유닛(214), 요청 송수신 유닛(215), 전달 유닛(216), 데이터 수신 유닛(217), 및 저장 제어 유닛(218)) 각각은, 예를 들어, 하나 또는 복수의 프로세서에 의해 실현된다. 예를 들어, 상기 유닛들 각각은 CPU 등의 프로세서가 프로그램을 실행하게 함으로써, 즉 소프트웨어에 의해 실현될 수 있다. 상기 유닛들 각각은 전용 IC 등의 프로세서에 의해, 즉, 하드웨어에 의해 실현될 수 있다. 유닛들 각각은 소프트웨어와 하드웨어를 조합하여 사용함으로써 실현될 수 있다. 복수의 프로세서를 사용할 때, 각각의 프로세서는 유닛들 중 하나 또는 유닛들 중 2개 이상을 실현할 수 있다.
서버(200)의 각각의 기능은 복수의 물리적으로 또는 논리적으로 상이한 디바이스에 전달될 수 있다는 점에 유의한다. 예를 들어, 전달 리스트를 송신하는 서버 디바이스와 콘텐츠를 송신하는 서버 디바이스로 분할될 수 있다. 또한, 예를 들어, 송신 디바이스(100)로부터 데이터를 수신하고 이 데이터를 일시 저장 유닛(221) 및 저장 유닛(222)에 저장하는 서버 디바이스와, 일시 저장 유닛(221) 및 저장 유닛(222)으로부터 데이터를 판독하고 이 데이터를 전달하는 서버 디바이스로 분할될 수 있다.
다음으로, 클라이언트(300)의 기능이 설명될 것이다. 도 3에 도시된 바와 같이, 클라이언트(300)는 리스트 수신 유닛(311), 판정 정보 수신 유닛(312), 판정 유닛(313), 요청 송신 유닛(314), 데이터 수신 유닛(315), 재생 유닛(316), 및 저장 유닛(321)을 포함한다.
리스트 수신 유닛(311)은 서버(200)로부터 전달 리스트를 수신한다. 판정 정보 수신 유닛(312)은 서버(200)로부터 판정 정보를 수신한다.
판정 유닛(313)은 전달 리스트 및 판정 정보에 기초하여, 송신이 요청되는 콘텐츠를 판정한다. 예를 들어, 판정 유닛(313)은 도 4에 도시한 전달 리스트에 URL이 기술된 콘텐츠 중에서 도 5에 도시한 바와 같이, "o"가 판정 정보로서 설정된 콘텐츠를 송신을 요청한 콘텐츠로서 판정한다. 상술한 범위 정보가 판정 정보로서 사용되는 경우에, 판정 유닛(313)은 예를 들어, 범위 정보에 미확정된 정보가 설정되어 있지 않은 콘텐츠를 송신이 요청된 콘텐츠로서 판정한다. 복수의 판정 정보가 사용되는 경우에, 판정 유닛(313)은 복수의 판정 정보의 조합에 따라 송신이 요청되는 콘텐츠를 판정할 수 있다. 예를 들어, 모든 판정 정보가 콘텐츠가 송신될 수 있다는 것을 나타내는 경우에, 판정 유닛(313)은 대응하는 콘텐츠가 송신이 요청되는 콘텐츠인 것으로 판정한다.
요청 송신 유닛(314)은 송신을 요청한다고 판정된 콘텐츠에 대한 송신 요청을 서버(200)에 송신한다. 데이터 수신 유닛(315)은 서버(200)로부터 요청 송신 유닛(314)에 의해 송신된 송신 요청에 응답하여 송신된 콘텐츠를 수신한다. 재생 유닛(316)은 수신된 콘텐츠를 재생한다.
저장 유닛(321)은 클라이언트(300)에 의해 사용되는 각종 데이터를 저장한다. 예를 들어, 저장 유닛(321)은 송신된 전달 리스트, 송신된 판정 정보, 및 전달된 콘텐츠를 저장한다.
상기 유닛들(리스트 수신 유닛(311), 판정 정보 수신 유닛(312), 판정 유닛(313), 요청 송신 유닛(314), 데이터 수신 유닛(315), 및 재생 유닛(316)) 각각은 예를 들어, 1개 또는 복수의 프로세서에 의해 실현된다. 예를 들어, 상기 유닛들 각각은 CPU 등의 프로세서가 프로그램을 실행하게 함으로써, 즉 소프트웨어에 의해 실현될 수 있다. 상기 유닛들 각각은 전용 IC 등의 프로세서에 의해, 즉, 하드웨어에 의해 실현될 수 있다. 유닛들 각각은 소프트웨어와 하드웨어를 조합하여 사용함으로써 실현될 수 있다. 복수의 프로세서를 사용할 때, 각각의 프로세서는 유닛들 중 하나 또는 유닛들 중 2개 이상을 실현할 수 있다.
상술한 바와 같이 전달 리스트와 판정 정보를 사용함으로써, 서버(200)는 예를 들어, 갱신이 있을 때마다 전달 리스트를 작성하여 송신할 필요가 없다. 또한, 클라이언트(300)는 판정 정보를 참조함으로써 갱신된 부분을 보다 쉽게 분석할 수 있다. 즉, 전달 리스트를 재취득하고 재분석하지 않고, 최근 전달 리스트와 같은 정보를 효율적으로 취득 및 해석할 수 있다.
판정 정보를 사용하지 않고, 예를 들어, 데이터가 갱신될 때마다 전달 리스트가 작성 및 송신될 수 있다는 점에 유의한다. 이 경우, 판정 정보에 관한 기능들(판정 정보 생성 유닛(212), 판정 정보 송신 유닛(214), 판정 정보 수신 유닛(312) 등)이 제공되지 않을 수 있다. 또한, 예를 들어, 푸시 타입 송신이 채택될 때, 서버(200)는 전달 리스트를 사용하지 않고 비디오를 클라이언트(300)에 전달할 수 있다.
다음으로, 본 실시예에 따른 송신 디바이스(100)에 의한 데이터 송신 처리에 대해서 설명할 것이다. 도 6은 본 실시예에서의 송신 처리의 일례를 도시하는 흐름도이다.
촬영 유닛(101)은 전달될 비디오를 촬영한다(단계 S101). 인코딩 유닛(111)은 촬영 유닛(101)으로부터 입력된 비디오를 인코딩한다(단계 S102). 분할 유닛(112)은 서버(200)에 송신될 데이터와 저장 유닛(121)에 저장될 데이터를 분할한다. 예를 들어, 분할 유닛(112)은 입력된 비디오를 I 픽처의 프래그먼트와 P 픽처의 프래그먼트로 분할한다(단계 S103). 데이터 송신 유닛(113)은 I 픽처의 프래그먼트를 서버(200)에 송신한다(단계 S104). 저장 제어 유닛(114)은 P 픽처의 프래그먼트를 저장 유닛(121)에 저장한다(단계 S105).
다음으로, 저장 유닛(121)에 저장된 데이터의 송신 처리에 대해서 설명할 것이다. 도 7은 저장 유닛(121)에 저장된 데이터의 송신 처리의 일례를 도시하는 흐름도이다.
요청 수신 유닛(115)은 서버(200)(또는 제어 서버)로부터 저장 유닛(121)에 저장된 데이터에 대한 송신 요청를 수신한다(단계 S201). P 픽처가 저장 유닛(121)에 저장되는 경우, 요청 수신 유닛(115)은 저장된 P 픽처들 중 임의의 P 픽처의 송신 요청을 수신한다. 데이터 송신 유닛(113)은 요청된 P 픽처를 저장 유닛(121)으로부터 판독하고 그 P 픽처를 서버(200)에 송신한다(단계 S202).
다음으로, 이러한 방식으로 구성된 본 실시예에 따른 서버(200)에 의한 리스트 생성 처리에 대해서 설명할 것이다. 리스트 생성 처리는 서버(200)가 전달 리스트를 생성하는 처리이다. 도 8은 본 실시예에서의 리스트 생성 처리의 일례를 도시하는 흐름도이다.
서버(200)의 리스트 생성 유닛(211)은 예를 들어, 클라이언트(300)로부터의 요청에 응답하여 전달 리스트를 생성한다(단계 S301). 리스트 생성 유닛(211)은 생성된 전달 리스트를, 예를 들어, 저장 유닛(222)에 저장한다(단계 S302).
일례로서, 시간적으로 연속하는 콘텐츠들인 ContentA_1, ContentA_2, ContentA_3, 및 ContentA_4가 전달될 콘텐츠들로서 존재하고, ContentA_1과 ContentA_3이 전달될 수 있다고 가정한다. 이 경우, 리스트 생성 유닛(211)은 ContentA_1, ContentA_2, ContentA_3, 및 ContentA_4를 전달하기 위한 전달 리스트를 생성한다. 상술한 도 4는 이 때 생성된 전달 리스트의 일례를 도시한다.
다음으로, 본 실시예에 따른 서버(200)에 의한 판정 정보 생성 처리에 대해 설명할 것이다. 판정 정보 생성 처리는 서버(200)가 판정 정보를 생성하는 처리이다. 판정 정보 생성 처리는 예를 들어, 클라이언트(300)가 판정 정보의 송신을 요청할 때 실행된다. 도 9는 본 실시예에서의 판정 정보 생성 처리의 일례를 도시하는 흐름도이다.
서버(200)의 판정 정보 생성 유닛(212)은 전달될 콘텐츠에 대하여 판정 정보가 생성되었는지의 여부를 판정한다(단계 S401). 판정 정보가 생성되지 않았다면(단계 S401: 아니오), 판정 정보 생성 유닛(212)은 콘텐츠에 대한 판정 정보를 생성한다(단계 S402). 상술한 도 5는 도 8에서 설명된 예에서 생성된 판정 정보의 예(ContentA_1과 ContentA_3이 전달될 수 있는 예)를 도시한다.
판정 정보가 생성된 후, 및 판정 정보가 이미 생성되었을 때(단계 S401: 예), 판정 정보 생성 유닛(212)은 생성된 판정 정보를 갱신할지의 여부를 판정한다(단계 S403). 예를 들어, 판정 정보 생성 유닛(212)은 콘텐츠가 송신될 수 있다는 것을 나타내는 검출 결과가 검출 유닛(201)으로부터 수신될 때, 판정 정보가 갱신되었다고 판정한다.
판정 정보가 갱신되어야 한다고 판정되면(단계 S403: 예), 판정 정보 생성 유닛(212)은 판정 정보를 갱신한다(단계 S404). 판정 정보를 갱신한 후, 및 판정 정보가 갱신되지 않았다고 판정될 때(단계 S403: 아니오), 판정 정보 생성 처리는 종료된다.
서버(200)는 생성된 전달 리스트 및 판정 정보를 네트워크(402)를 통해 전달에 이용가능하게 한다. 클라이언트(300)는 서버(200)에 액세스하여 전달 리스트 및 판정 정보를 취득할 수 있다.
다음으로, 본 실시예에 따른 통신 시스템에 의한 콘텐츠 전달 처리에 대해서 설명할 것이다. 도 10은 본 실시예에서의 콘텐츠 전달 처리의 일례를 도시하는 시퀀스도이다.
서버(200)의 리스트 생성 유닛(211)은 전달 리스트를 생성한다(단계 S501). 이러한 처리는, 예를 들어, 상술한 리스트 생성 처리에 대응한다. 서버(200)의 리스트 송신 유닛(213)은 예를 들어, 클라이언트(300)로부터의 요청에 응답하여 전달 리스트를 클라이언트(300)에 송신한다(단계 S502).
서버(200)의 판정 정보 생성 유닛(212)은 판정 정보를 생성한다(단계 S503). 이러한 처리는 예를 들어, 상술한 판정 정보 생성 처리에 대응한다. 서버(200)의 판정 정보 송신 유닛(214)은 예를 들어, 클라이언트(300)로부터의 요청에 응답하여 판정 정보를 클라이언트(300)에 송신한다(단계 S504).
클라이언트(300)의 리스트 수신 유닛(311)은 전달 리스트를 수신하고, 판정 정보 수신 유닛(312)은 판정 정보를 수신한다. 그 후, 클라이언트(300)의 판정 유닛(313)은 수신된 전달 리스트 및 판정 정보를 사용하여 송신이 요청되는 콘텐츠를 판정한다(단계 S505). 예를 들어, 도 4에 도시된 전달 리스트가 수신된 경우, 판정 유닛(313)은 수신된 전달 리스트를 분석하여 ContentA_1 내지 ContentA_4를 취득하기 위한 URL들을 획득한다. 또한, 판정 유닛(313)은 수신된 판정 정보를 분석하고, 전달 리스트에 기술된 콘텐츠 중에서 송신될 수 있는 콘텐츠를 판정한다.
도 11은 도 4에 도시된 판정 정보를 사용하여 도 5에 도시된 전달 리스트를 판정하는 일례를 도시하는 도면이다. 도 11에 도시된 바와 같이, 전달 리스트에 기술된 ContentA_1을 취득하기 위한 URL과 ContentA_1에 대응하는 판정 정보를 조합함으로써, 판정 유닛(313)은 ContentA_1이 송신(액세스)될 수 있다고 판정할 수 있다. 유사하게, 판정 유닛(313)은 ContentA_2가 송신(액세스 불가능)될 수 없다고 판정할 수 있다.
도 10으로 되돌아가면, 요청 송신 유닛(314)은 송신을 요청한다고 판정된 콘텐츠에 대한 송신 요청을 서버(200)에 송신한다(단계 S506). 서버(200)의 전달 유닛(216)은 요청된 콘텐츠를 클라이언트(300)에 송신한다(단계 S507). 클라이언트(300)의 데이터 수신 유닛(315)은 콘텐츠를 수신하고, 재생 유닛(316)은 수신된 콘텐츠를 재생한다(단계 S508).
서버(200)에 의해 그대로 전달될 수 있는 포맷으로 표현된 콘텐츠가 송신 디바이스(100)로부터 송신되는 경우, 전달 유닛(216)은 송신 디바이스(100)로부터 송신된 콘텐츠를 변환하지 않고 콘텐츠를 클라이언트(300)에 직접 송신한다. 콘텐츠가 서버(200)에 의해 전달되는 포맷으로 변환될 수 있는 메타데이터가 추가되는 포맷으로 송신되는 경우, 전달 유닛(216)은 송신된 콘텐츠를 메타데이터에 따라 전달될 수 있는 포맷으로 변환하고, 변환된 콘텐츠를 클라이언트(300)에 송신한다.
그 후, ContentA_2가 전달 준비가 되었다고 가정한다. 이때, 서버(200)의 검출 유닛(201)은 ContentA_2가 전달 준비된 것을 검출한다. 판정 정보 생성 유닛(212)은 검출 결과에 따라 갱신된 판정 정보를 생성한다(단계 S509).
도 12는 갱신된 판정 정보의 일례를 도시하는 도면이다. 도 12에 도시한 바와 같이, 판정 정보 생성 유닛(212)은 ContentA_2에 대응하는 판정 정보를 "x"에서 "o"으로 갱신한다. 갱신된 판정 정보는 네트워크(402)를 통해 전달될 준비가 된다.
도 10으로 되돌아가면, 서버(200)의 판정 정보 송신 유닛(214)은 예를 들어, 클라이언트(300)로부터의 요청에 응답하여 갱신된 판정 정보를 클라이언트(300)에 송신한다(단계 S510). 후속 단계들 S511 내지 S514는 단계들 S505 내지 S508과 동일하다.
도 13은 도 12에 도시된 판정 정보를 사용하여 도 4에 도시된 전달 리스트를 판정하는 일례를 도시하는 도면이다. 도 13에 도시된 바와 같이, 판정 유닛(313)은 ContentA_2가 송신 가능한(액세스 가능한) 상태에 있다고 판정할 수 있다.
이러한 방식으로, ContentA_2가 전달 준비가 될 때, 클라이언트(300)는 전달 리스트를 재취득하지 않고, 단지 갱신된 판정 정보를 이미 수신된 전달 리스트에 적용함으로써 각각의 콘텐츠의 최신 상태를 획득할 수 있다.
본 실시예는 예를 들어, 드라이브 레코더에 의해 촬영된 비디오를 모니터링하기 위한 시스템에 적용될 수 있다. 적용가능한 시스템들은 이에 제한되지 않는다. 예를 들어, 센서에 의해 획득된 센서 데이터를 전달 및 모니터링하는 시스템, 및 이동체에 탑재된 촬영 디바이스 등에 의해 획득된 동화상 데이터를 전달 및 모니터링하는 시스템에 적용될 수 있다. 이동체는 예를 들어, 사람, 로봇, 차량(자동차, 오토바이, 열차 등), 트롤리(trolley), 비행가능한 물체(유인 비행체, 무인 비행체(예를 들어, UAV), 드론), 및 개인 모빌리티 등을 포함한다. 또한, 이동체는 예를 들어, 사람에 의한 운전 조작을 통해 주행하는 이동체와, 사람에 의한 운전 조작없이 자동으로 주행(자동적으로 운전)할 수 있는 이동체이다.
본 실시예는 또한 예를 들어, 디바이스의 모니터링 및 제어 시스템의 화면(Human Machine Interface(HMI))의 조작 이력을 모니터링하는 모니터링 시스템에 적용될 수 있다. 화면의 조작 이력은 예를 들어, 표시 디바이스에 표시되는 화면을 촬영 및 기록하는 기능에 의해 획득될 수 있다. 이렇게 획득된 화상 데이터는 송신 디바이스(100)에 의해 촬영된 비디오 대신에 사용될 수 있다.
다수의 모니터링 화면이 일반적으로 디바이스의 모니터링 및 제어 시스템에서 사용되기 때문에, 화면의 조작 이력의 모니터링 시스템은 다수의 모니터링 화면 화상을 나란히 모니터링하는 것이 필요할 수 있다. 일반적으로, 이러한 방식으로 다수의 비디오를 병렬로 표시하는 처리는 처리 부하를 증가시키지만, 본 실시예에서는, 분할된 데이터(예를 들어, I 픽처)만이 표시될 수 있기 때문에, 처리 부하의 증가가 억제될 수 있다.
변형예 1
네트워크(401)는 복수의 통신 회선에 의해 구성될 수 있고, 복수의 통신 회선 중 하나(통신 회선(401A))에 의해 분할 유닛(112)에 의해 분할된 데이터의 일부(예를 들어, I 픽처)를 서버(200)에 송신하고, 복수의 통신 회선 중 다른 통신 회선(통신 회선(401B))에 의해 나머지 데이터(예를 들어, P 픽처)를 서버(200)에 송신하도록 구성될 수 있다. 도 14는 이러한 방식으로 구성된 변형예 1의 비디오 전달 시스템의 구성예를 도시하는 도면이다. 예를 들어, 데이터 송신 유닛(113)은 통신 회선(401A)에 의해 I 픽처를 라이브-스트리밍하고 임의의 타이밍에서 통신 회선(401B)에 의해 P 픽처를 송신할 수 있다.
변형예 2
분할된 데이터를 서버(200)에 송신하는 대신에, 분할된 데이터를 분할하여 송신 디바이스(100) 내의 저장 유닛(121)에 저장할 수 있다. 그 결과, 예를 들어, 저장 유닛(121)으로부터 필요한 픽처(예를 들어, I 픽처)만을 판독 및 표시할 수 있다. I 픽처만을 표시하는 방법은 P 픽처를 포함하는 모든 픽처를 표시하는 방법과 비교하여 처리 부하를 줄일 수 있다. 따라서, 예를 들어, 처리 용량이 제한된 클라이언트(300) 등에 대해서도, 복수의 송신 디바이스(100)의 저장 유닛(121)으로부터 I 픽처만을 판독하고 이들을 병렬로 표시할 수 있다. 또한, 필요한 경우, 나머지 P 픽처 등을 단계적으로 판독하여 움직이는 표시를 만들 수 있다.
이 경우, 저장 제어 유닛(114)은 서버(200)의 저장 제어 유닛(218)의 경우에서와 같이, 저장되고나서 특정 기간이 경과한 데이터를 삭제할 수 있고, 특정 기간이 경과한 후에 데이터를 단계적으로 삭제할 수 있다. 예를 들어, 저장 용량이 불충분할 때, I 픽처와 P 픽처를 포함하는 모든 데이터를 연대순으로 삭제하는 대신에, P 픽처만을 삭제하고 I 픽처를 간헐적으로 표시될 수 있는 데이터로서 남길 수 있으며, 따라서 데이터의 장기간 저장 및 저용량 양쪽 모두가 달성될 수 있다.
변형예 3
비디오가 각각의 픽처마다 분할 및 전달되면, 전달 리스트의 크기가 증가할 수 있다. 따라서, 리스트 생성 유닛(211)은 계층적 구조를 갖는 복수의 파일로부터 전달 리스트를 생성할 수 있다. 예를 들어, 리스트 생성 유닛(211)은 년, 월, 일, 시간 등의 단위로 계층적으로 전달 리스트를 구성할 수 있다. 예를 들어, 하위 계층에서의 전달 리스트는 특정 시간 범위로 분할된 프래그먼트 데이터 각각의 식별 정보를 포함한다. 다음 상위의 전달 리스트는 하루에 포함된 시간에 대응하는 하나 이상의 전달 리스트를 식별하는 정보를 포함한다. 다음 상위의 전달 리스트는 한 달에 포함된 날들에 대응하는 하나 이상의 전달 리스트를 식별하는 정보를 포함한다. 다음 상위의 전달 리스트는 일년에 포함된 달들에 대응하는 하나 이상의 전달 리스트를 식별하는 정보를 포함한다.
변형예 4
도 15는 변형예 4의 비디오 전달 시스템에 의한 전달 처리의 개요를 도시하는 도면이다. 본 변형예의 비디오 전달 시스템은 제어 서버(510)와 웹 서버(520)를 추가로 포함한다. 본 변형예에서, 서버(200)는 비디오를 전달하는 웹 서버로서 구성된다.
제어 서버(510)는 제어 유닛(511)을 포함한다. 제어 유닛(511)은 클라이언트(300)로부터 송신된 요청에 따라 송신 디바이스(100)를 제어한다. 예를 들어, 클라이언트(300)는 픽처를 분할하고 일부(예를 들어, I 픽처만) 또는 모든 픽처를 송신할지의 여부를 나타내는 송신 요청을 제어 서버(510)에 송신한다. 제어 서버(510)의 제어 유닛(511)은 송신 요청에 따라, 픽처들의 일부만을 분할하고, 이들을 서버(200)에 송신(업로드)할지, 또는 모든 픽처들을 서버(200)에 송신할지를 나타내는 제어 신호를 송신 디바이스(100)에 송신한다.
송신 디바이스(100)는 제어 서버(510)로부터 송신된 제어 신호에 따라, 상기 실시예에서와 같이 분할된 픽처들의 일부분만을 서버(200)에 송신하는 것, 또는 모든 픽처를 서버(200)에 송신하는 것 사이에서 스위칭함으로써 동작한다.
캡처 스트림 송신(업로드 송신)은 분할된 데이터가 서버(200)에 송신될 데이터(제1 데이터)로서 서버(200)에 송신되는 것을 의미한다. 캡처 파일 저장(파일 출력)은 분할된 데이터가 서버(200)에 송신되지 않고 저장 유닛(121)에 저장될 데이터(제2 데이터)로서 저장되는 것을 의미한다. 도 15에 도시된 바와 같이, 저장된 데이터는 서버(200)에 오프라인으로 복사될 수 있다.
서버(200)는 필요한 경우, 데이터 수신 유닛(217)에 의해 수신된 데이터를 전달가능한 포맷으로 변환하고(스트림 변환하고), 그것을 저장 유닛(222)에 저장한다. 오프라인으로 복사된 데이터는 일괄적으로 변환(일괄 변환)되어 저장 유닛(222)에 저장될 수 있다.
저장 유닛(222)은 전달가능한 포맷의 각각의 픽처(프래그먼트 파일), 전달 리스트 등을 저장한다. 서버(200)는 저장 유닛(222)에 저장된 픽처들을 전달하는 비디오 서버로서 기능한다. 상술한 바와 같이, 데이터 수신 유닛(217)에 의해 수신된 데이터는 일시 저장 유닛(221)에 저장될 수 있고, 일시 저장 유닛(221)에 저장된 데이터는 전달 유닛(216)에 의해 전달될 수 있다.
클라이언트(300)는 뷰어를 갖는 웹 브라우저를 갖는다. 웹 브라우저는 비디오를 재생하는 비디오 플레이어를 갖는다. 비디오 플레이어는, 예를 들어, HTML5-준수 애플리케이션으로서 실현된다.
웹 서버(520)는 비디오 서버의 기능 이외의 기능을 갖는 서버 디바이스이다. 예를 들어, 웹 서버(520)는 비디오 전달 시스템과 상이한 외부 시스템을 위한 사용자 인터페이스(UI)를 제공하기 위한 서버 디바이스이다.
상술한 바와 같이, 상기 실시예의 비디오 전달 시스템은 예를 들어, 인터넷 상에서 사용되는 웹 시스템으로서 실현될 수 있다.
변형예 5
저장 유닛(222)으로부터 삭제된 데이터는 다른 저장 매체에 저장(보존, 이동)될 수 있다. 도 16은 변형예 5의 비디오 전달 시스템의 각각의 디바이스의 기능 구성의 일례를 도시하는 블록도이다.
도 16에 도시된 바와 같이, 본 변형예의 비디오 전달 시스템은 저장 디바이스(600-2)를 추가로 포함한다. 또한, 서버(200-2)의 저장 제어 유닛(218-2)의 기능은 상술한 실시예의 저장 제어 유닛(218)과 상이하다. 다른 구성들 및 기능들은 상기 실시예에 따른 비디오 전달 시스템의 블록도인 도 3에서의 것들과 동일하기 때문에, 동일한 참조 번호들이 주어지고 그의 설명은 본 명세서에서 생략된다.
저장 디바이스(600-2)(제2 저장 유닛의 예)는 서버(200-2)의 저장 유닛(222)(제1 저장 유닛의 예)으로부터 이동된 데이터를 저장하기 위한 저장 매체를 포함하는 디바이스이다. 저장 디바이스(600-2)는 예를 들어, 클라우드 환경 상에 구축되는 저장 디바이스일 수 있다. 저장 매체는 메모리 카드, RAM, HDD, 광 디스크, 및 테이프와 같은 임의의 통상적으로 사용되는 저장 매체에 의해 구성될 수 있다.
저장 디바이스(600-2)는 저장 유닛(222)보다 낮은 비용을 갖는 저장 매체에 의해 구성될 수 있다. 이러한 저장 매체를 포함하는 저장 디바이스(600-2)를 사용함으로써, 저장될 데이터량이 증가하고, 데이터 유지 기간이 연장될 때에도, 데이터 저장을 위한 비용을 줄일 수 있다.
저장 디바이스(600-2)는 인터넷과 같은 네트워크를 통해 서버(200-2)에 접속된다. 이러한 네트워크는 네트워크들(401 및 402) 중 적어도 하나와 동일할 수 있거나, 또는 상이한 네트워크일 수 있다.
저장 디바이스(600-2)는 서버(200-2)에 제공될 수 있다. 예를 들어, 저장 유닛(222)과 상이한 저장 매체를 포함하는 저장 유닛(제2 저장 유닛의 예)으로서의 저장 디바이스(600-2)는 서버(200-2)에 제공될 수 있다.
저장 제어 유닛(218)의 기능들 이외에, 저장 제어 유닛(218-2)은 저장 유닛(222)으로부터 미리 결정된 조건들에 따라, 저장 유닛(222)에 저장된 데이터를 삭제하고, 삭제된 데이터의 적어도 일부를 포함하는 데이터를 저장 디바이스(600-2)에 저장하는 기능을 포함한다.
삭제된 데이터의 적어도 일부를 포함하는 데이터는 데이터가 삭제된 데이터의 전부, 삭제된 데이터의 일부만, 또는 삭제된 데이터(일부 또는 전부)만이 될 수 있을 뿐만 아니라, 삭제되지 않은 데이터(또한 저장 유닛(222)에 저장된 데이터)도 포함할 수 있다는 것을 의미한다.
도 17은 데이터를 이동시키는 방법의 일례를 도시하는 도면이다. 도 17은 특정 기간이 경과할 때마다 데이터가 단계적으로 이동되는 예를 도시한다. t0, t1, ..., tN은 데이터에 첨부된 시간(초)을 나타낸다. 또한, 도 17은 데이터가 초당 60 프레임(I 픽처: 2 프레임, P 픽처: 58 프레임)으로 저장되는 예를 도시한다.
제1 스테이지에서, 저장 제어 유닛(218-2)은 저장 유닛(222)에 저장된 데이터 중에서 P 픽처들(1701a 및 1701b)을 삭제하고, 삭제된 P 픽처들(1701a 및 1701b)을 저장 디바이스(600-2)에 저장한다. 그 결과, 초당 2개의 프레임(I 픽처만)의 데이터가 저장 유닛(222)에 남겨진다.
제2 스테이지에서, 저장 제어 유닛(218-2)은 저장 유닛(222)에 저장된 초당 2개의 프레임의 데이터로부터 I 픽처(1702)를 삭제하고, 삭제된 I 픽처(1702)를 저장 디바이스(600-2)에 저장한다. 그 결과, 초당 1개의 프레임(I 픽처만)의 데이터가 저장 유닛(222)에 남겨진다.
제3 스테이지에서, 저장 제어 유닛(218-2)은 규칙적인 간격으로 저장 유닛(222)에 저장된 초당 하나의 프레임의 데이터인 I 픽처(1703)를 삭제하고, 삭제된 I 픽처를 저장 디바이스(600-2)에 저장한다. 예를 들어, 저장 제어 유닛(218-2)은 2초에 하나의 프레임이 되도록 I 픽처(1703) 내의 데이터(I 픽처)를 절반으로 한다.
도 17에 도시된 이동 방법은 일례이며 이에 한정되지 않는다는 점에 유의한다. 예를 들어, 데이터를 이동시키는 조건은 도 17에 나타낸 바와 같이 특정 기간의 경과에만 한정되지 않고, 다른 조건들일 수 있다. 또한, 이동될 데이터를 결정하는 방법은 도 17에 도시된 방법에 한정되지 않는다. 도 17에는, P 픽처가 먼저 이동되고 이어서 I 픽처가 단계적으로 이동되는 예가 도시되어 있다. 저장 제어 유닛(218-2)은 I 픽처와 P 픽처를 포함하는 GOP(group of picture)의 단위로 데이터를 이동시킬 수 있다. 도 17의 예에서, 저장 제어 유닛(218-2)은 1초에 포함되는 2개의 GOP 중 하나를 이동시킬 수 있다.
미리 결정된 조건(저장 조건)이 충족될 때, 저장 제어 유닛(218-2)은 데이터가 저장 유닛(222)에 저장되지 않고 처음부터 저장 디바이스(600-2)에 저장되도록 데이터를 제어할 수 있다. 예를 들어, 저장 제어 유닛(218-2)은 저장 디바이스(600-2)에 중요하지 않다고 판정된 데이터를 저장하고, 중요하다고 판정된 데이터를 저장 유닛(222)에 저장한다. 그 후, 또 다른 조건(데이터를 이동시키기 위한 조건)이 충족될 때, 저장 제어 유닛(218-2)은 저장 유닛(222)에 저장된 데이터를 저장 유닛(222)으로부터 삭제하고, 그 데이터를 저장 디바이스(600-2)에 저장한다.
데이터가 중요한지의 여부를 판정하기 위해 임의의 방법이 사용될 수 있지만, 예를 들어, 데이터와 함께 외부로부터 입력되는 정보를 사용하여 판정하는 방법 및 데이터에 주어진 중요도(우선도)를 사용하여 판정하는 방법이 적용될 수 있다.
외부로부터 입력되는 정보는 예를 들어, 송신 디바이스(100)가 탑재된 디바이스(차량 등)의 센서 정보이다. 송신 디바이스(100)가 탑재되는 디바이스가 차량일 때, 센서 정보는 예를 들어, 가속/감속을 표시하는 정보, 갑작스런 제동이 적용되었는지를 표시하는 정보, 가속기 개방의 갑작스런 변화를 표시하는 정보, 갑작스런 스티어링 휠과 같은 스티어링을 표시하는 정보 등을 포함한다.
예를 들어, 저장 제어 유닛(218-2)은 가속/감속을 표시하는 정보로부터 갑작스런 가속/감속이 발생했는지의 여부를 판정하고, 갑작스런 가속/감속이 발생했다고 판정될 때, 저장 제어 유닛(218-2)은 대응하는 송신 디바이스(100)로부터 송신된 데이터를 저장 유닛(222)에 저장한다. 저장 제어 유닛(218-2)은 갑작스런 가속/감속이 발생하지 않았다고 판정될 때, 대응하는 송신 디바이스(100)로부터 송신된 데이터를 저장 디바이스(600-2)에 저장한다.
이러한 처리에 의해, 더 중요한 데이터가 저장 유닛(222)에 저장되고 다른 데이터가 저장 디바이스(600-2)에 저장되도록 제어할 수 있게 된다. 더 중요한 데이터만을 저장하도록 저장 유닛(222)을 구성함으로써, 저장 유닛(222)에 필요한 저장 용량이 감소될 수 있다.
전술한 바와 같이, 본 실시예에 따른 비디오 전달 시스템에서는, 품질을 저하시키지 않고 회선 부하 및 처리 부하를 감소시킬 수 있다.
다음으로, 도 18을 참조하여 본 실시예에 따른 송신 디바이스의 하드웨어 구성을 설명할 것이다. 도 18은 본 실시예에 따른 송신 디바이스의 하드웨어 구성예를 도시하는 설명도이다.
본 실시예에 따른 송신 디바이스는 CPU(51) 등의 제어 디바이스, ROM(Read Only Memory)(52) 또는 RAM(53) 등의 저장 디바이스, 통신을 위한 네트워크에 접속하는 통신 I/F(54), 및 각 유닛을 접속하는 버스(61)이다.
본 실시예에 따른 송신 디바이스에 의해 실행되는 프로그램은 ROM(52) 등에 미리 통합됨으로써 제공된다.
본 실시예에 따른 송신 디바이스에 의해 실행되는 프로그램은 CD-ROM(Compact Disk Read Only Memory), FD(flexible disk), CD-R(Compact Disk Recordable), 및 DVD(Digital Versatile Disk) 등의 컴퓨터 판독가능 기록 매체 상에 설치가능 포맷 또는 실행가능 포맷의 파일로 기록되고 컴퓨터 프로그램 제품으로서 제공되도록 구성될 수 있다.
또한, 본 실시예에 따른 송신 디바이스에 의해 실행되는 프로그램은 인터넷 등의 네트워크에 접속된 컴퓨터 상에 저장되고 네트워크를 통한 다운로딩에 의해 제공될 수 있다. 또한, 본 실시예에 따른 송신 디바이스에 의해 실행되는 프로그램은 인터넷 등의 네트워크를 통해 제공 또는 전달되도록 구성될 수 있다.
본 실시예에 따른 송신 디바이스에 의해 실행되는 프로그램은 컴퓨터를 전술한 송신 디바이스의 각각의 유닛으로서 기능시킬 수 있다. 이러한 컴퓨터는 CPU(51)에 의해, 메인 저장 디바이스 상에서 컴퓨터 판독가능한 저장 매체로부터 프로그램을 판독 및 실행할 수 있다.
특정 실시예들이 설명되었지만, 이러한 실시예들은 단지 예로서 제시된 것이고, 본 발명의 범위를 제한하려는 것은 아니다. 실제로, 본 명세서에 기술된 신규의 실시예는 각종 다른 형태로 구현될 수 있고; 또한, 본 명세서에 기술된 실시예의 형태에서의 각종 생략, 대체 및 변경이 본 발명의 사상을 벗어나지 않고 행해질 수 있다. 첨부된 청구항들 및 그들의 등가물은 발명의 범뮈 및 요지에 포함됨과 함께 형태 또는 변형들을 포함하도록 의도된다.

Claims (9)

  1. 서버 디바이스로서,
    복수의 송신 데이터의 일부인 제1 데이터를 송신 디바이스로부터 수신하는 데이터 수신 유닛; 및
    상기 제1 데이터를 수신 디바이스에 전달하는 전달 유닛을 포함하고,
    상기 데이터 수신 유닛은 상기 복수의 송신 데이터 중에서 상기 제1 데이터 이외의 제2 데이터를 추가로 수신하고, 상기 제2 데이터는 상기 제2 데이터에 대한 송신 요청에 응답하여 상기 송신 디바이스로부터 송신되고,
    상기 전달 유닛은 상기 제2 데이터를 상기 수신 디바이스에 전달하고,
    상기 서버 디바이스는:
    상기 송신 디바이스로부터 송신된 상기 제1 데이터 및 상기 제2 데이터와, 상기 제2 데이터가 상기 수신 디바이스로 송신되지 않았음을 나타내는 메타데이터를 저장하는 제1 저장 유닛- 상기 메타데이터는 상기 수신 디바이스에 송신되는 하나 이상의 판정 정보와는 상이한 데이터이고, 상기 하나 이상의 판정 정보 각각은 상기 송신 데이터의 송신을 요청하는지의 여부를 판정하는 데에 이용됨-; 및
    상기 제1 저장 유닛에 저장된 상기 제1 데이터 및 상기 제2 데이터 중 적어도 하나를, 미리 결정된 조건에 따라, 상기 제1 저장 유닛으로부터 제2 저장 유닛으로 이동시키는 저장 제어 유닛을 추가로 포함하는 서버 디바이스.
  2. 제1항에 있어서,
    미리 결정된 저장 조건이 충족될 때, 상기 저장 제어 유닛은 상기 제1 데이터 및 상기 제2 데이터를 상기 제1 저장 유닛에 저장하지 않고, 상기 제1 데이터 및 상기 제2 데이터를 상기 제2 저장 유닛에 저장하는 서버 디바이스.
  3. 제1항에 있어서,
    상기 송신 데이터는 동화상 데이터이고,
    상기 제1 데이터는 인트라-프레임 예측에 의해 인코딩된 화상 데이터를 포함하는 서버 디바이스.
  4. 제3항에 있어서,
    상기 제2 데이터는 상기 제1 데이터에 기초하여 인터-프레임 예측에 의해 인코딩된 화상 데이터를 포함하는 서버 디바이스.
  5. 제1항에 있어서,
    수신된 상기 제1 데이터 및 상기 제2 데이터를 일시적으로 저장하는 일시 저장 유닛을 추가로 포함하고,
    상기 저장 제어 유닛은 상기 일시 저장 유닛에 저장된 상기 제1 데이터 및 상기 제2 데이터를 상기 제1 저장 유닛에 저장하고,
    상기 전달 유닛은 상기 일시 저장 유닛에 저장된 상기 제1 데이터를 상기 수신 디바이스에 전달하는 서버 디바이스.
  6. 제5항에 있어서,
    상기 저장 제어 유닛은 상기 일시 저장 유닛에 저장된 상기 제1 데이터 및 상기 제2 데이터의 적어도 일부가 결합된 결합 데이터를 상기 제1 저장 유닛에 저장하는 서버 디바이스.
  7. 제6항에 있어서,
    상기 수신 디바이스로부터 상기 제1 데이터 또는 상기 제2 데이터에 대한 송신 요청을 수신하는 요청 수신 유닛을 추가로 포함하고, 상기 송신 요청은 상기 결합된 데이터 내의 상기 제1 데이터 또는 상기 제2 데이터의 위치를 특정하기 위한 특정 정보를 포함하고,
    상기 전달 유닛은 상기 특정 정보에 기초하여 상기 제1 저장 유닛으로부터 판독된 상기 제1 데이터 또는 상기 제2 데이터를 상기 수신 디바이스에 전달하는 서버 디바이스.
  8. 정보 처리 방법으로서,
    복수의 송신 데이터의 일부인 제1 데이터를 송신 디바이스로부터 수신하는 단계;
    상기 제1 데이터를 수신 디바이스에 전달하는 단계;
    상기 복수의 송신 데이터 중에서 상기 제1 데이터 이외의 제2 데이터를 수신하는 단계- 상기 제2 데이터는 상기 제2 데이터에 대한 송신 요청에 응답하여 상기 송신 디바이스로부터 송신됨 -;
    상기 제2 데이터를 상기 수신 디바이스에 전달하는 단계;
    상기 송신 디바이스로부터 송신된 상기 제1 데이터 및 상기 제2 데이터와, 상기 제2 데이터가 상기 수신 디바이스로 송신되지 않았음을 나타내는 메타데이터를 제1 저장 유닛에 저장하는 단계- 상기 메타데이터는 상기 수신 디바이스에 송신되는 하나 이상의 판정 정보와는 상이한 데이터이고, 상기 하나 이상의 판정 정보 각각은 상기 송신 데이터의 송신을 요청하는지의 여부를 판정하는 데에 이용됨-; 및
    상기 제1 저장 유닛에 저장된 상기 제1 데이터 및 상기 제2 데이터 중 적어도 하나를, 미리 결정된 조건에 따라, 상기 제1 저장 유닛으로부터 제2 저장 유닛으로 이동시키는 단계를 포함하는 정보 처리 방법.
  9. 프로그래밍된 명령어들을 포함하는 컴퓨터 프로그램을 기록한 비일시적 컴퓨터 판독가능 기록 매체로서,
    상기 명령어들은 컴퓨터로 하여금:
    복수의 송신 데이터의 일부인 제1 데이터를 송신 디바이스로부터 수신하는 단계;
    상기 제1 데이터를 수신 디바이스에 전달하는 단계;
    상기 복수의 송신 데이터 중에서 상기 제1 데이터 이외의 제2 데이터를 수신하는 단계- 상기 제2 데이터는 상기 제2 데이터에 대한 송신 요청에 응답하여 상기 송신 디바이스로부터 송신됨 -;
    상기 제2 데이터를 상기 수신 디바이스에 전달하는 단계;
    상기 송신 디바이스로부터 송신된 상기 제1 데이터 및 상기 제2 데이터와, 상기 제2 데이터가 상기 수신 디바이스로 송신되지 않았음을 나타내는 메타데이터를 제1 저장 유닛에 저장하는 단계- 상기 메타데이터는 상기 수신 디바이스에 송신되는 하나 이상의 판정 정보와는 상이한 데이터이고, 상기 하나 이상의 판정 정보 각각은 상기 송신 데이터의 송신을 요청하는지의 여부를 판정하는 데에 이용됨-; 및
    상기 제1 저장 유닛에 저장된 상기 제1 데이터 및 상기 제2 데이터 중 적어도 하나를, 미리 결정된 조건에 따라, 상기 제1 저장 유닛으로부터 제2 저장 유닛으로 이동시키는 단계를 실행하게 하는, 비일시적 컴퓨터 판독가능 기록 매체.
KR1020210023102A 2020-04-21 2021-02-22 서버 디바이스, 정보 처리 방법, 및 비일시적 컴퓨터 판독가능 기록 매체 KR102602898B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2020-075375 2020-04-21
JP2020075375A JP7419151B2 (ja) 2020-04-21 2020-04-21 サーバ装置、情報処理方法およびプログラム

Publications (2)

Publication Number Publication Date
KR20210130092A KR20210130092A (ko) 2021-10-29
KR102602898B1 true KR102602898B1 (ko) 2023-11-16

Family

ID=74666472

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210023102A KR102602898B1 (ko) 2020-04-21 2021-02-22 서버 디바이스, 정보 처리 방법, 및 비일시적 컴퓨터 판독가능 기록 매체

Country Status (5)

Country Link
US (2) US11936925B2 (ko)
EP (1) EP3902264A1 (ko)
JP (2) JP7419151B2 (ko)
KR (1) KR102602898B1 (ko)
CN (1) CN113542342B (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140136644A1 (en) * 2011-07-01 2014-05-15 Nokia Solutions And Networks Oy Data storage management in communications

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4193069A (en) 1978-03-13 1980-03-11 American District Telegraph Company Latching alarm smoke detector
JP3653569B2 (ja) * 1997-01-30 2005-05-25 マイクロソフト コーポレーション ビデオをオン・デマンドでレンダリングするvcrに似た機能
US6970939B2 (en) * 2000-10-26 2005-11-29 Intel Corporation Method and apparatus for large payload distribution in a network
KR100608715B1 (ko) 2003-09-27 2006-08-04 엘지전자 주식회사 QoS보장형 멀티미디어 스트리밍 서비스 시스템 및 방법
KR20060114080A (ko) * 2005-04-27 2006-11-06 삼성전자주식회사 멀티미디어 스트리밍 서비스 시스템 및 방법
JP2009021894A (ja) * 2007-07-13 2009-01-29 Panasonic Corp 映像配信システム
JP2009238099A (ja) * 2008-03-28 2009-10-15 Konica Minolta Business Technologies Inc ファイル保存方法、ファイル保存システム、およびマスターファイル結合装置で実行されるコンピュータプログラム
KR101087194B1 (ko) * 2009-11-10 2011-11-29 주식회사 노매드커넥션 동영상 인코딩 시스템 및 방법
JP2011234233A (ja) * 2010-04-28 2011-11-17 Canon Inc 映像配信装置及び映像配信方法
US8799413B2 (en) * 2010-05-03 2014-08-05 Panzura, Inc. Distributing data for a distributed filesystem across multiple cloud storage systems
US20120030723A1 (en) * 2010-07-27 2012-02-02 Motorola, Inc. Method and apparatus for streaming video
JP2013065224A (ja) * 2011-09-20 2013-04-11 Kddi Corp メールアーカイブシステム
JP2015170323A (ja) * 2014-03-10 2015-09-28 株式会社東芝 配信装置、及び配信方法
JP6239472B2 (ja) 2014-09-19 2017-11-29 株式会社東芝 エンコード装置、デコード装置、ストリーミングシステム、および、ストリーミング方法
JP2017123110A (ja) * 2016-01-08 2017-07-13 株式会社東芝 データ記憶装置、データ記憶方法およびプログラム
JP6686541B2 (ja) * 2016-03-04 2020-04-22 日本電気株式会社 情報処理システム
US10046236B2 (en) * 2016-06-13 2018-08-14 Sony Interactive Entertainment America, LLC Browser-based cloud gaming
US20180286348A1 (en) * 2017-03-30 2018-10-04 Kyocera Document Solutions Inc. Information processor and information processing method
JP6472478B2 (ja) * 2017-04-07 2019-02-20 キヤノン株式会社 映像配信装置、映像配信方法及びプログラム
JP2019092133A (ja) 2017-11-17 2019-06-13 株式会社東芝 送信装置、受信装置、通信システムおよびプログラム
JP7073952B2 (ja) * 2018-07-09 2022-05-24 横河電機株式会社 データ収集システム及びデータ収集方法
JP7105675B2 (ja) 2018-11-02 2022-07-25 株式会社東芝 送信装置、サーバ装置、送信方法およびプログラム
CN109889840B (zh) * 2019-03-20 2022-11-22 北京大学深圳研究生院 点云编码和解码的方法、编码设备和解码设备
CN110543382B (zh) * 2019-09-03 2022-09-20 上海联影医疗科技股份有限公司 一种医疗影像设备扫描数据的存储方法及***

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140136644A1 (en) * 2011-07-01 2014-05-15 Nokia Solutions And Networks Oy Data storage management in communications

Also Published As

Publication number Publication date
CN113542342A (zh) 2021-10-22
CN113542342B (zh) 2023-12-01
KR20210130092A (ko) 2021-10-29
EP3902264A1 (en) 2021-10-27
JP2021175025A (ja) 2021-11-01
US20210329311A1 (en) 2021-10-21
US20230370651A1 (en) 2023-11-16
JP7419151B2 (ja) 2024-01-22
JP2024026687A (ja) 2024-02-28
US11936925B2 (en) 2024-03-19

Similar Documents

Publication Publication Date Title
US9106934B2 (en) Distribution of adaptive bit rate live streaming video via hyper-text transfer protocol
US11647217B2 (en) Transmission device, communication system, transmission method, and computer program product
US9832492B2 (en) Distribution of adaptive bit rate video streaming via hyper-text transfer protocol
US11758200B2 (en) System and method for converting adaptive stream to downloadable media
JP2018182447A (ja) 映像配信装置、映像配信方法及びプログラム
TWI731579B (zh) 傳輸裝置、通訊系統、傳輸方法及電腦程式產品
KR102602898B1 (ko) 서버 디바이스, 정보 처리 방법, 및 비일시적 컴퓨터 판독가능 기록 매체
KR102291293B1 (ko) 송신 디바이스, 통신 시스템, 송신 방법, 및 비일시적 컴퓨터 판독가능 기록 매체
KR102613872B1 (ko) 서버 디바이스, 통신 시스템, 및 비일시적 컴퓨터 판독가능 기록 매체
JP7302076B2 (ja) 送信装置、サーバ装置、送信方法およびプログラム
CN113315997B (zh) 发送装置、服务器装置、发送方法以及程序
CN111800649A (zh) 存储视频的方法和装置以及生成视频的方法和装置
JP7327953B2 (ja) 動画配信装置、動画配信方法及びプログラム
KR20230013461A (ko) 영상 저장 장치, 영상 모니터링 장치 및 그 위에서 실행되는 방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant