KR100982637B1 - 수신 장치, 수신 방법 및 컴퓨터 판독가능한 기록 매체 - Google Patents

수신 장치, 수신 방법 및 컴퓨터 판독가능한 기록 매체 Download PDF

Info

Publication number
KR100982637B1
KR100982637B1 KR20047012281A KR20047012281A KR100982637B1 KR 100982637 B1 KR100982637 B1 KR 100982637B1 KR 20047012281 A KR20047012281 A KR 20047012281A KR 20047012281 A KR20047012281 A KR 20047012281A KR 100982637 B1 KR100982637 B1 KR 100982637B1
Authority
KR
South Korea
Prior art keywords
frame
packet
image
received
decoding
Prior art date
Application number
KR20047012281A
Other languages
English (en)
Other versions
KR20050084770A (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 KR20050084770A publication Critical patent/KR20050084770A/ko
Application granted granted Critical
Publication of KR100982637B1 publication Critical patent/KR100982637B1/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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4382Demodulation or channel decoding, e.g. QPSK demodulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • 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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • 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/162User input
    • 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/164Feedback from the receiver or from the transmission channel
    • H04N19/166Feedback from the receiver or from the transmission channel concerning the amount of transmission errors, e.g. bit error rate [BER]
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5603Access techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/04Synchronising

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Television Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

본 발명은, 수신한 화상 데이터에 결함이 있는 경우에도, 양질의 화상을 표시할 수 있도록 하는 송수신 시스템, 송신 장치 및 송신 방법, 수신 장치 및 수신 방법, 기록 매체, 및 프로그램에 관한 것이다. 수신 제어부(147)는, 통신부(141)가 수신한 화상 데이터로부터 손실을 검출하여, 손실에 대응하여 수신을 허가한다. 수신이 허가되면, 통신부(141)는, 버퍼에 화상 데이터를 유지한다. 디코더 제어부(152)는, 임계값 유지부(151)에 유지된 임계값에 따라, 디코드를 허가한다. 디코드를 허가받으면, 디코더(143)는, 버퍼(142)에 유지된 화상 데이터를 디코드하여, 프레임 메모리(144)에 유지한다. 표시 제어부(145)는, 프레임 메모리(144)에 유지된 화상 데이터에 기초하여, 표시부(146)를 제어하여, 화상을 표시시킨다. 본 발명은 화상 배신 시스템에 적용할 수 있다.
버퍼, 표시부, 프레임 메모리, 화상 배신 시스템

Description

수신 장치, 수신 방법 및 컴퓨터 판독가능한 기록 매체{RECEIVING APPARATUS, RECEIVING METHOD, AND COMPUTER READABLE RECORDING MEDIUM}
본 발명은, 송수신 시스템, 송신 장치 및 송신 방법, 수신 장치 및 수신 방법, 기록 매체, 및 프로그램에 관한 것으로, 특히, 수신한 화상 데이터가 누락한 경우에도, 양질의 화상을 표시할 수 있도록 한 송수신 시스템, 송신 장치 및 송신 방법, 수신 장치 및 수신 방법, 기록 매체, 및 프로그램에 관한 것이다.
최근, 인터넷 등을 이용하여 동화상 데이터를 전송할 때에 발생하는 전송 에러에 대하여, 다양한 처리가 제안되고 있다.
MPEG4(Moving Picture Experts Group4)에서는, 재동기 마커와 RVLC(Reversible Variable Length Code) 등을 이용하여, 전송 에러가 발생한 개소를 폐기하여, 에러 내성의 향상이 도모되고 있다.
또한, 발생한 에러를 눈에 띄지 않도록 차폐하는 에러 은폐의 기술로서는, 동화상의 시간 방향의 상관성을 이용하여, 1개 전의 프레임을 재생하거나, 또는 과거의 화면의 동일 위치로부터의 정보로 치환하는 처리가 제안되고 있다.
그러나, RVLC를 이용하여 에러 내성을 향상한 경우, 부호화 효율이 저하하는 것이 지적되고 있다. 또한, 상술한 에러 은폐는, 처리가 번잡하여, 신(scene) 체인지 등의 급격한 화상의 변화에는 대응하는 것이 곤란하다는 과제가 있었다.
따라서, 계층 부호화된 화상 데이터를 전송하는 경우에 있어서, 송신된 프레임의 일부가 누락하여, 수신측으로 송신되지 않는 경우에는, 누락할 때까지 수신측에서 수신되고, 기억된 데이터에 기초하여 누락한 주파수 성분을 생성하여, 보다 상위의 계층의 주파 성분을 재구성하는 에러 은폐 기술이 제안되고 있다(예를 들면, 일본 특개평10-243400호 공보(제7페이지) 참조).
그러나, 화상 정보에 많이 포함되는 저역 정보가 누락한 경우, 화질이 열화하는 과제가 있었다.
<발명의 개시>
본 발명은 이러한 상황을 감안하여 이루어진 것으로, 수신한 화상 데이터에 결함이 있는 경우에도, 양질의 화상을 표시할 수 있도록 하는 것이다.
본 발명의 송수신 시스템은, 송신 장치는, 콘텐츠를 계층 부호로 하고, 복수의 레이어의 부호화 데이터를 출력하는 부호화 수단과, 복수의 레이어의 부호화 데이터를 패킷화하여, 부호화 데이터의 저역 정보로부터 패킷을 출력하는 패킷화 수단과, 패킷을 송신하는 송신 수단을 구비하며, 수신 장치는, 송신 장치로부터 송신되어 오는 패킷을 수신하는 수신 수단과, 수신 수단에 의해 수신된 패킷을 유지하는 유지 수단과, 수신 수단이 수신한 패킷의, 유지 수단에의 기입을 제어하는 기입 제어 수단과, 송신 장치에 의해 송신되어 오는 패킷에 패킷 손실이 있는지의 여부 를 판정하는 판정 수단을 구비하고, 기입 제어 수단은, 콘텐츠의 1 프레임 내에, 패킷 손실이 있는 경우, 1 프레임 내의 패킷 손실이 발생하기까지의 패킷을, 유지 수단에 기입하고, 1 프레임의 나머지 패킷을 유지 수단에 기입하지 않는 것을 특징으로 한다.
유지 수단에 유지된 패킷에 배치된 부호화 데이터의 디코드를 제어하는 디코드 제어 수단과, 부호화 데이터를 디코드하는 디코드 수단과, 디코드 수단의 디코드에 관한 임계값을 유지하는 임계값 유지 수단을 더 구비하고, 디코드 제어 수단은, 디코드 수단에 의한 디코드를, 임계값에 기초하여 제어하도록 할 수 있다.
송신 장치는, 복수의 레이어마다의 부호화 데이터의 패킷수와, 부호화 데이터를 디코드하는 것에 의해 얻어지는 화상의 화질에 관한 정보를 포함하는 프레임 정보를 더 송신하고, 수신 수단은, 프레임 정보를 더 수신하고, 디코드 제어 수단은, 임계값 유지 수단에 유지된 임계값과 프레임 정보에 기초하여, 디코드 수단에 의한 디코드를 제어하도록 할 수 있다.
본 발명의 송수신 방법은, 송신 장치의 송신 방법은, 콘텐츠를 계층 부호로 하여, 복수의 레이어의 부호화 데이터를 출력하는 부호화 단계와, 복수의 레이어의 부호화 데이터를 패킷화하여, 부호화 데이터의 저역 정보로부터 패킷을 출력하는 패킷화 단계와, 패킷을 송신하는 송신 단계를 포함하며, 수신 장치의 수신 방법은, 송신 장치로부터 송신되어 오는 패킷을 수신하는 수신 단계와, 수신 단계의 처리가 수신한 패킷의 기입을 제어하는 기입 제어 단계와, 송신 장치에 의해 송신되어 오는 패킷에 패킷 손실이 있는지의 여부를 판정하는 판정 단계를 포함하고, 기입 제 어 단계는, 콘텐츠의 1 프레임 내에, 패킷 손실이 있는 경우, 1 프레임 내의 패킷 손실이 발생하기까지의 패킷을 기입하고, 1 프레임의 나머지 패킷을 기입하지 않는 것을 특징으로 한다.
본 발명의 송신 장치는, 콘텐츠를 계층 부호로 하여, 복수의 레이어의 부호화 데이터를 출력하는 부호화 수단과, 복수의 레이어의 부호화 데이터를 패킷화하여, 부호화 데이터의 저역 정보로부터 패킷을 출력하는 패킷화 수단과, 복수의 레이어마다의 부호화 데이터의 패킷수와, 부호화 데이터를 디코드하는 것에 의해 얻어지는 화상의 화질에 관한 정보를 포함하는 프레임 정보를 유지하는 유지 수단과, 패킷과 프레임 정보를 송신하는 송신 수단을 구비하고, 부호화 수단은, 프레임 정보에 기초하여, 콘텐츠를 계층 부호로 하고, 패킷화 수단은, 프레임 정보에 기초하여, 복수의 레이어의 부호화 데이터를 패킷화하는 것을 특징으로 한다.
본 발명의 송신 방법은, 콘텐츠를 계층 부호로 하여, 복수의 레이어의 부호화 데이터를 출력하는 부호화 단계와, 복수의 레이어의 부호화 데이터를 패킷화하여, 부호화 데이터의 저역 정보로부터 패킷을 출력하는 패킷화 단계와, 복수의 레이어마다의 부호화 데이터의 패킷수와, 부호화 데이터를 디코드하는 것에 의해 얻어지는 화상의 화질에 관한 정보를 포함하는 프레임 정보를 유지하는 유지 단계와, 패킷과 프레임 정보를 송신하는 송신 단계를 포함하고, 부호화 단계는, 프레임 정보에 기초하여, 콘텐츠를 계층 부호로 하고, 패킷화 단계는, 프레임 정보에 기초하여, 복수의 레이어의 부호화 데이터를 패킷화하는 것을 특징으로 한다.
본 발명의 제1 기록 매체에 기록되고 있는 프로그램은, 콘텐츠를 계층 부호 로 하여, 복수의 레이어의 부호화 데이터를 출력하는 부호화 단계와, 복수의 레이어의 부호화 데이터를 패킷화하여, 부호화 데이터의 저역 정보로부터 패킷을 출력하는 패킷화 단계와, 패킷과 유지된 복수의 레이어마다의 부호화 데이터의 패킷수와, 부호화 데이터를 디코드하는 것에 의해 얻어지는 화상의 화질에 관한 정보를 포함하는 프레임 정보를 송신하는 송신 단계를 포함하고, 부호화 단계는, 프레임 정보에 기초하여, 콘텐츠를 계층 부호로 하고, 패킷화 단계는, 프레임 정보에 기초하여, 복수의 레이어의 부호화 데이터를 패킷화하는 것을 특징으로 한다.
본 발명의 제1 프로그램은, 콘텐츠를 계층 부호로 하여, 복수의 레이어의 부호화 데이터를 출력하는 부호화 단계와, 복수의 레이어의 부호화 데이터를 패킷화하여, 부호화 데이터의 저역 정보로부터 패킷을 출력하는 패킷화 단계와, 패킷과 유지된 복수의 레이어마다의 부호화 데이터의 패킷수와, 부호화 데이터를 디코드하는 것에 의해 얻어지는 화상의 화질에 관한 정보를 포함하는 프레임 정보를 송신하는 송신 단계를 포함하고, 부호화 단계는, 프레임 정보에 기초하여, 콘텐츠를 계층 부호로 하고, 패킷화 단계는, 프레임 정보에 기초하여, 복수의 레이어의 부호화 데이터를 패킷화하는 처리를 컴퓨터에 실행시키는 것을 특징으로 한다.
본 발명의 수신 장치는, 송신 장치로부터 송신되어 오는 패킷을 수신하는 수신 수단과, 수신 수단에 의해 수신된 패킷을 유지하는 유지 수단과, 수신 수단이 수신한 패킷의, 유지 수단에의 기입을 제어하는 기입 제어 수단과, 송신 장치에 의해 송신되어 오는 패킷에 패킷 손실이 있는지의 여부를 판정하는 판정 수단을 구비하고, 기입 제어 수단은, 콘텐츠의 1 프레임 내에, 패킷 손실이 있는 경우, 1 프레 임 내의 패킷 손실이 발생하기까지의 패킷을, 유지 수단에 기입하고, 1 프레임의 나머지 패킷을 유지 수단에 기입하지 않는 것을 특징으로 한다.
유지 수단에 유지된 패킷에 배치된 부호화 데이터의 디코드를 제어하는 디코드 제어 수단과, 부호화 데이터를 디코드하는 디코드 수단과, 디코드 수단의 디코드에 관한 임계값을 유지하는 임계값 유지 수단을 더 구비하고, 디코드 제어 수단은, 디코드 수단에 의한 디코드를, 임계값에 기초하여 제어하도록 할 수 있다.
송신 장치는, 복수의 레이어마다의 부호화 데이터의 패킷수와, 부호화 데이터를 디코드하는 것에 의해 얻어지는 화상의 화질에 관한 정보를 포함하는 프레임 정보를 더 송신하고, 수신 수단은, 프레임 정보를 더 수신하고, 디코드 제어 수단은, 임계값 유지 수단에 유지된 임계값과 프레임 정보에 기초하여, 디코드 수단에 의한 디코드를 제어하도록 할 수 있다.
디코드 수단에 의해 디코드된 콘텐츠를 기억하는 기억 수단과, 콘텐츠의 표시를 제어하는 표시 제어 수단과, 콘텐츠를 표시하는 표시 수단을 더 구비하고, 표시 제어 수단은, 디코드 제어 수단에 의해 부호화 데이터의 디코드가 허가되지 않는 경우, 그 부호화 데이터에 대응하는 콘텐츠보다 전에 기억 수단에 기억된 콘텐츠를 표시 수단에 표시시키도록 할 수 있다.
본 발명의 수신 방법은, 송신 장치로부터 송신되어 오는 패킷을 수신하는 수신 단계와, 수신 단계의 처리에 의해 수신된 패킷의 기입을 제어하는 기입 제어 단계와, 송신 장치에 의해 송신되어 오는 패킷에 패킷 손실이 있는지의 여부를 판정하는 판정 단계를 포함하고, 기입 제어 단계의 처리는, 콘텐츠의 1 프레임 내에, 패킷 손실이 있는 경우, 1 프레임 내의 패킷 손실이 발생하기까지의 패킷을 기입하고, 1 프레임의 나머지 패킷을 기입하지 않는 것을 특징으로 한다.
본 발명의 제2 기록 매체에 기록되어 있는 프로그램은, 송신 장치로부터 송신되어 오는 패킷을 수신하는 수신 단계와, 수신 단계의 처리에 의해 수신된 패킷의 기입을 제어하는 기입 제어 단계와, 송신 장치에 의해 송신되어 오는 패킷에 패킷 손실이 있는지의 여부를 판정하는 판정 단계를 포함하고, 기입 제어 단계의 처리는, 콘텐츠의 1 프레임 내에, 패킷 손실이 있는 경우, 1 프레임 내의 패킷 손실이 발생하기까지의 패킷을 기입하고, 1 프레임의 나머지 패킷을 기입하지 않는 것을 특징으로 한다.
본 발명의 제2 프로그램은, 송신 장치로부터 송신되어 오는 패킷을 수신하는 수신 단계와, 수신 단계의 처리에 의해 수신된 패킷의 기입을 제어하는 기입 제어 단계와, 송신 장치에 의해 송신되어 오는 패킷에 패킷 손실이 있는지의 여부를 판정하는 판정 단계를 포함하고, 기입 제어 단계의 처리는, 콘텐츠의 1 프레임 내에, 패킷 손실이 있는 경우, 1 프레임 내의 패킷 손실이 발생하기까지의 패킷을 기입하고, 1 프레임의 나머지 패킷을 기입하지 않는 처리를 컴퓨터에 실행시키는 것을 특징으로 한다.
제1 본원 발명에서는, 콘텐츠가 계층 부호로 되어, 복수의 레이어의 부호화 데이터가 출력되고, 복수의 레이어의 부호화 데이터가 패킷화되고, 부호화 데이터의 저역 정보로부터 패킷이 출력되어, 그 패킷이 송신되고, 수신된다. 수신된 패킷에 패킷 손실이 있는지의 여부가 판정되어, 콘텐츠의 1 프레임 내에, 패킷 손실 이 있는 경우, 1 프레임 내의 패킷 손실이 발생하기까지의 패킷이 기입되고, 1 프레임의 나머지 패킷은, 기입되지 않는다.
제2 본원 발명에서는, 부호화 데이터를 디코드하는 것에 의해 얻어지는 화상의 화질에 관한 정보를 포함하는 프레임 정보에 기초하여, 콘텐츠가 계층 부호로 되어, 복수의 레이어의 부호화 데이터가 출력된다. 또한, 프레임 정보에 기초하여, 복수의 레이어의 부호화 데이터가 패킷화되고, 부호화 데이터의 저역 정보로부터 패킷이 출력된다. 그리고, 그 패킷과 프레임 정보가 송신된다.
제3 본원 발명에서는, 상기 송신 장치로부터 송신되어 오는 패킷이 수신되어, 수신된 패킷에 패킷 손실이 있는지의 여부가 판정된다. 콘텐츠의 1 프레임 내에, 패킷 손실이 있는 경우, 1 프레임 내의 패킷 손실이 발생하기까지의 패킷이 기입되고, 1 프레임의 나머지 패킷은, 기입되지 않는다.
도 1은 본 발명을 적용한 정보 처리 시스템의 구성예를 도시하는 블록도.
도 2는 도 1의 서버의 구성예를 도시하는 블록도.
도 3은 도 2의 서버에서의 화상 데이터 송신 처리를 설명하는 흐름도.
도 4는 도 2의 서버에서의 화상 데이터 송신 처리를 설명하는 흐름도.
도 5는 프레임 정보 유지부에 유지되는 프레임 정보의 예를 도시하는 도면.
도 6은 도 1의 서버와 클라이언트가 상호 송신하는 메시지의 예를 도시하는 도면.
도 7은 도 2의 인코더가 인코드한 데이터의 예를 도시하는 도면.
도 8은 도 2의 통신부가 송신하는 RTP 패킷의 포맷의 예를 도시하는 도면.
도 9는 도 2의 통신부가 송신한 데이터의 예를 도시하는 도면.
도 10은 도 1의 클라이언트의 구성예를 도시하는 블록도.
도 11은 도 10의 클라이언트에서의 화상 표시 처리를 설명하는 흐름도.
도 12는 도 10의 클라이언트에서의 화상 표시 처리를 설명하는 흐름도.
도 13은 도 10의 클라이언트에서의 화상 표시 처리를 설명하는 흐름도.
도 14는 도 10의 수신 제어부에서의 화상 데이터 수신 처리를 설명하는 흐름도.
도 15는 도 10의 수신 제어부에서의 화상 데이터 수신 처리를 설명하는 흐름도.
도 16은 도 10의 통신부가 수신하는 데이터의 예를 도시하는 도면.
도 17은 도 15의 단계 S68의 처리에서 엔트리 정보 축적부에 엔트리된 엔트리 정보의 예를 도시하는 도면.
도 18은 도 15의 단계 S68의 처리에서 엔트리 정보 축적부에 엔트리된 엔트리 정보의 예를 도시하는 도면.
도 19는 도 15의 단계 S70의 처리에서 인크리먼트된 엔트리 정보 축적부의 엔트리 정보의 예를 도시하는 도면.
도 20은 도 15의 단계 S73의 처리에서 설정된 엔트리 정보 축적부의 엔트리 정보의 예를 도시하는 도면.
도 21은 도 10의 엔트리 정보 축적부의 엔트리 정보의 예를 도시하는 도면.
도 22는 도 10의 디코더 제어부에서의 디코드 판단 처리를 설명하는 흐름도.
도 23은 퍼스널 컴퓨터의 구성예를 도시하는 블록도.
<발명을 실시하기 위한 최량의 형태>
도 1은, 본 발명을 적용한 정보 처리 시스템(1)의 구성예를 도시하고 있다.
이 정보 처리 시스템(1)에서, 서버(12)는, 비디오 카메라(11)를 통하여 입력된 화상 데이터를, 패킷 통신망 등의 네트워크(14)를 통하여, 클라이언트(13)에 송신한다.
서버(12)는, 비디오 카메라(11)가 촬영한 화상의 데이터가 입력되면, 그 화상 데이터를 인코드하여, RTP(Real-time Transport Protocol) 패킷(후술하는 도 8)을 생성한다. 서버(12)는, 생성된 RTP 패킷(화상 데이터)을, 네트워크(14)를 통하여, 클라이언트(13)에 송신한다. 또한, 서버(12)는, 사용자에 의해 입력된 프레임 정보(후술하는 도 5)를 클라이언트(13)에 송신한다.
클라이언트(13)는, 화상 데이터를 수신하여, 1 프레임 내에 패킷 손실이 있는 경우, 패킷 손실이 발생하기까지의 화상 데이터를 유지한다. 클라이언트(13)는, 수신한 프레임 정보에 기초하여, 유지한 화상 데이터의 화질 또는 데이터량이, 사용자에 의해 설정된 임계값 이상인지의 여부를 판단하여, 임계값 이상인 경우, 화상 데이터를 디코드하고, 디스플레이 등의 표시부에, 디코드된 화상 데이터를 표시시킨다. 임계값 이상이 아닌 경우, 전의 프레임의 화상을 표시시킨다.
도 2는, 서버(12)의 구성을 도시하는 도면이다. 또, 도 2에서, "S"의 문자와 숫자로 이루어지는 기호로 나타내는 화살표는, 후술하는 도 3과 도 4의 흐름도 의 처리의 단계에 대응하고 있다.
제어부(31)에는, 예를 들면 사용자가 입력하는 프레임 정보가 공급된다. 제어부(31)는, 사용자에 의해 입력된 화상 데이터의 프레임 정보를, 프레임 정보 유지부(32)에 공급한다. 프레임 정보 유지부(32)는, 제어부(31)로부터 공급되는 프레임 정보를 유지한다. 여기서, 프레임 정보는, 1 프레임의 레이어마다의 패킷수와 화질로 구성되어 있지만, 상세한 내용은, 도 5에서 후술한다.
인코더(33)는, 비디오 카메라(11)가 촬영한 화상의 데이터가 입력되면, JPEG(Joint Photographic Experts Group)2000 등의 계층 부호화에 의해, 화상 데이터를 인코드한다. 또, 인코더(33)는, 화상 데이터의 각 프레임을 어떠한 계층(레이어)에 계층 부호화할지를, 프레임 정보 유지부(32)에 기억된 프레임 정보에 기초하여 결정한다.
인코더(33)는, 인코드한 화상 데이터를, 버퍼(34)에 공급하여 유지시킨다. RTP 패킷 생성부(35)는, 버퍼(34)에 기억(유지)된 화상 데이터를 취득하여, 프레임 정보 유지부(32)에 유지된 프레임 정보에서의 레이어마다의 패킷수에 기초하여, 화상 데이터를 RTP 패킷화한다.
그리고, RTP 패킷 생성부(35)는, 화상 데이터를 RTP 패킷화하는 것에 의해 얻어지는 패킷을, 통신부(36)에 공급한다. 통신부(36)는, RTP 패킷 생성부(35)로부터 공급된 화상 데이터의 패킷을, 네트워크(14)를 통하여, 클라이언트(13)에 공급한다. 또한, 통신부(36)는, 프레임 정보 유지부(32)로부터, 프레임 정보를 취득하여, 네트워크(14)를 통하여, 클라이언트(13)에 프레임 정보를 송신한다.
다음에, 도 3과 도 4를 참조하여, 도 2의 서버(12)에서의 화상 데이터 송신 처리를 설명한다. 또, 이 처리는, 비디오 카메라(11)로부터, 서버(12)에 화상 데이터가 입력되었을 때, 또는 사용자에 의해, 서버(12)에 화상 데이터의 송신 처리가 명령되었을 때, 개시된다.
단계 S1에서, 제어부(31)는, 사용자에 의해 입력된 각 레이어의 패킷수와 화질(이하, 적절하게, 프레임 정보라고 칭함)을, 프레임 정보 유지부(32)에 유지한다. 또, 프레임 정보는, 예를 들면, 사용자가 도시 생략된 조작부 등을 조작하여 미리 입력하는 것으로 한다.
여기서, 도 5는, 프레임 정보 유지부(32)에 유지되는 프레임 정보를 도시하고 있다. 프레임 정보(50)는, 레이어(를 나타내는 정보 : 51), 패킷수(를 나타내는 정보 : 52), 화질(을 나타내는 정보 : 53)로 구성되어 있다. 도 5에서는, 1 프레임은, 레이어 「L0」, 레이어 「L1」, 레이어 「L2」의 3개의 레이어로 구성되는 것으로 되어 있다. 또한, 도 5에서는, 레이어 「L0」의 패킷수(52)는 「20」으로 되어 있고, 따라서 레이어 「L0」은, 「20」개의 패킷으로 구성된다. 또한, 레이어 「L0」의 화질은 「0.5bpp(bit-per-pixel)」로 되어 있다.
마찬가지로, 도 5에서는, 레이어 「L1」은, 「25」개의 패킷으로 구성되고, 화질(53)은 「0.7bpp」로 되어 있다. 레이어 「L2」는, 「45」개의 패킷으로 구성되고, 화질(53)은, 「1.0 bpp」로 되어 있다. 이상으로부터, 도 5의 프레임 정보에 따르면, 1 프레임은, 「20+25+45=90」개의 패킷으로 구성된다.
도 3으로 되돌아가, 단계 S1의 처리 후에는, 단계 S2로 진행하고, RTP 패킷 생성부(35)는, 프레임마다 부가되는 타임스탬프를 초기화하여, 단계 S3으로 진행한다. 즉, RTP 패킷 생성부(35)는, 최초의 프레임에 부가하는 타임스탬프의 값을 설정한다.
단계 S3에서, 통신부(36)는, 프레임 정보 유지부(32)로부터 프레임 정보를 취득하여, 단계 S4로 진행한다. 단계 S4에서, 통신부(36)는, 프레임 정보 유지부(32)로부터 취득한 프레임 정보를, RTSP(Real-time Streaming Protocol) 등의 스트리밍의 세션 관리 프로토콜을 이용하여, 네트워크(14)를 통하여, 클라이언트(13)에 송신한다. 또, RTSP는, RFC(Request For Comment)2326으로 정의되어 있다.
여기서, 도 6은 RTSP를 이용하여, 서버(12)가 클라이언트(13)에 프레임 정보를 송신하는 경우에, 서버(12)로부터 클라이언트(13)에 송신시키는 메시지와, 그 메시지를 수신한 클라이언트(13)가 서버(12)에 송신하는 승낙의 메시지의 예를 도시하고 있다.
「S→C」는, 서버(12)로부터 클라이언트(13)에 송신하는 메시지인 것을 나타내고, 「C→S」는, 클라이언트(13)로부터 서버(12)에 송신하는 메시지인 것을 나타내고 있다. 또, 「OPTIONS」는 메소드를 나타내고, 「OPTIONS*RTSP/1.0」은 확장 메소드인 것을 나타내고 있다. 또한, 「CSeq」는, RTSP의 메시지 번호를 나타내고 있고, 「Packet-1layer-bpp」는, 헤더이다. 헤더에는, 레이어명, 적산 패킷수(레이어명의 레이어까지의 패킷수), 레이어의 화질의 3개의 정보의 세트가 1 세트 또는 반복 기술된다.
도 6의 예의 경우, 서버(12)로부터 클라이언트(13)에 송신되는 메시지는, RTSP 번호가 「1」인 확장 메소드의 메시지이다. 헤더에는, 도 5에 도시한 정보가 기술되어 있다. 즉, 도 5에서는, 레이어 L0은, 적산 패킷수(레이어 L0의 패킷수)가 「20」이고, 화질이 「0.5 bpp」이다. 레이어 L1은, 적산 패킷수(레이어 L0과 레이어 L1의 패킷수의 합)가 「45」(레이어 L1의 패킷수는 「25」)이고, 화질이 「0.7bpp」이다. 레이어 L2는, 적산 패킷수(레이어 L0, 레이어 L1, 레이어 L2의 패킷수의 합)가 「90」(레이어 L2의 패킷수는 「45」)이고, 화질이 「1.0bpp」이다. 이 때문에, 서버(12)로부터 클라이언트(13)에 송신하는 메시지의 헤더에는, 도 6에 도시한 바와 같이, L0 20 0.5 L1 45 0.7 L2 90 1.0이 기술된다.
또한, 클라이언트(13)로부터 서버(12)에 송신되는 도 6에 도시한 메시지는, RTSP 번호가 「1」인 확장 메소드의 메시지(서버(12)로부터 클라이언트(13)에 송신된 메시지)를 수신한 것을 통지하는 메시지이다.
도 3으로 되돌아가, 단계 S4에서, 서버(12)로부터 클라이언트(13)에 프레임 정보(가 기술된 메시지)가 송신된 후에는, 단계 S5로 진행하고, 인코더(33)는, 미리 설정된 프레임 레이트(예를 들면, 30 프레임/초)에 기초하여, 인코더(33)에 설치된 도시하지 않은 타이머에, 1 프레임분의 시간(지금의 경우, 3㎳)을 설정하고, 단계 S6으로 진행한다. 단계 S6에서, 인코더(33)는, 비디오 카메라(11)를 통하여 촬영된 화상의 데이터를 취득하고, 단계 S7로 진행한다. 단계 S7에서, 인코더(33)는 타이머에 설정된 소정 시간(지금의 경우, 33㎳)이 경과했는지(타이머가 종료했는지)의 여부를 판정하여, 소정 시간이 경과했다고 판정할 때까지, 화상 데이터를 취득하는 처리를 행한다.
단계 S7에서, 인코더(33)는, 소정 시간이 경과했다고 판정한 경우, 단계 S8로 진행하여, 화상 데이터의 취득을 종료하고, 취득한 화상 데이터를 인코드한다. 즉, 인코더(33)는, 1 프레임분의 화상 데이터를, 프레임 정보 유지부(32)에 기억된 프레임 정보에 기초하여 계층 부호화하는 것에 의해 인코드하고, 그 인코드 결과로서 부호화 데이터를 취득한다. 그리고, 도 4의 단계 S9로 진행하여, 인코더(33)는 1 프레임분의 화상 데이터를 인코드하는 것에 의해 얻어진 부호화 데이터를 버퍼(34)에 공급하여 유지시킨다.
여기서, 도 7은 버퍼(34)에 유지된 1 프레임분의 부호화 데이터를 도시하고 있다. 부호화 데이터는, SOC(Start Of Code stream : 71), Code stream : 72), 및 EOC(End Of Code stream)로 구성되어 있다. SOC(71)는, 부호화 데이터의 개시를 나타내는 데이터이고, EOC(73)는, 부호화 데이터의 종료를 나타내는 데이터이다. 또한, Code Stream(72)은, 인코드된 화상 데이터이다.
여기서, 인코더(33)에 의해 행해지는 계층 부호화로서, 예를 들면, JPEG2000은 해상도나 압축율 등이 상이한 복수 종류의 프로그레시브 표시에 대응하고 있다. 또 JPEG2000은, 화질 스케일러블(SNR(Signal to Noise Ratio))에 대응하고 있다. 본 실시예에서는, 인코더(33)는 화상 데이터를, 예를 들면, JPEG2000 방식으로, 도 5에 도시한 프레임 정보에 따라, 화질 스캐러블에 계층 부호화하여, 각 계층(레이어)의 데이터를 Code Stream(72)에 배치한다.
그 결과, 도 7에서는, Code Stream(72)은, 도 5에 도시한 프레임 정보에 따라, 레이어 L0 데이터(91), 레이어 L1 데이터(92), 및 레이어 L2 데이터(93)로 계 층화되어 있다. 레이어 L0 데이터(91)는, 화상 데이터의 저역 정보로 되어 있고, 레이어 L1 데이터(92)는, 중역 정보로 되어 있다. 그리고, 레이어 L2 데이터(93)는 화상 데이터의 고역 정보로 되어 있다.
따라서, 레이어 L0 데이터(91)를 디코드하면, 화질이 낮은 원래의 화상(도 5의 예의 경우, 0.5bpp의 화질의 화상)과 동일한 공간 해상도의 화상이 얻어진다. 또한, 레이어 L1 데이터(92)까지(레이어 L0 데이터와 레이어 L1 데이터)를 디코드하면, 레이어 L0 데이터(91)만을 디코드한 경우보다도 화질이 좋은 화상(도 5의 예의 경우, 0.75bpp의 화질의 화상)이 얻어진다. 또한, 레이어 L2 데이터(93)까지(레이어 L0 데이터(91), 레이어 L1 데이터(92), 레이어 L3 데이터(93))를 디코드하면, 더 좋은 화질의 화상(도 5의 예의 경우, 1.0의 화질의 화상)을 얻을 수 있다.
또, 인코더(33)는 부호화 데이터를 디코드했을 때에, 프레임 정보에서의 화질의 화상을 얻을 수 있도록 계층 부호화를 행하여, 레이어 L0 데이터, 레이어 L1 데이터(92), 레이어 L3 데이터(93)를 얻는다.
도 4로 되돌아가, 단계 S9의 처리 후에는, 단계 S10으로 진행하고, RTP 패킷 생성부(35)는, 프레임 정보 유지부(32)로부터, 프레임 정보(50)(도 5)를 취득하고, 단계 S11로 진행한다. 단계 S11에서, RTP 패킷 생성부(35)는, 버퍼(34)에 유지되어 있는 1 프레임분의 부호화 데이터로부터, 단계 S10에서 취득한 프레임 정보(50)에서의 각 레이어마다의 패킷수의 패킷이 얻어지는 사이즈의 데이터를 취득하여, RTP 패킷을 생성한다.
즉, RTP 패킷 생성부(35)는, 도 5에 도시한 프레임 정보(50)를 취득한 경우, 레이어 L0 데이터(91)로부터 20개의 RTP 패킷을, 레이어 L1 데이터(92)로부터 25개의 RTP 패킷을, 레이어 L2 데이터(93)로부터 45개의 RTP 패킷을 생성한다.
단계 S11에서 RTP 패킷을 생성한 후에는, 단계 S12로 진행하고, RTP 패킷 생성부(35)는, 생성한 RTP 패킷을, 레이어 L0으로부터 레이어 L2의 순으로 통신부(36)에 공급하고, 단계 S13으로 진행한다. 단계 S13에서, 통신부(36)는, RTP 패킷을, 네트워크(14)를 통하여 클라이언트(13)에 송신한다.
여기서, 도 8은, 통신부(36)가 클라이언트(13)에 송신하는 RTP 패킷의 RTP 포맷의 예를 도시하고 있다. RTP 헤더는, 버전 번호를 나타내는 v(111), 패딩을 나타내는 p(112), 확장 헤더의 유무를 나타내는 x(113), 송신원수(Counter)를 나타내는 cc(114), 마커 정보(marker bit)를 나타내는 m(115), 페이로드 타입을 나타내는 pt(116), 시퀀스 번호를 나타내는 sequence(117), 타임스탬프를 나타내는 timestamp(118), 동기 소스(송신원) 식별자를 나타내는 SSRC(119)로 구성된다. RTP 헤더 후에는, 부호화 데이터가 Data(120)로서 배치된다.
클라이언트(13)는, timestamp(118)에 기술된 타임스탬프에 의해, RTP 패킷을 전개할 때의 처리 시간을 제어하여, 리얼타임 화상, 또는 음성의 재생 제어를 행한다. 또, 타임스탬프는, 1 프레임마다 결정되어, 동일한 프레임의 부호화 데이터를 배치시키는 복수의 RTP 패킷에는, 공통된 타임스탬프가 설정된다.
도 9는, 통신부(36)가, 도 5에 도시한 프레임 정보(50)에 기초하여 생성된 RTP 패킷을, 네트워크(14)를 통하여, 클라이언트(13)에 송신하는 예를 도시하는 도면이다. 또, 횡축 t는 시간을 나타내고 있다.
우선, 통신부(36)는, 레이어 L0의 부호화 데이터(도 7의 레이어 L0 데이터(91))(화상 데이터의 저역 정보)의 패킷을 20개(시퀀스 번호 1 내지 20의 패킷) 송신한다. 이어서, 레이어 L1의 부호화 데이터(도 7의 레이어 L1 데이터(92))(화상 데이터의 중역 정보)의 패킷을 45개(시퀀스 번호 21 내지 45의 패킷) 송신한다. 마지막으로, 통신부(36)는, 레이어 L3의 화상 데이터(도 7의 레이어 L3 데이터(93))(화상 데이터의 고역 정보)의 패킷을 45개(시퀀스 번호 46 내지 90의 패킷) 송신하고, 1 프레임의 부호화 데이터의 송신이 종료한다. 또, 시퀀스 번호는, 인코드된 최초의 화상 데이터(도 7의 SOC 71의 다음 데이터)로부터 생성된 패킷으로부터 순서대로 첨부되어, 도 8에 도시한 RTP 패킷의 sequence(117)에 배치된다.
도 4로 되돌아가, 단계 S13에서, RTP 패킷을 송신한 후에는, 단계 S14로 진행하고, RTP 패킷 생성부는, RTP 패킷의 timestamp(118)(도 8)에 기술하는 타임스탬프를 갱신하고, 단계 S15로 진행한다.
여기서, 도 8의 sequence(117)에 배치되는 시퀀스 번호는, RTP 패킷에 시켄셜에 첨부된다. 따라서, 이 시퀀스 번호에 의해, 클라이언트(13)는, 수신한 RTP 패킷이, 송신된 RTP 패킷에 대하여 부족한지(누락하였는지)의 여부를 검출할 수 있다.
단계 S15에서, 서버(12)는 모든 화상 데이터를, 클라이언트(13)에 송신하였는지의 여부를 판정한다. 서버(12)는, 모든 화상 데이터를 클라이언트(13)에 송신하지 않았다고 판정한 경우, 처리를 단계 S15로부터 S5로 되돌아가, 비디오 카메라(11)를 통하여 촬영된 화상 데이터를, 프레임마다 취득하여, RTP 패킷을 송신하는 처리를 반복한다. 단계 S15에서, 서버(12)는 모든 화상 데이터를 클라이언트(13)로 송신했다고 판정한 경우, 처리를 종료한다.
이어서, 도 10은, 도 1의 클라이언트(13)의 구성예를 도시하고 있다. 또, 도 10에서, "S"의 문자와 숫자로 이루어지는 기호로 나타내고 있는 화살표는, 후술하는 도 11 내지 도 13의 흐름도의 처리의 단계에 대응하고 있다.
통신부(141)는, 서버(12)로부터 송신되는 프레임 정보와 RTP 패킷을 수신한다. 수신 제어부(147)는, 통신부(141)가 수신한 프레임 정보와 RTP 패킷에 기초하여 수신 처리를 행하여, 통신부(141)에 의해 수신된 RTP 패킷(화상 데이터)의 버퍼(142)에의 기입을 제어한다. 이 수신 처리의 상세한 내용은, 도 14 내지 도 21을 참조하여 후술한다.
또한, 수신 제어부(147)는, 프레임 정보를, 통신부(141)로부터 취득하고, 화상 정보 유지부(148)의 프레임 정보 유지부(150)에 공급하여 유지시킨다. 또한, 수신 제어부(147)는, 통신부(141)가 수신한 RTP 패킷의 타임스탬프마다(1 프레임마다)에, 화상 정보 유지부(148)의 엔트리 정보 축적부(149)에 엔트리하여, RTP 패킷의 형태로 수신한 화상 데이터의 정보(이하, 적절하게, 엔트리 정보라고 칭함)를 유지한다.
통신부(141)는, 수신 제어부(147)의 제어에 따라, 수신한 RTP 패킷을 버퍼(142)에 기입하고, 이에 따라 버퍼(142)는, 통신부(141)로부터 공급되는 RTP 패킷을 일시 유지한다. 디코더(143)는, 버퍼(142)에 유지된 RTP 패킷을 취득한다.
임계값 유지부(151)는, 예를 들면, 사용자에 의해 입력된, 타임스탬프마다의 데이터량(RTP 패킷수) 또는 화질의 임계값을 유지한다.
디코더 제어부(152)는, 임계값 유지부(151)에 의해 유지된 임계값과, 엔트리 정보 축적부(149)에 의해 유지된 엔트리 정보(후술하는 도 21)에 기초하여, 디코더(143)에 의해 취득되어 RTP 패킷의, 디코드를 허가할지의 여부를 판단한다.
디코더(143)는, 디코더 제어부(152)에 의해 디코드가 허가되면, 버퍼(142)로부터 취득한 RTP 패킷에 배치된 부호화 데이터를 디코드하고, 그 디코드의 결과 얻어지는 화상 데이터를 프레임 메모리(144)에 기억한다. 표시 제어부(145)는, 프레임 메모리(144)에 기억된 화상 데이터를 취득하여, 디스플레이 등의 표시부(146)에 화상을 표시시킨다.
도 10의 클라이언트(13)의 화상 표시 처리를, 도 11 내지 도 13을 이용하여 상세히 설명한다. 또, 이 처리는, 서버(12)로부터 화상 데이터가 송신되었을 때, 개시된다.
단계 S31에서, 클라이언트(13)는, 자신을 초기화하고, 단계 S32로 진행한다. 이에 의해, 버퍼(142), 프레임 메모리(144), 화상 정보 유지부(148), 및 임계값 유지부(151)에 유지되어 있는 데이터는 소거된다. 단계 S32에서, 임계값 유지부(151)는, 사용자에 의해 입력된 데이터량(RTP 패킷수) 또는 화질의 임계값을 유지하고, 단계 S33으로 진행한다. 또, 임계값은, 예를 들면, 사용자가 도시하지 않는 조작부 등을 조작하여 미리 입력하는 것으로 한다.
단계 S33에서, 통신부(141)는, 도 3의 단계 S4의 처리에 의해 서버(12)로부터 송신된 프레임 정보(도 6), 또는 도 4의 단계 S13의 처리에서 클라이언트(13)로 부터 송신된 RTP 패킷(도 9)을, 네트워크(14)를 통하여 수신하고, 단계 S34로 진행한다.
단계 S34에서, 수신 제어부(147)는, 통신부(141)에 의해 수신된 프레임 정보를 통신부(141)로부터 취득하여, 프레임 정보 유지부(150)에 공급하여 유지시킨다. 이에 의해, 화상 정보 유지부(148)의 프레임 정보 유지부(150)는, 도 2의 프레임 정보 유지부(32)에 유지된 프레임 정보와 동일한 프레임 정보를 유지한다. 따라서, 도 6에 도시한 프레임 정보가 통신부(141)에 의해 수신된 경우, 도 5에 도시한 프레임 정보가, 프레임 정보 유지부(150)에 유지된다.
단계 S34의 처리 후에는, 단계 S35로 진행하여, 수신 제어부(147)는, 수신 처리를 행하고, 이에 따라 통신부(141)에 의해 수신된 RTP 패킷의 기입 허가 또는 불허가를 결정함과 함께, 후술하는 엔트리 정보를, 엔트리 정보 축적부(149)에 기억시킨다. 또, 수신 처리의 상세 내용은, 도 14와 도 15의 흐름도를 이용하여 후술한다.
단계 S35의 처리 후에는, 단계 S36으로 진행하여, 통신부(141)는, 단계 S35의 수신 처리에서, 수신 제어부(147)로부터 RTP 패킷의 기입이 허가되었는지의 여부를 판정한다. 통신부(141)는, 수신 제어부(147)로부터 기입이 허가된 경우, 단계 S36으로부터 S37로 진행하여, 단계 S33의 처리에서 수신한 RTP 패킷을, 버퍼(142)에 공급하여 기입하고, 이것에 의해 버퍼(142)는, 통신부(141)가 수신한 RTP 패킷을 유지한다.
그리고, 단계 S38로 진행하여, 디코더(143)는, 버퍼(142)에 1 프레임분의 RTP 패킷이 유지되었는지의 여부를 판정한다. 즉, 디코더(143)는, 1 프레임분의 수신 처리의 시간을 미리 내장하는 타이머(도시 생략)에 설정해 두고, 타이머에 의해, 그 설정한 시간이 계시되었는지의 여부를 판정한다. 디코더(143)는, 1 프레임분의 RTP 패킷이 유지될 때까지, 단계 S38의 처리를 반복하고, 1 프레임분의 RTP 패킷이 유지된 경우, 처리를 단계 S38로부터 도 12의 S39로 진행시킨다.
단계 S39에서, 디코더(143)는, 단계 S37의 처리에서 버퍼(142)에 유지된 1 프레임분의 RTP 패킷을, 버퍼(142)로부터 취득하고, 단계 S40으로 진행한다. 단계 S40에서, 디코더 제어부(152)는, 화상 정보 유지부(148)로부터, 도 11의 단계 S34, S35의 처리에서 유지된 화상 정보, 즉 엔트리 정보 축적부(149)에 유지된 엔트리 정보와 프레임 정보 유지부(150)에 유지된 프레임 정보를 취득하고, 단계 S41로 진행한다.
단계 S41에서, 디코더 제어부(152)는, 단계 S32의 처리에서 임계값 유지부(151)에 유지된 디코더량(RTP 패킷수) 또는 화질의 임계값을 취득하고, 단계 S42로 진행한다. 단계 S42에서, 디코더 제어부(152)는, 단계 S39의 처리에서 취득한 화상 정보와, 단계 S41의 처리에서 취득한 임계값에 기초하여, 디코드 판단 처리를 행하며, 이에 의해, 디코더(143)에 의한 디코드의 허가 또는 불허가를 결정한다. 이 디코드 판단 처리는, 도 22의 흐름도를 이용하여 후술한다.
단계 S42의 처리 후에는, 도 13의 단계 S43으로 진행하여, 디코더(143)는, 단계 S42의 처리에 의해, 디코더 제어부(152)로부터 디코드가 허가되었는지의 여부를 판정한다. 디코더(143)는, 디코더 제어부(152)로부터 디코드가 허가된 경우, 처리를 단계 S43으로부터 S44로 진행시켜, 단계 S39의 처리에서 버퍼(142)로부터 취득한 RTP 패킷을 디코드하고, 단계 S45로 진행한다.
단계 S45에서, 디코더(143)는, 디코드한 화상 데이터를 프레임 메모리(144)에 공급하여 기억시키고, 단계 S46으로 진행한다. 단계 S46에서, 표시 제어부(145)는, 단계 S45에서 프레임 메모리(144)에 기억된 화상 데이터를 취득하고, 단계 S47에 진행한다. 단계 S47에서, 표시 제어부(145)는, 단계 S46에서 취득한 화상 데이터에 기초하여, 표시부(146)에 화상을 표시시키고, 처리를 종료한다.
한편, 단계 S43에서, 디코더 제어부(152)로부터 디코드가 허가되어 있지 않다고 판정된 경우, 처리가 단계 S48로 진행하고, 표시 제어부(145)는, 프레임 메모리(144) 전의 프레임(지금 표시해야 할 프레임의, 예를 들면 1 프레임 전의 프레임 등)의 화상 데이터가 존재하는지의 여부를 판정한다. 단계 S48에서, 프레임 메모리(144)에 전의 프레임의 화상 데이터가 존재한다(전의 프레임의 화상 데이터를 수신했을 때, 단계 S45의 처리가 행해졌다)고 판정된 경우, 단계 S49로 진행하여, 표시 제어부(145)는, 전의 프레임의 화상(프레임 메모리(144)에 기억되어 있는 화상)을, 표시부(146)에 표시시켜, 처리를 종료한다.
또한, 단계 S48에서, 프레임 메모리(144)에 전의 프레임의 화상 데이터가 존재하지 않는다고 판정된 경우, 단계 S49를 스킵하고 처리를 종료한다. 따라서, 이 경우, 표시부(146)에는 아무것도 표시되지 않는다.
한편, 도 12의 단계 S36에서, 통신부(141)는 수신 제어부(147)로부터 RTP 패킷의 기입이 허가되어 있지 않다고 판정한 경우, RTP 패킷을 버퍼에 기입하지 않 고, 처리를 종료한다.
또, 도 11 및 도 12의 처리는, 서버(12)로부터, RTP 패킷이 송신되어 오지 않게 될 때까지 반복된다.
이어서, 도 14의 흐름도를 참조하여, 수신 제어부(147)에서의 수신 처리에 대하여 설명한다. 이 흐름도는, 상술한 도 11의 단계 S34, S35의 처리를 상세히 설명하는 것이다.
단계 S61에서, 수신 제어부(147)는, 통신부(141)가, 도 11의 단계 S33의 처리에 의해, 프레임 정보를 수신하였는지의 여부를 판정한다. 단계 S61에서, 프레임 정보를 수신했다고 판정된 경우, 단계 S62로 진행하여, 수신 제어부(147)는, 화상 정보 유지부(148)의 프레임 정보 유지부(150)에, 통신부(141)가 수신한 프레임 정보를 공급하여 유지시키고, 처리를 단계 S61로 복귀한다.
또한, 단계 S61에서, 프레임 정보를 수신하지 않는다고 판정된 경우, 단계 S63으로 진행하여, 수신 제어부(147)는, 통신부(141)가 RTP 패킷을 수신하였는지의 여부를 판정한다. 단계 S63에서, 화상 데이터를 수신하지 않는다고 판정된 경우, 통신부(141)가 수신한 데이터는, 필요없는 데이터이므로, 수신 제어부(147)는, 이후의 처리를 행하지 않고, 처리를 단계 S61로 되돌려서, 이하 마찬가지의 처리를 반복한다.
또한, 단계 S63에서, 수신 제어부(147)는 통신부(141)가 화상 데이터를 수신했다고 판정한 경우, 단계 S64로 진행하여, 통신부(141)가 수신한 RTP 패킷의 타임스탬프를 검출한다. 즉, RTP 패킷은 도 8에 도시한 포맷으로 송신되므로, 수신 제 어부(147)는, 헤더의 timestamp(118)에 기술된 타임스탬프의 값을 검출한다. 또, 이 타임스탬프는, 도 3의 단계 S2의 처리에서 초기화되고, 도 4의 단계 S14에서 1프레임마다 갱신되는 것이다.
여기서, 도 16은 통신부(141)에 의해 수신되는 RTP 패킷의 예를, 횡축을 시간 t로 하여 나타내고 있다. 이 예의 경우, 1 프레임은 90개의 RTP 패킷으로 구성되어 있다. 통신부(141)는, 타임스탬프가 「1000」인 프레임의 화상 데이터의 RTP 패킷군(시퀀스 번호가 1 내지 90의 RTP 패킷)을 수신하고, 그 후에는, 타임스탬프가 「2000」인 프레임의 화상 데이터의 RTP 패킷군(시퀀스 번호가 91 내지 180인 RTP 패킷)을 수신한다. 그리고, 통신부(141)는, 타임스탬프가 「3000」인 프레임의 화상 데이터의 RTP 패킷군(시퀀스 번호가 181 내지 270인 RTP 패킷)을 수신하고, 마지막으로 타임스탬프가 「4000」인 프레임의 화상 데이터의 RTP 패킷군(시퀀스 번호가 271 내지 360인 RTP 패킷)을 수신한다. 또, 도 16에서는, 시퀀스 번호 131과 시퀀스 번호 191의 RTP 패킷은, 손실(누락)된다.
도 14로 되돌아가, 단계 S64의 처리 후에는, 단계 S65로 진행하여, 수신 제어부(147)는, 전회의 단계 S64의 처리에서 검출한 타임스탬프가 있는지의 여부를 판정한다. 단계 S65에서, 전회 검출한 타임스탬프가 있다고 판정된 경우, 단계 S66으로 진행하고, 수신 제어부(147)는, 금회의 단계 S64의 처리에서 검출한 타임스탬프가, 전회 검출한 타임스탬프와 일치하는지의 여부를 판정한다.
단계 S66에서, 금회 검출한 타임스탬프가 전회의 타임스탬프와 일치하지 않는다고 판정된 경우, 단계 S67로 진행하여, 수신 제어부(147)는, 금회 검출한 타임 스탬프가, 전회의 타임스탬프보다 큰지의 여부를 판정한다. 단계 S67에서, 금회 검출한 타임스탬프가, 전회의 타임스탬프보다 크지 않다(작다)고 판정된 경우, 수신된 화상 데이터는, 이미 수신되어, 처리된 화상 데이터이므로, 처리를 단계 S61로 복귀한다.
또한, 단계 S67에서, 금회 검출한 타임스탬프가, 전회의 타임스탬프보다 크다고 판정된 경우, 또는 단계 S65에서 전회의 타임스탬프가 없다고 판정된 경우, 즉, 통신부(141)이 수신한 RTP 패킷이 프레임의 최초의 RTP 패킷인 경우, 수신 제어부(147)는, 처리를 단계 S68로 진행시켜, 금회 검출한 타임스탬프를 엔트리 정보 축적부(149)에 엔트리한다.
예를 들면, 통신부(141)에서, 도 16에 도시한 RTP 패킷의 시퀀스가 수신되는 경우, 시퀀스 번호 1의 RTP 패킷이 수신되면, 이 RTP 패킷은, 프레임 내의 최초의 패킷이므로, 도 17에 도시한 바와 같이, 타임스탬프 「1000」이 배치된 엔트리 정보가 엔트리 정보 축적부(149)에 엔트리(등록)된다. 또, 엔트리 정보는, 타임스탬프(181), 수신 데이터량(182), 플래그(183)로 구성되고, 플래그(183)는, 손실이 검출되었는지의 여부를 나타내고 있다(단계 S73의 처리에서 후술함). 또한, 수신 데이터량(182)은, 수신한 1 프레임 내의 RTP 패킷의 수를 나타내고, 그 1 프레임 내의 새로운 RTP 패킷을 수신했을 때, 인크리먼트된다(후술하는 단계 S70의 처리).
또한, 도 16에서, 시퀀스 번호91의 RTP 패킷이 수신되면, 그 RTP 패킷의 타임스탬프는, 전회의 타임스탬프 「1000」(시퀀스 번호 90의 타임스탬프)보다 크므로, 새로운 타임스탬프 「2000」가 엔트리 정보 축적부(149)에 엔트리되고, 도 18 에 도시된 바와 같은 엔트리 정보가 엔트리 정보 축적부(149)에 유지된다.
도 18에서는, 수신된 타임스탬프(181)가 「1000」인 화상 데이터가, 시퀀스 번호 1 내지 90의 RTP 패킷으로 구성되어, 손실은 없으므로, 수신 데이터량(182)이 「90」으로 되고, 플래그(183)는, 손실이 없는 것을 나타내는 「0」으로 되어 있다. 그리고, 시퀀스 번호 91의 RTP 패킷이 새롭게 수신되었으므로, 타임스탬프(181)에 「2000」이 엔트리되어 있다.
도 15로 되돌아가, 단계 S68의 처리 후에는, 단계 S69로 진행하여, 수신 제어부(147)는, 통신부(141)가 수신한 RTP 패킷의 시퀀스 번호(도 8의 포맷의 sequence(117)에 기술된 번호)에 기초하여, RTp 패킷이 손실되었는지의 여부를 판정한다. 즉, 단계 S69에서는, 통신부(141)가 금회 수신한 RTP 패킷의 시퀀스 번호가, 전회 수신한 RTP 패킷의 시퀀스 번호의 다음 번호인 경우, RTP 패킷이 손실되지 않았다고 판정되고, 다음 번호가 아닌 경우, RTP 패킷이 손실되었다(송신 에러에 의해, RTP 패킷이 누락되었다)고 판정된다. 단계 S69에서, RTP 패킷이 손실되지 않았다고 판정된 경우에는, 단계 S70으로 진행하고, 손실하였다고 판정된 경우에는, 단계 S73으로 진행한다.
한편, 도 14의 단계 S66에서, 금회 검출한 타임스탬프가, 전회의 타임스탬프와 일치한다고 판정된 경우, 단계 S72로 진행하고, 수신 제어부(147)는, RTP 패킷이 손실되었는지(시퀀스 번호가 연속 번호가 아닌지)의 여부, 또는 엔트리 정보 축적부(149)의 플래그(183)가 「1」인지(전회까지 손실이 검출되었는지)의 여부를 판정한다.
단계 S72의 처리에서, 손실이 검출되지 않고, 플래그(183)가 「1」이 아니라고(「0」이라고) 판정된 경우, 도 15의 단계 S70으로 진행하여, 수신 제어부(147)는, 엔트리 정보 축적부(149)의 수신 데이터량(182)을 1만큼 인크리먼트한다.
예를 들면, 시퀀스 번호 91의 RTP 패킷이 수신되고, 이에 의해, 단계 S68의 처리에서, 엔트리 정보 축적부(149)에, 도 18에 도시한 엔트리 정보가 유지된 경우, 손실이 없으므로, 엔트리 정보 축적부(149)에는, 도 19에 도시하는 엔트리 정보가 유지된다. 즉, 타임스탬프(181)가 「2000」인 수신 데이터량(182)은, 「0」으로부터 「1」로 인크리먼트된다.
또한, 도 16의 케이스에서, 시퀀스 번호 1 내지 94까지가 정상적으로 수신되는 경우, 엔트리 정보 축적부(149)의 타임스탬프 「2000」의 수신 데이터량(182)은, 「4」로 되어 있다. 그 후, 시퀀스 번호 95가 수신되면, 수신 데이터량(182)은, 인크리먼트되어, 「5」로 된다.
도 15로 되돌아가, 단계 S70의 처리 후에는, 단계 S71로 진행하고, 수신 제어부(147)는, 통신부(141)에 버퍼(142)에의 RTP 패킷의 기입을 허가하고, 처리를 종료한다. 따라서, 통신부(141)는, 도 11의 단계 S37의 처리를 행하여, 수신한 화상 데이터(RTP 패킷)를 버퍼(142)에 기입하고, 이후의 처리를 행한다.
한편, 도 14의 단계 S72에서, RTP 패킷이 손실되었다고 판정된 경우, 또는 플래그(183)가 「1」이라고 판정된 경우, 수신 제어부(147)는, 처리를 단계 S73으로 진행시켜, 엔트리 정보 축적부(149)의 플래그를 「1」로 설정하고, 처리를 종료한다. 이 때, 수신 제어부(147)는, 통신부(141)에 버퍼(142)에의 RTP 패킷의 기입 을 허가하지 않는다. 따라서, 이 경우, 통신부(141)는 RTP 패킷을 버퍼(142)에 기입하지 않는다.
예를 들면, 도 16에 도시한 화상 데이터의 시퀀스 번호 132의 RTP 패킷이 수신된 경우, 시퀀스 번호 131의 RTP 패킷이 손실되었으므로, 엔트리 정보 축적부(149)에 유지된 엔트리 정보는, 도 20에 도시한 바와 같이, 플래그(183)가 「0」으로부터 「1」로 변경된다. 또, RTP 패킷은 버퍼(142)에 기입되지 않으므로, 수신 데이터량(182)은, 변경되지 않는다.
또한, 도 16에 도시한 화상 데이터의 시퀀스 번호 133의 RTP 패킷이 수신된 경우에도, 플래그가 「1」이므로(손실된 RTP 패킷이 있으므로), 엔트리 정보 축적부의 플래그(183)는 「1」 상태이고, RTP 패킷은 버퍼(142)에 기입되지 않으므로, 수신 데이터량(182)도 「40」의 상태에서 변경되지 않는다.
상술한 처리는, 모든 화상 데이터가 수신될 때까지, 패킷마다 행해진다.
도 16에 도시된 바와 같은 화상 데이터가 통신부(141)에 의해 수신된 경우의 엔트리 정보 축적부(149)의 엔트리 정보의 예를 도 21에 도시한다.
이 예의 경우, 타임스탬프가 「1000」인 프레임은, 90개의 패킷으로 구성되어, 손실이 없으므로, 타임스탬프(181)가 「1000」인 수신 데이터량(182)은, 「90」으로 되고, 플래그(183)는, 「0」으로 된다. 또한, 타임스탬프가 「2000」인 프레임은, 시퀀스 번호 131의 RTP 패킷이 손실되었으므로, 시퀀스 번호 91 내지 130의 RTP 패킷만이 기입을 허가받아(단계 S70, S71의 처리), 타임스탬프(181)가 「2000」인 수신 데이터량은, 「40」으로 된다. 또한, 이 때, RTP 패킷의 손실이 검 출되므로, 플래그(183)는, 「1」로 된다.
마찬가지로, 타임스탬프 「3000」인 프레임은, 191의 RTP 패킷이 손실되었으므로, 시퀀스 번호 181 내지 190의 RTP 패킷만이 기입을 허가받아, 타임스탬프(181)가 「3000」인 수신 데이터량은, 「10」으로 되고, 손실이 검출되었으므로, 플래그(183)는, 「1」로 된다. 타임스탬프 「4000」의 프레임은, 손실이 없으므로, 모든 RTP 패킷이 버퍼(142)에 기입되어, 수신 데이터량(182)은, 「90」으로 되고, 플래그(183)는 「0」으로 된다.
도 14와 도 15의 처리에 의해, 수신 제어부(147)는, 손실되기까지의 화상 데이터(손실이 없는 화상 데이터)만을 버퍼(142)에 기입한다.
이와 같이, 시퀀스 번호를 검출하는 것에 의해, 손실을 검출할 수 있다. 또, 손실의 검출의 유무를 나타내는 플래그를 판정하는 것에 의해, 손실이 검출되기까지의 화상 데이터만을 확실하게 유지할 수 있다.
이어서, 도 22의 흐름도를 참조하여, 디코더 제어부(152)에서의 디코드 판단 처리에 대하여 설명한다. 이 흐름도는, 상술한 도 12의 단계 S39 내지 S42의 처리를 상세히 설명하는 것이다.
단계 S91에서, 디코더 제어부(152)는, 디코더(143)의 디코드 대상의 타임스탬프를, 초기값(지금의 경우, 「1000」)으로 설정하고, 단계 S92로 진행한다. 단계 S92에서, 디코더 제어부(152)는, 임계값 유지부(151)로부터, 도 11의 단계 S32의 처리에서 유지된 데이터량(RTP 패킷수) 또는 화질의 임계값을 취득하고, 단계 S93으로 진행한다.
단계 S93에서, 디코더 제어부(152)는, 화상 정보 유지부(148)로부터 화상 정보를 취득한다. 즉, 엔트리 정보 축적부(149)로부터 엔트리 정보(도 21)를 취득하고, 프레임 정보 유지부(150)로부터 프레임 정보(도 5)를 취득한다.
단계 S93의 처리 후에는, 단계 S94로 진행하여, 디코더 제어부(152)는, 디코더(143)의 도시되지 않은 타이머를 소정 시간(1 프레임분의 화상 데이터를 취득하는데 필요한 시간)으로 설정하여, 개시시키고, 단계 S95로 진행한다. 단계 S95에서, 디코더 제어부(152)는, 디코더(143)를 제어하여, 버퍼(142)로부터 화상 데이터를 취득하고, 단계 S96으로 진행한다. 단계 S96에서, 디코더 제어부(152)는, 타이머가 종료하였는지의 여부를 판정하여, 타이머가 종료할 때까지 단계 S96의 처리를 반복한다.
단계 S96의 처리에서, 타이머가 종료한 (1 프레임분의 RTP 패킷이 취득된) 경우, 디코더 제어부(152)는, 처리를 단계 S96로부터 S97로 진행시킨다.
단계 S97에서, 엔트리 정보 축적부(149)로부터 취득된(단계 S93) 수신 데이터량(182)이, 임계값 유지부(151)로부터 취득된(단계 S92) 임계값보다 큰지의 여부를 판정한다.
디코더 제어부(152)는, 임계값 유지부(151)에 유지된 임계값이 화질인 경우, 프레임 정보 유지부(150)에 의해 유지된, 프레임 정보의 패킷수(52)와 화질(53)의 관계로부터 패킷수의 임계값을 결정하여, 임계값보다 큰지의 여부를 판정한다.
이와 같이, 프레임 정보를 서버(12)로부터 클라이언트(13)에 송신하는 것에 의해, 프레임 정보가 화상에 따라 변경되는 경우에도, 사용자가 화질의 임계값을 결정해 두는 것만으로, 자동적으로 패킷수의 임계값이 결정되어, 화질이 좋은 화상을 표시시킬 수 있다.
도 22로 되돌아가, 단계 S97의 처리에서, 수신 데이터량(182)이 임계값보다 크다고 판정된 경우, 디코더 제어부(152)는 단계 S98로 진행하여, 디코더(143)에 디코드를 허가하고, 단계 S99로 진행한다. 따라서, 디코더(143)는, 도 13의 단계 S44의 처리에 의해, 취득한 화상 데이터를 디코드하여, 표시부(146)에 표시할 수 있다.
한편, 단계 S97에서, 디코더 제어부(152)는, 수신 데이터량(182)이 임계값 이하라고 판정된 경우, 단계 S98를 스킵하고, 단계 S99로 진행한다. 따라서, 디코더(143)는, 디코드가 허가되지 않는다.
단계 S99에서, 디코더 제어부(152)는, 디코드 대상의 타임스탬프를 다음 프레임의 타임스탬프(지금의 경우, 「2000」)로 갱신한다.
상술한 처리는, 모든 화상이 디코드될 때까지, 프레임마다 반복된다. 예를 들면, 도 21에 도시한 바와 같은 엔트리 정보가 엔트리 정보 축적부(149)에 유지되어 있고, 임계값 유지부(151)에 유지된 임계값이 「30」인 경우, 타임스탬프가 「1000」과 「2000」인 프레임은, 수신 데이터량(182)이 각각 「90」과 「40」으로서, 임계값 「30」보다 크므로, 디코드가 허가된다. 그러나, 타임스탬프 「3000」의 프레임은, 수신 데이터량(182)이 「10」으로서, 임계값 「30」 이하이므로, 디코드는 허가되지 않는다. 그리고, 타임스탬프가 「4000」인 프레임은, 수신 데이터량(182)이 「90」으로서, 임계값「30」보다 크므로, 디코드가 허가된다. 즉, 디 코드되는 화상 데이터는, 타임스탬프가 「1000」, 「2000」, 「4000」인 데이터이다.
따라서, 타임스탬프 「3000」의 화상 데이터를 표시부(146)에 표시시키고자 할 때, 도 13의 단계 S49의 처리에 의해, 타임스탬프 「2000」의 화상 데이터의 화상(전의 프레임의 화상)이 표시된다.
이와 같이, 수신 데이터량에 기초하여, 디코더가 제어되므로, 수신 데이터량이 적은 (화질이 나쁜) 화상의 디코드를 금지하여, 화질이 좋은 화상만을 표시할 수 있다.
또, 화질의 단위는, 「bpp」를 이용했지만 「PSNR(per-square-noise-ratio) 등, 화질을 나타내는 단위이면 된다.
상술한 일련의 처리는, 하드웨어에 의해 실행시킬 수도 있고, 소프트웨어에 의해 실행시킬 수도 있다. 이 경우, 상술한 처리는, 도 23에 도시된 바와 같은 퍼스널 컴퓨터(600)에 의해 실행된다.
도 23에서, CPU(Central Processing Unit : 601)는, ROM(Read Only Memory : 602)에 기억되어 있는 프로그램, 또는 기억부(608)로부터 RAM(Random Access Memory : 603)에 로드된 프로그램에 따라 각종 처리를 실행한다. RAM(603)에는 또, CPU(601)가 각종 처리를 실행하는데 필요한 데이터 등이 적절하게 기억된다.
CPU(601), ROM(602), 및 RAM(603)은, 내부 버스(604)를 통하여 서로 접속되어 있다. 이 내부 버스(604)에는 또, 입출력 인터페이스(605)도 접속되어 있다.
입출력 인터페이스(605)에는, 키보드, 마우스 등으로 이루어지는 입력부 (606), CRT, LCD(Liquid Crystal Display) 등으로 이루어지는 디스플레이, 및 스피커 등으로 이루어지는 출력부(607), 하드디스크 등으로 구성되는 기억부(608), 모뎀, 터미널 어댑터 등으로 구성되는 통신부(609)가 접속되어 있다. 통신부(609)는, 전화 회선이나 CATV를 포함하는 각종 네트워크를 통한 통신 처리를 행한다.
입출력 인터페이스(605)에는 또, 필요에 따라 드라이브(610)가 접속되고, 자기 디스크, 광 디스크, 광자기 디스크, 혹은 반도체 메모리 등으로 이루어지는 리무버블 미디어(621)가 적절하게 장착되고, 그리고 판독된 컴퓨터 프로그램이, 필요에 따라 기억부(608)에 인스톨된다.
일련의 처리를 소프트웨어에 의해 실행시키는 경우에는, 그 소프트웨어를 구성하는 프로그램이, 전용 하드웨어에 내장되어 있는 컴퓨터, 또는 각종 프로그램을 인스톨함으로써, 각종 기능을 실행하는 것이 가능한, 예를 들면, 범용의 퍼스널 컴퓨터 등에, 네트워크나 기록 매체로부터 인스톨된다.
이 기록 매체는, 도 23에 도시된 바와 같이, 컴퓨터와는 별도로, 사용자에게 프로그램을 제공하기 위해 배포되는, 프로그램이 기록되어 있는 리무버블 미디어(621)로 이루어지는 패키지 미디어로 구성될 뿐만 아니라, 장치 본체에 미리 내장된 상태에서 사용자에게 제공되는, 프로그램이 기록되어 있는 ROM(602)이나 기억부(608)가 포함되는 하드디스크 등으로 구성된다.
또한, 본 명세서에서, 컴퓨터 프로그램을 기술하는 단계는, 기재된 순서에 따라 시계열적으로 행해지는 처리는 물론, 반드시 시계열적으로 처리되지 않아도, 병렬적 혹은 개별로 실행되는 처리도 포함하는 것이다.
또한, 본 명세서에서, 시스템이란, 복수의 장치로 구성되는 장치 전체를 나타내는 것이다.
이상과 같이, 제1 본원 발명에 따르면, 송신된 콘텐츠를 수신하는 시스템을 실현할 수 있다. 특히, 송신 시에 콘텐츠가 누락한 경우에도, 양질의 화상을 표시시킬 수 있다.
제2 본원 발명에 따르면, 양질의 콘텐츠를 표시시킬 수 있다. 특히, 송신 시에 콘텐츠가 누락한 경우에도, 양질의 화상을 표시시킬 수 있다.
제3 본원 발명에 따르면, 양질의 콘텐츠를 표시시킬 수 있다. 특히, 송신 시에 콘텐츠가 누락한 경우에도, 양질의 화상만을 선택하여, 표시시킬 수 있다.

Claims (15)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 프레임 단위의 화상을 계층 부호화하여 얻어지는 복수의 레이어의 부호화 데이터를 패킷화한 패킷을 송신하는 송신 장치로부터, 저역 정보부터 고역 정보의 순서로 시퀀스 번호를 첨부하여 송신되어 오는 상기 패킷을 상기 시퀀스 번호의 순서로 수신하는 수신 장치로서,
    상기 송신 장치로부터 송신되어 오는 상기 패킷을 수신하는 수신 수단과,
    상기 수신 수단에 의해 수신된 상기 패킷을 유지하는 유지 수단과,
    상기 화상의 프레임이 수신될 때, 패킷 손실이 검출될 때까지, 수신된 상기 패킷을 상기 유지 수단에 기입하고, 상기 패킷 손실이 검출된 후 1 프레임의 최후의 상기 패킷까지, 수신된 상기 패킷을 상기 유지 수단에 기입하지 않는 기입 수단과,
    상기 유지 수단에 기입된 1 프레임의 화상에 대응하는 패킷의 수가 임계값보다 큰 경우, 그 패킷에 배치된 부호화 데이터의 디코드를 행하고, 상기 유지 수단에 기입된 1 프레임의 화상에 대응하는 패킷의 수가 상기 임계값 이하인 경우, 그 패킷에 배치된 부호화 데이터의 디코드를 행하지 않는 디코드 수단과,
    상기 디코드 수단에 의해 표시 대상의 프레임의 화상에 대응하는 부호화 데이터가 디코드되지 않은 경우, 그 프레임보다 1 프레임 전의 프레임이 디코드된 화상을 표시시키는 표시 제어 수단
    을 포함하는 것을 특징으로 하는 수신 장치.
  10. 제9항에 있어서,
    상기 수신 수단은, 또한 상기 송신 장치로부터 송신되어 오는, 상기 레이어마다의 상기 부호화 데이터의 패킷 수와, 상기 부호화 데이터를 디코드하는 것에 의해 얻어지는 화상의 화질에 관한 정보를 포함하는 프레임 정보를 수신하고,
    상기 디코드 수단은 상기 프레임 정보에 기초하여 결정되는 상기 임계값에 기초하여 상기 디코드를 행하는 것을 특징으로 하는 수신 장치.
  11. 삭제
  12. 삭제
  13. 프레임 단위의 화상을 계층 부호화하여 얻어지는 복수의 레이어의 부호화 데이터를 패킷화한 패킷을 송신하는 송신 장치로부터, 저역 정보부터 고역 정보의 순서로 시퀀스 번호를 첨부하여 송신되어 오는 상기 패킷을 상기 시퀀스 번호의 순서로 수신하는 수신 장치의 수신 방법으로서,
    상기 송신 장치로부터 송신되어 오는 상기 패킷을 수신하는 수신 단계와,
    상기 화상의 프레임이 수신될 때, 패킷 손실이 검출될 때까지, 수신된 상기 패킷을 유지 수단에 기입하고, 상기 패킷 손실이 검출된 후 1 프레임의 최후의 상기 패킷까지, 수신된 상기 패킷을 상기 유지 수단에 기입하지 않는 기입 단계와,
    상기 유지 수단에 기입된 1 프레임의 화상에 대응하는 패킷의 수가 임계값보다 큰 경우, 그 패킷에 배치된 부호화 데이터의 디코드를 행하고, 상기 유지 수단에 기입된 1 프레임의 화상에 대응하는 패킷의 수가 상기 임계값 이하인 경우, 그 패킷에 배치된 부호화 데이터의 디코드를 행하지 않는 디코드 단계와,
    상기 디코드 단계의 처리에 의해 표시 대상의 프레임의 화상에 대응하는 부호화 데이터가 디코드되지 않은 경우, 그 프레임보다 1 프레임 전의 프레임이 디코드된 화상을 표시시키는 표시 제어 단계
    를 포함하는 것을 특징으로 하는 수신 방법.
  14. 프레임 단위의 화상을 계층 부호화하여 얻어지는 복수의 레이어의 부호화 데이터를 패킷화한 패킷을 송신하는 송신 장치로부터, 저역 정보부터 고역 정보의 순서로 시퀀스 번호를 첨부하여 송신되어 오는 상기 패킷을 상기 시퀀스 번호의 순서로 수신하는 프로그램을 기록한 컴퓨터 판독가능한 기록 매체로서,
    상기 프로그램은,
    상기 송신 장치로부터 송신되어 오는 상기 패킷을 수신하는 수신 단계와,
    상기 화상의 프레임이 수신될 때, 패킷 손실이 검출될 때까지, 수신된 상기 패킷을 유지 수단에 기입하고, 상기 패킷 손실이 검출된 후 1 프레임의 최후의 상기 패킷까지, 수신된 상기 패킷을 상기 유지 수단에 기입하지 않는 기입 단계와,
    상기 유지 수단에 기입된 1 프레임의 화상에 대응하는 패킷의 수가 임계값보다 큰 경우, 그 패킷에 배치된 부호화 데이터의 디코드를 행하고, 상기 유지 수단에 기입된 1 프레임의 화상에 대응하는 패킷의 수가 상기 임계값 이하인 경우, 그 패킷에 배치된 부호화 데이터의 디코드를 행하지 않는 디코드 단계와,
    상기 디코드 단계의 처리에 의해 표시 대상의 프레임의 화상에 대응하는 부호화 데이터가 디코드되지 않은 경우, 그 프레임보다 1 프레임 전의 프레임이 디코드된 화상을 표시시키는 표시 제어 단계
    를 포함하는 처리를 컴퓨터에 실행시키는 것을 특징으로 하는 컴퓨터 판독가능한 기록 매체.
  15. 삭제
KR20047012281A 2002-12-11 2003-10-06 수신 장치, 수신 방법 및 컴퓨터 판독가능한 기록 매체 KR100982637B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002358945A JP4406816B2 (ja) 2002-12-11 2002-12-11 受信装置および受信方法、記録媒体、並びにプログラム
JPJP-P-2002-00358945 2002-12-11

Publications (2)

Publication Number Publication Date
KR20050084770A KR20050084770A (ko) 2005-08-29
KR100982637B1 true KR100982637B1 (ko) 2010-09-15

Family

ID=32500914

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20047012281A KR100982637B1 (ko) 2002-12-11 2003-10-06 수신 장치, 수신 방법 및 컴퓨터 판독가능한 기록 매체

Country Status (5)

Country Link
US (1) US7593424B2 (ko)
EP (1) EP1473939A4 (ko)
JP (1) JP4406816B2 (ko)
KR (1) KR100982637B1 (ko)
WO (1) WO2004054266A1 (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006140966A (ja) * 2004-11-15 2006-06-01 Kyocera Mita Corp 時刻認証管理システム及び画像形成装置
JP2007203524A (ja) * 2006-01-31 2007-08-16 Fujifilm Corp プリンタ、プリント方法およびプリントプログラム
US8125486B2 (en) * 2006-02-23 2012-02-28 Los Alamos National Security, Llc Combining multi-layered bitmap files using network specific hardware
US7953895B1 (en) * 2007-03-07 2011-05-31 Juniper Networks, Inc. Application identification
US7729328B2 (en) * 2007-03-14 2010-06-01 Cisco Technology, Inc. Real-time sessions for wireless mesh networks
JP4916487B2 (ja) * 2008-06-18 2012-04-11 コニカミノルタビジネステクノロジーズ株式会社 情報処理装置及びプログラム
CN101369880B (zh) * 2008-09-28 2012-09-19 华为技术有限公司 一种时间标签跳变的检测处理方法和装置
JP5549681B2 (ja) * 2010-01-14 2014-07-16 住友電気工業株式会社 動画像符号化データの表示方法、装置及び通信システム
JP2015012580A (ja) * 2013-07-02 2015-01-19 キヤノン株式会社 受信装置、受信方法及びプログラム
KR102233430B1 (ko) * 2013-10-12 2021-03-29 삼성전자주식회사 멀티 레이어 비디오의 복호화 및 부호화를 위한 버퍼 관리 방법 및 장치
JP2016126037A (ja) * 2014-12-26 2016-07-11 ソニー株式会社 信号処理装置、および信号処理方法、並びにプログラム
US10110967B2 (en) * 2015-01-24 2018-10-23 Valens Semiconductor Ltd. Increasing visually lossless compression ratio to provide bandwidth for an additional stream

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5148272A (en) * 1991-02-27 1992-09-15 Rca Thomson Licensing Corporation Apparatus for recombining prioritized video data
US20010030963A1 (en) * 2000-03-03 2001-10-18 Takeshi Yoshimura Method and apparatus for packet transmission with header compression
KR20020068272A (ko) * 2001-02-20 2002-08-27 산요 덴키 가부시키가이샤 화상 처리 방법과, 이 방법을 이용가능한 화상 부호화장치 및 화상 복호 장치

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5455629A (en) * 1991-02-27 1995-10-03 Rca Thomson Licensing Corporation Apparatus for concealing errors in a digital video processing system
US5475688A (en) * 1994-04-22 1995-12-12 Thomson Consumer Electronics, Inc. Media error code generation as for a video inverse transport processor
ES2264584T3 (es) * 1998-10-30 2007-01-01 British Telecommunications Public Limited Company Transporte de datos.
DE10033110B4 (de) * 2000-07-07 2005-06-16 Siemens Ag Verfahren, und System zur Übertragung digitalisierter Bewegtbilder von einem Sender zu einem Empfänger und zugehöriger Decoder
JP4549610B2 (ja) * 2001-11-08 2010-09-22 ソニー株式会社 通信システム、通信方法、送信装置および方法、受信装置および方法、並びにプログラム
JP2003152544A (ja) 2001-11-12 2003-05-23 Sony Corp データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
JP3757857B2 (ja) * 2001-12-12 2006-03-22 ソニー株式会社 データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
JP4150951B2 (ja) * 2002-02-19 2008-09-17 ソニー株式会社 動画配信システム、動画配信装置および方法、並びにプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5148272A (en) * 1991-02-27 1992-09-15 Rca Thomson Licensing Corporation Apparatus for recombining prioritized video data
US20010030963A1 (en) * 2000-03-03 2001-10-18 Takeshi Yoshimura Method and apparatus for packet transmission with header compression
KR20020068272A (ko) * 2001-02-20 2002-08-27 산요 덴키 가부시키가이샤 화상 처리 방법과, 이 방법을 이용가능한 화상 부호화장치 및 화상 복호 장치

Also Published As

Publication number Publication date
US7593424B2 (en) 2009-09-22
EP1473939A4 (en) 2011-10-05
JP4406816B2 (ja) 2010-02-03
KR20050084770A (ko) 2005-08-29
JP2004193924A (ja) 2004-07-08
US20050105557A1 (en) 2005-05-19
EP1473939A1 (en) 2004-11-03
WO2004054266A1 (ja) 2004-06-24

Similar Documents

Publication Publication Date Title
JP4965059B2 (ja) ビデオストリームの切り替え
KR100945548B1 (ko) 비디오 오류 회복
US7171485B2 (en) Broadband network system configured to transport audio or video at the transport layer, and associated method
US7124195B2 (en) Broadband network system configured to transport audio or video at the transport layer, and associated method
KR100982637B1 (ko) 수신 장치, 수신 방법 및 컴퓨터 판독가능한 기록 매체
US20080065965A1 (en) Buffering packets of a media stream
US20050123042A1 (en) Moving picture streaming file, method and system for moving picture streaming service of mobile communication terminal
US20060167987A1 (en) Content delivery system, communicating apparatus, communicating method, and program
US20030074554A1 (en) Broadband interface unit and associated method
KR20010020498A (ko) 네트웍을 통한 적합한 비디오/오디오의 전송을 위한 시스템
Molteni et al. Using SCTP with partial reliability for MPEG-4 multimedia streaming
EP1618747A1 (en) Picture coding method
US20080189587A1 (en) Video transmitting apparatus, video receiving apparatus, and video transmission system
US8813157B2 (en) Method and device for determining the value of a delay to be applied between sending a first dataset and sending a second dataset
KR100897525B1 (ko) Svc 비디오의 rtp 패킷화를 위한 타임스탬프 생성장치 및 그 방법과 그를 이용한 rtp 패킷화 시스템
US20240163502A1 (en) Transmission apparatus, transmission method, encoding apparatus, encoding method, reception apparatus, and reception method
JP2007274443A (ja) 画像伝送方法、送信装置、受信装置及び画像伝送システム
US20040105030A1 (en) Information processing system, information processing apparatus, information processing method, program storage medium, and program
US20080104659A1 (en) Prioritized real-time data transmission
EP1566966A1 (en) Data transmission device
KR100602916B1 (ko) 화상전송방법 및 화상전송장치
US20080253465A1 (en) Storage of Advanced Video Coding (Avc) Parameter Sets In Avc File Format
Ahsan et al. Viewport-Dependent Delivery for Conversational Immersive Video
US20240007603A1 (en) Method, an apparatus and a computer program product for streaming of immersive video
JP2004312713A (ja) データ送信装置

Legal Events

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

Payment date: 20130830

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140901

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee