KR20090126176A - 정보 처리 장치 및 방법과, 프로그램 - Google Patents

정보 처리 장치 및 방법과, 프로그램 Download PDF

Info

Publication number
KR20090126176A
KR20090126176A KR20087029188A KR20087029188A KR20090126176A KR 20090126176 A KR20090126176 A KR 20090126176A KR 20087029188 A KR20087029188 A KR 20087029188A KR 20087029188 A KR20087029188 A KR 20087029188A KR 20090126176 A KR20090126176 A KR 20090126176A
Authority
KR
South Korea
Prior art keywords
packet
unit
data
information
processing
Prior art date
Application number
KR20087029188A
Other languages
English (en)
Other versions
KR101426097B1 (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 KR20090126176A publication Critical patent/KR20090126176A/ko
Application granted granted Critical
Publication of KR101426097B1 publication Critical patent/KR101426097B1/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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • 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 MPEG packets from an IP network
    • H04N21/4385Multiplex stream processing, e.g. multiplex stream decrypting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • 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
    • H04N21/2389Multiplex stream processing, e.g. multiplex stream encrypting

Abstract

본 발명은, 디패킷타이즈 처리에서의 불필요한 대기 시간을 저감시켜, 처리를 용이하게 고속으로 행할 수 있도록 할 수 있는 정보 처리 장치 및 방법, 및 프로그램에 관한 것이다. 공통 헤더 작성부(203)는, 데이터 취득부(201)가 취득한 프리싱트 헤더(171)에 기초하여, 그 프리싱트로부터 작성되는 각 패킷에 부가되는 공통의 헤더인 공통 헤더를 작성한다. 프래그먼트 처리부(208)는, 프리싱트의 데이터 사이즈가 패킷 사이즈보다 큰 경우, 데이터 취득부(201)가 취득하는 부호화 데이터를, 패킷 사이즈마다 분할한다. 패킷화부(209)는, 각 부로부터 공급되는 헤더 정보를 이용하여 프래그먼트 처리부(208)로부터 공급되는 페이로드를 패킷화하고, 생성된 각 패킷의 공통 헤더에 포함되는 SFF나 M 등의 플래그 정보의 값을 적절히 설정한다. 본 발명은, 예를 들면, 부호화 장치에 적용할 수 있다.
Figure P1020087029188
데이터 취득부, RTP 헤더 작성부, 공통 헤더 작성부, 확장 헤더 작성부, 픽처 정보 작성부, 플래그 확인부, 사이즈 확인부, 프래그먼트 처리부, 패킷화부, 출력부

Description

정보 처리 장치 및 방법과, 프로그램{INFORMATION PROCESSING APPARATUS AND METHOD, AND PROGRAM}
본 발명은, 정보 처리 장치 및 방법과, 프로그램에 관한 것으로, 특히, 패킷 송수신시에서의 지연을 저감시킬 수 있도록 한 정보 처리 장치 및 방법과, 프로그램에 관한 것이다.
종래, 인터넷 등을 통하여 영상이나 음성의 스트리밍이 행해지고 있다. 이 때 패킷 로스나 도착 지연 등이 생기면, 데이터 품질 열화가 일어날 우려가 있다. 예를 들면, MPEG(Moving Picture Experts Group)나 H.26x계의 압축 방식과 같이, 프레임간 차분을 취하는 인코드 방식의 경우, 패킷 로스에 의해, 임의의 프레임의 데이터가 누락되면, 그 이후의 프레임의 화질에 영향을 미치는, 소위 에러의 전파가 생긴다.
또한, MPEG 방식에서는 움직임 예측에 따라 압축률을 높이고 있지만, 움직임 예측을 행하면 알고리즘이 복잡해져, 그 처리 시간은 프레임 사이즈의 제곱에 비례하여 커지기 때문에, 원리적으로 수 프레임의 부호화 지연이 발생한다. 쌍방향실시간 통신을 행할 때에는, 허용 지연 시간 250ms 가까이의 지연 시간으로 되어, 무시할 수 없는 크기이다.
이들에 대하여, JPEG(Joint Photographic Experts Group) 2000으로 대표되는, 인트라 프레임 코덱은 프레임간의 차분 정보를 이용하지 않기 때문에, 전술한 바와 같은 지연은 발생하지 않는다. 그러나, 프레임 단위에서의 압축으로 되기 때문에, 인코드 개시까지, 최저라도 1프레임은 대기할 필요가 있다. 현재의 일반적인 시스템에서는 1초간에 30프레임인 경우가 많기 때문에, 인코드 개시까지 16ms 정도의 대기 시간이 필요해진다.
따라서 이 지연을 더욱 저감하는 것이 요청되고 있고, 인코드나 디코드 이외의 부분에서의 지연의 저감도 필요해지고 있다.
처리 지연의 하나로서, RTP(Real-time Transport Protocol) 패킷화와 디패킷화를 행하는 패킷타이즈/디패킷타이즈 처리가 있다. 종래, 디패킷타이즈를 행할 때에는, 어느 정도의 패킷이 모이는 것을 기다리고 나서 처리를 개시하기 때문에, 지연이 발생하고 있었다. 패킷을 모으는 이유로서는, 인터넷에서는 분할하지 않고 송신할 수 있는 패킷의 최대 사이즈에 제한이 존재하여, 임의의 의미를 가진 일련의 데이터가, 복수의 패킷으로 분할되어 송신된다. 디패킷타이저에서도 분할된 패킷이 갖추어질 때까지 버퍼링하고 나서 디패킷타이즈를 시작하기 때문에, 지연이 증대하고, 또한 버퍼를 위한 리소스도 필요해진다.
즉, 부호화 데이터의 수신측의 장치에서는, 수신한 패킷이, 디패킷타이즈 처리부에 의해 디패킷타이즈되고, 추출된 부호화 데이터가 디코더에 의해 복호되는데, 이때, 디패킷타이즈 처리와 디코드 처리의 양방에서 버퍼가 필요하게 되어, 버퍼의 메모리 용량이 증대할 우려가 있었다.
이에 대하여, 버퍼의 메모리 용량을 저감시키기 위하여 각종의 방법이 생각되어 왔다(예를 들면, 특허 문헌 1 참조).
특허 문헌 1에서는, 중계 장치가 수신한 패킷을 오류 정정을 위하여 버퍼 메모리에 축적함과 동시에, 오류 정정 연산 블록 전체의 패킷이 도착하는 것을 대기하지 않고, 하류측을 향하여 축차 송신하고, 패킷의 소실이 검출된 경우, 오류 정정 연산을 행하여 회복시키고, 그 회복시킨 패킷을 먼저 보낸 패킷에 계속되는 형식으로 송신한다.
특허 문헌 1: 일본 특허 공개 2005-12753호
그러나, 전술한 특허 문헌 1에 기재된 방법의 경우, 오류 정정을 행하기 위하여, 중계 장치에서도 버퍼 메모리가 필요하게 된다. 즉, 전술한 바와 같이 버퍼의 메모리 용량이 증대할 우려가 있었다. 또한, 특허 문헌 1에 기재된 방법의 경우, 중계 장치가 패킷의 오류 정정을 행하면 패킷의 순서가 변경되게 된다. 따라서, 수신 장치에서 디패킷타이즈시에 재배열을 행할 필요가 있어, 디패킷타이즈 처리가 복잡해지고 지연 시간이 증대할 뿐만 아니라, 디패킷타이즈 처리용의 버퍼도 필요하게 된다. 수신 장치에서 패킷화되어 전송된 부호화 데이터의 디코드를 행하는 경우, 그 디패킷타이즈용의 버퍼와는 별도로 디코드용의 버퍼도 필요하게 되므로, 메모리 용량뿐만 아니라 지연 시간도 더욱 증대될 우려가 있었다.
본 발명은, 이러한 종래의 실정을 감안하여 제안된 것으로, 데이터를 패킷화하여 송수신할 때에 발생하는 지연 시간을 저감시킬 수 있도록 하는 것이다.
[과제를 해결하기 위한 수단]
본 발명의 일 측면은, 화상 데이터가 소정의 단위마다 부호화된 부호화 데이터에 헤더 정보를 부가하여 패킷화하는 패킷타이즈 처리를 행하는 정보 처리 장치로서, 상기 헤더 정보를 작성하는 작성 수단과, 상기 부호화 데이터를, 미리 정해진 소정의 데이터량마다, 복수의 부분 데이터로 분할하는 분할 수단과, 상기 분할 수단에 의해 상기 부호화 데이터가 분할되어 얻어진 복수의 상기 부분 데이터의 각각에, 상기 작성 수단에 의해 작성된 상기 헤더 정보를 부가하여 패킷화하는 패킷화 수단과, 상기 패킷화 수단에 의해 생성된 패킷 중, 복수의 상기 부분 데이터의 선두의 부분 데이터를 페이로드로 하는 선두 패킷에 대하여, 헤더 정보에 포함되는, 상기 선두 패킷인 것을 나타내는 선두 플래그를 세우고, 복수의 상기 부분 데이터의 종단의 부분 데이터를 페이로드로 하는 최종 패킷에 대하여, 헤더 정보에 포함되는, 상기 최종 패킷인 것을 나타내는 최종 플래그를 세우는 플래그 설정 수단을 구비하는 정보 처리 장치이다.
상기 부호화 데이터는, 화상 데이터의 최저역 성분의 1라인분을 생성하기 위하여 필요한, 다른 서브밴드도 포함시킨 라인의 집합인 프리싱트(precinct) 단위로 웨이브릿(wavelet) 변환되어 엔트로피 부호화된 부호화 데이터일 수 있다.
상기 부호화 데이터는, 복호순으로 공급될 수 있다.
상기 화상 데이터를 소정의 단위마다 부호화하고, 상기 부호화 데이터를 생성하는 부호화 수단을 더 구비하고, 상기 분할 수단은, 상기 부호화 수단에 의해 생성된 상기 부호화 데이터를 분할할 수 있다.
상기 부호화 수단은, 상기 헤더 정보와 동일한 포맷의 부가 정보를 공급하고, 상기 작성 수단은, 상기 부호화 수단으로부터 공급되는 상기 부가 정보를 이용하여, 상기 헤더 정보를 작성할 수 있다.
상기 부호화 수단은, 상기 부호화의 성공 또는 실패를 나타내는 플래그 정보를 공급하고, 상기 패킷화 수단은, 상기 플래그 정보에 기초하여 상기 부호화가 실패하였다고 판정한 경우, 상기 작성 수단에 의해 작성된 상기 헤더 정보만을 이용하여 패킷화할 수 있다.
본 발명의 일 측면은 또한, 화상 데이터가 소정의 단위마다 부호화된 부호화 데이터에 헤더 정보를 부가하여 패킷화하는 패킷타이즈 처리를 행하는 정보 처리 장치의 정보 처리 방법으로서, 상기 헤더 정보를 작성하고, 상기 부호화 데이터를, 미리 정해진 소정의 데이터량마다, 복수의 부분 데이터로 분할하고, 상기 부호화 데이터가 분할되어 얻어진 복수의 상기 부분 데이터의 각각에, 상기 헤더 정보를 부가하여 패킷화하고, 생성된 패킷 중, 복수의 상기 부분 데이터의 선두의 부분 데이터를 페이로드로 하는 선두 패킷에 대하여, 헤더 정보에 포함되는, 상기 선두 패킷인 것을 나타내는 선두 플래그를 세우고, 복수의 상기 부분 데이터의 종단의 부분 데이터를 페이로드로 하는 최종 패킷에 대하여, 헤더 정보에 포함되는, 상기 최종 패킷인 것을 나타내는 최종 플래그를 세우는 스텝을 포함하는 정보 처리 방법이다.
본 발명의 일 측면은 또한, 화상 데이터가 소정의 단위마다 부호화된 부호화 데이터에 헤더 정보를 부가하여 패킷화하는 패킷타이즈 처리를 행하는 컴퓨터에 실행시키는 프로그램에서, 상기 헤더 정보를 작성하고, 상기 부호화 데이터를, 미리 정해진 소정의 데이터량마다, 복수의 부분 데이터로 분할하고, 상기 부호화 데이터가 분할되어 얻어진 복수의 상기 부분 데이터의 각각에, 상기 헤더 정보를 부가하여 패킷화하고, 생성된 패킷 중, 복수의 상기 부분 데이터의 선두의 부분 데이터를 페이로드로 하는 선두 패킷에 대하여, 헤더 정보에 포함되는, 상기 선두 패킷인 것을 나타내는 선두 플래그를 세우고, 복수의 상기 부분 데이터의 종단의 부분 데이터를 페이로드로 하는 최종 패킷에 대하여, 헤더 정보에 포함되는, 상기 최종 패킷인 것을 나타내는 최종 플래그를 세우는 스텝을 포함하는 정보 처리를 컴퓨터에 실행시키는 프로그램이다.
본 발명의 다른 측면은, 패킷으로부터 페이로드 데이터를 추출하는 디패킷타이즈 처리를 행하는 정보 처리 장치로서, 외부로부터 공급되는 상기 패킷을 취득하는 취득 수단과, 상기 취득 수단에 의해 취득된 상기 패킷의 헤더 정보에 기초하여, 상기 취득 수단에 의한 취득에서 패킷의 손실이 발생하였는지의 여부를 판정하는 손실 판정 수단과, 상기 손실 판정 수단에 의해 상기 패킷의 손실이 발생하고 있지 않다고 판정된 경우, 상기 취득 수단에 의해 취득된 상기 패킷으로부터 페이로드 데이터를 추출하여 후단의 처리부에 공급하고, 상기 손실 판정 수단에 의해 상기 패킷의 손실이 발생하였다고 판정된 경우, 상기 취득 수단에 의해 취득된 상기 패킷을 파기하는 공급 수단을 구비하는 정보 처리 장치이다.
상기 손실 판정 수단은, 상기 헤더 정보에 포함되는, 패킷의 순서를 나타내는 정보인 시퀀스 번호가 전회 취득한 패킷의 시퀀스 번호와 연속하고 있지 않은 경우, 상기 패킷의 손실이 발생하였다고 판정할 수 있다.
상기 손실 판정 수단에 의해 상기 패킷의 손실이 발생하였다고 판정된 경우, 상기 후단의 처리부에 통지하는 통지 수단을 더 구비할 수 있다.
상기 취득 수단에 의해 취득된 패킷이, 상기 시퀀스 번호가 연속하는 복수의 패킷에 의해 구성되는 그룹의 선두의 패킷인지의 여부를 판정하는 선두 판정 수단을 더 구비하고, 상기 공급 수단은, 상기 손실 판정 수단에 의해 상기 패킷의 손실이 발생하고 있지 않다고 판정되고, 또한, 상기 선두 판정 수단에 의해 상기 그룹의 선두의 패킷이라고 판정된 경우, 또한 상기 헤더 정보도 후단의 처리부에 공급할 수 있다.
상기 공급 수단은, 상기 손실 판정 수단에 의해 상기 패킷의 손실이 발생하였다고 판정된 경우, 상기 선두 판정 수단에 의해, 상기 취득 수단에 의해 새로운 그룹의 선두의 패킷이 취득되었다고 판정될 때까지 상기 패킷을 파기할 수 있다.
상기 페이로드 데이터는, 최저역 성분의 1라인분을 생성하기 위하여 필요한, 다른 서브밴드도 포함시킨 라인의 집합인 프리싱트 단위로 웨이브릿 변환되어 엔트로피 부호화된 부호화 데이터이도록 할 수 있다.
상기 부호화 데이터는, 복호순으로 공급되도록 할 수 있다.
상기 후단의 처리부에서, 상기 공급 수단에 의해 공급되는 상기 페이로드 데이터인 상기 부호화 데이터를 복호하는 복호 처리를 행하는 복호 처리 실행 수단을 더 구비할 수 있다.
상기 복호 처리 실행 수단은, 상기 공급 수단에 의해 공급되는 상기 부호화 데이터를 일시적으로 유지하는 유지 수단과, 상기 유지 수단에 의해 유지된 상기 부호화 데이터를, 상기 프리싱트 단위로 복호하는 복호 수단과, 상기 복호 수단에 의해 복호되어 얻어진 계수 데이터에 대하여 웨이브릿 역변환을 행하는 웨이브릿 역변환 수단을 구비할 수 있다.
상기 취득 수단에 의해 취득된 상기 패킷의 헤더 정보에 기초하여, 상기 엔트로피 부호화가 성공하였는지의 여부를 판정하는 부호화 성공 여부 판정 수단을 더 구비하고, 상기 공급 수단은, 상기 부호화 성공 여부 판정 수단에 의해, 상기 부호화가 실패하였다고 판정된 경우, 상기 헤더 정보만 공급할 수 있다.
본 발명의 다른 측면은 또한, 패킷으로부터 페이로드 데이터를 추출하는 디패킷타이즈 처리를 행하는 정보 처리 장치의 정보 처리 방법으로서, 외부로부터 공급되는 상기 패킷을 취득하고, 취득된 상기 패킷의 헤더 정보에 기초하여, 패킷의 손실이 발생하였는지의 여부를 판정하고, 상기 패킷의 손실이 발생하고 있지 않다고 판정된 경우, 취득된 상기 패킷으로부터 페이로드 데이터를 추출하여 후단의 처리부에 공급하고, 상기 패킷의 손실이 발생하였다고 판정된 경우, 취득된 상기 패킷을 파기하는 스텝을 포함하는 정보 처리 방법이다.
본 발명의 다른 측면은 또한, 패킷으로부터 페이로드 데이터를 추출하는 디패킷타이즈 처리를 행하는 컴퓨터에 실행시키는 프로그램에서, 외부로부터 공급되는 상기 패킷을 취득하고, 취득된 상기 패킷의 헤더 정보에 기초하여, 패킷의 손실이 발생하였는지의 여부를 판정하고, 상기 패킷의 손실이 발생하고 있지 않다고 판정된 경우, 취득된 상기 패킷으로부터 페이로드 데이터를 추출하여 후단의 처리부에 공급하고, 상기 패킷의 손실이 발생하였다고 판정된 경우, 취득된 상기 패킷을 파기하는 스텝을 포함하는 정보 처리를 컴퓨터에 실행시키는 프로그램이다.
본 발명의 일 측면에서는, 헤더 정보가 작성되고, 부호화 데이터가, 미리 정해진 소정의 데이터량마다, 복수의 부분 데이터로 분할되고, 부호화 데이터가 분할되어 얻어진 복수의 부분 데이터의 각각에, 헤더 정보가 부가되어 패키지화되고, 생성된 패킷 중, 복수의 부분 데이터의 선두의 부분 데이터를 페이로드로 하는 선두 패킷에 대하여, 헤더 정보에 포함되는, 선두 패킷인 것을 나타내는 선두 플래그가 세워지고, 복수의 부분 데이터의 종단의 부분 데이터를 페이로드로 하는 최종 패킷에 대하여, 헤더 정보에 포함되는, 최종 패킷인 것을 나타내는 선두 플래그가 세워진다.
본 발명의 다른 측면에서는, 외부로부터 공급되는 패킷이 취득되고, 패킷의 헤더 정보에 기초하여, 취득시에 패킷의 손실이 발생하였는지의 여부가 판정되고, 패킷의 손실이 발생하고 있지 않다고 판정된 경우, 취득된 패킷으로부터 페이로드 데이터가 추출되어 후단의 처리부에 공급되고, 패킷의 손실이 발생하였다고 판정된 경우, 취득된 패킷이 파기된다.
[발명의 효과]
본 발명에 따르면, 패킷을 송수신할 수 있다. 특히, 데이터를 패킷화하여 송수신할 때에 발생하는 지연 시간을 저감시킬 수 있다.
도 1은 본 발명을 적용한 전송 시스템의 구성예를 도시하는 블록도.
도 2는 도 1의 부호화부의 구성예를 도시하는 블록도.
도 3은 웨이브릿 변환에 대하여 개략적으로 설명하기 위한 개략선도.
도 4는 웨이브릿 변환에 대하여 개략적으로 설명하기 위한 개략선도.
도 5는 5×3 필터의 리프팅에 의한 필터링을 분해 레벨=2까지 실행한 예를 나타내는 개략선도.
도 6은 본 발명에 의한 웨이브릿 변환 및 웨이브릿 역변환의 흐름을 개략적으로 나타내는 개략선도.
도 7은 프리싱트 헤더의 구성예를 도시하는 도면.
도 8은 픽쳐 헤더의 구성예를 도시하는 도면.
도 9는 부호화부와 패킷타이즈 처리부 사이에서 수수되는 정보의 예를 나타내는 도면.
도 10은 도 1의 패킷타이즈 처리부의 상세한 구성예를 도시하는 블록도.
도 11은 프리싱트의 예를 설명하기 위한 모식도.
도 12는 패킷의 작성예를 설명하기 위한 모식도.
도 13은 RTP 헤더의 구성예를 설명하기 위한 모식도.
도 14는 RTP 페이로드 헤더의 구성예를 설명하기 위한 모식도.
도 15는 공통 헤더의 구성예를 도시하는 도면.
도 16은 양자화 파라미터 정보의 구성예를 도시하는 도면.
도 17은 사이즈 정보의 구성예를 도시하는 도면.
도 18은 포맷 정보의 구성예를 도시하는 도면.
도 19는 픽쳐 정보의 구성예를 도시하는 도면.
도 20은 컬러 정보의 구성예를 도시하는 도면.
도 21은 도 1의 디패킷타이즈 처리부의 상세한 구성예를 도시하는 블록도.
도 22는 제어 모드의 천이의 모습의 예를 도시하는 도면.
도 23은 디패킷타이즈 처리부와 복호부 사이에서 수수되는 정보의 예를 도시하는 도면.
도 24는 도 1의 복호부의 상세한 구성예를 도시하는 블록도.
도 25는 부호화 처리의 흐름의 예를 설명하기 위한 플로우차트.
도 26은 패킷타이즈 처리의 흐름의 예를 설명하기 위한 플로우차트.
도 27은 스타트 모드 처리의 흐름의 예를 설명하기 위한 플로우차트.
도 28은 모드 공통 처리의 흐름의 예를 설명하기 위한 플로우차트.
도 29는 스탠바이 모드 처리의 흐름의 예를 설명하기 위한 플로우차트.
도 30은 프로세싱 모드 처리의 흐름의 예를 설명하기 위한 플로우차트.
도 31은 로스 모드 처리의 흐름의 예를 설명하기 위한 플로우차트.
도 32는 복호 제어 처리의 흐름의 예를 설명하기 위한 플로우차트.
도 33은 복호 처리의 흐름의 예를 설명하기 위한 플로우차트.
도 34는 에러 통지 대응 처리의 흐름의 예를 설명하기 위한 플로우차트.
도 35는 에러 통지 대응의 모습의 예를 설명하는 모식도.
도 36은 RTP 페이로드 헤더의 다른 구성예를 도시하는 도면.
도 37은 세그먼트 정보의 구성예를 도시하는 도면.
도 38은 패킷타이즈 처리의 흐름의, 다른 예를 설명하기 위한 플로우차트.
도 39는 송신 장치 및 수신 장치의 각 요소가 행하는 병렬 동작의 모습의 예를 개략적으로 나타내는 개략선도.
도 40은 도 1의 부호화부의 다른 구성예를 도시하는 블록도.
도 41은 웨이브릿 계수의 재배열 처리를 부호화부측에서 행하는 경우의 처리의 흐름을 설명하기 위한 개략선도.
도 42는 웨이브릿 계수의 재배열 처리를 복호부측에서 행하는 경우의 처리의 흐름을 설명하기 위한 개략선도.
도 43은 도 1의 부호화부의, 또 다른 구성예를 도시하는 블록도.
도 44는 도 43의 부호화부에 대응하는 복호부의 구성예를 도시하는 블록도.
도 45는 본 발명을 적용한 정보 처리 시스템의 구성예를 도시하는 도면.
[부호의 설명]
100: 전송 시스템
102: 송신 장치
103: 수신 장치
110: 회선
132: 디패킷타이즈 처리부
133: 복호부
202: RTP 헤더 작성부
203: 공통 헤더 작성부
204: 확장 헤더 작성부
205: 픽쳐 정보 작성부
206: 플래그 확인부
207: 사이즈 확인부
208: 프래그먼트 처리부
209: 패킷화부
252: 헤더 정보 해석부
253: 제어 모드 천이부
254: 제어부
255: 헤더 공급부
256: 데이터 공급부
257: 에러 통지부
258: 제어 신호 공급부
351: 제어 정보 취득부
352: 복호 제어부
353: 복호 처리 실행부
354: 헤더 취득부
355: 데이터 취득부
356: 에러 통지 취득부
357: 파기 처리부
이하, 본 발명의 실시 형태에 대하여 설명한다.
도 1은, 본 발명을 적용한 전송 시스템의 구성예를 도시하는 블록도이다.
도 1에서, 전송 시스템(100)은, 촬상 장치(101)가 생성한 화상 데이터를 송신 장치(102)가 압축 부호화하고, 패키지화하여 송신하고, 회선(110)을 통하여 전송되는 그 패킷을, 수신 장치(103)가 수신하여 디패킷타이즈하여 복호하고, 표시 장치(104)가 얻어진 화상 데이터의 화상을 표시하는 데이터 전송 시스템이다.
촬상 장치(101)는, CCD(Charge Coupled Device)나 CMOS(Complementary Metal Oxide Semiconductor) 등을 이용한 촬상 소자를 갖고, 피사체를 촬상하고, 그 촬상 화상을 디지털 데이터의 화상 데이터로 변환하고, 얻어진 화상 데이터를 송신 장치(102)에 공급한다.
송신 장치(102)는, 부호화부(121), 패킷타이즈 처리부(122), 및 송신부(123)를 갖는다. 송신 장치(102)는, 부호화부(121)에서, 촬상 장치(101)로부터 공급되는 화상 데이터를 소정의 방법으로 부호화하고, 그 부호화에 의해 얻어진 부호화 데이터를 패킷타이즈 처리부(122)에서 패킷화하고, 생성된 패킷을 송신부(123)로부터 소정의 통신 방법으로 회선(110)에 송출한다.
회선(110)은, 송신 장치(102)와 수신 장치(103)를 접속하고, 송신 장치(102)로부터 송출되는 패킷을 수신 장치(103)에 전송하는 임의의 전송 매체이다.
수신 장치(103)는, 수신부(131), 디패킷타이즈 처리부(132), 및 복호부(133)를 갖는다. 수신 장치(103)는, 수신부(131)에서, 회선(110)을 통하여 전송되어 온 패킷을 수신하고, 디패킷타이즈 처리부(132)에서, 그 수신한 패킷으로부터 부호화 데이터를 추출하고, 복호부(133)에서, 그 추출한 부호화 데이터를 송신 장치(102)의 부호화부(121)에 대응하는 복호 방법으로 복호하고, 얻어진 베이스밴드의 화상 데이터를 표시 장치(104)에 출력한다.
표시 장치(104)는, 디스플레이를 갖고, 수신 장치(103)로부터 공급된 화상 데이터의 화상을 그 디스플레이에 표시한다.
이 도 1의 전송 시스템(100)은, 패킷타이즈 처리부(122)에 의한 패킷타이즈 처리에 의한 지연 시간, 및, 디패킷타이즈 처리부(132)에 의한 디패킷타이즈 처리에 의한 지연 시간을 저감하고, 촬상 장치(101)에서 촬상되고 나서, 그 화상이 표시 장치(104)에 표시될 때까지의 지연 시간을 저감시킬 수 있는 시스템이다.
도 1의 전송 시스템(100)에서, 송신 장치(102)가 송신하는 화상 데이터를 제공하는 장치로서 촬상 장치(101)가 도시되어 있지만, 화상 데이터를 제공할 수 있는 장치이면 어떤 장치이어도 된다. 또한, 수신 장치(103)가 수신한 화상 데이터를 이용하는 장치로서 표시 장치(104)가 도시되어 있지만, 화상 데이터를 이용할 수 있는 장치이면 어떤 장치이어도 된다.
또한, 여기서는 전송되는 데이터로서 화상 데이터에 대해서만 설명하지만, 예를 들면, 음성 데이터 등, 그 밖의 데이터가 화상 데이터와 함께 전송되어도 된다.
송신 장치(102)가 행하는 패킷의 송신 방법은, 수신 장치(103)에 대해서만 송신하는 유니캐스트이어도 되고, 수신 장치(103)를 포함하는 복수의 장치에 대하 여 송신하는 멀티캐스트이어도 되고, 불특정 다수의 장치에 대하여 송신하는 브로드 캐스트이어도 된다.
회선(110)은, 패킷을 전송 가능한 것이면 어떤 형태의 것이어도 되고, 유선이어도 되고, 무선이어도 되고, 그 양쪽을 포함하는 것이어도 된다. 또한, 도 1에서 회선(110)은, 1개의 화살표에 의해 나타내어져 있지만, 전용 또는 범용의 전송 케이블이어도 되고, 예를 들면 LAN(Local Area Network)이나 인터넷 등과 같은, 1개 또는 복수의 통신망을 포함하도록 하여도 되고, 어떠한 통신 중계 장치를 포함하도록 하여도 된다. 또한, 회선(110)의 회선수(채널수)는 몇 개이어도 된다.
다음으로, 도 1에 도시되는 송신 장치(102) 및 수신 장치(103)의 각 부의 상세에 대하여 설명한다.
도 2는, 도 1의 송신 장치(102)의 부호화부(121)의 내부의 구성예를 도시하는 블록도이다. 도 2에서, 부호화부(121)는, 웨이브릿 변환부(150), 도중 계산용 버퍼부(151), 계수 재배열용 버퍼부(152), 계수 재배열부(153), 레이트 제어부(154), 및 엔트로피 부호화부(155)를 갖는다.
부호화부(121)에 입력된 화상 데이터는, 도중 계산용 버퍼부(151)에 일시적으로 저장된다. 웨이브릿 변환부(150)는, 도중 계산용 버퍼부(151)에 저장된 화상 데이터에 대하여 웨이브릿 변환을 실시한다. 즉, 웨이브릿 변환부(150)는, 도중 계산용 버퍼부(151)로부터 화상 데이터를 읽어내서 분석 필터에 의해 필터 처리를 실시하여 저역 성분 및 고역 성분의 계수의 데이터를 생성하고, 생성된 계수 데이터를 도중 계산용 버퍼부(151)에 저장한다. 웨이브릿 변환부(150)는, 수평 분석 필터와 수직 분석 필터를 갖고, 화상 데이터군에 대하여, 화면 수평 방향과 화면 수직 방향의 양쪽에 대하여 분석 필터 처리를 행한다. 웨이브릿 변환부(150)는, 도중 계산용 버퍼부(151)에 저장된 저역 성분의 계수 데이터를 다시 읽어내고, 읽어낸 계수 데이터에 대하여 분석 필터에 의한 필터 처리를 실시하여, 고역 성분 및 저역 성분의 계수의 데이터를 더 생성한다. 생성된 계수 데이터는, 도중 계산용 버퍼부(151)에 저장된다.
웨이브릿 변환부(150)는, 이 처리를 반복하여 분해 레벨이 소정 레벨에 도달하면, 도중 계산용 버퍼부(151)로부터 계수 데이터를 읽어내고, 읽어내어진 계수 데이터를 계수 재배열용 버퍼부(152)에 기입한다.
계수 재배열부(153)는, 계수 재배열용 버퍼부(152)에 기입된 계수 데이터를 소정의 순서로 읽어내고, 엔트로피 부호화부(155)에 공급한다. 엔트로피 부호화부(155)는, 공급된 계수 데이터를, 예를 들면 하프만 부호화나 산술 부호화와 같은 소정의 엔트로피 부호화 방식으로 부호화한다.
엔트로피 부호화부(155)는, 레이트 제어부(154)와 연동적으로 동작하여, 출력되는 압축 부호화 데이터의 비트 레이트가 대략 일정값으로 되도록 제어된다. 즉, 레이트 제어부(154)는, 엔트로피 부호화부(155)로부터의 부호화 데이터 정보에 기초하여, 엔트로피 부호화부(155)에 의해 압축 부호화된 데이터의 비트 레이트가 목표값에 도달한 시점 혹은 목표값에 도달하기 직전에서 엔트로피 부호화부(155)에 의한 부호화 처리를 종료하도록 제어하는 제어 신호를, 엔트로피 부호화부(155)에 대하여 공급한다. 엔트로피 부호화부(155)는, 레이트 제어부(154)로부터 공급되는 제어 신호에 따라서 부호화 처리가 종료된 시점에서, 부호화 데이터를 출력한다.
또한, 엔트로피 부호화부(155)가, 계수 재배열부(153)로부터 읽어내어진 계수 데이터에 대하여, 최초로 양자화를 행하고, 얻어진 양자화 계수에 대하여 하프만 부호화나 산술 부호화 등의 정보원 부호화 처리를 실시하도록 하면, 더욱 압축 효과의 향상을 기대할 수 있다. 이 양자화의 방법으로서는 어떤 것을 이용하여도 되며, 예를 들면, 일반적인 수단, 즉, 이하의 수학식 1에 나타내어지는 바와 같은, 계수 데이터 W를 양자화 스텝 사이즈 Δ로 제산하는 방법을 이용하면 된다.
양자화 계수=W/Δ
이 때의 양자화 스텝 사이즈 Δ는, 예를 들면 레이트 제어부(154)에서 산출된다.
엔트로피 부호화부(155)는, 부호화에 의해 얻어진 부호화 데이터를 패킷타이즈 처리부(122)에 공급한다.
다음으로, 도 2의 웨이브릿 변환부(150)에서 행해지는 처리에 대하여, 보다 상세하게 설명한다. 우선, 웨이브릿 변환에 대하여, 개략적으로 설명한다. 화상 데이터에 대한 웨이브릿 변환에서는, 도 3에 개략적으로 도시되는 바와 같이, 화상 데이터를 공간 주파수가 높은 대역과 낮은 대역으로 분할하는 처리를, 분할의 결과 얻어지는 공간 주파수가 낮은 대역의 데이터에 대하여 재귀적으로 반복한다. 이와 같이 하여, 공간 주파수가 낮은 대역의 데이터를 보다 작은 영역으로 몰아넣어 감으로써, 효율적인 압축 부호화를 가능하게 한다.
또한, 도 3은, 화상 데이터의 최저역 성분 영역에 대한 저역 성분의 영역 L 및 고역 성분의 영역 H에의 분할 처리를 3회 반복하고, 분할의 계층의 총 수를 나타내는 분할 레벨=3으로 한 경우의 예이다. 도 3에서, "L" 및 "H"는, 각각 저역 성분 및 고역 성분을 나타내고, "L" 및 "H"의 순서는, 앞측이 가로 방향으로 분할된 결과의 대역을 나타내고, 뒤측이 세로 방향으로 분할된 결과의 대역을 나타낸다. 또한, "L" 및 "H" 앞의 숫자는, 그 영역의 계층을 나타내고 있고, 저역 성분의 계층일수록 작은 값으로 나타내어져 있다.
또한, 도 3의 예로부터 알 수 있는 바와 같이, 화면의 오른쪽 아래의 영역으로부터 왼쪽 위의 영역에 걸쳐서 단계적으로 처리가 이루어지고, 저역 성분이 몰아넣어져 간다. 즉, 도 3의 예에서는, 화면의 오른쪽 아래의 영역이 가장 저역 성분이 적은(고역 성분이 가장 많이 포함된) 영역 3HH로 되는, 화면이 4분할된 왼쪽 위의 영역은 더 4분할되고, 이 4분할된 영역 중 왼쪽 위의 영역이 더 4분할된다. 가장 왼쪽 위 코너의 영역은, 가장 저역 성분을 많이 포함하는 영역 OLL로 된다.
저역 성분에 대하여 반복 변환 및 분할을 행하는 것은, 화상의 에너지가 저역 성분에 집중하고 있기 때문이다. 이것은, 도 4의 A에 일례가 나타내어지는 분할 레벨=1의 상태로부터, 도 4의 B에 일례가 나타내어지는 분할 레벨=3의 상태와 같이 분할 레벨을 진행시켜 감에 따라서, 도 4의 B에 도시되는 바와 같이 하여 서브밴드가 형성되어 가는 것으로부터도 이해된다. 예를 들면, 도 3에서의 웨이브릿 변환의 분할 레벨은 3이며, 이 결과, 10개의 서브밴드가 형성되어 있다.
웨이브릿 변환부(150)는, 통상적으로, 저역 필터와 고역 필터로 구성되는 필 터 뱅크를 이용하여, 전술한 바와 같은 처리를 행한다. 또한, 디지털 필터는, 통상적으로, 복수 탭 길이의 임펄스 응답 즉 필터 계수를 갖고 있기 때문에, 필터 처리를 행할 수 있는 만큼의 입력 화상 데이터 또는 계수 데이터를 미리 버퍼링 해 둘 필요가 있다. 또한, 웨이브릿 변환을 다단에 걸쳐 행하는 경우도 마찬가지로, 전단에서 생성한 웨이브릿 변환 계수를, 필터 처리를 행할 수 있는 수만큼 버퍼링해 둘 필요가 있다.
이 웨이브릿 변환의 구체적인 예로서, 5×3 필터를 이용한 방법에 대하여 설명한다. 이 5×3 필터를 이용한 방법은, JPEG2000 규격에서도 채용되고 있고, 적은 필터 탭수로 웨이브릿 변환을 행할 수 있는 점에서, 우수한 방법이다.
5×3 필터의 임펄스 응답(Z변환 표현)은, 다음 수학식 2 및 수학식 3에 나타내는 바와 같이, 저역 필터 H0(z)와 고역 필터 H1(z)로 구성된다. 수학식 2 및 수학식 3으로부터, 저역 필터 H0(z)는 5탭이고, 고역 필터 H1(z)는 3탭인 것을 알 수 있다.
Figure 112008082186333-PCT00001
Figure 112008082186333-PCT00002
이들 수학식 2 및 수학식 3에 따르면, 저역 성분 및 고역 성분의 계수를, 직 접적으로 산출할 수 있다. 여기에서, 리프팅(Lifting) 기술을 이용함으로써, 필터 처리의 계산을 줄일 수 있다.
다음으로, 이 웨이브릿 변환 방법에 대하여, 더욱 구체적으로 설명한다. 도 5는, 5×3 필터의 리프팅에 의한 필터 처리를, 분해 레벨=2까지 실행한 예를 나타내고 있다. 또한, 도 5에서, 도면의 좌측에 분석 필터로서 나타내어지는 부분은, 웨이브릿 변환부(150)의 필터이다. 또한, 도면의 우측에 합성 필터로서 나타내어지는 부분은, 후술하는 복호 장치에서의 웨이브릿 역변환부의 필터이다.
또한, 이하의 설명에서는, 예를 들면 표시 디바이스 등에서 화면의 왼쪽 위 코너의 화소를 선두로 하여, 화소가 화면의 좌단으로부터 우단을 향하여 주사되어 1라인이 구성되고, 라인마다 주사가 화면의 상단으로부터 하단을 향하여 행해져 1화면이 구성되는 것으로 한다.
도 5에서, 좌단열은, 원화상 데이터의 라인 상의 대응하는 위치에 있는 화소 데이터가 세로 방향으로 배열되어 나타내어져 있다. 즉, 웨이브릿 변환부(150)에서의 필터 처리는, 수직 필터를 이용하여 화면 상을 화소가 세로로 주사되어 행해진다. 좌단으로부터 1열째 내지 3열째가 분할 레벨=1의 필터 처리를 나타내고, 4열째 내지 6열째가 분할 레벨=2의 필터 처리를 나타낸다. 좌단으로부터 2열째는, 좌단의 원화상 데이터의 화소에 기초하는 고역 성분 출력, 좌단으로부터 3열째는, 원화상 데이터 및 고역 성분 출력에 기초하는 저역 성분 출력을 나타낸다. 분할 레벨=2의 필터 처리는, 좌단으로부터 4열째 내지 6열째에 나타내어지는 바와 같이, 분할 레벨=1의 필터 처리의 출력에 대하여 처리가 이루어진다.
분해 레벨=1의 필터 처리에서, 제1 단계의 필터 처리로서, 원화상 데이터의 화소에 기초하여 고역 성분의 계수 데이터가 산출되고, 제2 단계의 필터 처리로서, 제1 단계의 필터 처리에서 산출된 고역 성분의 계수 데이터와, 원화상 데이터의 화소에 기초하여 저역 성분의 계수 데이터가 산출된다. 분해 레벨=1의 일례의 필터 처리를, 도 5에서의 좌측(분석 필터측)의 제1 열째 내지 제3 열째에 나타낸다. 산출된 고역 성분의 계수 데이터는, 도 2의 계수 재배열용 버퍼부(152)에 저장된다. 또한, 산출된 저역 성분의 계수 데이터는, 도 2의 도중 계산용 버퍼부(151)에 저장된다.
도 5에서는, 계수 재배열용 버퍼부(152)는, 일점 쇄선으로 둘러싸여진 부분으로서 나타내고, 도중 계산용 버퍼부(151)는, 점선으로 둘러싸여진 부분으로서 나타낸다.
도중 계산용 버퍼부(151)에 유지된 분해 레벨=1의 필터 처리의 결과에 기초하여, 분해 레벨=2의 필터 처리가 행해진다. 분해 레벨=2의 필터 처리에서는, 분해 레벨=1의 필터 처리에서 저역 성분의 계수로서 산출된 계수 데이터를, 저역 성분 및 고역 성분을 포함한 계수 데이터로 간주하여, 분해 레벨=1과 마찬가지의 필터 처리를 행한다. 분해 레벨=2의 필터 처리에 의해 산출된, 고역 성분의 계수 데이터 및 저역 성분의 계수 데이터는, 계수 재배열용 버퍼부(152)에 저장된다.
웨이브릿 변환부(150)에서는, 전술한 바와 같은 필터 처리를, 화면의 수평 방향 및 수직 방향으로 각각 행한다. 예를 들면, 우선, 분해 레벨=1의 필터 처리를 수평 방향으로 행하고, 생성된 고역 성분 및 저역 성분의 계수 데이터를 도중 계산용 버퍼부(151)에 저장한다. 다음으로, 도중 계산용 버퍼부(151)에 저장된 계수 데이터에 대하여, 수직 방향으로 분해 레벨=1의 필터 처리를 행한다. 이 분해 레벨=1의 수평 및 수직 방향의 처리에 의해, 고역 성분을 고역 성분 및 저역 성분으로 더 분해한 계수 데이터의 각각에 의한 영역 HH 및 영역 HL과, 저역 성분을 고역 성분 및 저역 성분으로 더 분해한 계수 데이터의 각각에 의한 영역 LH 및 영역 LL의 4영역이 형성된다.
그리고, 분해 레벨=2에서는, 수평 방향 및 수직 방향의 각각에 대하여, 분해 레벨=1에서 생성된 저역 성분의 계수 데이터에 대하여 필터 처리가 행해진다. 즉, 분해 레벨=2에서는, 분해 레벨=1에서 분할되어 형성된 영역 LL이 더 4분할되고, 영역 LL 내에 영역 HH, 영역 HL, 영역 LH 및 영역 LL이 더 형성된다.
웨이브릿 변환부(150)는, 웨이브릿 변환에 의한 필터 처리를, 화면의 세로 방향에 대하여, 수 라인마다의 처리로 분할하여, 복수회로 나누어 단계적으로 행하도록 하고 있다. 도 5의 예에서는, 화면 상의 제1 라인부터의 처리로 되는 1회째의 처리는, 7라인에 대하여 필터 처리를 행하고, 8라인째부터의 처리로 되는 2회째 이후의 처리는, 4라인마다 필터 처리를 행하고 있다. 이 라인수는, 고역 성분과 저역 성분으로 2분해한 후에, 1라인분의 최저역 성분이 생성되기 위하여 필요한 라인수에 기초한다.
또한, 이하에서, 이 최저역 성분의 1라인분(최저역 성분의 서브밴드의 1라인분의 계수 데이터)을 생성하기 위하여 필요한, 다른 서브밴드도 포함시킨 라인의 집합을, 프리싱트(또는 라인 블록)라고 칭한다. 여기서 라인이란, 웨이브릿 변환 전의 화상 데이터에 대응하는 픽쳐 혹은 필드 내, 또는 각 서브밴드 내에서 형성되는 1행분의 화소 데이터 혹은 계수 데이터를 나타낸다. 즉, 프리싱트(라인 블록)란, 웨이브릿 변환 전의 원래의 화상 데이터에서의, 웨이브릿 변환 후의 최저역 성분의 서브밴드 1라인분의 계수 데이터를 생성하기 위하여 필요한 라인수분의 화소 데이터군, 또는, 그 화소 데이터군을 웨이브릿 변환하여 얻어지는 각 서브밴드의 계수 데이터군을 나타낸다.
도 5에 따르면, 분해 레벨=2의 필터 처리 결과에서 얻어지는 계수 C5는, 계수 C4 및 도중 계산용 버퍼부(151)에 저장된 계수 Ca에 기초하여 산출되고, 계수 C4는, 도중 계산용 버퍼부(151)에 저장된 계수 Ca, 계수 Cb 및 계수 Cc에 기초하여 산출된다. 또한, 계수 Cc는, 계수 재배열용 버퍼부(152)에 저장되는 계수 C2 및 계수 C3, 및, 제5 라인의 화소 데이터에 기초하여 산출된다. 또한, 계수 C3은, 제5 라인 내지 제7 라인의 화소 데이터에 기초하여 산출된다. 이와 같이, 분할 레벨=2에서의 저역 성분의 계수 C5를 얻기 위해서는, 제1 라인 내지 제7 라인의 화소 데이터가 필요하게 된다.
이에 대하여, 2회째 이후의 필터 처리에서는, 전회까지의 필터 처리에서 이미 산출되어 계수 재배열용 버퍼부(152)에 저장되어 있는 계수 데이터를 이용할 수 있으므로, 필요한 라인수가 적어도 된다.
즉, 도 5에 따르면, 분해 레벨=2의 필터 처리 결과로 얻어지는 저역 성분의 계수 중, 계수 C5의 다음 계수인 계수 C9는, 계수 C4 및 계수 C8, 및, 도중 계산용 버퍼부(151)에 저장된 계수 Cc에 기초하여 산출된다. 계수 C4는, 전술한 1회째의 필터 처리에 의해 이미 산출되어, 계수 재배열용 버퍼부(152)에 저장되어 있다. 마찬가지로, 계수 Cc는, 전술한 1회째의 필터 처리에 의해 이미 산출되고, 도중 계산용 버퍼부(151)에 저장되어 있다. 따라서, 이 2회째의 필터 처리에서는, 계수 C8을 산출하기 위한 필터 처리만이, 새롭게 이루어지게 된다.
이 새로운 필터 처리는, 제8 라인 내지 제11 라인이 더 이용되어 이루어진다.
이와 같이, 2회째 이후의 필터 처리는, 전회까지의 필터 처리에 의해 산출되어 도중 계산용 버퍼부(151) 및 계수 재배열용 버퍼부(152)에 저장된 데이터를 이용할 수 있으므로, 각각 4라인마다의 처리로 끝나게 된다.
또한, 화면 상의 라인수가 부호화의 라인수와 합치하지 않는 경우에는, 원화상 데이터의 라인을 소정의 방법으로 복제하여 라인수를 부호화의 라인수와 맞추어, 필터 처리를 행한다.
이와 같이, 최저역 성분 1라인분의 계수 데이터가 얻어지는 만큼의 필터 처리를 단계적으로, 화면 전체의 라인에 대하여 복수회로 나누어(프리싱트 단위로) 행함으로써, 부호화 데이터를 전송했을 때에 저지연으로 복호 화상을 얻는 것을 가능하게 하고 있다.
웨이브릿 변환을 행하기 위해서는, 웨이브릿 변환 그 자체를 실행하기 위하여 이용되는 제1 버퍼와, 소정의 분할 레벨까지 처리를 실행하는 동안에 생성되는 계수를 저장하기 위한 제2 버퍼가 필요하게 된다. 제1 버퍼는, 도중 계산용 버퍼부(151)에 대응하고, 도 5에서는 점선으로 둘러싸여 나타내어져 있다. 또한, 제2 버퍼는, 계수 재배열용 버퍼부(152)에 대응하고, 도 5에서는 일점 쇄선으로 둘러싸여 나타내어져 있다. 제2 버퍼에 저장된 계수는, 복호시에 이용되기 때문에, 후단의 엔트로피 부호화 처리의 대상으로 된다.
다음으로, 도 2의 계수 재배열부(153)의 처리에 대하여 설명한다. 전술한 바와 같이, 웨이브릿 변환부(150)에서 산출된 계수 데이터는, 계수 재배열용 버퍼부(152)에 저장되고, 계수 재배열부(153)에 의해 순서가 재배열되어 읽어내어져, 코딩 유닛 단위로 엔트로피 부호화부(155)에 송출된다.
이미 설명한 바와 같이, 웨이브릿 변환에서는, 고역 성분측으로부터 저역 성분측으로 계수가 생성되어 간다. 도 5의 예에서는, 1회째에서, 원화상의 화소 데이터에 의해, 분해 레벨=1의 필터 처리에서, 고역 성분의 계수 C1, 계수 C2 및 계수 C3이 순차적으로 생성된다. 그리고, 분해 레벨=1의 필터 처리에서 얻어진 저역 성분의 계수 데이터에 대하여 분해 레벨=2의 필터 처리를 행하고, 저역 성분의 계수 C4 및 계수 C5가 순차적으로 생성된다. 즉, 제1 회째에서는 계수 C1, 계수 C2, 계수 C3, 계수 C4, 계수 C5의 순으로 계수 데이터가 생성된다. 이 계수 데이터의 생성순은, 웨이브릿 변환의 원리상, 반드시 이 순서(고역으로부터 저역의 순)로 된다.
이에 대하여, 복호측에서는, 저지연으로 즉석에서 복호를 행하기 위해서는 저역 성분으로부터 화상의 생성 및 출력을 행할 필요가 있다. 그 때문에, 부호화 측에서 생성된 계수 데이터를 최저역 성분측으로부터 고역 성분측을 향하여 재배열하여 복호측에 공급하는 것이 바람직하다.
도 5의 예를 이용하여, 보다 구체적으로 설명한다. 도 5의 우측은, 역 웨이브릿 변환을 행하는 합성 필터측을 나타낸다. 복호측의, 출력 화상 데이터의 제1 라인째를 포함하는 1회째의 합성 처리(역 웨이브릿 변환 처리)는, 부호화측의 1회째의 필터 처리에서 생성된 최저역 성분의 계수 C4 및 계수 C5와, 계수 C1을 이용하여 행해진다.
즉, 1회째의 합성 처리에서는, 계수 C5, 계수 C4, 계수 C1의 순으로 부호화측으로부터 복호측에 계수 데이터를 공급하고, 복호측에서는, 분해 레벨=2에 대응하는 합성 처리인 합성 레벨=2의 처리에서, 계수 C5 및 계수 C4에 대하여 합성 처리를 행하여 계수 Cf를 생성하여, 버퍼에 저장한다. 그리고, 분해 레벨=1에 대응하는 합성 처리인 합성 레벨=1의 처리에서, 이 계수 Cf와 계수 C1에 대하여 합성 처리를 행하여, 제1 라인을 출력한다.
이와 같이, 제1 회째의 합성 처리에서는, 부호화측에서 계수 C1, 계수 C2, 계수 C3, 계수 C4, 계수 C5의 순으로 생성되어 계수 재배열용 버퍼부(152)에 저장된 계수 데이터가, 계수 C5, 계수 C4, 계수 C1, …의 순으로 재배열되어 복호측에 공급된다.
또한, 도 5의 우측에 나타내는 합성 필터측에서는, 부호화측으로부터 공급되는 계수에 대하여, 괄호 안에 부호화측에서의 계수의 번호를 적고, 괄호 밖에 합성 필터의 라인순을 적는다. 예를 들면 계수 C1(5)는, 도 5의 좌측의 분석 필터측에서는 계수 C5이고, 합성 필터측에서는 제1 라인째인 것을 나타낸다.
부호화측의 2회째 이후의 필터 처리에서 생성된 계수 데이터에 의한 복호측의 합성 처리는, 전회의 합성 처리시에 합성 혹은 부호화측으로부터 공급된 계수 데이터를 이용하여 행할 수 있다. 도 5의 예에서는, 부호화측의 2회째의 필터 처리에서 생성된 저역 성분의 계수 C8 및 계수 C9를 이용하여 행하는, 복호측의 2회째의 합성 처리는, 부호화측의 1회째의 필터 처리에서 생성된 계수 C2 및 계수 C3이 더 필요하게 되고, 제2 라인 내지 제5 라인이 복호된다.
즉, 2회째의 합성 처리에서는, 계수 C9, 계수 C8, 계수 C2, 계수 C3의 순으로 부호화측으로부터 복호측에 계수 데이터를 공급한다. 복호측에서는, 합성 레벨=2의 처리에서, 계수 C8 및 계수 C9와, 1회째의 합성 처리시에 부호화측으로부터 공급된 계수 C4를 이용하여 계수 Cg를 생성하여, 버퍼에 저장한다. 이 계수 Cg와, 전술의 계수 C4와, 1회째의 합성 처리에 의해 생성되어 버퍼에 저장된 계수 Cf를 이용하여 계수 Ch를 생성하여, 버퍼에 저장한다.
그리고, 합성 레벨=1의 처리에서, 합성 레벨=2의 처리에서 생성되어 버퍼에 저장된 계수 Cg 및 계수 Ch와, 부호화측으로부터 공급된 계수 C2(합성 필터에서는 계수 C6(2)로 나타내어져 있음) 및 계수 C3(합성 필터에서는 계수 C7(3)으로 나타내어져 있음)을 이용하여 합성 처리가 행해지고, 제2 라인 내지 제5 라인이 복호된다.
이와 같이, 제2 회째의 합성 처리에서는, 부호화측에서 계수 C2, 계수 C3, (계수 C4, 계수 C5), 계수 C6, 계수 C7, 계수 C8, 계수 C9의 순으로 생성된 계수 데이터가, 계수 C9, 계수 C8, 계수 C2, 계수 C3, …의 순으로 재배열되어 복호측에 공급된다.
3회째 이후의 합성 처리에서도, 마찬가지로 하여, 계수 재배열용 버퍼부(152)에 저장된 계수 데이터가 소정의 순서로 재배열되어 복호부에 공급되고, 4라인씩, 라인이 복호된다.
또한, 부호화측에서 화면의 하단의 라인을 포함하는 필터 처리(이하, 마지막회라고 부름)에 대응하는 복호측의 합성 처리에서는, 그 때까지의 처리에서 생성되어 버퍼에 저장된 계수 데이터를 모두 출력하게 되기 때문에, 출력 라인수가 많아진다. 도 5의 예에서는, 마지막회에 8라인이 출력된다.
또한, 계수 재배열부(153)에 의한 계수 데이터의 재배열 처리는, 예를 들면, 계수 재배열용 버퍼부(152)에 저장된 계수 데이터를 읽어낼 때의 읽어내기 어드레스를, 소정의 순서로 설정함으로써 이루어진다.
도 6을 이용하여, 전술까지의 처리를 보다 구체적으로 설명한다. 도 6은, 5×3 필터를 이용하여, 분해 레벨=2까지 웨이브릿 변환에 의한 필터 처리를 실시한 예이다. 웨이브릿 변환부(150)에서, 도 6의 A에 일례가 나타내어지는 바와 같이, 입력 화상 데이터의 제1 라인부터 제7 라인에 대하여 1회째의 필터 처리가 수평 및 수직 방향으로 각각 행해진다(도 6의 A의 In-1).
1회째의 필터 처리의 분해 레벨=1의 처리에서, 계수 C1, 계수 C2, 및 계수 C3의 3라인분의 계수 데이터가 생성되고, 도 6의 B에 일례가 나타내어지는 바와 같이, 분해 레벨=1에서 형성되는 영역 HH, 영역 HL 및 영역 LH의 각각에 배치된다(도 6의 B의 WT-1).
또한, 분해 레벨=1에서 형성되는 영역 LL은, 분해 레벨=2에 의한 수평 및 수직 방향의 필터 처리에서 더 4분할된다. 분해 레벨=2에서 생성되는 계수 C5 및 계수 C4는, 분해 레벨=1에 의한 영역 LL 내에서, 영역 LL에 계수 C5에 의한 1라인이 배치되고, 영역 HH, 영역 HL 및 영역 LH의 각각에, 계수 C4에 의한 1라인이 배치된다.
웨이브릿 변환부(150)에 의한 2회째 이후의 필터 처리에서는, 4라인마다 필터 처리가 행해지고(도 6의 A의 In-2 …), 분해 레벨=1에서 2라인씩의 계수 데이터가 생성되고(도 6의 B의 WT-2), 분해 레벨=2에서 1라인씩의 계수 데이터가 생성된다.
도 5의 2회째의 예에서는, 분해 레벨=1의 필터 처리에서 계수 C6 및 계수 C7의 2라인분의 계수 데이터가 생성되고, 도 6의 B에 일례가 나타내어지는 바와 같이, 분해 레벨 1에서 형성되는 영역 HH, 영역 HL 및 영역 LH의, 1회째의 필터 처리에서 생성된 계수 데이터의 다음부터 배치된다. 마찬가지로, 분해 레벨=1에 의한 영역 LL에서, 분해 레벨=2의 필터 처리에서 생성된 1라인분의 계수 C9가 영역 LL에 배치되고, 1라인분의 계수 C8이 영역 HH, 영역 HL 및 영역 LH에 각각 배치된다.
도 6의 B와 같이 웨이브릿 변환된 데이터를 복호했을 때에는, 도 6의 C에 일례가 나타내어지는 바와 같이, 부호화측의 제1 라인 내지 제7 라인에 의한 1회째의 필터 처리에 대하여, 복호측의 1회째의 합성 처리에 의한 제1 라인이 출력된다(도 6의 C의 Out-1).
이후, 부호화측의 2회째부터 마지막회 전까지의 필터 처리에 대하여, 복호측에서 4라인씩이 출력된다(도 6의 C의 Out-2 …). 그리고, 부호화측의 마지막회의 필터 처리에 대하여, 복호측에서 8라인이 출력된다.
웨이브릿 변환부(150)에서 고역 성분측으로부터 저역 성분측으로 생성된 계수 데이터는, 계수 재배열용 버퍼부(152)에 순차 저장된다. 계수 재배열부(153)는, 전술한 계수 데이터의 재배열이 가능하게 될 때까지 계수 재배열용 버퍼부(152)에 계수 데이터가 축적되면, 계수 재배열용 버퍼부(152)로부터 합성 처리에 필요한 순으로 재배열하여 계수 데이터를 읽어낸다. 읽어내어진 계수 데이터는, 엔트로피 부호화부(155)에 순차적으로 공급된다.
이상과 같이 프리싱트 단위로 부호화된 화상 데이터(부호화 데이터)는, 패킷타이즈 처리부(122)에 공급된다. 그 때, 엔트로피 부호화부(155)는, 프리싱트 단위로, 그 화상 데이터에 관한 정보를 헤더 정보(프리싱트 헤더)로서 패킷타이즈 처리부(122)에 공급한다. 도 7에 그 프리싱트 헤더의 구성예를 도시한다.
도 7에 도시되는 바와 같이, 프리싱트 헤더(171)는, 4워드(32×4비트)분의 데이터로 이루어지고, PID, AT, AID, FT, CF, IF, 프리싱트 타임 스탬프, 양자화 계수, 및 프리싱트 코드 길이 등의 정보를 포함한다.
PID(Precinct ID)는, 픽쳐의 선두로부터 센 프리싱트의 번호를 나타내는 12비트의 정보이다. AT(Align Unit Type)는, 프리싱트 내에 구성되는 얼라인 유닛의 속성을 나타내는 4비트의 정보이다. 얼라인 유닛은, 프리싱트 내의 부호화 데이터가, 예를 들면 부호화 단위 등, 소정의 데이터 단위로 분할된 것이다. 즉, 프리싱트는 1개 또는 복수의 얼라인 유닛에 의해 구성된다. AID(Align Unit ID)는, 프리싱트의 선두로부터 센 얼라인 유닛의 번호를 나타내는 5비트의 정보이다. FT(Field Type)는, 픽쳐가 프로그레시브인지, 또는 인터레이스 중 어느 하나의 필드인지를 나타내는 2비트의 플래그 정보이다. CF(Component Flag)는, 휘도 성분 Y, 색차 성분 Cb, 및 색차 성분 Cr의 컴포넌트 중, 복수의 컴포넌트를 하나의 얼라인 유닛이나 프리싱트에 통합한 것을 나타내는 3비트의 정보이다.
IF(Incomplete Flag)는, 어떠한 이유에서 부호화에 실패한 얼라인 유닛 또는 프리싱트인 것을 나타내는 1비트의 플래그 정보이다. 이 실패의 범위는, PID, AT, 및 AID가 나타내는 페이로드에 한정된다.
프리싱트 타임 스탬프(Precint Time Stamp)는, 그 프리싱트의 타임 스탬프의 하위 32비트를 나타내는 정보이다. 양자화 계수(QP Y or C)는, 그 프리싱트의, 휘도 성분 Y 또는 색차 성분 C의 양자화시에 사용된 양자화 계수의 값을 나타내는 16비트의 정보이다. 프리싱트 코드 길이(Precinct Code Length Y or C)는, 그 프리싱트의, 휘도 성분 Y 또는 색차 성분 C의 부호화 데이터의 데이터 길이를 나타내는 26비트의 정보이다.
또한, 엔트로피 부호화부(155)는, 픽쳐 단위로, 그 화상 데이터에 관한 정보를 헤더 정보(픽쳐 헤더)로서 패킷타이즈 처리부(122)에 공급한다. 도 8에 그 픽쳐 헤더의 구성예를 도시한다.
도 8에 도시되는 바와 같이, 픽쳐 헤더(172)는, 26워드(32×26 비트)분의 데이터로 이루어지고, PI, w, CEF, CBD, DL, WF, PDI, SF, FR, AR, DBSZ, 풀 타임 스탬프, V0 스타트 포지션, SD, H 스타트 포지션, VF, V 합계 사이즈, TSD, H 합계 사이즈, PXCS, V 사이즈, VSD, H 사이즈, BRT, CTS, 및 WTm 등의 정보를 포함한다.
PI(Profile Indication)는, 프로파일의 지정을 행하는 5비트의 정보이다. w는, 가중치 부여 계수의 커스텀값을 설정하기 위한 테이블 정보인 웨이팅 테이블을 패킷에 포함시킬지의 여부를 나타내는 1비트의 플래그 정보이다. CEF(Color Extension Flag)는, 컬러 정보의 확장 헤더를 사용할지의 여부를 나타내는 1비트의 플래그 정보이다. CBD(Component Bit Depth)는, 컴포넌트의 비트 심도를 나타내는 5비트의 정보이다. 미리 지정된 값으로부터 「8」을 뺀 값이 저장된다. DL(DWT Level)은, 웨이브릿 변환의 분할수(분할 레벨)를 나타내는 3비트의 정보이다. WF(Wavelet Filter)는, 웨이브릿 변환에서 사용된 필터의 종류를 나타내는 2비트의 정보이다. PDI(Picture Discontinuity Indication)는, 타임 스탬프의 연속성을 나타내는 1비트의 정보이다. SF(Sampling Format)는, 색차의 샘플링법을 나타내는 2비트의 정보이다.
FR(Frame Rate)은, 프레임 레이트를 나타내는 1비트의 정보이다. AR(Aspect Ratio)은, 화소 어스펙트비를 나타내는 6비트의 정보이다. DBSZ(Decoder Buffer Size)는, 디코더에서의 프리싱트 버퍼 사이즈를 나타내는 4비트의 정보이다. 풀 타임 스탬프(FTS(Full Time Stamp))는, 풀 사이즈의 타임 스탬프를 나타내는 46비트의 정보이다.
V0 스타트 포지션(FFVS(First Field Vertical Start))은, 선두 필드의 수직 방향 유효 화소 개시 위치를 나타내는 13비트의 정보이다. SD(Start Diff)는, FFVS와 제2 필드의 차분을 나타내는 2비트의 정보이다. H 스타트 포지션(HS(Horizontal Start))은, 수평 방향의 유효 화소 개시 위치를 나타내는 13비트의 정보이다. VF(Video Format)는, 압축 신호의 영상 포맷를 나타내는 4비트의 정보이다.
V 합계 사이즈(FFVTS(First Field Vertical Total Size))는, 선두 필드의 블랭크를 포함시킨 총 화소수를 나타내는 13비트의 정보이다. TSD(Total Size Diff)는, FFVTS와 제2 필드의 차분을 나타내는 2비트의 정보이다. H 합계 사이즈(HTS(Horizontal Total Size))는, 수평 방향의 블랭크를 포함시킨 총 화소수를 나타내는 13비트의 정보이다. PXCS(Pixel Clock Scale)는, 클럭의 배율을 나타내는 3비트의 정보이다.
V 사이즈(FFVVS(First Field Vertical Valid Size))는, 선두 필드의 수직 방향 유효 화소 사이즈를 나타내는 13비트의 정보이다. VSD(Valid Size Diff)는, FFVVS와 제2 필드의 차분을 나타내는 2비트의 정보이다. H 사이즈(HVS(Horizontal Valid Size))는, 수평 방향의 유효 화소 사이즈를 나타내는 13비트의 정보이다. BRT(B Value Reset Timing)는, B값의 리세트 타이밍을 나타내는 2비트의 정보이다.
CTS(Custom Table Size)는, 커스텀 테이블의 사이즈를 나타내는 16비트의 정보이다. 지정값의 수만큼 후속의 커스텀값이 존재하고, 그 사이즈는 CTS×2바이트이다. WTm(Weighting Table m)은, m번째의 웨이팅 테이블을 나타내는 16×m비트의 정보이다.
또한, 실제로는, 도 9에 도시되는 바와 같이, 부호화부(121)로부터 패킷타이즈 처리부(122)에는, 데이터 이외에도, 속성 정보나 VALID 정보 등이 공급된다. 속성 정보는, 공급하는 데이터가, 헤더인지 화상 데이터인지를 나타내거나, 휘도 성분의 데이터인지 색차 성분의 데이터인지를 나타내거나 하는 정보이다. VALID 정보는, 데이터의 판독 타이밍을 통지하는 정보이다.
패킷타이즈 처리부(122)는, 소정의 데이터 단위(프리싱트)마다 공급되는 부호화 데이터에 대하여, 그 데이터의 사이즈와, 별도 지정되는 패킷 사이즈에 기초하여, 패킷타이즈 처리를 행한다.
도 10은, 도 1의 패킷타이즈 처리부(122)의 내부의 구성예를 도시하는 블록도이다.
도 10에서 패킷타이즈 처리부(122)는, 데이터 취득부(201), RTP(Real-time Transport Protocol) 헤더 작성부(202), 공통 헤더 작성부(203), 확장 헤더 작성부(204), 픽쳐 정보 작성부(205), 플래그 확인부(206), 사이즈 확인부(207), 프래그먼트 처리부(208), 패킷화부(209), 및 출력부(210)를 갖는다.
데이터 취득부(201)는, 부호화부(121)로부터 공급되는 부호화 데이터나 패킷 등을, 그 데이터 모두 공급되는 속성 정보나 VALID 정보 등에 기초하여 취득한다. 예를 들면, 프리싱트 헤더(171)를 취득하면, 데이터 취득부(201)는, 그것을 RTP 헤더 작성부(202), 공통 헤더 작성부(203), 확장 헤더 작성부, 플래그 확인부(206), 및 사이즈 확인부(207)에 공급한다. 또한, 예를 들면, 픽쳐 헤더(172)를 취득하 면, 데이터 취득부(201)는, 그것을 픽쳐 정보 작성부(205)에 공급한다. 또한, 예를 들면, 부호화 데이터를 취득하면, 데이터 취득부(201)는, 그것을 프래그먼트 처리부(208)에 공급한다.
RTP 헤더 작성부(202)는, 데이터 취득부(201)가 프리싱트 헤더를 취득하면, 그 취득된 프리싱트 헤더에 기초하여, RTP 패킷의 헤더인 RTP 헤더를 작성한다. RTP 헤더의 상세에 대해서는 후술한다. RTP 헤더 작성부(202)는, 작성한 RTP 헤더를 패킷화부(209)에 공급하고, 처리 종료를 공통 헤더 작성부(203)에 통지한다.
RTP 헤더 작성부(202)로부터 통지를 받으면, 공통 헤더 작성부(203)는, 데이터 취득부(201)가 취득한 프리싱트 헤더(171)에 기초하여, 그 프리싱트로부터 작성되는 각 패킷에 부가되는 공통의 헤더인 공통 헤더를 작성한다. 공통 헤더에는 그 프리싱트에 관한 기본적인 정보가 포함된다. 공통 헤더의 상세에 대해서는 후술한다. 공통 헤더 작성부(203)는, 작성한 공통 헤더를 패킷화부(209)에 공급하고, 처리 종료를 확장 헤더 작성부(204)에 통지한다.
공통 헤더 작성부(203)로부터 통지를 받으면, 확장 헤더 작성부(204)는, 데이터 취득부(201)가 취득한 프리싱트 헤더(171)에 기초하여, 그 프리싱트에 관한, 공통 헤더에는 포함되지 않는 정보를 필요에 따라서 부여하는 확장 헤더의 정보를 작성한다. 이 확장 헤더의 작성에 의해, 송신자는 유연하고 효율적인 헤더 작성이 가능하게 된다. 확장 헤더의 정보의 내용은 임의이지만, 예를 들면, 양자화 계수에 관한 정보나, 사이즈에 관한 정보 등이 있다. 확장 헤더의 상세에 대해서는 후술한다. 확장 헤더 작성부(204)는, 작성한 확장 헤더를 패킷화부(209)에 공급하 고, 처리 종료를 픽쳐 정보 작성부(205)에 통지한다.
확장 헤더 작성부(204)로부터 통지를 받고, 또한, 데이터 취득부(201)가 픽쳐 헤더(172)를 취득하면, 픽쳐 정보 작성부(205)는, 그 픽쳐 헤더(172)에 기초하여, 그 픽쳐에 관한 정보를 포함하는 픽쳐 정보를 작성한다. 이 픽쳐 정보의 상세에 대해서는 후술한다. 픽쳐 정보 작성부(205)는, 작성한 픽쳐 정보를 패킷화부(209)에 공급하고, 그 픽쳐 정보를 확장 헤더에 삽입시켜, 처리 종료를 플래그 확인부(206)에 통지한다. 또한, 데이터 취득부(201)가 픽쳐 헤더(172)를 취득하지 않는 경우, 픽쳐 정보 작성부(205)는, 픽쳐 정보를 작성하지 않고, 처리 종료를 플래그 확인부(206)에 통지한다.
픽쳐 정보 작성부(205)로부터 통지를 받으면, 플래그 확인부(206)는, 데이터 취득부(201)가 취득한 프리싱트 헤더(171)에 포함되는 IF를 참조하여, 그 플래그의 값에 따라서, 패킷에 부호화 데이터를 포함시킬지의 여부를 판정한다. 예를 들면, 「IF=1」인 경우, 플래그 확인부(206)는, 그 프리싱트의 데이터의 부호화는 실패하였다고 판정하고, 데이터 취득부(201)에, 그 복호 불가능한 부호화 데이터를 파기시키도록(취득하지 않도록) 하고, 또한, 패킷화부(209)를 제어하여, 헤더 정보만으로(페이로드를 포함시키지 않도록) 패킷화시킨다. 또한, 예를 들면, 「IF=0」인 경우, 플래그 확인부(206)는, 그 프리싱트의 부호화는 성공하였다고 판정하고, 패킷화부(209)에 페이로드를 포함시켜 패킷화시키도록 하고, 처리 종료를 사이즈 확인부(207)에 통지한다.
플래그 확인부(206)로부터 통지를 받으면, 사이즈 확인부(207)는, 데이터 취 득부(201)가 취득한 프리싱트 헤더에 포함되는 프리싱트 코드 길이에 기초하여, 프리싱트의 데이터 사이즈가, 미리 별도 설정되어 있는 패킷 사이즈(1개의 패킷에 포함되는 페이로드의 데이터 사이즈의 최대값)보다 큰지의 여부를 확인한다. 예를 들면, 패킷 사이즈보다 프리싱트의 데이터 사이즈의 쪽이 큰 경우, 사이즈 확인부(207)는, 프래그먼트 처리부(208)를 제어하고, 데이터 취득부(201)가 취득하는 부호화 데이터를 패킷 사이즈마다 분할시킨다. 반대로, 예를 들면, 패킷 사이즈보다 프리싱트의 데이터 사이즈의 쪽이 크지 않은 경우, 사이즈 확인부(207)는, 프래그먼트 처리부(208)를 제어하고, 데이터 취득부(201)가 취득하는 부호화 데이터를 분할시키지 않도록 한다.
프래그먼트 처리부(208)는, 사이즈 확인부(207)에 의해 제어되어, 프리싱트의 데이터 사이즈가 패킷 사이즈보다 큰 경우, 데이터 취득부(201)가 취득하는 부호화 데이터를, 패킷 사이즈마다 분할하여 패킷화부(209)에 공급한다. 즉, 이 경우, 프래그먼트 처리부(208)는, 데이터 취득부(201)가 헤더 부분도 고려한 1패킷 사이즈분의 부호화 데이터를 취득할 때마다, 그 1패킷 사이즈분의 부호화 데이터를 1개의 페이로드로서 패킷화부(209)에 공급한다.
반대로, 프리싱트의 데이터 사이즈가 패킷 사이즈보다 크지 않은 경우, 프래그먼트 처리부(208)는, 사이즈 확인부(207)에 의해 제어되어, 데이터 취득부(201)가 취득하는 부호화 데이터를, 그대로 패킷화부(209)에 공급한다. 즉, 이 경우, 프래그먼트 처리부(208)는, 데이터 취득부(201)가 취득하는 1프리싱트분의 부호화 데이터를 1개의 페이로드로서 패킷화부(209)에 공급한다.
패킷화부(209)는, 각 부로부터 공급되는 헤더 정보를 이용하여 프래그먼트 처리부(208)로부터 공급되는 페이로드를 패킷화한다. 예를 들면, 1프리싱트의 부호화 데이터가 프래그먼트 처리부(208)에 의해 복수의 페이로드로 분할되는 경우, 패킷화부(209)는, 각 페이로드에 대하여, 각각 필요한 헤더 정보를 부가하고, 각각을 패킷화한다. 또한, 예를 들면, 프래그먼트 처리부(208)가 부호화 데이터를 분할하지 않는 경우, 패킷화부(209)는, 프래그먼트 처리부(208)로부터 공급된 1개의 페이로드에 대하여 필요한 헤더 정보를 부가하여 패킷화한다. 또한, 예를 들면, 플래그 확인부(206)가, 페이로드를 패킷에 포함시키지 않도록 지시하는 경우, 패킷화부(209)는, 그 지시에 기초하여 헤더 정보만으로 패킷화를 행한다.
또한, 패킷화부(209)는, 생성한 각 패킷의 공통 헤더에 포함되는 SFF나 M 등의 플래그 정보의 값을 적절히 설정한다. SFF(Start Fragment Flag)는, 그 패킷이 프리싱트의 선두 부분을 포함하는 패킷(선두 패킷)인지의 여부를 나타내는 플래그 정보이며, M(Marker)은, 프리싱트의 종단 부분을 포함하는 패킷(최종 패킷)인지의 여부를 나타내는 플래그 정보이다. 이들 플래그 정보는, 디패킷타이즈 처리부(132)에 의한 디패킷타이즈 처리시에 참조된다.
예를 들면, 프래그먼트 처리부(208)가 부호화 데이터를 분할하는 경우, 패킷화부(209)는, 1프리싱트의 부호화 데이터가 분할되어 생성된 페이로드군 중, 선두의 페이로드의 패킷의 SFF를 1로 설정하고, 마지막 페이로드의 패킷의 M을 1로 설정한다.
또한, 예를 들면, 프래그먼트 처리부(208)가 부호화 데이터를 분할하지 않는 경우, 패킷화부(209)는, 생성된 1개의 패킷의 SFF 및 M의 각각을 1로 설정한다.
이와 같이 SFF나 M 등의 플래그 정보를 설정함으로써, 디패킷타이즈 처리부(132)는, 이 플래그 정보를 참조하는 것만으로 용이하게, 그 패킷이 프리싱트의 선두 패킷인지, 최종 패킷인지, 또는 그 이외의 패킷인지를 파악할 수 있다. 이에 의해, 디패킷타이즈 처리부(132)는, 후술하는 바와 같이 대기 시간을 저감시킬 수 있어, 디패킷타이즈 처리의 지연 시간을 저감시킬 수 있다.
패킷화부(209)는, 생성한 패킷을 출력부(210)에 공급한다.
출력부(210)는, 패킷화부(209)로부터 공급되는 RTP 패킷을, 송신부(123)(도 1)에 공급하고, 수신 장치(103)(도 1)에 송신시킨다.
전술한 바와 같이 부호화부(121)는, 도 11에 도시되는 바와 같이, 1픽쳐(프레임 또는 필드)를, 복수의 프리싱트로 분할하고, 그 프리싱트마다 부호화를 행한다.
패킷타이즈 처리부(122)는, 도 12에 도시되는 바와 같이, 1개의 프리싱트의 부호화 데이터를 소정의 패킷 사이즈마다 분할하여 패킷화한다. 프리싱트의 데이터 사이즈가 패킷 사이즈보다 크지 않으면, 생성되는 패킷은 1개로 된다. 도 12의 예에서는 1개의 프리싱트의 부호화 데이터로부터 5개의 패킷이 생성되어 있다.
화상 데이터의 전송 포맷의 일례에 대하여 이하에 기재한다.
도 13은, RTP 헤더 작성부(202)가 작성하는, RTP 패킷의 헤더 정보인 RTP 헤더의 구성을 도시하고 있다. RTP 헤더(221)에는, 버젼 번호(V), 패딩(P)), 확장 헤더(X)의 유무, 송신원수(Counter)(CC), 마커 정보(marker bit)(M), 페이로드 타 입(Payload type)(PT), 시퀀스 번호, 타임 스탬프, 및 동기 소스(송신원) 식별자(SSRC(Synchronization Source Identifier))의 각 필드가 설정되어 있다.
버젼 번호(V)는, RTP의 버젼 번호를 나타내는 2비트의 정보이다. 패딩(P)은, 1비트의 플래그 정보이며, 그 값이 「1」일 때, 페이로드의 마지막에 패딩 옥텟(매입 데이터)이 1개 이상 부가되어 있는 것을 나타낸다. 확장 헤더(X)의 유무는, 1비트의 플래그 정보이며, 그 값이 「1」일 때, 고정 길이 헤더 이외에 확장 헤더가 부가되어 있는(헤더 확장이 있는) 것을 나타낸다. 송신원수(CC)는, CSRC의 식별자의 수를 나타내는 4비트의 정보이며, 예를 들면, 다지점 전화 회의와 같이, 복수의 데이터원의 데이터를 1개의 RTP 패킷화했을 때의, 개개의 데이터원의 식별자의 수를 나타낸다.
마커 정보(M)는, 1비트의 플래그 정보이며, 예를 들면, 페이로드에서의 임의의 이벤트 등을 나타낸다. 이 마커 정보(M)의 이용 방법은, 예를 들면, 페이로드 타입(PT) 등에서 설정된다. 페이로드 타입(PT)은, 그 패킷에 의해 운반하는 페이로드의 형식을 지정하는 7비트의 정보이다.
시퀀스 번호는, RTP 데이터 패킷의 순서를 나타내는 16비트의 번호 정보이며, 초기값은 랜덤하게 설정되고, 그 후에 계속되는 패킷에서는 값이 「1」씩 증가한다. 이 시퀀스 번호는, 전송되는 부호화 데이터(화상 데이터) 전체를 통한 패킷의 순서를 나타낸다.
타임 스탬프는, RTP 패킷의 최초의 바이트의 샘플링 시각을 나타내는 32비트의 정보이다. 샘플링 클럭은, 페이로드의 데이터 프로파일에 의해 결정된다. 예 를 들면, 음성 신호의 표본화 주파수를 8kHz로 하면, 타임 스탬프의 값은 125μsec 마다 「1」 증가하므로, RTP 데이터 패킷이 20msec의 데이터로 하면, 타임 스탬프의 값은 패킷마다 160씩 증가한다. 또한, 초기값은 랜덤하게 설정된다.
동기 소스(송신원) 식별자(SSRC)는, 이 패킷의 송신원을 나타내는 32비트의 식별자이다. 이 정보는 랜덤하게 생성된다. 트랜스포트 어드레스가 변하면, 이 SSRC 식별자도 갱신된다.
공통 헤더 작성부(203), 확장 헤더 작성부(204), 및 픽쳐 정보 작성부(205)는 RTP 헤더에 계속되는 페이로드 헤더에 포함되는 각종 정보를 생성한다. 도 14에 페이로드 헤더의 구성예를 도시한다. 도 14에 도시되는 바와 같이, 페이로드 헤더는, 공통 헤더(231), 양자화 파라미터 정보(232), 사이즈 정보(233), 포맷 정보(234), 픽쳐 정보(235), 및 컬러 정보(236)에 의해 구성되고, 페이로드(237)의 앞에 부가된다.
공통 헤더(231)는, 공통 헤더 작성부(203)에 의해 작성되는 프리싱트에 관한 기본적인 정보를 포함하는 헤더 정보이다. 이 공통 헤더(231)는 필수적인 헤더이며, 전체 패킷에 부가된다.
양자화 파라미터 정보(232)는, 확장 헤더 작성부(204)에 의해 작성되는 확장 헤더이며, 양자화 계수에 관한 정보를 포함한다. 사이즈 정보(233)는, 확장 헤더 작성부(204)에 의해 작성되는 확장 헤더이며, 데이터 사이즈에 관한 정보를 포함한다. 포맷 정보(234)는, 확장 헤더 작성부(204)에 의해 작성되는 확장 헤더이며, 데이터의 포맷에 관한 정보를 포함한다. 픽쳐 정보(235)는, 픽쳐 정보 작성 부(205)에 의해 작성되는 확장 헤더이며, 원화상(즉, 부호화되고, 패킷화되어 전송되는 화상 데이터)에 관한 정보를 포함한다. 컬러 정보(236)는, 확장 헤더 작성부(204)에 의해 작성되는 확장 헤더이며, 화상 데이터의 색에 관한 정보를 포함한다.
양자화 파라미터 정보(232), 포맷 정보(234), 픽쳐 정보(235), 및 컬러 정보(236)는, 프리싱트의 선두의 패킷(프래그먼트를 행하지 않는 경우의 패킷도 포함함)에 확장 헤더로서 부가된다. 사이즈 정보(233)는, 확장 헤더로서 임의의 패킷에 부가된다.
즉, 모든 패킷에 사이즈 정보를 부가하는 경우, 프리싱트의 선두의 패킷에는, 공통 헤더(231) 내지 페이로드(237)의 모두가 포함된다. 이에 대하여, 프리싱트의 선두의 패킷 이외의 패킷에는, 공통 헤더(231)와 사이즈 정보(233)와 페이로드(237)만이 포함된다.
각 정보의 상세에 대하여 설명한다.
도 15는, 공통 헤더(231)의 구성예를 도시하는 도면이다. 도 15에 도시되는 바와 같이, 공통 헤더(231)는, PID, AT, AID, SFF, M, TSF, NF, FT, CF, IF, X 및 TS 등의 정보를 포함한다. 즉, 공통 헤더(231)의 제1 워드(위로부터 1단째)와 제2 워드(위로부터 2단째)는, 부호화부(121)로부터 공급되는 프리싱트 헤더(171)의 제1 워드(Word0)와 제2 워드(Word1)를 그대로 이용하여 작성되어 있고, 제1 워드의 빈 필드(Reserved)이었던 4비트에 SFF, M, TSF 및 NF를 추가한 것이다.
SFF(Start Fragment Flag)는, PID, AT, 및 AID가 나타내는 페이로드의 선두 인지의 여부를 나타내는 1비트의 플래그 정보이다. 즉, 이 패킷이 프리싱트의 선두의 패킷(선두 패킷)인 경우, 이 SFF의 값이 「1」로 설정되고, 그 이외의 경우, 「0」으로 설정된다.
M(Marker)은, PID, AT, 및 AID가 나타내는 페이로드의 종단 부분을 포함할지의 여부를 나타내는 1비트의 플래그 정보이다. 즉, 이 패킷이 프리싱트 혹은 얼라인 유닛의 종단 부분을 포함하는 패킷(최종 패킷)인 경우, 이 M의 값이 「1」로 설정되고, 그 이외의 경우, 「0」으로 설정된다.
TSF(Time Stamp Flag)는, 공통 헤더에 타임 스탬프를 포함할지의 여부를 나타내는 1비트의 플래그 정보이다. 즉, 이 TSF의 값이 「1」인 경우, 공통 헤더(231)의 제2 워드에는, 프리싱트 헤더(171)의 제2 워드(Word1)가 부가되어 있다.
NF(Next Flag)는, 후속 페이로드의 존재를 나타내는 1비트의 플래그 정보이다. 즉, 이 패킷에 복수의 프리싱트 혹은 얼라인 유닛의 페이로드가 부가되어 있고, 또한, 이 헤더가 패킷 중의 최후의 프리싱트 혹은 얼라인 유닛이 아닌 경우, 이 NF의 값이 「1」로 설정된다.
TS(Time Stamp)는, 이 패킷의 페이로드가 속하는 프리싱트의 타임 스탬프의 하위 32비트를 나타내는 정보이며, 프리싱트 헤더(171)의 제2 워드(Word1)에 대응한다.
또한, 도 15에 도시되는 제3 워드(위로부터 3단째)는, 공통 헤더(231)에 연속하여 부여되는 확장 헤더를 나타내고 있다.
도 16은, 확장 헤더에 포함되는 양자화 파라미터 정보(232)의 구성예를 도시 하는 도면이다. 도 16에 도시되는 바와 같이, 양자화 파라미터 정보(232)는, ET, QP, 및 X 등의 정보를 포함하는 정보이다. 확장 헤더 작성부(204)는, 부호화부(121)로부터 공급되는 프리싱트 헤더(171)의 제3 워드(Word2)를 이용하여, 이 양자화 파라미터 정보(232)를 작성한다.
ET(Extension Type)는, 확장 헤더의 내용을 나타내는 5비트의 정보이다. 이 양자화 파라미터 정보(232) 사용시의 경우의 지정값은 임의이지만, 예를 들면 「00011」이다. QP(Quantize Parameter)는, 양자화 계수의 값을 나타내는 16비트의 정보이다. X(Extension)는, 확장 헤더를 사용할지의 여부를 나타내는 플래그이다.
도 17은, 확장 헤더에 포함되는 사이즈 정보(233)의 구성예를 도시하는 도면이다. 도 17에 도시되는 바와 같이, 사이즈 정보(233)는, ET, SS, 및 X 등의 정보를 포함하는 정보이다. 확장 헤더 작성부(204)는, 부호화부(121)로부터 공급되는 프리싱트 헤더(171)의 제4 워드(Word3)를 이용하여, 이 사이즈 정보(233)를 작성한다.
ET(Extension Type)는, 확장 헤더의 내용을 나타내는 5비트의 정보이다. 이 사이즈 정보(233) 사용시의 경우의 지정값은 임의이지만, 예를 들면 「00100」이다. SS(Segment Size)는, 세그먼트의 페이로드 사이즈를 워드 길이로 나타내는 26비트의 정보이다. X(Extension)는, 확장 헤더를 사용할지의 여부를 나타내는 플래그이다.
도 7 및 도 15 내지 도 17에 도시되는 바와 같이, 부호화부(121)는, 공통 헤더(231)나 확장 헤더(양자화 파라미터 정보(232)나 사이즈 정보(233))와 동일한 포 맷의 프리싱트 헤더(171)를, 패킷타이즈 처리부(122)에 공급한다. 이에 의해, 패킷타이즈 처리부(122)의 공통 헤더 작성부(203) 및 확장 헤더 작성부(204)는, 용이하게 고속으로 공통 헤더 및 확장 헤더를 작성할 수 있다.
도 18은, 확장 헤더에 포함되는 포맷 정보(234)의 구성예를 도시하는 도면이다. 포맷 정보(234)는, 기본적으로, 도 18의 A에 도시되는 바와 같이, ET, FTI, 및 X 등의 정보를 포함한다. 확장 헤더 작성부(204)는, 예를 들면 부호화부(121)로부터 공급되는 정보를 이용하여, 이 포맷 정보(234)를 작성한다.
ET(Extension Type)는, 확장 헤더의 내용을 나타내는 5비트의 정보이다. 이 포맷 정보(234) 사용시의 경우의 지정값은 임의이지만, 예를 들면 「00101」이다. FTI(Format Type Identifier)는, 어느 포맷 타입에 관한 정보가 기술되어 있는지를 나타내는 정보이다. 이 값은 임의이지만, 예를 들면, 베이어 정보가 기술되어 있는 경우, 값 「00001」이 설정된다. X(Extension)는, 확장 헤더를 사용할지의 여부를 나타내는 플래그이다.
도 18의 B에, 베이어 정보가 기술되어 있는 경우의, 포맷 정보(234)의 구성예를 도시한다. 이 경우, 포맷 정보(234)에는, ET, FTI 및 X 이외에, MT, SMT, BLF, VLOF, SSF, EVF, DC, BL, RBL, RVLO, DSS, NSS 및 EV 등의 정보가 포함된다.
MT(Mosaic Type)는, 페이로드의 모자이크 타입을 나타내는 4비트의 정보이다. SMT(Start Mosaic Type)는, 프레임 왼쪽 위의 최초의 화소 정보를 나타내는 4비트의 정보이다. BLF(Black Level Flag)는, 흑 레벨 정보의 존재를 나타내는 1비트의 플래그 정보이다. VLOF(Vertical Line Offset Flag)는, 세로줄 보정 정보의 존재를 나타내는 1비트의 플래그 정보이다. SSF(Shutter Speed Flag)는, 셔터 스피드 정보의 존재를 나타내는 1비트의 플래그 정보이다. EVF(EV Flag)는, EV 정보의 존재를 나타내는 1비트의 플래그 정보이다. DC(Defect Correction)는, 결함 보정을 행할지의 여부를 나타내는 1비트의 플래그 정보이다.
BL(Black Level)은, 흑 레벨값을 나타내는 32비트의 플래그 정보이다. RBL(Revised Black Level)은, 흑 레벨 보정 오프셋값을 나타내는 32비트의 정보이다. BL과 RBL은, BLF의 값이 「1」인 경우만 존재한다.
RVLO(Revised Vertical Line Offset)는, 세로줄 보정 오프셋값을 나타내는 32비트의 정보이다. RVLO는, VLOF의 값이 「1」인 경우만 존재한다.
DSS는, 셔터 스피드 분자(APEX 단위)를 나타내는 32비트의 정보이다. NSS는, 셔터 스피드 분모(APEX 단위)를 나타내는 32비트의 정보이다. DSS와 NSS는, SSF의 값이 「1」인 경우만 존재한다.
EV는, EV값을 나타내는 32비트의 정보이다. EV는, EVF의 값이 「1」인 경우만 존재한다.
도 19는, 확장 헤더에 포함되는 픽쳐 정보(235)의 구성예를 도시하는 도면이다. 도 19에 도시되는 바와 같이, 픽쳐 정보(235)는, ET, PI, CEF, CBD, DL, WF, PDI, SF, FR, AR, DBSZ, FTS, FFVS, SD, HS, VF, FFVTS, TSD, HTS, PXCS, FFVVS, VSD, HVS, BRT, WCF, X, CTS, 및 WTm 등의 정보를 포함한다. 픽쳐 정보 작성부(205)는, 부호화부(121)로부터 공급되는 픽쳐 헤더(172)를 이용하여, 이 픽쳐 정보(235)를 작성한다.
즉, 픽쳐 정보(235)는, 부호화부(121)로부터 공급되는 픽쳐 헤더(172)의, 제1 워드(Word0)의 빈 필드(Reserved)에 ET를 추가하고, 제6 워드(Word5)의 빈 필드(Reserved)에 WCF와 X를 추가한 것이다.
ET(Extension Type)는, 확장 헤더의 내용을 나타내는 5비트의 정보이다. 이 픽쳐 정보(235) 사용시의 경우의 지정값은 임의이지만, 예를 들면 「00010」이다. WCF(Waighting Custom Flag)는, 가중치 부여 계수의 커스텀값을 사용할지를 나타내는 1비트의 플래그 정보이다. 이 WCF의 값이 「1」일 때만 CTS가 존재한다. X(Extension)는, 확장 헤더를 이 헤더에 계속하여 사용할지의 여부를 나타내는 플래그이다.
도 8 및 도 19에 도시되는 바와 같이, 부호화부(121)는, 픽쳐 정보(235)와 동일한 포맷의 픽쳐 헤더(172)를, 패킷타이즈 처리부(122)에 공급한다. 이에 의해, 패킷타이즈 처리부(122)의 픽쳐 정보 작성부(205)는, 용이하게 고속으로 픽쳐 정보(235)를 작성할 수 있다.
도 20은, 확장 헤더에 포함되는 컬러 정보(236)의 구성예를 도시하는 도면이다. 도 20에 도시되는 바와 같이, 컬러 정보(236)는, ET나 X 등의 정보를 포함한다. 확장 헤더 작성부(204)는, 부호화부(121)로부터 공급되는 정보 등을 이용하여, 이 컬러 정보(236)를 작성한다.
ET(Extension Type)는, 확장 헤더의 내용을 나타내는 5비트의 정보이다. X(Extension)는, 확장 헤더를 사용할지의 여부를 나타내는 플래그이다.
패킷타이즈 처리부(122)는, 이상과 같이 프리싱트마다의 부호화 데이터를 패 킷화하고, 송신부(123)에 공급한다. 송신부(123)는, 그 패킷을 순차적으로, 회선(110)을 통하여 수신 장치(103)에 송신한다.
이상과 같은 포맷으로 송신부(123)로부터 송출된 패킷은, 회선(110)을 통하여 수신 장치(103)의 수신부(131)에 공급된다. 수신부(131)는, 그 패킷을 수신하면, 그것을 디패킷타이즈 처리부(132)에 공급한다.
도 21은, 디패킷타이즈 처리부(132)의 내부의 구성예를 도시하는 블록도이다. 도 21에 도시되는 바와 같이, 디패킷타이즈 처리부(132)는, 예를 들면, 패킷 취득부(251), 헤더 정보 해석부(252), 제어 모드 천이부(253), 제어부(254), 헤더 공급부(255), 데이터 공급부(256), 에러 통지부(257), 및 제어 신호 공급부(258)를 갖는다.
패킷 취득부(251)는, 수신부(131)로부터 공급되는 패킷을 취득한다. 그 때, 패킷 취득부(251)는, RTP 페이로드 헤더까지 정보를 취득하면, 그 취득을 계속하면서, 이미 취득한 정보를 순차적으로, 헤더 정보 해석부(252)에 공급한다. 즉, 패킷 취득부(251)는, 페이로드의 취득이 완료되기 전에, 헤더 정보를 헤더 정보 해석부(252)에 공급한다. 또한, 패킷 취득부(251)는, 헤더 정보는 헤더 공급부(255)에도 공급하고, 페이로드는 데이터 공급부(256)에도 공급한다.
헤더 정보 해석부(252)는, 패킷 취득부(251)가 취득한 RTP 패킷의 헤더 정보, 즉, RTP 헤더나 페이로드 헤더의 정보를 해석하고, 그 해석 결과를 제어 모드 천이부(253)나 제어부(254)에 공급한다.
제어 모드 천이부(253)는, 헤더 정보 해석부(252)로부터 공급되는 헤더 정보 의 해석 결과에 기초하여 제어부(254)의 동작 모드를 제어하고, 필요에 따라서 천이시킨다.
제어부(254)는, 제어 모드 천이부(253)에 의해 제어되어 천이한 제어 모드에서, 헤더 정보 해석부(252)로부터 공급되는 해석 결과에 기초하여, 헤더 공급부(255), 데이터 공급부(256), 에러 통지부(257), 및 제어 신호 공급부(258)의 동작을 제어한다.
헤더 공급부(255)는, 제어부(254)에 의해 제어되어, 패킷 취득부(251)로부터 공급되는 페이로드 헤더에 포함되는 각종 정보를 추출하고, 프리싱트 헤더(171)나 픽쳐 헤더(172)를 복원하여, 복호부(133)에 공급한다. 데이터 공급부(256)는, 제어부(254)에 의해 제어되어, 패킷 취득부(251)로부터 공급되는 페이로드 데이터를 복호부(133)에 공급한다. 에러 통지부(257)는, 제어부(254)에 의해 제어되어, 패킷 로스의 발생 등의 에러를 복호부(133)에 통지한다. 제어 신호 공급부(258)는, 제어부(254)에 의해 제어되어, 헤더나 데이터 이외의 각종 제어 정보를 복호부(133)에 공급한다.
제어부(254)의 제어 모드에는, 도 22에 도시되는 바와 같이, 스타트 모드(301), 스탠바이 모드(302), 프로세싱 모드(303), 및 로스 모드(304)의 4개의 모드가 있다. 제어 모드 천이부(253)는, 헤더 정보 해석부(252)에 의한 헤더 정보의 해석 결과에 기초하여, RTP 패킷의 수신 상황을 파악하고, 그 상황에 따라서 제어부(254)의 제어 모드를, 최적의 모드로 천이시킨다.
스타트 모드(301)는, 부호화 데이터 전체의 최초의 패킷을 처리하기 위한 모 드이다. 디패킷타이즈 처리 개시시, 제어부(254)는, 이 스타트 모드(301)로 설정된다. 스탠바이 모드(302)는, 프리싱트의 선두의 패킷을 처리하기 위한 모드이다. 프리싱트의 최후의 패킷이 처리된 후, 제어부(254)는, 이 스탠바이 모드(302)로 설정된다. 프로세싱 모드(303)는, 패킷 로스가 발생하고 있지 않은 통상시, 프리싱트의 선두 이외의 각 패킷을 처리하기 위한 모드이다. 패킷 로스가 발생하고 있지 않을 때, 프리싱트의 선두 이외의 각 패킷에 대하여, 제어부(254)는, 이 프로세싱 모드(303)로 설정된다. 로스 모드(304)는, 패킷 로스 등의 에러가 발생했을 때에, 그 프리싱트의 남은 패킷을 처리하기 위한 모드이다. 패킷 로스가 발생한 경우, 제어부(254)는, 이 로스 모드(304)로 설정된다.
각 모드에서의 디패킷타이즈 처리부(132)의 동작의 상세에 대해서는 후술한다.
또한, 실제로는, 도 23에 도시되는 바와 같이, 디패킷타이즈 처리부(132)로부터 복호부(133)에는, 데이터 이외에도 스타트 정보, 엔드 정보, VALID 정보, 속성 정보, 및 에러 통지 등이 공급된다.
스타트 정보는, 프리싱트 혹은 얼라인 유닛의 선두 패킷의 페이로드를 나타내는 정보이며, 디패킷타이즈 처리부(132)가, 프리싱트 혹은 얼라인 유닛의 선두 패킷의 페이로드를 복호부(133)에 공급할 때, 이 스타트 정보에 값 「1」이 설정된다. 엔드 정보는, 프리싱트 혹은 얼라인 유닛의 최종 패킷의 페이로드를 나타내는 정보이며, 디패킷타이즈 처리부(132)가, 프리싱트 혹은 얼라인 유닛의 최종 패킷의 페이로드를 복호부(133)에 공급할 때, 이 엔드 정보에 값 「1」이 설정된다.
속성 정보는, 공급하는 데이터가, 헤더인지 화상 데이터인지를 나타내거나, 휘도 성분의 데이터인지 색차 성분의 데이터인지를 나타내거나 하는 정보이다. VALID 정보는, 데이터의 판독 타이밍을 통지하는 정보이다. 에러 통지는, 패킷 로스 등의 에러의 발생을 복호부(133)에 통지하는 정보이다.
도 24는, 도 1의 복호부(133)의 내부의 구성예를 도시하는 블록도이다. 도 24에 도시되는 바와 같이, 복호부(133)는, 제어 정보 취득부(351), 복호 제어부(352), 복호 처리 실행부(353), 헤더 취득부(354), 데이터 취득부(355), 에러 통지 취득부(356), 및 파기 처리부(357)를 갖는다.
제어 정보 취득부(351)는, 디패킷타이즈 처리부(132)로부터 스타트 정보, 엔드 정보, VALID 정보, 및 속성 정보 등의 제어 정보를 취득하고, 그 제어 정보를 복호 제어부(352)에 공급한다. 복호 제어부(352)는, 그 제어 정보에 기초하여, 소정의 타이밍에서 복호 처리 실행부(353)에 복호 처리를 개시시킨다.
복호 처리 실행부(353)는, 디패킷타이즈 처리부(132)로부터 공급되고, 헤더 취득부(354)에 의해 취득된 헤더 정보에 기초하여, 데이터 취득부(355)에 의해 취득된 부호화 데이터의 복호 처리를 행한다. 복호 처리 실행부(353)는, 도 24에 도시되는 바와 같이, 버퍼부(361), 엔트로피 복호부(362), 및 웨이브릿 역변환부(363)를 갖는다. 버퍼부(361)는, 데이터 취득부(355)로부터 공급되는 부호화 데이터를 일시적으로 유지하고, 필요에 따라서 그 부호화 데이터를 엔트로피 복호부(362)에 공급한다. 또한, 버퍼부(361)는, 엔트로피 복호부(362)로부터 공급되는, 부호화 데이터의 복호 결과인 계수 데이터를 일시적으로 유지하고, 필요에 따 라서 그 계수 데이터를 웨이브릿 역변환부(363)에 공급한다.
엔트로피 복호부(362)는, 복호 제어부(352)에 의해 제어되어, 버퍼부(361)에 유지되어 있는 부호화 데이터를 읽어내고, 부호화부(121)의 엔트로피 부호화부(155)에 대응하는 방법으로 엔트로피 복호하여, 계수 데이터를 생성한다. 또한, 엔트로피 부호화부(155)에서, 양자화를 행하는 경우, 엔트로피 복호부(362)는, 엔트로피 복호 처리를 행한 후, 얻어지는 계수 데이터에 대하여 역양자화 처리도 행한다. 엔트로피 복호부(362)는, 얻어진 계수 데이터를 버퍼부(361)에 공급하여 축적시킨다.
웨이브릿 역변환부(363)는, 소정의 타이밍에서 버퍼부(361)에 축적된 계수 데이터를 읽어내고, 부호화부(121)의 웨이브릿 변환부(150)에 대응하는 방법으로 웨이브릿 역변환 처리를 행하여, 얻어진 베이스 밴드의 화상 데이터를 출력 화상 데이터로서, 표시 장치(104)에 출력한다.
헤더 취득부(354)는, 디패킷타이즈 처리부(132)로부터 공급되는 프리싱트 헤더나 픽쳐 헤더 등의 헤더 정보를 취득하고, 그것을 버퍼부(361)에 공급하여 유지시킨다. 데이터 취득부(355)는, 디패킷타이즈 처리부(132)로부터 공급되는 페이로드 데이터를 취득하고, 그것을 버퍼부(361)에 공급하여 유지시킨다.
에러 통지 취득부(356)는, 디패킷타이즈 처리부(132)로부터 공급되는, 수신 처리에서 패킷의 로스가 발생한 것 등을 통지하는 에러 통지를 취득하고, 그것을 파기 처리부(357)에 공급한다. 파기 처리부(357)는, 에러 통지를 취득하면, 복호 처리 실행부(353)의 버퍼부(361)에 축적되어 있는 부호화 데이터를 파기시킨다. 즉, 파기 처리부(357)는, 패킷의 수신 처리에서 패킷의 로스가 발생한 경우(시퀀스 번호에 기초하여 패킷 로스의 발생이 확인된 경우), 그 패킷 로스가 발생한 현재의 프리싱트에 대한 정상적인 엔트로피 복호 처리가 실행 불가능하므로, 버퍼부(361)에 축적되어 있는, 패킷 로스가 발생한 현재의 프리싱트의 부호화 데이터를 모두 파기한다.
다음으로, 각 부가 실행하는 처리의 흐름에 대하여 설명한다. 최초로, 송신 장치(102)의 부호화부(121)에 의해 실행되는 부호화 처리의 흐름의 예를 도 25의 플로우차트를 참조하여 설명한다.
부호화 처리가 개시되면, 웨이브릿 변환부(150)는, 스텝 S1에서, 처리 대상 프리싱트의 번호 A를 초기 설정으로 한다. 통상의 경우, 번호 A는 「1」로 설정된다. 설정이 종료되면, 웨이브릿 변환부(150)는, 스텝 S2에서, 최저역 서브밴드에서 위로부터 A번째의 1라인을 생성하는 데에 필요한 라인수(즉, 1프리싱트)의 화상 데이터를 취득하고, 그 화상 데이터에 대하여, 스텝 S3에서 화면 수직 방향으로 배열하는 화상 데이터에 대하여 분석 필터링을 행하는 수직 분석 필터링 처리를 행하고, 스텝 S4에서 화면 수평 방향으로 배열하는 화상 데이터에 대하여 분석 필터링 처리를 행하는 수평 분석 필터링 처리를 행한다.
스텝 S5에서 웨이브릿 변환부(150)는, 분석 필터링 처리를 최종 레벨까지 행하였는지의 여부를 판정하고, 분해 레벨이 최종 레벨에 도달하고 있지 않다고 판정한 경우, 처리를 스텝 S3으로 되돌리고, 현재의 분해 레벨에 대하여, 스텝 S3 및 스텝 S4의 분석 필터링 처리를 반복한다.
스텝 S5에서, 분석 필터링 처리가 최종 레벨까지 행해졌다고 판정한 경우, 웨이브릿 변환부(150)는, 처리를 스텝 S6으로 진행시킨다.
스텝 S6에서, 계수 재배열부(153)는, 프리싱트 A(픽쳐(프레임 또는 필드)의 위로부터 A번째의 프리싱트)의 계수를 저역으로부터 고역의 순번으로 재배열한다. 엔트로피 부호화부(155)는, 스텝 S7에서, 그 계수에 대하여 라인마다 엔트로피 부호화한다.
엔트로피 부호화가 종료되면, 엔트로피 부호화부(155)는, 우선, 스텝 S8에서 프리싱트 헤더(171)(도 7)를 송출하고, 스텝 S9에서, 현재의 처리 대상의 프리싱트가 픽쳐의 선두의 프리싱트(즉, A=1)인지의 여부를 판정한다. 픽쳐의 선두라고 판정된 경우, 처리는 스텝 S10으로 진행하고, 엔트로피 부호화부(155)는, 픽쳐 헤더(172)(도 8)를 송출한다. 스텝 S10의 처리가 종료되면, 처리는 스텝 S11로 진행한다. 또한, 스텝 S9에서, 현재의 처리 대상의 프리싱트가 픽쳐의 선두의 프리싱트가 아니라고 판정된 경우, 스텝 S10의 처리는 생략되고, 처리는 스텝 S11로 진행한다.
엔트로피 부호화부(155)는, 스텝 S11에서, 헤더 정보에 계속해서 프리싱트 A의 부호화 데이터를 외부에 송출한다.
웨이브릿 변환부(150)는, 스텝 S12에서 번호 A의 값을 「1」 인크리먼트 하여 다음의 프리싱트를 처리 대상으로 하고, 스텝 S13에서, 처리 대상의 픽쳐에 대하여, 미처리의 화상 입력 라인이 존재하는지의 여부를 판정하고, 존재한다고 판정한 경우, 처리를 스텝 S2로 되돌리고, 새로운 처리 대상의 프리싱트에 대하여 그 이후의 처리를 반복한다.
이상과 같이 스텝 S2 내지 스텝 S13의 처리가 반복 실행되고, 각 프리싱트가 부호화된다. 그리고, 스텝 S13에서, 미처리의 화상 입력 라인이 존재하지 않는다고 판정한 경우, 웨이브릿 변환부(150)는, 그 픽쳐에 대한 부호화 처리를 종료한다. 다음 픽쳐에 대해서는 새롭게 부호화 처리가 개시된다.
종래의 웨이브릿 변환의 방법의 경우, 우선, 수평 분석 필터링 처리를 픽쳐 전체에 대하여 행하고, 다음으로 수직 분석 필터링 처리를 그 픽쳐 전체에 대하여 행한다. 그리고 얻어진 저역 성분 전체에 대하여 마찬가지의 수평 분석 필터링 처리와 수직 분석 필터링 처리를 순서대로 행한다. 이상과 같이, 분해 레벨이 최종 레벨에 도달할 때까지, 분석 필터링 처리가 재귀적으로 반복된다. 따라서, 각 분석 필터링 처리의 결과를 버퍼에 유지시킬 필요가 있는데, 그 때, 버퍼는, 픽쳐 전체, 혹은, 그 시점의 분해 레벨의 저역 성분 전체의 필터링 결과를 유지할 필요가 있어, 많은 메모리 용량을 필요로 하게 된다(유지하는 데이터량이 많음).
또한, 이 경우, 픽쳐 내에서 모든 웨이브릿 변환이 종료될 때까지, 후단의 계수 재배열이나 엔트로피 부호화를 행할 수 없어, 지연 시간이 증대한다.
이에 대하여, 부호화부(121)의 웨이브릿 변환부(150)의 경우, 전술한 바와 같이 프리싱트 단위로 수직 분석 필터링 처리 및 수평 분석 필터링 처리를 최종 레벨까지 연속하여 행하므로, 종래의 방법과 비교하여, 한번에(동시기에) 유지할(버퍼링할) 필요가 있는 데이터의 양이 적어, 준비할 버퍼의 메모리량을 대폭 저감시킬 수 있다. 또한, 최종 레벨까지 분석 필터링 처리가 행해짐으로써, 후단의 계수 재배열이나 엔트로피 부호화 등의 처리도 행할 수 있다(즉, 계수 재배열이나 엔트로피 부호화를 프리싱트 단위로 행할 수 있음). 따라서, 종래의 방법과 비교하여 지연 시간을 대폭 저감시킬 수 있다.
또한, 엔트로피 부호화부(155)는, 부호화 데이터와 함께, 프리싱트마다 프리싱트 헤더(171)를, 픽쳐마다 픽처 헤더(172)를 패킷타이즈 처리부(122)에 공급하므로, 패킷타이즈 처리부(122)는, 용이하게 헤더 정보를 생성할 수 있다.
또한, 이 프리싱트 헤더(171) 및 픽쳐 헤더(172)의 포맷은, 패킷타이즈 처리부(122)가 패킷에 부가하는 페이로드 헤더의 포맷과 마찬가지이므로, 패킷타이즈 처리부(122)는, 더 용이하게 헤더 정보를 생성할 수 있다.
또한, 엔트로피 부호화부(155)는, 어떠한 이유에서 부호화에 실패한 경우, 프리싱트 헤더(171)의 IF를 세움으로써, 그 프리싱트 또는 얼라인 유닛이, 부호화에 실패한 프리싱트 또는 얼라인 유닛인 것을 나타낸다. 이 IF를 참조함으로써 패킷타이즈 처리부(122)는, 복호할 수 없는 불필요한 데이터를 패킷화하여 수신 장치(103)에 송신하는 것을 용이하게 억제할 수 있다.
다음으로, 패킷타이즈 처리부(122)에 의한 패킷타이즈 처리의 흐름의 예를, 도 26의 플로우차트를 참조하여 설명한다.
스텝 S31에서, 패킷타이즈 처리부(122)의 데이터 취득부(201)는, 프리싱트 헤더(171)를 취득하였는지의 여부를 판정하고, 취득하였다고 판정할 때까지 대기한다. 부호화부(121)로부터 공급된 프리싱트 헤더(171)를 취득하였다고 판정된 경우, 처리는 스텝 S32로 진행한다.
스텝 S32에서, RTP 헤더 작성부(202)는, RTP 헤더(221)를 작성한다. 스텝 S33에서, 공통 헤더 작성부(203)는, 프리싱트 헤더(171)에 기초하여, 공통 헤더(231)를 작성한다. 이 때, 공통 헤더 작성부(203)는, 프리싱트 헤더(171)의 제1 워드(Word0)에 SFF, M, TSF, 및 NF의 필드를 추가한다.
스텝 S34에서, 확장 헤더 작성부(204)는, 프리싱트 헤더(171)에 기초하여, 양자화 파라미터 정보(232), 사이즈 정보(233), 포맷 정보(234), 및 컬러 정보(236)등의 확장 헤더를 작성한다.
스텝 S35에서, 픽쳐 정보 작성부(205)는, 픽쳐 헤더(172)를 취득하였는지의 여부를 판정한다. 픽쳐 헤더(172)를 취득하였다고 판정된 경우, 처리는 스텝 S36으로 진행한다. 스텝 S36에서, 픽쳐 정보 작성부(205)는, 픽쳐 헤더(172)를 참조하여, w의 값이 「1」인지의 여부를 판정하고, w의 값이 「1」이라고 판정한 경우, 스텝 S37에서 웨이팅 테이블(WTm)도 패킷화하도록 픽쳐 정보에 포함시킨다. 스텝 S37의 처리가 종료되면, 처리는 스텝 S39로 진행한다.
또한, 스텝 S36에서, w의 값이 「0」이라고 판정한 경우, 픽쳐 정보 작성부(205)는, 스텝 S38에서, 웨이팅 테이블(WTm)을 픽쳐 정보로부터 삭제한다. 스텝 S38의 처리가 종료되면, 처리는 스텝 S39로 진행한다.
또한, 스텝 S35에서, 픽쳐 헤더를 취득하고 있지 않다고 판정된 경우, 처리는, 스텝 S39로 진행한다.
스텝 S39에서, 플래그 확인부(206)는, 프리싱트 헤더(171)의 IF의 값이 0인지의 여부를 판정한다. 프리싱트 헤더(171)의 1F의 값이 0이라고 판정된 경우, 처 리는 스텝 S40으로 진행한다.
스텝 S40에서, 사이즈 확인부(207)는, 프리싱트의 데이터 사이즈가 패킷의 페이로드의 최대 사이즈(패킷 사이즈)보다 큰지의 여부를 판정한다.
프리싱트의 사이즈가 패킷 사이즈보다 크다고 판정된 경우, 처리는 스텝 S41로 진행한다. 스텝 S41에서, 프래그먼트 처리부(208)는, 1프리싱트의 부호화 데이터를 패킷 사이즈마다 분할하고, 서로 상이한 페이로드로 한다. 스텝 S41의 처리가 종료되면, 처리는 스텝 S43으로 진행한다.
또한, 스텝 S40에서, 프리싱트의 데이터 사이즈가 패킷 사이즈보다 크지 않다고 판정된 경우, 프래그먼트 처리부(208)는, 부호화 데이터의 분할을 행하지 않는다. 즉, 이 경우, 스텝 S41의 처리는 생략되고, 처리는 스텝 S43으로 진행한다.
또한, 스텝 S39에서, 「IF=0」으로 판정된 경우, 처리는 스텝 S42로 진행한다. 스텝 S42에서, 데이터 취득부(201)는, 플래그 확인부(206)에 의해 제어되어, 공급되는 부호화 데이터를 파기한다. 스텝 S42의 처리가 종료되면, 처리는 스텝 S43으로 진행한다.
패킷화부(209)는, 스텝 S43에서, 각 페이로드나 헤더 정보를 이용하여 RTP 패킷을 생성하고, 스텝 S44에서, 각 패킷의 SFF 및 M 등의 플래그 정보를 설정한다.
이상과 같이 각 플래그 정보가 설정되면, 출력부(210)는, 그 RTP 패킷을 송신부(123)에 출력한다.
스텝 S45에서, 데이터 취득부(201)는, 모든 프리싱트를 처리하였는지의 여부를 판정한다. 미처리의 프리싱트가 존재한다고 판정된 경우, 처리는 스텝 S31로 되돌아가고, 그 이후의 처리가 반복된다. 또한, 스텝 S45에서 모든 프리싱트를 처리하였다고 판정된 경우, 패킷타이즈 처리는 종료된다.
이상과 같이, 패킷타이즈 처리부(122)는, 부호화부(121)로부터 공급되는 헤더 정보에 기초하여 용이하게 공통 헤더나 확장 헤더를 생성할 수 있다.
또한, 전술한 바와 같이, 스텝 S36 내지 스텝 S38에서, 픽쳐 정보 작성부(205)는, 프리싱트 헤더(171)의 w의 값에 기초하여 웨이팅 테이블의 부가를 용이하게 고속으로 제어할 수 있다. 즉, 픽쳐 정보 작성부(205)는, 프리싱트 헤더(171)의 w의 값을 확인하는 것만으로, 웨이팅 테이블을 필요할 때에만 적절하게 부가할 수 있다. 이에 의해, 송신 장치(102)로부터 수신 장치(103)에 전송되는 데이터량의 불필요한 증대나, 그것에 수반하는 각 부의 불필요한 부하의 증대를 억제할 수 있다.
또한, 전술한 바와 같이, 스텝 S39에서 프리싱트 헤더(171)의 IF의 값이 「1」인 경우, 플래그 확인부(206)는, 스텝 S42에서 데이터 취득부(201)를 제어하여, 부호화 데이터를 취득시키지 않도록 하고, 패킷에 페이로드를 부가시키지 않도록 한다. 즉, 이 경우, 패킷타이즈 처리부(122)로부터 출력되는 RTP 패킷에는 헤더 정보만이 포함되고, 페이로드는 포함되지 않는다. 이와 같이 함으로써, 패킷타이즈 처리부(122)는, 부호화부(121)로부터 공급되는 프리싱트 헤더(171)를 참조하는 것만으로, 용이하게 고속으로 복호할 수 없는 불필요한 데이터의 송신을 저감시킬 수 있어, 송신부(123), 회선(110), 및 수신 장치(103) 등의 불필요한 부하의 증대를 억제할 수 있다.
또한, 전술한 바와 같이 스텝 S40에서, 사이즈 확인부(207)는, 프리싱트 헤더(171)에 기초하여 프리싱트의 사이즈가 패킷 사이즈보다 큰지의 여부를 판정할 수 있으므로, 패킷타이즈 처리부(122)는, 1프리싱트의 부호화 데이터를, 축적하지 않고, 용이하게 고속으로 프래그먼트할지의 여부를 판정할 수 있다.
또한, 패킷화부(209)는, 스텝 S44에서, 프리싱트의 선두 패킷에 대해서는, 공통 헤더(231)의 SFF의 플래그를 세우고, 프리싱트의 최종 패킷에 대해서는, 공통 헤더(231)의 M의 플래그를 세운다. 이러한 플래그를 세움으로써, 수신 장치(103)의 디패킷타이즈 처리부(132)는, 헤더 정보를 참조하는 것만으로 용이하게, 프리싱트의 선두와 프리싱트의 종단을 식별할 수 있다. 이에 의해 디패킷타이즈 처리부(132)는, 후술하는 바와 같이 디패킷타이즈 처리를 고속으로 용이하게 행할 수 있다.
또한, 이 때, 공통 헤더(231)의 IF의 플래그가 세워져 있음으로써, 수신 장치(103)의 디패킷타이즈 처리부(132)는, 헤더 정보를 참조하는 것만으로 용이하게, 패킷에 페이로드가 포함되어 있지 않은 것을 식별할 수 있다. 이에 의해 디패킷타이즈 처리부(132)는, 후술하는 바와 같이 디패킷타이즈 처리를 고속으로 용이하게 행할 수 있다.
다음으로, 패킷을 수신하는 수신 장치(103)의 디패킷타이즈 처리부(132)가 실행하는 처리에 대하여 설명한다. 전술한 바와 같이 디패킷타이즈 처리부(132) 는, 4개의 제어 모드로 디패킷타이즈 처리를 행한다. 디패킷타이즈 처리를 개시할 때, 디패킷타이즈 처리부(132)는, 스타트 모드(301)로 설정된다.
최초로, 그 스타트 모드(301)의 디패킷타이즈 처리부(132)에 의해 실행되는 스타트 모드 처리의 흐름의 예를 도 27의 플로우차트를 참조하여 설명한다.
스텝 S61에서, 패킷 취득부(251)는, 패킷을 취득하였는지의 여부를 판정하고, 수신부(131)를 통하여 패킷을 취득하였다고 판정할 때까지 대기한다. 패킷을 취득하였다고 판정된 경우, 처리는 스텝 S62로 진행한다. 스텝 S62에서, 헤더 정보 해석부(252)는, 패킷의 헤더 정보를 취득하고, 「PID=0」, 「CF=4」, 또한 「SFF=1」인지의 여부를 판정한다. 즉, 헤더 정보 해석부(252)는, 복수의 컴포넌트를 1개로 통합한, 픽쳐의 선두의 프리싱트의 최초의 패킷인지의 여부를 판정한다. 「PID=0」, 「CF=4」, 또한 「SFF=1」이 아니라고 판정된 경우, 처리는 스텝 S61로 되돌아가 그 이후의 처리가 반복된다. 즉, 「PID=0」, 「CF=4」, 또한 「SFF=1」이라고 판정될 때까지, 스텝 S61 및 스텝 S62의 처리가 반복되고, 「PID=0」, 「CF=4」, 또한 「SFF=1」이라고 판정되면, 처리는 스텝 S63으로 진행한다.
스텝 S63에서, 제어부(254)는, 후술하는 바와 같이 각 모드에서 실행되는, 프리싱트의 선두의 패킷에 대한 디패킷타이즈 처리인 모드 공통 처리를 실행한다. 모드 공통 처리의 상세에 대해서는 후술한다. 모드 공통 처리가 종료되면, 제어 모드는 다른 모드로 천이하므로, 스타트 모드 처리는 종료된다.
이상과 같이, 스타트 모드에서, 제어부(254)는, 공통 헤더(231)의 SFF의 값을 참조하는 것만으로, 픽쳐의 선두의 프리싱트의 선두 패킷을 용이하게 검출할 수 있다. 또한, 제어부(254)는, 그 픽쳐의 선두의 프리싱트의 선두 패킷을 검출함으로써, 그 시점에서 모드 공통 처리를 개시하고, 그 프리싱트로부터 페이로드의 추출을 개시할 수 있다. 즉, 제어부(254)는, 프리싱트의 최종 패킷을 확인하지 않고, 신규의 프리싱트를 파악할 수 있으므로, 페이로드 추출의 개시 타이밍을 보다 빠르게 할 수 있어, 지연 시간을 저감시킬 수 있다.
다음으로, 도 27의 스텝 S63에서 실행되는 모드 공통 처리의 흐름의 예를 도 28의 플로우차트를 참조하여 설명한다. 이 모드 공통 처리는, 후술하는 바와 같이, 다른 모드에서도 실행되는 처리이며, 디패킷타이즈 처리부(132)가, 1개 전의 프리싱트의 최종 패킷이 확인되어 있지 않지만, 새로운 프리싱트의 선두 패킷을 확인한 경우에, 그 프리싱트에 대한 디패킷타이즈 처리를 행하는 것이다.
따라서, 이 모드 공통 처리는, 패킷 취득부(251)가 패킷을 이미 취득하고 있는 상태에서 개시된다.
모드 공통 처리가 개시되면, 스텝 S82에서, 헤더 정보 해석부(252)는, 공통 헤더(231)를 참조하여, 「IF=0」인지의 여부를 판정한다. 「IF=1」이라고 판정된 경우, 처리는 스텝 S83으로 진행한다.
「IF=1」이라고 판정된 경우, 제어부(254)는, 스텝 S83에서, 헤더 공급부(255) 및 데이터 공급부(256)를 제어하여, 패킷의 헤더 부분만을 복호부(133)에 전송시킨다. IF=1인 경우, 기본적으로 그 패킷에 페이로드는 포함되어 있지 않다. 만약 포함되어 있다고 하여도 복호 불가능이므로, 제어부(254)는, 데이터 공급부(256)를 제어하여 그 페이로드의 전송을 금지한다.
스텝 S83의 처리가 종료되면, 제어 모드 천이부(253)는, 스텝 S84에서, 제어 모드를, 다음의 프리싱트의 선두 패킷을 대기하는 스탠바이 모드로 천이한다. 스탠바이 모드의 처리에 대해서는 후술한다. 제어 모드가 천이되면 모드 공통 처리는 종료된다.
스텝 S82에서, 「IF=0」이라고 판정된 경우, 처리는 스텝 S85로 진행한다. 이 경우, 페이로드의 부호화 데이터는 정상적으로 부호화된 데이터이다. 스텝 S85에서, 헤더 공급부(255)는, 제어부(254)에 의해 제어되어, 프리싱트 헤더 4워드분을 복호부(133)에 전송한다.
스텝 S86에서, 헤더 정보 해석부(252)는, 공통 헤더(231)를 참조하여, 「PID=0」이고 「CF=4」인지의 여부를 판정한다. 「PID=0」이고 「CF=4」라고 판정된 경우, 처리는 스텝 S87로 진행한다. 스텝 S87에서, 헤더 정보 해석부(252)는, 공통 헤더(231)를 참조하여, 「w=1」인지의 여부를 판정한다. 「w=1」이라고 판정된 경우, 처리는 스텝 S88로 진행하고, 헤더 공급부(255)는, 제어부(254)에 의해 제어되어, 픽쳐 헤더(172)를, 웨이팅 테이블도 포함시키도록 26워드분 복호부(133)에 전송한다. 스텝 S88의 처리가 종료되면, 처리는 스텝 S90으로 진행한다.
또한, 스텝 S87에서, 「w=1」이 아니라고 판정된 경우, 처리는 스텝 S89로 진행하고, 헤더 공급부(255)는, 제어부(254)에 의해 제어되어, 픽쳐 헤더(172)를, 웨이팅 테이블도 포함시키지 않도록 6워드분만 복호부(133)에 전송한다. 스텝 S89의 처리가 종료되면, 처리는 스텝 S90으로 진행한다.
또한, 스텝 S86에서, 「PID=0」이고 「CF=4」라고 판정된 경우, 픽쳐의 선두 의 프리싱트가 아니므로, 헤더 공급부(255)는, 제어부(254)에 의해 제어되어, 픽쳐 헤더(172)를 복호부(133)에 전송하지 않는다. 따라서, 이 경우, 처리는 스텝 S90으로 진행한다.
스텝 S90에서, 데이터 공급부(256)는, 제어부(254)에 의해 제어되어, 패킷의 남은 페이로드, 즉 부호화 데이터를 복호부(133)에 전송한다. 스텝 S91에서, 헤더 정보 해석부(252)는, 공통 헤더(231)를 참조하여, 「M=1」인지의 여부를 판정한다. 「M=1」이며, 처리 대상의 패킷이 프리싱트의 최종 패킷이라고 판정된 경우, 처리는 스텝 S92로 진행하고, 제어부(254)는, 제어 모드 천이부(253)에 의해 제어되어, 제어 모드를 스탠바이 모드로 천이한다. 즉, 금회 최종 패킷의 처리가 종료되었으므로, 제어 모드는, 다음의 프리싱트의 선두 패킷을 대기하는 스탠바이 모드로 천이된다. 제어 모드가 천이되면 모드 공통 처리는 종료된다.
또한, 스텝 S91에서, 「M=1」이 아니고, 처리 대상의 패킷이 프리싱트의 최종 패킷이 아니라고 판정된 경우, 처리는 스텝 S93으로 진행하고, 제어부(254)는, 제어 모드 천이부(253)에 의해 제어되어, 제어 모드를 프로세싱 모드로 천이한다. 즉, 금회 최종 패킷이 아닌 패킷의 전송 처리가 정상적으로 종료되었으므로, 제어 모드는, 동일한 프리싱트의 후속의 패킷을 대기하는 프로세싱 모드로 천이된다. 제어 모드가 천이되면 모드 공통 처리는 종료된다. 이 모드 공통 처리가 도 27의 스텝 S63에서 실행된 것이면, 모드 공통 처리 종료에 의해, 처리는 도 27의 스텝 S63으로 되돌아가고, 스타트 모드 처리가 종료된다.
이상과 같이, 디패킷타이즈 처리부(132)는, SFF나 M의 값에 기초하여, 프리 싱트의 선두 패킷이나 최종 패킷을 용이하게 식별할 수 있다. 또한, M에 의해 최종 패킷을 식별할 수 있으므로, 디패킷타이즈 처리부(132)는, 용이하게 프리싱트마다 모드를 적절히 천이시킬 수 있다. 이에 의해, 디패킷타이즈 처리부(132)는, 각 프리싱트에 대하여 적절하게 디패킷타이즈 처리를 행할 수 있다. 또한, SFF에 의해 선두 패킷을 식별할 수 있으므로, 디패킷타이즈 처리부(132)는, 최종 패킷을 확인하지 않아도 프리싱트의 갱신을 파악할 수 있다. 즉, 예를 들면, 패킷 로스가 발생한 경우, 즉, 취득한 패킷의 시퀀스 번호가 전회 취득한 패킷의 시퀀스 번호와 연속하고 있지 않은 경우이어도, 디패킷타이즈 처리부(132)는, 그 패킷이 새로운 프리싱트의 선두 패킷이면, 다음의 프리싱트를 대기하지 않고, 그 새로운 프리싱트의 패킷으로부터 페이로드의 추출을 개시할 수 있다. 즉, 디패킷타이즈 처리부(132)는, 불필요한 대기 시간을 저감시킬 수 있다. 물론, 스타트 모드뿐만 아니라, 프로세싱 모드나 로스 모드에서 모드 공통 처리를 실행하는 경우에도, 디패킷타이즈 처리부(132)는, 대기 시간을 단축할 수 있으므로, 지연 시간의 단축을 실현할 수 있다.
또한, 스텝 S83과 같이, 디패킷타이즈 처리부(132)는, 공통 헤더(231)를 참조하는 것만으로, 용이하게, 복호 불가능한 불필요한 페이로드를 복호부(133)에 공급하는 것을 억제할 수 있다. 이에 의해 복호부(133)의 복호 처리의 부하를 경감시킬 수 있다. 또한, 헤더 정보는, 복호 처리에 이용 가능하므로, 제어부(254)는, 헤더 정보만을 전송시킨다.
다음으로, 스탠바이 모드 처리의 흐름의 예를 도 29의 플로우차트를 참조하 여 설명한다. 이 스탠바이 모드 처리는, 다음의 프리싱트의 선두 패킷을 대기하는 모드의 처리이며, 제어 모드 천이부(253)에 의해 제어 모드가 스탠바이 모드로 천이되면, 개시된다.
스탠바이 모드 처리가 개시되면, 패킷 취득부(251)는, 스텝 S111에서, 패킷을 수신하였는지의 여부를 판정하고, 수신하였다고 판정할 때까지 대기한다. 수신부(131)로부터 패킷이 공급되어, 패킷을 수신하였다고 판정된 경우, 처리는 스텝 S112로 진행한다.
스텝 S112에서, 헤더 정보 해석부(252)는, RTP 헤더(221)를 참조하여, 시퀀스 번호가 전회 수신한 패킷과 연속하는지의 여부를 판정한다. 시퀀스 번호가 전회 수신한 패킷과 연속하고 있지 않은 경우, 패킷의 수신에 실패하였다는(패킷 로스가 발생하였다는) 것을 나타낸다. 시퀀스 번호가 전회 수신한 패킷과 연속하고 있고, 패킷 로스가 발생하고 있지 않다고 판정된 경우, 처리는 스텝 S113으로 진행한다
스텝 S113 내지 스텝 S122의 각 처리는, 도 28을 참조하여 설명한 모드 공통 처리의 스텝 S82 및 스텝 S83, 스텝 S85 내지 스텝 S91, 및 스텝 S93의 각 처리와 마찬가지로 실행된다.
즉, 스텝 S113의 처리는 스텝 S82에 대응하고, 스텝 S114의 처리는 스텝 S83에 대응한다. 단, 스탠바이 모드 처리의 경우, 이미 스탠바이 모드이므로, 도 28의 스텝 S84에 대응하는 처리는 생략되고, 스텝 S111로 처리가 진행된다(도 28에서 스탠바이 모드로 천이하고, 스탠바이 모드 처리가 개시되는 것과 동등함).
또한, 스텝 S115 내지 스텝 S121은, 각각, 도 28의 스텝 S85 내지 스텝 S91에 대응한다. 단, 스탠바이 모드 처리의 경우, 이미 스탠바이 모드이므로, 스텝 S121에서 「M=1」이라고 판정된 경우, 도 28의 스텝 S92에 대응하는 처리는 생략되고, 스텝 S111로 처리가 진행된다(도 28에서 스탠바이 모드로 천이하고, 스탠바이 모드 처리가 개시되는 것과 동등함).
또한, 스텝 S121에서, 「M=1」이 아니라고 판정된 경우, 처리는 스텝 S122로 진행한다. 이 스텝 S122의 처리는, 도 28의 스텝 S93의 처리에 대응하고, 제어 모드 천이부(253)가 제어 모드를 프로세싱 모드로 천이시키면, 스탠바이 모드 처리는 종료된다.
또한, 스텝 S112에서, 시퀀스 번호가 전회 수신한 패킷과 연속하고 있지 않고, 패킷 로스가 발생하였다고 판정된 경우, 처리는 스텝 S123으로 진행한다.
스텝 S123에서, 헤더 정보 해석부(252)는, 공통 헤더(231)를 참조하여, 「SFF=1」인지의 여부를 판정한다. 「SFF=1」이라고 판정된 경우, 처리는 스텝 S113으로 되돌아가고, 그 이후의 처리를 반복한다. 복호 처리는 프리싱트 단위로 행해지므로, 프리싱트 내에서 패킷 로스가 발생하고 있지 않으면, 그 프리싱트는 복호 가능하다. 즉, 「SFF=1」인 경우, 현재 처리 대상의 패킷이 속하는 프리싱트가 아니라, 과거의 프리싱트에서 패킷 로스가 발생한 것을 나타내고 있다. 게다가, 스탠바이 모드의 경우, 그 과거의 프리싱트의 부호화 데이터의, 복호부(133)에 의한 축적은 종료되어 있다. 따라서, 패킷 로스가 발생하여도, 새롭게 취득한 패킷이 새로운 프리싱트의 선두 패킷이면, 그 패킷 로스는 무시되고, 처리는 스텝 S113으 로 되돌려진다.
스텝 S123에서, 「SFF=1」이 아니라고 판정된 경우, 처리는 스텝 S124로 진행한다. 이 경우, 패킷 로스는, 처리 대상의 패킷과 동일한 프리싱트 내에서 발생하고 있다. 따라서, 그 프리싱트는 복호할 수 없으므로, 페이로드의 전송은 중지된다. 즉, 스텝 S124에서, 데이터 공급부(256)는, 제어부(254)에 의해 제어되어, 수신한 패킷을, 복호부(133)에 전송하지 않고 파기한다.
전술한 바와 같이, 스탠바이 모드이므로, 과거의 프리싱트의 부호화 데이터의, 복호부(133)에 의한 축적은 종료되어 있고, 새로운 프리싱트의 부호화 데이터는 아직 축적되어 있지 않다. 따라서, 이 경우, 복호부(133)는 데이터를 파기할 필요가 없으므로, 디패킷타이즈 처리부(132)는, 복호부(133)에 에러를 통지할 필요는 없다.
스텝 S125에서, 제어부(254)는, 제어 모드 천이부(253)에 의해 제어되어, 제어 모드를, 에러가 발생한 프리싱트에서 다음의 프리싱트의 패킷을 취득할 때까지 대기하는 모드인 로스 모드로 천이한다. 제어 모드가 로스 모드로 천이되면, 스탠바이 모드 처리는 종료된다.
이상과 같이, 스탠바이 모드에서 디패킷타이즈 처리부(132)는, SFF나 M의 값에 기초하여, 프리싱트의 선두 패킷이나 최종 패킷을 용이하게 식별할 수 있다. 또한, M에 의해 최종 패킷을 식별할 수 있으므로, 디패킷타이즈 처리부(132)는, 용이하게 프리싱트마다 모드를 적절히 천이시킬 수 있다. 이에 의해, 디패킷타이즈 처리부(132)는, 각 프리싱트에 대하여 적절하게 디패킷타이즈 처리를 행할 수 있 다. 또한, SFF에 의해 선두 패킷을 식별할 수 있으므로, 디패킷타이즈 처리부(132)는, 최종 패킷을 확인하지 않아도 프리싱트의 갱신을 파악할 수 있다. 즉, 예를 들면, 패킷 로스가 발생한 경우, 즉, 취득한 패킷의 시퀀스 번호가 전회 취득한 패킷의 시퀀스 번호와 연속하고 있지 않은 경우이어도, 디패킷타이즈 처리부(132)는, 그 패킷이 새로운 프리싱트의 선두 패킷이면, 다음의 프리싱트를 대기하지 않고, 그 새로운 프리싱트의 패킷으로부터 페이로드의 추출을 개시할 수 있다. 즉, 디패킷타이즈 처리부(132)는, 불필요한 대기 시간을 저감시킬 수 있다.
다음으로, 프로세싱 모드 처리의 흐름의 예를 도 30의 플로우차트를 참조하여 설명한다. 이 프로세싱 모드 처리는, 동일한 프리싱트의 후속의 패킷을 대기하는 모드의 처리이며, 제어 모드 천이부(253)에 의해 제어 모드가 프로세싱 모드로 천이되면, 개시된다.
프로세싱 모드 처리가 개시되면, 패킷 취득부(251)는, 스텝 S141에서, 패킷을 수신하였는지의 여부를 판정하고, 수신하였다고 판정할 때까지 대기한다. 수신부(131)로부터 패킷이 공급되어, 패킷을 수신하였다고 판정된 경우, 처리는 스텝 S142로 진행한다.
스텝 S142에서, 헤더 정보 해석부(252)는, RTP 헤더(221)를 참조하여, 시퀀스 번호가 전회 수신한 패킷과 연속하는지의 여부를 판정한다. 시퀀스 번호가 전회 수신한 패킷과 연속하고 있고, 패킷 로스가 발생하고 있지 않다고 판정된 경우, 처리는 스텝 S143으로 진행한다.
스텝 S143에서, 헤더 공급부(255)는, 제어부(254)에 의해 제어되어, 패킷으 로부터 공통 헤더(231)를 삭제한다. 스텝 S144에서, 데이터 공급부(256)는, 제어부(254)에 의해 제어되어, 남은 페이로드 데이터를 복호부(133)에 전송한다. 스텝 S145에서, 헤더 정보 해석부(252)는, 공통 헤더(231)를 참조하여, 「M=1」인지의 여부를 판정하고, 「M=1」이 아니고 프리싱트의 최종 패킷이 아니라고 판정된 경우, 동일한 프리싱트에 후속의 패킷이 존재하므로, 처리는 스텝 S141로 되돌아가, 그 이후의 처리가 반복된다.
즉, 스텝 S141 내지 스텝 S145의 처리가 반복되면서, 프리싱트의 각 패킷으로부터 페이로드가 추출되어 복호부(133)에 전송된다.
스텝 S145에서, 「M=1」이며, 처리 대상의 패킷이 프리싱트의 최종 패킷이라고 판정된 경우, 처리는 스텝 S146으로 진행하고, 제어부(254)는, 제어 모드 천이부(253)에 의해 제어되어, 제어 모드를 스탠바이 모드로 천이한다. 제어 모드가 스탠바이 모드로 천이되면 프로세싱 모드 처리는 종료된다.
또한, 스텝 S142에서, 시퀀스 번호가 전회 수신한 패킷과 연속하고 있지 않고, 패킷 로스가 발생하였다고 판정된 경우, 처리는 스텝 S147로 진행한다.
이 경우, 그 프리싱트의 데이터를 복호부(133)에서 축적 중이므로, 스텝 S147에서, 에러 통지부(257)는, 제어부(254)에 의해 제어되어, 전송 에러를 복호부(133)에 통지한다.
에러 통지가 종료되면, 헤더 정보 해석부(252)는, 스텝 S148에서, 공통 헤더(231)를 참조하여, 「SFF=1」인지의 여부를 판정한다. 「SFF=1」이라고 판정된 경우, 처리는 스텝 S149로 진행한다. 스텝 S149에서, 제어부(254)는, 도 28의 플 로우차트를 참조하여 설명한 모드 공통 처리를 실행한다. 이 경우, 모드 공통 처리가 종료되면, 처리는 도 30의 스텝 S149로 되돌아가, 프로세싱 모드 처리가 종료된다.
또한, 스텝 S148에서, 「SFF=1」이 아니라고 판정된 경우, 처리는 스텝 S150으로 진행하고, 데이터 공급부(256)는, 제어부(254)에 의해 제어되어 수신한 패킷을 파기한다. 스텝 S151에서, 제어부(254)는, 제어 모드 천이부(253)에 의해 제어되어, 제어 모드를 로스 모드로 천이한다. 제어 모드가 로스 모드로 천이되면 프로세싱 모드 처리는 종료된다.
이상과 같이, 프로세싱 모드에서 디패킷타이즈 처리부(132)는, SFF나 M의 값에 기초하여, 프리싱트의 선두 패킷이나 최종 패킷을 용이하게 식별할 수 있다. 또한, M에 의해 최종 패킷을 식별할 수 있으므로, 디패킷타이즈 처리부(132)는, 용이하게 프리싱트마다 모드를 적절히 천이시킬 수 있다. 이에 의해, 디패킷타이즈 처리부(132)는, 각 프리싱트에 대하여 적절하게 디패킷타이즈 처리를 행할 수 있다. 또한, SFF에 의해 선두 패킷을 식별할 수 있으므로, 디패킷타이즈 처리부(132)는, 최종 패킷을 확인하지 않아도 프리싱트의 갱신을 파악할 수 있다.
예를 들면, 패킷 로스가 발생하고 있지 않은 경우, 디패킷타이즈 처리부(132)는, 순차적으로 공급되는 각 패킷으로부터 페이로드를 추출하고, M의 값에 기초하여 최종 패킷을 확인하고, 그 프리싱트에 대한 처리가 종료되었다고 판정한 경우, 스탠바이 모드로 천이한다.
패킷 로스가 발생한 경우, 디패킷타이즈 처리부(132)는, 복호부(133)에 에러 를 통지하고, 선두 패킷이 아니면 그 패킷을 파기하고, 다음의 프리싱트의 패킷을 확인할 때까지 대기하도록 로스 모드로 천이한다. 단,「SFF=1」일 때, 즉, 패킷 로스를 확인했을 때에 취득한 패킷이 새로운 프리싱트의 선두 패킷이면, 디패킷타이즈 처리부(132)는, 모드 공통 처리를 실행함으로써, 스탠바이 모드나 로스 모드로 천이하지 않고, 즉, 새로운 프리싱트의 패킷을 대기하지 않고, 그 프리싱트로부터 페이로드 추출을 개시할 수 있으므로, 페이로드 추출의 개시 타이밍을 보다 빠르게 할 수 있어, 지연 시간을 저감시킬 수 있다.
다음으로, 도 31의 플로우차트를 참조하여 로스 모드 처리의 흐름의 예를 설명한다. 이 로스 모드 처리는, 동일한 프리싱트에서 패킷 로스가 발생했을 때에 다음의 프리싱트의 패킷을 수신할 때까지 대기하는 모드의 처리이며, 제어 모드 천이부(253)에 의해 제어 모드가 로스 모드로 천이되면, 개시된다.
로스 모드 처리가 개시되면, 패킷 취득부(251)는, 스텝 S171에서, 패킷을 수신하였는지의 여부를 판정하고, 수신하였다고 판정할 때까지 대기한다. 수신부(131)로부터 패킷이 공급되고, 패킷을 수신하였다고 판정된 경우, 처리는 스텝 S172로 진행한다.
스텝 S172에서, 헤더 정보 해석부(252)는, 공통 헤더(231)를 참조하여, 「SFF=1」인지의 여부를 판정한다. 「SFF=1」이 아니고, 프리싱트의 선두 패킷이 아니라고 판정된 경우, 처리는 스텝 S173으로 진행하고, 헤더 정보 해석부(252)는, 이번은, 「M=1」인지의 여부를 판정한다. 「M=1」이 아닌, 즉 프리싱트의 최종 패킷이 아니라고 판정된 경우, 처리는 스텝 S171로 되돌아가 그 이후의 처리가 반복 된다.
스텝 S173에서, 「M=1」이라고 판정된 경우, 처리는 스텝 S174로 진행하고, 제어부(254)는, 제어 모드 천이부(253)에 의해 제어되어 제어 모드를 스탠바이 모드로 천이한다. 제어 모드가 스탠바이 모드로 천이되면 로스 모드 처리는 종료된다.
또한, 스텝 S172에서, 「SFF=1」이라고 판정된 경우, 제어부(254)는, 도 28의 플로우차트를 참조하여 설명한 모드 공통 처리를 실행한다. 이 경우, 모드 공통 처리가 종료되면, 처리는 도 31의 스텝 S175로 되돌아가고, 로스 모드 처리가 종료된다.
즉, 로스 모드에서도, 디패킷타이즈 처리부(132)는, SFF나 M의 값에 기초하여, 프리싱트의 선두 패킷이나 최종 패킷을 용이하게 식별할 수 있다. 또한, M에 의해 최종 패킷을 식별할 수 있으므로, 디패킷타이즈 처리부(132)는, 용이하게 프리싱트마다 모드를 적절히 천이시킬 수 있다. 이에 의해, 디패킷타이즈 처리부(132)는, 각 프리싱트에 대하여 적절하게 디패킷타이즈 처리를 행할 수 있다. 또한, SFF에 의해 선두 패킷을 식별할 수 있으므로, 디패킷타이즈 처리부(132)는, 최종 패킷을 확인하지 않아도 프리싱트의 갱신을 파악할 수 있다.
로스 모드의 경우, 디패킷타이즈 처리부(132)는, 패킷을 취득하면서, 기본적으로 대기하고, M의 값에 기초하여 최종 패킷을 검출한 경우, 스탠바이 모드로 천이하고, 다음의 프리싱트의 선두 패킷의 취득에 대비한다. 또한, SFF의 값에 기초하여 선두 패킷을 검출한 경우, 디패킷타이즈 처리부(132)는, 모드 공통 처리를 실 행 함으로써, 그 프리싱트로부터 페이로드의 추출을 개시한다.
이와 같이 함으로써, 디패킷타이즈 처리부(132)는, 페이로드의 추출의 개시 타이밍을 보다 빠르게 할 수 있어, 지연 시간을 저감시킬 수 있다.
이상과 같이, 상황에 따라서 제어 모드를 절환하면서 디패킷타이즈 처리를 행함으로써, 디패킷타이즈 처리부(132)는, 디패킷타이즈용의 버퍼를 설치하여, 프리싱트마다 패킷을 축적하지 않아도, 공급되는 패킷의 헤더 정보에 기초하여 순차적으로 적절하게 처리를 행할 수 있어, 용이하게 고속으로 디패킷타이즈 처리를 행할 수 있다. 또한, 패킷 로스가 발생한 경우, 디패킷타이즈 처리부(132)는, 필요에 따라서 에러 통지를 행하므로 복호부(133)는, 불필요한 복호 처리의 실행을 억제하여, 복호 처리의 부하를 경감시킬 수 있다.
또한, IF의 값에 의해, 디패킷타이즈 처리부(132)는, 용이하게, 복호 불가능한 불필요한 페이로드를 복호부(133)에 공급하는 것을 억제할 수 있다. 이에 의해 복호부(133)의 복호 처리의 부하를 경감시킬 수 있다.
복호부(133)는, 이상과 같은 디패킷타이즈 처리부(132)의 처리에 대응하여, 디패킷타이즈 처리부(132)로부터 공급되는 부호화 데이터의 복호 처리를 행한다. 그 때문에, 복호부(133)는, 복호 처리의 실행을 제어하는 복호 제어 처리를 실행한다. 도 32의 플로우차트를 참조하여, 복호 제어 처리의 흐름의 예를 설명한다. 이 부호화 제어 처리는, 부호화 데이터의 공급이 개시되고 나서 종료될 때까지의 동안 실행된다.
스텝 S191에서, 데이터 취득부(355)는, 디패킷타이즈 처리부(132)로부터 공 급되는 부호화 데이터를 취득한다. 스텝 S192에서, 버퍼부(361)는, 그 부호화 데이터를 축적한다. 스텝 S193에서, 제어 정보 취득부(351)는, 제어 정보를 취득한다. 스텝 S194에서, 복호 제어부(352)는, 제어 정보 취득부(351)가 취득한 제어 정보에 기초하여, 데이터 취득부(355)가 취득한 데이터가 프리싱트의 선두 패킷의 페이로드인지의 여부를 판정한다. 프리싱트의 선두 패킷의 페이로드라고 판정된 경우, 처리는 스텝 S195로 진행한다. 스텝 S195에서, 복호 제어부(352)는, 제어 정보 취득부(351)가 취득한 제어 정보에 기초하여, 데이터 취득부(355)에 취득되고 버퍼부(361)에 축적된 데이터가 연속하고 있는지의 여부를 판정한다. 패킷 로스가 발생하고 있지 않고, 데이터 취득부(355)에 취득되고 버퍼부(361)에 축적된 데이터가 연속하고 있다고 판정된 경우, 처리는, 스텝 S191로 되돌아가고, 다음의 부호화 데이터에 대하여, 스텝 S191 이후의 처리가 반복된다.
또한, 스텝 S195에서, 패킷 로스가 발생하고, 데이터가 연속하고 있지 않다고 판정된 경우, 처리는 스텝 S196으로 진행한다. 스텝 S196에서, 복호 제어부(352)는, 엔트로피 복호부(362)를 제어하고, 보완 처리를 개시시킨다. 엔트로피 복호부(362)는, 프리싱트 단위로 복호 처리를 행하는데, 프리싱트의 데이터가 누락된 경우, 다른 프리싱트의 데이터 등을 이용하여 보완 처리를 행한다.
따라서, 복호 제어부(352)는, 전회 취득한 패킷과 연속하고 있지 않은 선두 패킷을 취득한 경우, 엔트로피 복호부(362)를 제어하고, 그 1개 전의 프리싱트에 대하여 보완 처리를 실행시킨다. 보완 처리가 종료되면, 처리는 스텝 S197로 진행한다.
스텝 S197에서, 복호 제어부(352)는, 복호 제어 처리를 종료하는지의 여부를 판정하고, 종료하고 있지 않다고 판정된 경우, 처리는 스텝 S191로 되돌아가, 그 이후의 처리가 반복된다. 또한, 스텝 S197에서, 복호 제어 처리를 종료한다고 판정된 경우, 복호 제어 처리가 종료된다.
또한, 스텝 S194에서, 데이터 취득부(355)가 취득한 데이터가 프리싱트의 선두 패킷의 페이로드가 아니라고 판정된 경우, 처리는 스텝 S198로 진행하고, 복호 제어부(352)는, 데이터 취득부(355)가 취득한 데이터가 프리싱트의 최종 패킷의 페이로드인지의 여부를 판정한다. 프리싱트의 최종 패킷의 페이로드라고 판정된 경우, 처리는 스텝 S199로 진행하고, 복호 제어부(352)는, 엔트로피 복호부(362)를 제어하여, 버퍼부(361)에 축적되어 있는 부호화 데이터에 대하여, 복호 처리를 개시시킨다. 스텝 S199의 처리가 종료되면, 처리는 스텝 S197로 되돌아간다.
또한, 스텝 S198에서, 데이터 취득부(355)가 취득한 데이터가 프리싱트의 최종 패킷의 페이로드가 아니라고 판정된 경우, 처리는 스텝 S197로 되돌아간다.
다음으로, 도 33의 스텝 S199에서 개시되는 복호 처리의 흐름의 예를 도 35의 플로우차트를 참조하여 설명한다. 이 복호 처리는, 도 34의 복호 제어 처리에 의해 제어되어, 프리싱트 단위로 실행된다.
복호 처리가 개시되면, 엔트로피 복호부(362)는, 스텝 S211에서, 버퍼부(361)에 축적되어 있는 부호화 데이터를 취득하고, 스텝 S212에서, 라인마다 부호화 데이터를 엔트로피 복호한다. 스텝 S213에서, 버퍼부(361)는, 그 복호되어 얻어진 계수 데이터를 유지한다. 스텝 S214에서 웨이브릿 역변환부(363)는, 버퍼 부(361)에 1프리싱트분의 계수 데이터가 축적되었는지의 여부를 판정하고, 축적되어 있지 않다고 판정한 경우, 처리를 스텝 S211로 되돌려서, 그 이후의 처리를 실행시키고, 버퍼부(361)에 1프리싱트분의 계수 데이터가 축적될 때까지 대기한다.
스텝 S214에서 버퍼부(361)에 1프리싱트분의 계수 데이터가 축적되었다고 판정한 경우, 웨이브릿 역변환부(363)는, 처리를 스텝 S215로 진행시키고, 버퍼부(361)에 유지되어 있는 계수 데이터를 1프리싱트분 읽어낸다.
그리고 그 읽어낸 계수 데이터에 대하여, 웨이브릿 역변환부(363)는, 스텝 S216에서, 화면 수직 방향으로 배열하는 계수 데이터에 대하여 합성 필터링 처리를 행하는 수직 합성 필터링 처리를 행하고, 스텝 S217에서, 화면 수평 방향으로 배열하는 계수 데이터에 대하여 합성 필터링 처리를 행하는 수평 합성 필터링 처리를 행하고, 스텝 S218에서, 합성 필터링 처리가 레벨 1(분해 레벨의 값이 「1」인 레벨)까지 종료되었는지의 여부, 즉, 웨이브릿 변환 전의 상태까지 역변환되었는지의 여부를 판정하고, 레벨 1까지 도달하고 있지 않다고 판정한 경우, 처리를 스텝 S216으로 되돌려서, 스텝 S216 및 스텝 S217의 필터링 처리를 반복한다
스텝 S218에서, 레벨 1까지 역변환 처리가 종료되었다고 판정한 경우, 웨이브릿 역변환부(363)는, 처리를 스텝 S219로 진행시키고, 역변환 처리에 의해 얻어진 화상 데이터를 외부에 출력한다.
스텝 S220에서, 엔트로피 복호부(362)는, 복호 처리를 종료하는지의 여부를 판정하고, 복호 처리를 종료하지 않는다고 판정한 경우, 처리를 스텝 S211로 되돌리고, 그 이후의 처리를 반복한다. 또한, 스텝 S220에서, 프리싱트가 종료하는 등 하여 복호 처리를 종료한다고 판정한 경우, 엔트로피 복호부(362)는, 복호 처리를 종료한다.
종래의 웨이브릿 역변환의 방법의 경우, 처리 대상의 분해 레벨의 전체 계수에 대하여, 우선, 화면 수평 방향으로 수평 합성 필터링 처리를 행하고, 다음으로 화면 수직 방향으로 수직 합성 필터링 처리를 행하고 있었다. 즉, 각 합성 필터링 처리 때마다, 그 합성 필터링 처리의 결과를 버퍼에 유지시킬 필요가 있는데, 그 때, 버퍼는, 그 시점의 분해 레벨의 합성 필터링 결과와, 다음의 분해 레벨의 전계수를 유지할 필요가 있어, 많은 메모리 용량을 필요로 하게 된다(유지하는 데이터량이 많음).
또한, 이 경우, 픽쳐(인터레이스 방식의 경우 필드) 내에서 모든 웨이브릿 역변환이 종료할 때까지 화상 데이터 출력이 행해지지 않으므로, 입력부터 출력까지의 지연 시간이 증대된다.
이에 대하여, 복호부(133)의 웨이브릿 역변환부(363)의 경우, 전술한 바와 같이 프리싱트 단위로 수직 합성 필터링 처리 및 수평 합성 필터링 처리를 레벨 1까지 연속하여 행하므로, 종래의 방법과 비교하여, 한번에(동시기에) 버퍼링할 필요가 있는 데이터의 양이 적어, 준비할 버퍼의 메모리량을 대폭 저감시킬 수 있다. 또한, 레벨 1까지 합성 필터링 처리(웨이브릿 역변환 처리)가 행해짐으로써, 픽쳐 내의 전체 화상 데이터가 얻어지기 전에(프리싱트 단위로) 화상 데이터를 순차적으로 출력시킬 수 있어, 종래의 방법과 비교하여 지연 시간을 대폭 저감시킬 수 있다.
다음으로, 복호부(133)에서, 도 32의 복호 제어 처리와 병행하여 행해지는, 디패킷타이즈 처리부(132)로부터의 에러 통지에 대한 처리인 에러 통지 대응 처리의 흐름의 예를 도 34의 플로우차트를 참조하여 설명한다.
도 34에서, 에러 통지 처리가 개시되면, 에러 통지 취득부(356)는, 스텝 S241에서, 디패킷타이즈 처리부(132)로부터 에러 통지를 취득하였는지의 여부를 판정한다. 에러 통지를 취득하였다고 판정될 때까지 처리는 대기한다. 스텝 S241에서 에러 통지를 취득하였다고 판정된 경우, 처리는 스텝 S242로 진행한다. 스텝 S242에서, 파기 처리부(357)는, 버퍼부(361)에 현재 수신 도중의 프리싱트(패킷 로스가 발생한 최신의 프리싱트에 속하는 부호화 데이터)가 존재하는지의 여부를 판정한다.
현재 수신 도중인 프리싱트가 버퍼부(361)에 존재한다고 판정된 경우, 처리는 스텝 S243으로 진행한다. 스텝 S243에서, 파기 처리부(357)는, 버퍼부(361)에 축적되어 있는 수신 중의 슬라이스를 파기한다. 스텝 S243의 처리가 종료되면, 처리는 스텝 S244로 진행한다. 또한, 스텝 S242에서, 현재 수신 도중인 슬라이스가 버퍼부(361)에 존재하지 않는다고 판정된 경우, 스텝 S243의 처리는 생략되고, 처리는 스텝 S244로 진행한다.
스텝 S244에서, 파기 처리부(357)는, 에러 통지 대응 처리를 종료하는지의 여부를 판정한다. 디패킷타이즈 처리는 계속되고 있고, 에러 통지 대응 처리도 종료하지 않는다고 판정된 경우, 처리는 스텝 S241로 되돌아가고, 그 이후의 처리를 반복한다. 또한, 스텝 S244에서, 에러 통지 대응 처리를 종료한다고 판정된 경우, 에러 통지 대응 처리는 종료된다.
이상과 같이, 복호부(133)는, 디패킷타이즈 처리부(132)로부터의 에러 통지에 따라서, 패킷 로스가 발생한 슬라이스의 부호화 데이터를 파기하므로, 불필요한 복호 처리를 행하지 않도록 할 수 있다. 이와 같이 적절한 복호 처리를 행할 수 있으므로, 복호부(133)는, 복호 처리를 용이하게 고속으로 행할 수 있고, 복호 처리의 부하를 저감하여, 회로 규모나 코스트를 저감시킬 수 있다.
디패킷타이즈 처리부(132)에 의해 행해지는 에러 통지의 모습의 예를 도 35에 나타낸다.
도 35에서, 디패킷타이즈 처리부(132)와 복호부(133)는, 6개의 신호선으로 접속되어 있는 것으로 한다. 디패킷타이즈 처리부(132)는, 수신한 패킷(1)으로부터 RTP 헤더 등을 삭제하여 추출한 부호화 데이터(Data1)를 복호부(133)에 공급한다. 이 때, 이 부호화 데이터(Data1)가 새로운 슬라이스의 선두이었던 경우, 디패킷타이즈 처리부(132)의 제어 신호 공급부(258)는, 제어부(254)에 의해 제어되어 스타트 정보(START)를 통지한다.
다음에 도착한 패킷이 패킷(5)이었던 경우, 패킷 로스가 있었다고 판단된다. 이 때, 복호부(133)에는 프리싱트의 일부인 Data1이 이미 전송되어 있기 때문에, 디패킷타이즈 처리부(132)의 에러 통지부(257)는, 제어부(254)에 의해 제어되어 에러 통지를 행한다. 또한, 패킷(5)은 「SFF=1」이었기 때문에, 디패킷타이즈 처리부(132)의 제어 신호 공급부(258)는, 제어부(254)에 의해 제어되어, 스타트 정보(START)를 통지한다.
또한, 이상에서는, 패킷타이즈 처리부(122)는, 프리싱트의 데이터 사이즈가 패킷 사이즈보다 큰 경우, 데이터를 분할하여 복수의 패킷을 생성하고, 그렇지 않은 경우, 1개의 패킷을 생성하도록 설명했지만, 프리싱트의 데이터 사이즈가 패킷 사이즈에 비하여 작은 경우, 복수의 프리싱트의 데이터를 1개의 패킷으로 하도록 하여도 된다.
그 경우, 페이로드 헤더의 구성은, 예를 들면, 도 36에 도시되는 바와 같이, 헤더 정보 및 페이로드가 순차 배열된다. 도 36의 예의 경우, 첫번째의 프리싱트의 데이터인 공통 헤더(231) 내지 페이로드(237)의 뒤에, 두번째의 프리싱트의 데이터인 세그먼트 정보(431), 양자화 파라미터 정보(432), 사이즈 정보(433), 포맷 정보(434), 픽쳐 정보(435), 컬러 정보(436), 및 페이로드(437)가 구성되고, 그 후에는 세번째 이후의 프리싱트의 데이터가 배열한다.
세그먼트 정보(431)는, 두번째의 프리싱트에 대한 공통 헤더이며, 도 37에 도시되는 바와 같이, 기본적으로 공통 헤더(231)와 마찬가지의 정보가 포함된다. 즉, 세그먼트 정보(431)는, 프리싱트 헤더(171)에 기초하여 작성된다. 또한, 자기 자신보다도 뒤에 다른 프리싱트의 데이터가 존재하는 경우, 공통 헤더(231)(세그먼트 정보(431)도 마찬가지임)에서, NF의 값이 「1」로 설정된다.
이 경우의 패킷타이즈 처리의 흐름의 예를 도 38의 플로우차트를 참조하여 설명한다.
도 38에 도시되는 바와 같이, 이 경우의 패킷타이즈 처리도 기본적으로 도 26을 참조하여 설명한 경우와 마찬가지로 실행된다. 스텝 S301 내지 스텝 S312의 각 처리는, 도 26의 스텝 S31 내지 스텝 S42의 각 처리와 마찬가지로 실행되고, 스텝 S315 내지 스텝 S317의 각 처리는, 도 26의 스텝 S43 내지 스텝 S45의 각 처리와 마찬가지로 실행된다.
단, 스텝 S310에서, 프리싱트의 사이즈가 패킷 사이즈보다 크지 않다고 판정된 경우, 패킷타이즈 처리부(122)의 사이즈 확인부(207)는, 동일한 패킷에 새로운 페이로드를 추가 가능한지의 여부를 판정한다. 패킷 사이즈에 여유가 있고, 페이로드 추가 가능하다고 판정된 경우, 처리는 스텝 S314로 진행하고, 데이터 취득부(201)는, 프리싱트 헤더를 취득하였는지의 여부를 판정하고, 취득하였다고 판정할 때까지 대기한다. 프리싱트 헤더를 취득하였다고 판정한 경우, 처리는 스텝 S303으로 되돌아가고, 패킷에 추가하는 프리싱트에 대하여 그 이후의 처리가 반복된다. 즉, 스텝 S303 내지 스텝 S310, 및, 스텝 S313 및 스텝 S314의 루프 처리가 반복됨으로써, 부호화 데이터의 합계의 데이터 사이즈가 패킷 사이즈보다 커질 때까지, 동일한 패킷에 프리싱트가 순차적으로 추가된다.
또한, 스텝 S313에서, 패킷에 페이로드 추가 불가능이라고 판정된 경우, 처리는 스텝 S313으로 되돌아가고, 그 이후의 처리가 실행된다. 즉 이 경우, 1개의 프리싱트의 부호화 데이터로 1개의 패킷이 생성된다.
이상과 같이 패킷타이즈 처리를 행함으로써, 1개의 패킷에 복수의 프리싱트의 데이터를 포함시킬 수 있다.
이상과 같은 도 1에 도시되는 전송 시스템(100)의 각 부에 의해 실행되는 각종 처리는, 예를 들면, 도 39에 도시되는 바와 같이, 적절히, 병렬적으로 실행된 다.
도 39는, 도 1에 도시되는 전송 시스템(100)의 각 부에 의해 실행되는 처리의 각 요소의 병렬 동작의 예를 개략적으로 도시하는 도면이다. 이 도 39는, 전술한 도 6과 대응하는 것이다. 화상 데이터의 입력 In-1(도 39의 A)에 대하여, 웨이브릿 변환부(150)(도 2)에서 1회째의 웨이브릿 변환 WT-1이 실시된다(도 39의 B). 도 5를 참조하여 설명한 바와 같이, 이 1회째의 웨이브릿 변환 WT-1은, 최초의 3라인이 입력된 시점에서 개시되고, 계수 C1이 생성된다. 즉, 화상 데이터 In-1의 입력으로부터 웨이브릿 변환 WT-1이 개시될 때까지, 3라인분의 지연이 생긴다.
생성된 계수 데이터는, 계수 재배열용 버퍼부(152)(도 2)에 저장된다. 이후, 입력된 화상 데이터에 대하여 웨이브릿 변환이 실시되고, 1회째의 처리가 종료되면, 그대로 2회째의 웨이브릿 변환 WT-2로 처리가 이행된다.
2회째의 웨이브릿 변환 WT-2를 위한 화상 데이터 In-2의 입력과, 그 2회째의 웨이브릿 변환 WT-2의 처리와 병렬적으로, 계수 재배열부(153)(도 2)에 의해 3개의, 계수 C1, 계수 C4, 및 계수 C5의 재배열 Ord-1이 실행된다(도 39의 C).
또한, 웨이브릿 변환 WT-1의 종료로부터 재배열 Ord-1이 개시될 때까지의 지연은, 예를 들면, 재배열 처리를 계수 재배열부(153)에 지시하는 제어 신호의 전달에 수반하는 지연이나, 제어 신호에 대한 계수 재배열부(153)의 처리 개시에 요하는 지연, 프로그램 처리에 요하는 지연과 같은, 장치나 시스템 구성에 기초하는 지연으로서, 부호화 처리에서의 본질적인 지연은 아니다.
계수 데이터는, 재배열이 종료한 순으로 계수 재배열용 버퍼부(152)로부터 읽어내어지고, 엔트로피 부호화부(155)(도 2)에 공급되어, 엔트로피 부호화 EC-1이 행해진다(도 39의 D). 이 엔트로피 부호화 EC-1은, 3개의, 계수 C1, 계수 C4, 및 계수 C5의, 모든 재배열의 종료를 대기하지 않고 개시할 수 있다. 예를 들면, 최초로 출력되는 계수 C5에 의한 1라인의 재배열이 종료한 시점에서, 그 계수 C5에 대한 엔트로피 부호화를 개시할 수 있다. 이 경우, 재배열 Ord-1의 처리 개시로부터 엔트로피 부호화 EC-1의 처리 개시까지의 지연은, 1라인분으로 된다.
엔트로피 부호화부(155)에 의한 엔트로피 부호화 EC-1이 종료한 부호화 데이터는, 소정의 신호 처리가 실시된 후, 회선(110)을 통하여 수신 장치(103)에 전송 된다(도 39의 E). 이 때, 부호화 데이터는, 패킷화되어 전송된다.
송신 장치(102)의 부호화부(121)에 대하여, 1회째의 처리에 의한 7라인분의 화상 데이터 입력에 계속해서, 화면 상의 하단의 라인까지 화상 데이터가 순차적으로 입력된다. 부호화부(121)에서는, 화상 데이터의 입력 In-n(n은 2 이상)에 수반하여, 전술한 바와 같이 하여, 4라인마다 웨이브릿 변환 WT-n, 재배열 Ord-n 및 엔트로피 부호화 EC-n을 행한다. 부호화부(121)에서의 마지막회의 처리에 대한 재배열 Ord 및 엔트로피 부호화 EC는, 6라인에 대하여 행해진다. 이들 처리는, 부호화부(121)에서, 도 39의 A 내지 도 39의 D에 예시되는 바와 같이, 병렬적으로 행해진다.
부호화부(121)에 의한 엔트로피 부호화 EC-1에 의해 부호화된 부호화 데이터의 패킷은, 수신 장치(103)에 전송되어, 디패킷타이즈 처리 등이 실시된 후, 복호부(133)에 공급된다. 복호부(133)의 엔트로피 복호부(362)는, 공급된, 엔트로피 부호화 EC-1에 의해 부호화된 부호화 데이터에 대하여, 순차적으로, 엔트로피 부호의 복호 iEC-1을 행하여, 계수 데이터를 복원한다(도 39의 F). 복원된 계수 데이터는, 순차적으로, 버퍼부(361)에 저장된다. 웨이브릿 역변환부(363)는, 버퍼부(361)에 웨이브릿 역변환을 행할 수 있을 만큼 계수 데이터가 저장되면, 버퍼부(361)로부터 계수 데이터를 읽어내고, 읽어내어진 계수 데이터를 이용하여 웨이브릿 역변환 iWT-1을 행한다(도 39의 G).
도 5를 참조하여 설명한 바와 같이, 웨이브릿 역변환부(363)에 의한 웨이브릿 역변환 iWT-1은, 계수 C4 및 계수 C5가 버퍼부(361)에 저장된 시점에서 개시할 수 있다. 따라서, 엔트로피 복호부(362)에 의한 복호 iEC-1이 개시되고 나서 웨이브릿 역변환부(363)에 의한 웨이브릿 역변환 iWT-1이 개시될 때까지의 지연은, 2라인분으로 된다.
웨이브릿 역변환부(363)에서, 1회째의 웨이브릿 변환에 의한 3라인분의 웨이브릿 역변환 iWT-1이 종료되면, 웨이브릿 역변환 iWT-1로 생성된 화상 데이터의 출력 Out-1이 행해진다(도 39의 H). 출력 Out-1에서는, 도 5 및 도 6을 이용하여 설명한 바와 같이, 제1 라인째의 화상 데이터가 출력된다.
복호부(133)에 대하여, 부호화부(121)에서의 1회째의 처리에 의한 3라인분의 부호화된 계수 데이터의 입력에 계속해서, 엔트로피 부호화 EC-n(n은 2 이상임)에 의해 부호화된 계수 데이터가 순차적으로 입력된다. 복호부(133)에서는, 입력된 계수 데이터에 대하여, 전술한 바와 같이, 4라인마다 엔트로피 복호 iEC-n 및 웨이브릿 역변환 iWT-n을 행하고, 웨이브릿 역변환 iWT-n에 의해 복원된 화상 데이터의 출력 Out-n을 순차적으로 행한다. 부호화부(121)의 마지막회에 대응하는 엔트로피 복호 iEC 및 웨이브릿 역변환 iWT는, 6라인에 대하여 행해지고, 출력 Out은, 8라인이 출력된다. 이들 처리는, 복호부(133)에서, 도 39의 F 내지 도 39의 H에 예시되는 바와 같이, 병렬적으로 행해진다.
전술한 바와 같이 하여, 화면 상부로부터 하부의 방향으로 순서대로, 부호화부(121) 및 복호부(133)에서의 각 처리를 병렬적으로 행함으로써, 화상 압축 처리 및 화상 복호 처리를 보다 저지연으로 행하는 것이 가능하게 된다.
도 39를 참조하여, 5×3 필터를 이용하여 분해 레벨=2까지 웨이브릿 변환을 행한 경우의, 화상 입력부터 화상 출력까지의 지연 시간을 계산해 본다. 제1 라인째의 화상 데이터가 부호화부(121)에 입력되고 나서, 이 제1 라인째의 화상 데이터가 복호부(133)로부터 출력될 때까지의 지연 시간은, 하기의 각 요소의 총합으로 된다. 또한, 여기서는, 전송로에서의 지연이나, 장치 각 부의 실제의 처리 타이밍에 수반하는 지연 등의, 시스템의 구성에 따라 상이한 지연은, 제외하고 있다.
(1) 최초의 라인 입력으로부터 7라인분의 웨이브릿 변환 WT-1이 종료할 때까지의 지연 D_WT
(2) 3라인분의 계수 재배열 Ord-1에 수반하는 시간 D_Ord
(3) 3라인분의 엔트로피 부호화 EC-1에 수반하는 시간 D_EC
(4) 3라인분의 엔트로피 복호 iEC-1에 수반하는 시간 D_iEC
(5) 3라인분의 웨이브릿 역변환 iWT-1에 수반하는 시간 D_iWT
도 39를 참조하여, 전술한 각 요소에 의한 지연의 계산을 시도한다. (1)의 지연 D_WT는, 10라인분의 시간이다. (2)의 시간 D_Ord, (3)의 시간 D_EC, (4)의 시간 D_iEC, 및 (5)의 시간 D_iWT는, 각각 3라인분의 시간이다. 또한, 부호화부(121)에서, 재배열 Ord-1이 개시되고 나서 1라인 후에는, 엔트로피 부호화 EC-1을 개시할 수 있다. 마찬가지로, 복호부(133)에서, 엔트로피 복호 iEC-1이 개시되고 나서 2라인 후에는, 웨이브릿 역변환 iWT-1을 개시할 수 있다. 또한, 엔트로피 복호 iEC-1은, 엔트로피 부호화 EC-1로 1라인분의 부호화가 종료된 시점에서 처리를 개시할 수 있다.
따라서, 이 도 39의 예에서는, 부호화부(121)에 제1 라인째의 화상 데이터가 입력되고 나서, 복호부(133)로부터 그 제1 라인째의 화상 데이터가 출력될 때까지의 지연 시간은, 10+1+1+2+3=17라인분으로 된다.
지연 시간에 대하여, 보다 구체적인 예를 들어 고찰한다. 입력되는 화상 데이터가 HDTV(High Definition Television)의 인터레이스 비디오 신호인 경우, 예를 들면 1920화소×1080라인의 해상도로 1프레임이 구성되고, 1필드는, 1920화소×540라인으로 된다. 따라서, 프레임 주파수를 30Hz로 한 경우, 1필드의 540라인이 16.67msec(=1sec/60필드)의 시간에, 부호화부(121)에 입력되게 된다.
따라서, 7라인분의 화상 데이터의 입력에 수반하는 지연 시간은, 0.216msec(=16.67msec×7/540라인)이며, 예를 들면 1필드의 갱신 시간에 대하여 매우 짧은 시간으로 된다. 또한, 전술한 (1)의 지연 D_WT, (2)의 시간 D_Ord, (3)의 시간 D_EC, (4)의 시간 D_iEC, 및 (5)의 시간 D_iWT의 총합에 대해서도, 처리 대상의 라인수가 적기 때문에, 지연 시간이 매우 단축된다. 각 처리를 행하는 요소를 하드웨어화하면, 처리 시간을 더욱 단축하는 것도 가능하다.
여기에서, SFF 및 M의 플래그 정보에 대하여 설명한다.
전술한 바와 같이 전송 시스템(100)에서는, 지연 시간의 증대에 대한 허용도가 낮아, 조금이라도 효율적으로 데이터를 전송하고, 효율적으로 필요한 처리를 행하는 것이 요구된다.
종래에도, 소정의 데이터 단위로 부호화나 복호를 행하는 시스템은 존재한다. 도 1의 전송 시스템(100)과 같이, 부호화 데이터를 패킷화하여 전송하는 경우, 그 데이터 단위의 부호화 데이터를 복수로 분할하여 각각을 패킷화하여 전송 하는 것도 있다. 단, 종래의 시스템의 경우, 지연 시간에 대한 허용도는 크므로, 디패킷타이즈 처리에서는, 그 데이터 단위분의 패킷을 축적하고, 데이터 단위마다 디패킷타이즈 처리가 행해진다. 이와 같이 함으로써, 데이터 단위분을 갖춘 부호화 데이터만을 복호부에 공급하여 복호시킬 수 있다.
그러나, 이 방법에서는, 디패킷타이즈 처리부에서도 부호화부에서도 버퍼링 할 필요가 생기므로, 지연 시간의 저감이 요구되는 전송 시스템(100)에서는 바람직하지 않다.
따라서, 디패킷타이즈 처리부(132)는, 전술한 바와 같이, 전송되는 부호화 데이터가 각 부에서 그 공급순으로 처리가 가능한 것을 이용하여, 수신한 패킷으로부터 페이로드 데이터를 순차적으로 추출하고, 축적하지 않고 복호부(133)에 공급한다. 복호부(133)는, 순차 공급되는 부호화 데이터를 프리싱트분 축적할 때마다 복호 처리를 개시한다. 이에 의해, 부호화 데이터의 버퍼링의 횟수를 저감시킬 수 있으므로, 전송 시스템(100)은, 지연 시간을 보다 단축시킬 수 있다.
SFF 및 M은, 프리싱트의 선두 또는 종단을 나타내는 플래그 정보이며, 디패킷타이즈 처리부(132)는, 이 플래그 정보에 기초하여 프리싱트의 선두나 종단을 검출할 수 있고, 그 취지를 복호부(133)에 통지할 수 있다. 복호부(133)는, 그 디패킷타이즈 처리부(132)로부터의 통지에 기초하여, 프리싱트의 이음매를 파악하고, 복호 처리를 프리싱트 단위로 개시할 수 있다.
이것만이면 프리싱트의 종단을 나타내는 M만으로도 충분하다. 만약, 프리싱트를 복수로 분할한 패킷과 분할하고 있지 않은 패킷이 혼재하는 것이라면, 분할한 것을 나타내는 플래그 정보가 있으면, 그들 패킷의 식별은 가능하다.
그러나, 실제로는 수신부(131)가 패킷의 수신에 실패하는(로스하는) 것도 생각된다. 이와 같이 패킷 로스가 발생한 경우, 디패킷타이즈 처리부(132)는, 패킷의 버퍼링을 행하지 않기 때문에, 통상시와 처리를 바꿀 필요가 있다. 예를 들면, 패킷 로스가 발생하면, 전송 시스템(100)의 경우, 그 패킷을 송신 장치(102)에 재송시키는 시간을 확보할 수 없으므로, 그 프리싱트의 부호화 데이터는 갖추어지지 않게 된다. 즉, 패킷 로스의 발생에 의해 복호부(133)는, 그 프리싱트에 대한 복호 처리를 실행할 수 없게 된다.
따라서, 예를 들면 프리싱트의 도중의 패킷에서 로스가 발생한 경우, 복호부(133)에는, 그 프리싱트의 그 때까지의 부호화 데이터가 축적되어 있는 것도 생각된다. 이와 같은 경우, 디패킷타이즈 처리부(132)는, 복호부(133)에 패킷 로스의 발생을 통지하고, 그 축적하고 있는, 로스된 패킷의 부호화 데이터와 동일한 프 리싱트의 부호화 데이터를 파기시킨다. 이에 의해, 복호부(133)는, 그 프리싱트에 대하여 불필요한 복호 처리(실패하는 복호 처리)의 실행을 회피할 수 있어, 부하를 경감시킬 수 있다.
또한, 한번 패킷 로스가 발생하면, 그 프리싱트의 그 이후의 부호화 데이터는 불필요해진다. 따라서, 디패킷타이즈 처리부(132)는, 다음 이후의 프리싱트로 될 때까지, 패킷을 취득하여도, 부호화 데이터를 복호부(133)에 공급하지 않는다. 그리고 새로운 프리싱트의 패킷을 취득하면, 디패킷타이즈 처리부(132)는, 부호화 데이터의 공급을 재개한다.
이와 같이 디패킷타이즈 처리부(132)는, 그 상황에 따라서, 제어 모드를 변경하여, 적의 적절한 처리를 행한다. 그 때문에, 디패킷타이즈 처리부(132)는, SFF나 M을 참조하여, 프리싱트의 선두나 종단을 검출한다. 이 때, 종단을 나타내는 M만 있으면, 프리싱트의 종단을 검출할 때까지, 디패킷타이즈 처리부(132)는, 프리싱트가 변하였다고 판정할 수 없게 된다. 예를 들면, 프리싱트의 최종 패킷을 로스한 경우, 디패킷타이즈 처리부(132)는, 또 다음의 새로운 프리싱트를 대기해야만 하여, 지연 시간이 증대하게 될 뿐만 아니라, 복호부(133)에서 복호 처리를 행할 수 없어, 복원된 화상의 화질이 열화할 우려가 있다.
이에 대하여, SFF의 값을 참조하여, 선두 패킷을 검출함으로써, 디패킷타이즈 처리부(132)는, 복호부(133)에의 데이터를 재개시키는 등, 불필요한 대기 시간을 저감시킬 뿐만 아니라, 예를 들면, 복호부(133)에 부호화 데이터뿐만 아니라 헤더 정보도 공급하거나, 패킷 로스의 발생을 복호부(133)에 통지하는 에러 통지를 생략하거나, 패킷 로스가 발생하여도 복호부(133)에의 부호화 데이터의 공급을 계속시키거나 하는 등, 선두 패킷에 대해서만 예외적인 처리를 행할 수도 있다.
이와 같이 SFF 및 M의 플래그 정보에 의해 디패킷타이즈 처리부(132)는 적절하게 처리를 행할 수 있어, 지연 시간을 보다 단축시킬 수 있다.
또한, 디패킷타이즈 처리부(132)는, 이 SFF나 M에 기초하여, 공급하는 부호화 데이터가 프리싱트의 선두인 것이나 종단인 것을 복호부(133)에 통지하거나 한다. 이에 의해, 복호부(133)는, 프리싱트의 선두와 종단을 용이하게 파악할 수 있으므로, 예를 들면, 프리싱트의 종단이 공급된 것이라면, 복호 처리를 개시할 수 있고, 연속하고 있지 않은 새로운 프리싱트의 선두가 공급된 것이라면, 그 전의 로스한 프리싱트에 대하여 보완 처리를 행할 수 있다. 즉, 복호부(133)는, 디패킷타이즈 처리부(132)로부터의 통지에 기초하여, 이러한 제어를 용이하게 고속으로 행할 수 있다.
이상과 같이, SFF나 M은, 간단히 디패킷타이즈 처리나 복호 처리의 개시 타이밍을 통지하기 위한 플래그 정보가 아니라, 디패킷타이즈 처리부(132) 및 복호부(133)에, 부호화 데이터를 복호하여 출력할 때까지의 지연 시간을 보다 단축시키도록, 적절한 타이밍에서 적절한 처리를 선택시켜 실행시키도록 하기 위한 플래그 정보이다.
그런데, 도 2에서는, 계수의 재배열을 웨이브릿 변환의 직후(엔트로피 부호화의 전)에 행하도록 설명했지만, 부호화 데이터가 저역으로부터 고역의 순으로 복호부(133)의 웨이브릿 역변환부(363)에 공급되면 되고(즉, 저역의 서브밴드에 속하 는 계수 데이터를 부호화하여 얻어지는 부호화 데이터로부터, 고역의 서브밴드에 속하는 계수 데이터를 부호화하여 얻어지는 부호화 데이터의 순으로 공급되면 되고), 재배열의 타이밍은, 웨이브릿 변환의 직후 이외이어도 된다.
예를 들면, 엔트로피 부호화에 의해 얻어지는 부호화 데이터의 순서를 재배열하도록 하여도 된다. 도 40은, 그 경우의 부호화부의 구성예를 도시하는 블록도이다.
도 40의 경우, 부호화부(500)는, 도 2의 부호화부(121)의 경우와 마찬가지로, 웨이브릿 변환부(150), 도중 계산용 버퍼부(151), 엔트로피 부호화부(155), 및 레이트 제어부(154)를 갖지만, 도 2의 계수 재배열용 버퍼부(152) 및 계수 재배열부(153) 대신에, 부호 재배열용 버퍼부(501) 및 부호 재배열부(502)를 갖는다.
부호 재배열용 버퍼부(501)는, 엔트로피 부호화부(155)에서 부호화된 부호화 데이터의 출력순을 재배열하기 위한 버퍼이며, 부호 재배열부(502)는, 그 부호 재배열용 버퍼부(501)에 축적되는 부호화 데이터를 소정의 순으로 읽어냄으로써, 부호화 데이터의 출력순의 재배열을 행한다.
즉, 도 40의 경우, 웨이브릿 변환부(150)로부터 출력되는 웨이브릿 계수는, 엔트로피 부호화부(155)에 공급되어 부호화된다. 그 부호화에 의해 얻어진 각 부호화 데이터가, 순차적으로, 부호 재배열용 버퍼부(501)에 공급되고, 재배열을 위하여 일시적으로 축적된다.
부호 재배열부(502)는, 부호 재배열용 버퍼부(501)에 기입된 부호화 데이터를, 원하는 순서로 읽어내고, 부호화부(500)의 외부에 출력한다.
도 40의 예의 경우, 엔트로피 부호화부(155)는, 웨이브릿 변환부(150)에 의한 출력순으로, 각 계수 데이터의 부호화를 행하고, 얻어진 부호화 데이터를 부호 재배열용 버퍼부(501)에 기입한다. 즉, 부호 재배열용 버퍼부(501)에는, 부호화 데이터가, 웨이브릿 변환부(150)에 의한 웨이브릿 계수의 출력순에 대응하는 순서로 저장된다. 통상의 경우, 1개의 프리싱트에 속하는 계수 데이터끼리를 비교하면, 웨이브릿 변환부(150)는, 보다 고역의 서브밴드에 속하는 계수 데이터일수록 먼저 출력하고, 보다 저역의 서브밴드에 속하는 계수 데이터일수록 뒤에 출력한다. 즉, 부호 재배열용 버퍼부(501)에는, 각 부호화 데이터가, 고역의 서브밴드에 속하는 계수 데이터를 엔트로피 부호화하여 얻어진 부호화 데이터로부터, 저역의 서브밴드에 속하는 계수 데이터를 엔트로피 부호화하여 얻어진 부호화 데이터를 향하는 순으로 기억된다.
이에 대하여, 부호 재배열부(502)는, 이 순서와는 독립적으로, 임의의 순서로 그 부호 재배열용 버퍼부(501)에 축적된 각 부호화 데이터를 읽어냄으로써, 부호 데이터의 재배열을 행한다.
예를 들면, 부호 재배열부(502)는, 저역의 서브밴드에 속하는 계수 데이터를 부호화하여 얻어진 부호화 데이터일수록 우선적으로 읽어내고, 마지막으로, 가장 고역의 서브밴드에 속하는 계수 데이터를 부호화하여 얻어진 부호화 데이터를 읽어낸다. 이와 같이, 부호화 데이터를 저역으로부터 고역을 향하여 읽어냄으로써, 부호 재배열부(502)는, 복호부(133)가, 취득한 순서로 각 부호화 데이터를 복호할 수 있도록 하고, 복호부(133)에 의한 복호 처리에서 생기는 지연 시간을 저감시키도록 할 수 있다.
부호 재배열부(502)는, 부호 재배열용 버퍼부(501)에 축적되어 있는 부호화 데이터를 읽어내고, 그것을 부호화부(500)의 외부에 출력한다.
또한, 도 40에 도시되는 부호화부(500)에서 부호화되어 출력된 데이터는, 도 24를 이용하여 이미 설명한 복호부(133)에 의해, 도 2의 부호화부(121)로부터 출력되는 부호화 데이터의 경우와 마찬가지로 복호할 수 있다.
또한, 재배열의 처리를 행하는 타이밍은, 전술한 이외이어도 된다. 예를 들면, 도 41에서 일례가 도시되는 바와 같이, 부호화부에서 행하도록 하여도 되고, 도 42에서 일례가 도시되는 바와 같이, 복호부에서 행하도록 하여도 된다.
웨이브릿 변환에서 생성된 계수 데이터를 재배열하는 처리에서는, 계수 재배열용 버퍼의 기억 용량으로서 비교적 대용량이 필요해짐과 함께, 계수 재배열의 처리 자체에도, 높은 처리 능력이 요구된다. 이 경우에도, 부호화 장치의 처리 능력이 어느 정도 이상 높은 경우에는 하등 문제는 생기지 않는다.
여기에서, 휴대 전화 단말기나 PDA(Personal Digital Assistant)와 같은 소위 모바일 단말기 등의, 비교적 처리 능력이 낮은 기기에 부호화 장치가 탑재되는 경우에 대하여 생각한다. 예를 들면, 최근에는, 휴대 전화 단말기에 대하여 촬상 기능을 부가한 제품이 널리 보급되고 있다(카메라 기능이 부가된 휴대 전화 단말기라고 부름). 이러한 카메라 기능이 부가된 휴대 전화 단말기로 촬상된 화상 데이터를 웨이브릿 변환 및 엔트로피 부호화에 의해 압축 부호화하여, 무선 혹은 유선 통신을 통하여 전송하는 것이 생각된다.
이러한 예를 들면 모바일 단말기는, CPU(Central Processing Unit)의 처리 능력도 한정되고, 또한, 메모리 용량에도 어느 정도의 상한이 있다. 그 때문에, 전술한 바와 같은 계수 재배열에 수반하는 처리의 부하 등은, 무시할 수 없는 문제로 된다.
따라서, 도 42에 일례가 도시되는 바와 같이, 재배열 처리를 복호부에 넣음으로써, 부호화부의 부하가 경감되고, 부호화부를 모바일 단말기 등의 비교적 처리 능력이 낮은 기기에 탑재하는 것이 가능하게 된다.
도 43은, 그 경우의 부호화부의 일례의 구성을 도시하는 블록도이다. 또한, 이 도 43에서, 전술한 도 2와 공통되는 부분에는 동일한 부호를 붙이고, 상세한 설명을 생략한다.
이 도 43에 도시되는 부호화부(510)의 구성은, 전술한 도 2에서 도시한 부호화부(121)의 구성에 대하여 계수 재배열부(153) 및 계수 재배열용 버퍼부(152)를 제거한 구성으로 되어 있다. 즉, 부호화부(510)는, 부호화부(121)와 마찬가지의, 웨이브릿 변환부(150), 도중 계산용 버퍼부(151), 레이트 제어부(154), 및 엔트로피 부호화부(155)를 갖고 있다.
입력된 화상 데이터는, 도중 계산용 버퍼부(151)에 일시적으로 모여진다. 웨이브릿 변환부(150)는, 도중 계산용 버퍼부(151)에 모여진 화상 데이터에 대하여 웨이브릿 변환을 실시하고, 생성된 계수 데이터를, 계수 데이터의 생성순으로 순차적으로, 엔트로피 부호화부(155)에 공급한다. 즉, 엔트로피 부호화부(155)에 대하여, 웨이브릿 변환의 순서에 따라서 고역 성분으로부터 저역 성분의 순으로, 생성 된 계수 데이터가 공급된다. 엔트로피 부호화부(155)는, 공급된 계수에 대하여, 레이트 제어부(154)에 의해 출력 데이터의 비트 레이트를 제어하면서 엔트로피 부호화를 실시한다. 엔트로피 부호화부(155)로부터, 웨이브릿 변환에 의해 생성된 계수 데이터가 엔트로피 부호화된 부호화 데이터가 출력된다.
도 44는, 이 부호화부(510)에 대응하는 복호 장치의 일례의 구성을 도시하는 블록도이다. 또한, 이 도 44에서, 전술한 도 24와 공통되는 부분에는 동일한 부호를 붙이고, 상세한 설명을 생략한다.
도 44에 도시되는 바와 같이, 이 경우의 복호부(520)는, 도 24의 복호부(133)와 마찬가지로, 제어 정보 취득부(351), 복호 제어부(352), 복호 처리 실행부(353), 헤더 취득부(354), 데이터 취득부(355), 에러 통지 취득부(356), 및 파기 처리부(357)를 갖지만, 복호 처리 실행부(353)는, 계수 재배열용 버퍼부(521)를 더 갖는다.
도 43에서 설명한 부호화부(510)의 엔트로피 부호화부(155)로부터 출력된 부호화 데이터는, 도 44의 복호부(520)에서 버퍼부(361)를 통하여 엔트로피 복호부(362)에 공급되고, 엔트로피 부호가 복호되어 계수 데이터로 된다. 이 계수 데이터는, 버퍼부(361)를 통하여 계수 재배열용 버퍼부(521)에 저장된다. 웨이브릿 역변환부(363)는, 계수 재배열용 버퍼부(521)에 계수 데이터의 재배열이 가능하게 될 때까지 계수 데이터가 축적되면, 계수 재배열용 버퍼부(521)에 저장된 계수 데이터를, 저역 성분으로부터 고역 성분의 순으로 재배열하여 읽어내고, 읽어내어진 순으로 계수 데이터를 이용하여 웨이브릿 역변환 처리를 행한다. 5×3 필터를 이 용하는 경우에는, 전술한 도 42에서 도시한 바와 같이 된다.
즉, 웨이브릿 역변환부(363)는, 예를 들면 1프레임의 선두로부터의 처리 이면, 계수 재배열용 버퍼부(521)에 엔트로피 부호의 복호가 이루어진 계수 C1, 계수 C4, 및 계수 C5가 저장된 시점에서, 계수 재배열용 버퍼부(521)로부터 계수 데이터를 읽어내고, 웨이브릿 역변환 처리를 행한다. 웨이브릿 역변환부(363)에서 웨이브릿 역변환이 실시된 데이터는, 순차적으로, 출력 화상 데이터로서 출력된다.
또한, 이 경우에서도, 도 39를 이용하여 이미 설명한 바와 같이, 부호화부(510)에서의 각 요소의 처리와, 전송로에 대한 부호화 데이터의 전송과, 복호부(520)에서의 각 요소의 처리가 병렬적으로 실행된다.
이상과 같이, 본 발명은, 다양한 형태에 적용할 수 있고, 용이하게 다양한 용도에 응용할 수 있다는(즉 범용성이 높다는) 것도 큰 효과이다.
전술한 일련의 처리는, 하드웨어에 의해 실행시킬 수도 있고, 소프트웨어에 의해 실행시킬 수도 있다. 일련의 처리를 소프트웨어에 의해 실행시키는 경우에는, 그 소프트웨어를 구성하는 프로그램이, 전용의 하드웨어에 조립되어 있는 컴퓨터, 또는, 각종의 프로그램을 인스톨함으로써, 각종 기능을 실행하는 것이 가능한, 예를 들면 범용의 퍼스널 컴퓨터, 또는, 복수의 장치로 이루어지는 정보 처리 시스템의 정보 처리 장치 등에, 프로그램 기록 매체로부터 인스톨된다.
도 45는, 전술한 일련의 처리를 프로그램에 의해 실행하는 정보 처리 시스템의 구성의 예를 도시하는 블록도이다.
도 45에 도시되는 바와 같이, 정보 처리 시스템(800)은, 정보 처리 장 치(801), 그 정보 처리 장치(801)와 PCI 버스(802)에 의해 접속된, 기억 장치(803), 복수대의 비디오 테이프 리코더(VTR)인 VTR(804-1) 내지 VTR(804-S), 유저가 이들에 대한 조작 입력을 행하기 위한 마우스(805), 키보드(806), 및 조작 컨트롤러(807)에 의해 구성되는 시스템이며, 인스톨된 프로그램에 의해, 전술한 바와 같은 화상 부호화 처리나 화상 복호 처리 등을 행하는 시스템이다.
예를 들면 정보 처리 시스템(800)의 정보 처리 장치(801)는, RAID(Redundant Arrays of Independent Disks)로 이루어지는 대용량의 기억 장치(803)에 기억되어 있는 동화상 콘텐츠를 부호화하여 얻어진 부호화 데이터를 기억 장치(803)에 기억시키거나, 기억 장치(803)에 기억되어 있는 부호화 데이터를 복호하여 얻어진 복호 화상 데이터(동화상 콘텐츠)를 기억 장치(803)에 기억시키거나, 부호화 데이터나 복호 화상 데이터를 VTR(804-1) 내지 VTR(804-S)를 통하여 비디오 테이프에 기록하거나 할 수 있다. 또한, 정보 처리 장치(801)는, VTR(804-1) 내지 VTR(804-S)에 장착된 비디오 테이프에 기록된 동화상 콘텐츠를 기억 장치(803)에 취입할 수 있도록 이루어져 있다. 그 때, 정보 처리 장치(801)가, 동화상 콘텐츠를 부호화하도록 하여도 된다.
정보 처리 장치(801)는, 마이크로프로세서(901), GPU(Graphics Processing Unit)(902), XDR(Extreme Data Rate)-RAM(903), 사우스 브릿지(904), HDD(Hard Disk Drive)(905), USB 인터페이스(USB I/F)(906), 및 사운드 입출력 코덱(907)을 갖고 있다.
GPU(902)는 전용의 버스(911)를 통하여 마이크로프로세서(901)에 접속된다. XDR-RAM(903)은 전용의 버스(912)를 통하여 마이크로프로세서(901)에 접속된다. 사우스 브릿지(904)는, 전용의 버스를 통하여 마이크로프로세서(901)의 I/O 컨트롤러(944)에 접속된다. 이 사우스 브릿지(904)에는, HDD(905), USB 인터페이스(906), 및, 사운드 입출력 코덱(907)도 접속되어 있다. 이 사운드 입출력 코덱(907)에는 스피커(921)가 접속되어 있다. 또한, GPU(902)에는 디스플레이(922)가 접속되어 있다.
또한 사우스 브릿지(904)에는, PCI 버스(802)를 통하여, 마우스(805), 키보드(806), VTR(804-1) 내지 VTR(804-S), 기억 장치(803), 및, 조작 컨트롤러(807)가 더 접속되어 있다.
마우스(805) 및 키보드(806)는, 유저의 조작 입력을 받아, PCI 버스(802) 및 사우스 브릿지(904)를 통하여, 유저의 조작 입력의 내용을 나타내는 신호를, 마이크로프로세서(901)에 공급한다. 기억 장치(803) 및 VTR(804-1) 내지 VTR(804-S)은, 소정의 데이터를 기록 또는 재생할 수 있도록 이루어져 있다.
PCI 버스(802)에는, 필요에 따라서 드라이브(808)가 더 접속되고, 자기 디스크, 광 디스크, 광 자기 디스크, 혹은 반도체 메모리 등의 리무버블 미디어(811)가 적절히 장착되어, 그들로부터 읽어내어진 컴퓨터 프로그램이, 필요에 따라서 HDD(905)에 인스톨된다.
마이크로프로세서(901)는, OS(Operating System) 등의 기본 프로그램을 실행하는 범용의 메인 CPU 코어(941)와, 메인 CPU 코어(941)에 내부 버스(945)를 통하여 접속된 복수(이 경우 8개)의 RISC(Reduced Instruction Set Computer) 타입의 신호 처리 프로세서인, 서브 CPU 코어(942-1) 내지 서브 CPU 코어(942-8)와, 예를 들면 256[MByte]의 용량을 갖는 XDR-RAM(903)에 대한 메모리 컨트롤을 행하는 메모리 컨트롤러(943)와, 사우스 브릿지(904)와의 사이에서 데이터의 입출력을 관리하는 I/O(In/Out) 컨트롤러(944)가 1칩으로 집적된 멀티 코어 구성으로 이루어지고, 예를 들면 동작 주파수 4[GHz]를 실현하고 있다.
이 마이크로프로세서(901)는, 기동시, HDD(905)에 저장된 제어 프로그램에 기초하여, HDD(905)에 저장되어 있는 필요한 어플리케이션 프로그램을 읽어내어 XDR-RAM(903)에 전개하고, 이 후 이 어플리케이션 프로그램 및 오퍼레이터 조작에 기초하여 필요한 제어 처리를 실행한다.
또한, 마이크로프로세서(901)는, 소프트웨어를 실행함으로써, 예를 들면, 전술한 부호화 처리나 복호 처리를 실현하고, 인코드의 결과 얻어진 부호화 스트림을, 사우스 브릿지(904)를 통하여, HDD(905)에 공급하여 기억시키거나, 디코드한 결과 얻어지는 동화상 콘텐츠의 재생 영상을, GPU(902)에 데이터 전송하여, 디스플레이(922)에 표시시키거나 할 수 있다.
마이크로프로세서(901) 내의 각 CPU 코어의 사용 방법은 임의적이지만, 예를 들면, 메인 CPU 코어(941)가, 화상 부호화 처리나 화상 복호 처리의 제어에 관한 처리를 행하고, 8개의 서브 CPU 코어(942-1) 내지 서브 CPU 코어(942-8)에, 웨이브릿 변환, 계수 재배열, 엔트로피 부호화, 엔트로피 복호, 웨이브릿 역변환, 양자화, 및 역양자화 등의 각 처리를, 예를 들면 도 39를 참조하여 설명한 바와 같이 동시 병렬적으로 실행시키도록 하여도 된다. 그 때, 메인 CPU 코어(941)가, 8개의 서브 CPU 코어(942-1) 내지 서브 CPU 코어(942-8)의 각각에 대하여 프리싱트 단위로 처리를 할당하도록 하면, 부호화 처리나 복호 처리가, 도 39를 참조하여 설명한 경우와 마찬가지로 프리싱트 단위로 동시 병렬적으로 실행된다. 즉, 부호화 처리나 복호 처리의 효율을 향상시켜, 처리 전체의 지연 시간을 단축시키고, 또한, 부하, 처리 시간, 및, 처리에 필요한 메모리 용량을 저감시킬 수 있다. 물론, 이 이외의 방법으로 각 처리를 행하도록 하여도 된다.
예를 들면, 마이크로프로세서(901)의 8개의 서브 CPU 코어(942-1) 내지 서브 CPU 코어(942-8) 중의 일부가 인코드 처리를, 다른 부분이 디코드 처리를, 동시 병렬적으로 실행하도록 하는 것도 가능하다.
또한, 예를 들면, PCI 버스(802)에, 독립된 인코더 또는 디코더, 혹은, 코덱 처리 장치가 접속되어 있는 경우, 마이크로프로세서(901)의 8개의 서브 CPU 코어(942-1) 내지 서브 CPU 코어(942-8)가, 사우스 브릿지(904) 및 PCI 버스(802)를 통하여, 이들 장치가 실행하는 처리를 제어하도록 하여도 된다. 또한, 이들 장치가 복수 접속되어 있는 경우, 또는, 이들 장치가 복수의 디코더 또는 인코더를 포함하고 있는 경우, 마이크로프로세서(901)의 8개의 서브 CPU 코어(942-1) 내지 서브 CPU 코어(942-8)는, 복수의 디코더 또는 인코더가 실행하는 처리를, 분담하여 제어하도록 하여도 된다.
이 때 메인 CPU 코어(941)는, 8개의 서브 CPU 코어(942-1) 내지 서브 CPU 코어(942-8)의 동작을 관리하고, 각 서브 CPU 코어에 대하여 처리를 할당하거나, 처리 결과를 인수하거나 한다. 또한, 메인 CPU 코어(941)는, 이들 서브 CPU 코어가 행하는 이외의 처리도 행한다. 예를 들면, 메인 CPU 코어(941)는, 사우스 브릿지(904)를 통하여 마우스(805), 키보드(806), 또는, 조작 컨트롤러(807)로부터 공급된 명령을 접수하고, 명령에 따른 다양한 처리를 실행한다.
GPU(902)는, 디스플레이(922)에 표시하는 동화상 콘텐츠의 재생 영상을 움직이게 할 때의 텍스쳐의 붙여 넣기 등에 관한 최종적인 렌더링 처리에 부가하여, 동화상 콘텐츠의 재생 영상 및 정지 화상 콘텐츠의 정지 화상을 디스플레이(922)에 한번에 복수 표시할 때의 좌표 변환 계산 처리나, 동화상 콘텐츠의 재생 영상 및 정지 화상 콘텐츠의 정지 화상에 대한 확대·축소 처리 등을 행하는 기능을 담당하여, 마이크로프로세서(901)의 처리 부담을 경감시키도록 이루어져 있다.
GPU(902)는, 마이크로프로세서(901)의 제어하에, 공급된 동화상 콘텐츠의 영상 데이터나 정지 화상 콘텐츠의 화상 데이터에 대하여 소정의 신호 처리를 실시하고, 그 결과 얻어진 영상 데이터나 화상 데이터를 디스플레이(922)에 송출하여, 화상 신호를 디스플레이(922)에 표시시킨다.
그런데, 마이크로프로세서(901)에서의 8개의 서브 CPU 코어(942-1) 내지 서브 CPU 코어(942-8)로 동시 병렬적으로 디코드된 복수의 동화상 콘텐츠에서의 재생 영상은, 버스(911)를 통하여 GPU(902)에 데이터 전송되는데, 이 때의 전송 속도는, 예를 들면, 최대 30[Gbyte/sec]이며, 특수 효과가 실시된 복잡한 재생 영상이어도 고속으로 순조롭게 표시할 수 있도록 이루어져 있다.
또한, 마이크로프로세서(901)는, 동화상 콘텐츠의 영상 데이터 및 음성 데이터 중 음성 데이터에 대하여 음성 믹싱 처리를 실시하고, 그 결과 얻어진 편집 음 성 데이터를, 사우스 브릿지(904) 및 사운드 입출력 코덱(907)을 통하여, 스피커(921)에 송출함으로써, 음성 신호에 기초하는 음성을 스피커(921)로부터 출력시킬 수도 있다.
전술한 일련의 처리를 소프트웨어에 의해 실행시키는 경우에는, 그 소프트웨어를 구성하는 프로그램이, 네트워크나 기록 매체로부터 인스톨된다.
이 기록 매체는, 예를 들면, 도 45에 도시되는 바와 같이, 장치 본체와는 별도로, 유저에게 프로그램을 배신하기 위하여 배포되는, 프로그램이 기록되어 있는 자기 디스크(플레시블 디스크를 포함함), 광 디스크(CD-ROM, DVD를 포함함), 광 자기 디스크(MD를 포함함), 혹은 반도체 메모리 등으로 이루어지는 리무버블 미디어(811)에 의해 구성될 뿐만 아니라, 장치 본체에 미리 조립된 상태에서 유저에게 배신되는, 프로그램이 기록되어 있는 HDD(905)나 기억 장치(803) 등으로 구성된다. 물론, 기록 매체는, R0M이나 플래시 메모리 등의 반도체 메모리이어도 된다.
이상에서는, 마이크로프로세서(901) 내에 8개의 서브 CPU 코어가 구성되도록 설명했지만, 이에 한하지 않고, 서브 CPU 코어의 수는 임의적이다. 또한, 마이크로프로세서(901)가, 메인 CPU 코어와 서브 CPU 코어와 같은 복수의 코어에 의해 구성되어 있지 않아도 되고, 싱글 코어(1개의 코어)에 의해 구성되는 CPU를 이용하도록 하여도 된다. 또한, 마이크로프로세서(901) 대신에 복수의 CPU를 이용하도록 하여도 되고, 복수의 정보 처리 장치를 이용하도록(즉, 본 발명의 처리를 실행하는 프로그램을, 서로 제휴하여 동작하는 복수의 장치에서 실행하도록) 하여도 된다.
또한, 본 명세서에서, 기록 매체에 기록되는 프로그램을 기술하는 스텝은, 기재된 순서를 따라서 시계열적으로 행해지는 처리는 물론, 반드시 시계열적으로 처리되지 않아도, 병렬적 혹은 개별적으로 실행되는 처리도 포함하는 것이다.
또한, 본 명세서에서, 시스템이란, 복수의 디바이스(장치)에 의해 구성되는 장치 전체를 나타내는 것이다.
또한, 이상에서, 1개의 장치로서 설명한 구성을 분할하여, 복수의 장치로서 구성하도록 하여도 된다. 반대로, 이상에서 복수의 장치로서 설명한 구성을 통합하여 1개의 장치로서 구성되도록 하여도 된다. 또한, 각 장치의 구성에 전술한 이외의 구성을 부가하도록 하여도 물론 된다. 또한, 시스템 전체로서의 구성이나 동작이 실질적으로 동일하면, 임의의 장치의 구성의 일부를 다른 장치의 구성에 포함시키도록 하여도 된다.
이상 설명한 본 발명은, 패킷타이즈 처리 및 디패킷타이즈 처리를 용이하게 고속으로 행하는 것이며, 화상을 압축 부호화하여 전송하고, 전송처에서 압축 부호를 복호하여 출력하도록 하는 장치 또는 시스템이면, 다양한 것에 적용할 수 있다. 본 발명은, 특히, 화상의 압축 부호화부터 복호 및 출력까지의 지연이 짧은 것이 요구되는 장치 또는 시스템에 이용하기에 바람직하다.
예를 들면, 본 발명은, 비디오 카메라로 촬영된 영상을 보면서 매직 핸드를 조작하여 치료 행위를 행하도록 하는, 의료용 원격 의료 진단의 용도에 이용하기에 바람직하다. 또한, 본 발명은, 방송국 내 등에서의, 화상을 부호화하여 전송하고, 복호하여 표시 또는 기록하도록 하는 시스템에 이용하기에 바람직하다.
또한, 실황 중계되는 영상의 배신을 행하는 시스템, 교육 현장에서 학생과 교사 사이에서 인터랙티브한 통신을 가능하게 한 시스템 등에, 본 발명을 적용할 수 있다.
또한, 카메라 기능이 부가된 휴대 전화 단말기와 같은, 촬상 기능을 갖는 모바일 단말기로 촬영된 화상 데이터의 송신이나, 영상 회의 시스템, 감시 카메라 및 감시 카메라로 촬영된 영상을 기록하는 레코더에 의한 시스템 등에, 본 발명을 적용할 수 있다.

Claims (20)

  1. 화상 데이터가 소정의 단위마다 부호화된 부호화 데이터에 헤더 정보를 부가하여 패킷화하는 패킷타이즈 처리를 행하는 정보 처리 장치로서,
    상기 헤더 정보를 작성하는 작성 수단과,
    상기 부호화 데이터를, 미리 정해진 소정의 데이터량마다, 복수의 부분 데이터로 분할하는 분할 수단과,
    상기 분할 수단에 의해 상기 부호화 데이터가 분할되어 얻어진 복수의 상기 부분 데이터의 각각에, 상기 작성 수단에 의해 작성된 상기 헤더 정보를 부가하여 패킷화하는 패킷화 수단과,
    상기 패킷화 수단에 의해 생성된 패킷 중, 복수의 상기 부분 데이터의 선두의 부분 데이터를 페이로드로 하는 선두 패킷에 대하여, 헤더 정보에 포함되는, 상기 선두 패킷인 것을 나타내는 선두 플래그를 세우고, 복수의 상기 부분 데이터의 종단의 부분 데이터를 페이로드로 하는 최종 패킷에 대하여, 헤더 정보에 포함되는, 상기 최종 패킷인 것을 나타내는 최종 플래그를 세우는 플래그 설정 수단
    을 구비하는 정보 처리 장치.
  2. 제1항에 있어서,
    상기 부호화 데이터는, 화상 데이터의 최저역 성분의 1라인분을 생성하기 위하여 필요한, 다른 서브밴드도 포함시킨 라인의 집합인 프리싱트 단위로 웨이브 릿(wavelet) 변환되어 엔트로피 부호화된 부호화 데이터인 정보 처리 장치.
  3. 제1항에 있어서,
    상기 부호화 데이터는, 복호순으로 공급되는 정보 처리 장치.
  4. 제1항에 있어서,
    상기 화상 데이터를 소정의 단위마다 부호화하고, 상기 부호화 데이터를 생성하는 부호화 수단을 더 구비하고,
    상기 분할 수단은, 상기 부호화 수단에 의해 생성된 상기 부호화 데이터를 분할하는 정보 처리 장치.
  5. 제4항에 있어서,
    상기 부호화 수단은, 상기 헤더 정보와 동일한 포맷의 부가 정보를 공급하고,
    상기 작성 수단은, 상기 부호화 수단으로부터 공급되는 상기 부가 정보를 이용하여, 상기 헤더 정보를 작성하는 정보 처리 장치.
  6. 제4항에 있어서,
    상기 부호화 수단은, 상기 부호화의 성공 또는 실패를 나타내는 플래그 정보를 공급하고, 상기 패킷화 수단은, 상기 플래그 정보에 기초하여 상기 부호화가 실 패하였다고 판정한 경우, 상기 작성 수단에 의해 작성된 상기 헤더 정보만을 이용하여 패킷화하는 정보 처리 장치.
  7. 화상 데이터가 소정의 단위마다 부호화된 부호화 데이터에 헤더 정보를 부가하여 패킷화하는 패킷타이즈 처리를 행하는 정보 처리 장치의 정보 처리 방법으로서,
    상기 헤더 정보를 작성하고,
    상기 부호화 데이터를, 미리 정해진 소정의 데이터량마다, 복수의 부분 데이터로 분할하고,
    상기 부호화 데이터가 분할되어 얻어진 복수의 상기 부분 데이터의 각각에, 상기 헤더 정보를 부가하여 패킷화하고,
    생성된 패킷 중, 복수의 상기 부분 데이터의 선두의 부분 데이터를 페이로드로 하는 선두 패킷에 대하여, 헤더 정보에 포함되는, 상기 선두 패킷인 것을 나타내는 선두 플래그를 세우고, 복수의 상기 부분 데이터의 종단의 부분 데이터를 페이로드로 하는 최종 패킷에 대하여, 헤더 정보에 포함되는, 상기 최종 패킷인 것을 나타내는 최종 플래그를 세우는
    스텝을 포함하는 정보 처리 방법.
  8. 화상 데이터가 소정의 단위마다 부호화된 부호화 데이터에 헤더 정보를 부가하여 패킷화하는 패킷타이즈 처리를 행하는 컴퓨터에 실행시키는 프로그램으로서,
    상기 헤더 정보를 작성하고,
    상기 부호화 데이터를, 미리 정해진 소정의 데이터량마다, 복수의 부분 데이터로 분할하고,
    상기 부호화 데이터가 분할되어 얻어진 복수의 상기 부분 데이터의 각각에, 상기 헤더 정보를 부가하여 패킷화하고,
    생성된 패킷 중, 복수의 상기 부분 데이터의 선두의 부분 데이터를 페이로드로 하는 선두 패킷에 대하여, 헤더 정보에 포함되는, 상기 선두 패킷인 것을 나타내는 선두 플래그를 세우고, 복수의 상기 부분 데이터의 종단의 부분 데이터를 페이로드로 하는 최종 패킷에 대하여, 헤더 정보에 포함되는, 상기 최종 패킷인 것을 나타내는 최종 플래그를 세우는
    스텝을 포함하는 정보 처리를 컴퓨터에 실행시키는 프로그램.
  9. 패킷으로부터 페이로드 데이터를 추출하는 디패킷타이즈 처리를 행하는 정보 처리 장치로서,
    외부로부터 공급되는 상기 패킷을 취득하는 취득 수단과,
    상기 취득 수단에 의해 취득된 상기 패킷의 헤더 정보에 기초하여, 상기 취득 수단에 의한 취득에서 패킷의 손실이 발생하였는지의 여부를 판정하는 손실 판정 수단과,
    상기 손실 판정 수단에 의해 상기 패킷의 손실이 발생하고 있지 않다고 판정된 경우, 상기 취득 수단에 의해 취득된 상기 패킷으로부터 페이로드 데이터를 추 출하여 후단의 처리부에 공급하고, 상기 손실 판정 수단에 의해 상기 패킷의 손실이 발생하였다고 판정된 경우, 상기 취득 수단에 의해 취득된 상기 패킷을 파기하는 공급 수단
    을 구비하는 정보 처리 장치.
  10. 제9항에 있어서,
    상기 손실 판정 수단은, 상기 헤더 정보에 포함되는, 패킷의 순서를 나타내는 정보인 시퀀스 번호가 전회 취득한 패킷의 시퀀스 번호와 연속하고 있지 않은 경우, 상기 패킷의 손실이 발생하였다고 판정하는 정보 처리 장치.
  11. 제9항에 있어서,
    상기 손실 판정 수단에 의해 상기 패킷의 손실이 발생하였다고 판정된 경우, 상기 후단의 처리부에 통지하는 통지 수단을 더 구비하는 정보 처리 장치.
  12. 제9항에 있어서,
    상기 취득 수단에 의해 취득된 패킷이, 상기 시퀀스 번호가 연속하는 복수의 패킷에 의해 구성되는 그룹의 선두의 패킷인지의 여부를 판정하는 선두 판정 수단을 더 구비하고,
    상기 공급 수단은, 상기 손실 판정 수단에 의해 상기 패킷의 손실이 발생하고 있지 않다고 판정되고, 또한, 상기 선두 판정 수단에 의해 상기 그룹의 선두의 패킷이라고 판정된 경우, 상기 헤더 정보도 후단의 처리부에 더 공급하는 정보 처리 장치.
  13. 제12항에 있어서,
    상기 공급 수단은, 상기 손실 판정 수단에 의해 상기 패킷의 손실이 발생하였다고 판정된 경우, 상기 선두 판정 수단에 의해, 상기 취득 수단에 의해 새로운 그룹의 선두의 패킷이 취득되었다고 판정될 때까지 상기 패킷을 파기하는 정보 처리 장치.
  14. 제9항에 있어서,
    상기 페이로드 데이터는, 최저역 성분의 1라인분을 생성하기 위하여 필요한, 다른 서브밴드도 포함시킨 라인의 집합인 프리싱트 단위로 웨이브릿 변환되어 엔트로피 부호화된 부호화 데이터인 정보 처리 장치.
  15. 제14항에 있어서,
    상기 부호화 데이터는, 복호순으로 공급되는 정보 처리 장치.
  16. 제14항에 있어서,
    상기 후단의 처리부에서, 상기 공급 수단에 의해 공급되는 상기 페이로드 데이터인 상기 부호화 데이터를 복호하는 복호 처리를 행하는 복호 처리 실행 수단을 더 구비하는 정보 처리 장치.
  17. 제16항에 있어서,
    상기 복호 처리 실행 수단은,
    상기 공급 수단에 의해 공급되는 상기 부호화 데이터를 일시적으로 유지하는 유지 수단과,
    상기 유지 수단에 의해 유지된 상기 부호화 데이터를, 상기 프리싱트 단위로 복호하는 복호 수단과,
    상기 복호 수단에 의해 복호되어 얻어진 계수 데이터에 대하여 웨이브릿 역변환을 행하는 웨이브릿 역변환 수단
    을 구비하는 정보 처리 장치.
  18. 제14항에 있어서,
    상기 취득 수단에 의해 취득된 상기 패킷의 헤더 정보에 기초하여, 상기 엔트로피 부호화가 성공하였는지의 여부를 판정하는 부호화 성공 여부 판정 수단을 더 구비하고,
    상기 공급 수단은, 상기 부호화 성공 여부 판정 수단에 의해, 상기 부호화가 실패하였다고 판정된 경우, 상기 헤더 정보만 공급하는 정보 처리 장치.
  19. 패킷으로부터 페이로드 데이터를 추출하는 디패킷타이즈 처리를 행하는 정보 처리 장치의 정보 처리 방법으로서,
    외부로부터 공급되는 상기 패킷을 취득하고,
    취득된 상기 패킷의 헤더 정보에 기초하여, 패킷의 손실이 발생하였는지의 여부를 판정하고,
    상기 패킷의 손실이 발생하고 있지 않다고 판정된 경우, 취득된 상기 패킷으로부터 페이로드 데이터를 추출하여 후단의 처리부에 공급하고, 상기 패킷의 손실이 발생하였다고 판정된 경우, 취득된 상기 패킷을 파기하는
    스텝을 포함하는 정보 처리 방법.
  20. 패킷으로부터 페이로드 데이터를 추출하는 디패킷타이즈 처리를 행하는 컴퓨터에 실행시키는 프로그램으로서,
    외부로부터 공급되는 상기 패킷을 취득하고,
    취득된 상기 패킷의 헤더 정보에 기초하여, 패킷의 손실이 발생하였는지의 여부를 판정하고,
    상기 패킷의 손실이 발생하고 있지 않다고 판정된 경우, 취득된 상기 패킷으로부터 페이로드 데이터를 추출하여 후단의 처리부에 공급하고, 상기 패킷의 손실이 발생하였다고 판정된 경우, 취득된 상기 패킷을 파기하는
    스텝을 포함하는 정보 처리를 컴퓨터에 실행시키는 프로그램.
KR1020087029188A 2007-03-30 2008-03-31 정보 처리 장치 및 방법과, 프로그램 KR101426097B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2007-094015 2007-03-30
JP2007094015A JP5162939B2 (ja) 2007-03-30 2007-03-30 情報処理装置および方法、並びにプログラム
PCT/JP2008/056325 WO2008120777A1 (ja) 2007-03-30 2008-03-31 情報処理装置および方法、並びにプログラム

Publications (2)

Publication Number Publication Date
KR20090126176A true KR20090126176A (ko) 2009-12-08
KR101426097B1 KR101426097B1 (ko) 2014-08-01

Family

ID=39808357

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087029188A KR101426097B1 (ko) 2007-03-30 2008-03-31 정보 처리 장치 및 방법과, 프로그램

Country Status (8)

Country Link
US (1) US8184636B2 (ko)
EP (1) EP2134092B1 (ko)
JP (1) JP5162939B2 (ko)
KR (1) KR101426097B1 (ko)
CN (1) CN101543071B (ko)
BR (1) BRPI0803098B1 (ko)
TW (1) TWI414183B (ko)
WO (1) WO2008120777A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140092517A (ko) * 2013-01-14 2014-07-24 삼성전자주식회사 카메라의 영상 데이터 압축 방법 및 이를 지원하는 단말기

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI384882B (zh) * 2009-07-28 2013-02-01 Mstar Semiconductor Inc 封包順序回復控制器及其方法
US9411810B2 (en) * 2009-08-27 2016-08-09 International Business Machines Corporation Method and apparatus for identifying data inconsistency in a dispersed storage network
JP5263621B2 (ja) * 2009-09-24 2013-08-14 ソニー株式会社 画像処理装置および方法
KR101079697B1 (ko) 2009-10-05 2011-11-03 주식회사 글로벌미디어테크 범용 그래픽 처리장치의 병렬 프로세서를 이용한 고속 영상 처리 방법
JP5515758B2 (ja) * 2010-01-18 2014-06-11 ソニー株式会社 画像処理装置および方法
JP2011147050A (ja) * 2010-01-18 2011-07-28 Sony Corp 画像処理装置および方法
JP5123340B2 (ja) * 2010-02-23 2013-01-23 日本電信電話株式会社 映像データ送信装置,映像データ送信方法および映像データ送信プログラム
US8970750B2 (en) 2010-11-12 2015-03-03 Sony Corporation Image outputting apparatus, image outputting method, image processing apparatus, image processing method, program, data structure and imaging apparatus
JP2012138851A (ja) * 2010-12-27 2012-07-19 Toshiba Corp 画像送信装置および方法、画像受信装置および方法
FR2972588A1 (fr) 2011-03-07 2012-09-14 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
FR2977111A1 (fr) * 2011-06-24 2012-12-28 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
JP2013051607A (ja) * 2011-08-31 2013-03-14 Canon Inc データ処理装置、方法および制御プログラム
JP5994367B2 (ja) * 2012-04-27 2016-09-21 富士通株式会社 動画像符号化装置、動画像符号化方法
JP2014070993A (ja) * 2012-09-28 2014-04-21 Japan Radio Co Ltd 衛星測位受信装置
JP6098114B2 (ja) 2012-10-26 2017-03-22 アイコム株式会社 中継装置および通信システム
KR102195069B1 (ko) 2014-08-06 2020-12-24 삼성전자주식회사 패킷 송신기 및 이를 포함하는 인터페이스 장치
CN104486633B (zh) * 2014-11-11 2019-01-18 三星电子(中国)研发中心 视频错误掩藏方法及装置
KR102467738B1 (ko) 2015-03-04 2022-11-17 소니그룹주식회사 송신 장치, 송신 방법, 수신 장치, 및 수신 방법
US10187640B2 (en) * 2015-09-01 2019-01-22 Mediatek Inc. Method of hard-limited packet size for video encoding
WO2019159268A1 (ja) * 2018-02-15 2019-08-22 三菱電機株式会社 情報分析装置、情報分析方法、及び情報分析プログラム
JP2020022087A (ja) * 2018-08-01 2020-02-06 日本放送協会 映像/パケット変換装置、パケット/映像変換装置、及びプログラム
CN109295608B (zh) * 2018-10-30 2024-04-19 常州市第八纺织机械有限公司 一种多轴向经编机编码器增速装置
KR101967259B1 (ko) * 2018-11-05 2019-04-09 (주)이엠텍아이엔씨 컴퓨터의 상태에 따라 모니터의 밝기를 제어하는 방법 및 이를 활용한 에너지 절감형 컴퓨터 시스템
KR101967260B1 (ko) * 2018-11-05 2019-04-09 (주)이엠텍아이엔씨 컴퓨터의 상태에 따라 모니터의 절전을 행하는 방법 및 이를 활용한 에너지 절감형 모니터를 갖는 컴퓨터 시스템
BR112022013852A2 (pt) * 2020-01-13 2022-09-13 Lg Electronics Inc Método e aparelho de interpredição em sistema de codificação de imagem/vídeo

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05153550A (ja) 1991-12-02 1993-06-18 Matsushita Electric Ind Co Ltd 映像信号の記録装置および再生装置
JPH06292179A (ja) 1993-04-01 1994-10-18 Matsushita Electric Ind Co Ltd 直交変換符号化装置および直交変換復号化装置
JPH0818979A (ja) * 1994-06-27 1996-01-19 Canon Inc 画像処理装置
GB2295936B (en) 1994-12-05 1997-02-05 Microsoft Corp Progressive image transmission using discrete wavelet transforms
JP3213222B2 (ja) 1995-11-02 2001-10-02 株式会社リコー 符号化方法
JP3213582B2 (ja) 1997-05-29 2001-10-02 シャープ株式会社 画像符号化装置及び画像復号装置
US6707948B1 (en) 1997-11-17 2004-03-16 The Regents Of The University Of California Image compression for memory-constrained decoders
JP2000059781A (ja) 1998-08-07 2000-02-25 Ricoh Co Ltd ウェーブレット変換装置
US6970604B1 (en) * 1998-10-05 2005-11-29 Media Tek Inc. Apparatus and method for forming a coding unit
US6339658B1 (en) * 1999-03-09 2002-01-15 Rockwell Science Center, Llc Error resilient still image packetization method and packet structure
JP2000333163A (ja) * 1999-05-24 2000-11-30 Sony Corp 復号装置及び方法、符号化装置及び方法、画像処理システム、画像処理方法
JP4097108B2 (ja) 1999-07-06 2008-06-11 株式会社リコー ウェーブレット変換装置及び符号化復号化装置
JP3609389B2 (ja) * 1999-09-30 2005-01-12 富士通株式会社 プロトコル変換装置、通信装置、通信プログラム記憶媒体、および通信システム
EP1189447A3 (en) 2000-09-19 2004-11-17 Matsushita Electric Industrial Co., Ltd. Image signal transmitter
JP2002359853A (ja) 2001-03-26 2002-12-13 Sony Corp 画像処理装置、画像処理方法、画像処理プログラムおよび記録媒体
US7136485B2 (en) * 2001-05-04 2006-11-14 Hewlett-Packard Development Company, L.P. Packetizing devices for scalable data streaming
US6865374B2 (en) * 2001-09-18 2005-03-08 Koninklijke Philips Electronics N.V. Video recovery system and method
JP4549610B2 (ja) 2001-11-08 2010-09-22 ソニー株式会社 通信システム、通信方法、送信装置および方法、受信装置および方法、並びにプログラム
JP3931642B2 (ja) * 2001-11-27 2007-06-20 日本電気株式会社 ストリーム配信システム、ストリーム送信装置、及び、中継装置
US7557929B2 (en) * 2001-12-18 2009-07-07 Massachusetts Institute Of Technology Systems and methods for phase measurements
US7194630B2 (en) * 2002-02-27 2007-03-20 Canon Kabushiki Kaisha Information processing apparatus, information processing system, information processing method, storage medium and program
JP2003283839A (ja) 2002-03-19 2003-10-03 Sanyo Electric Co Ltd 画像変換方法および装置
JP3743384B2 (ja) * 2002-04-19 2006-02-08 ソニー株式会社 画像符号化装置及び方法、並びに画像復号装置及び方法
US7483575B2 (en) 2002-10-25 2009-01-27 Sony Corporation Picture encoding apparatus and method, program and recording medium
JP4449400B2 (ja) 2002-10-25 2010-04-14 ソニー株式会社 画像符号化装置及び方法、並びにプログラム及び記録媒体
EP1567972A1 (en) * 2002-11-15 2005-08-31 The Arizona Board of Regents on Behalf of the University of Arizona Methods for decoding corrupt jpeg2000 codestreams
SG111978A1 (en) 2002-11-20 2005-06-29 Victor Company Of Japan An mpeg-4 live unicast video streaming system in wireless network with end-to-end bitrate-based congestion control
JP3880050B2 (ja) 2002-12-16 2007-02-14 梶原工業株式会社 調理装置
JP3701956B2 (ja) 2003-05-29 2005-10-05 日本電信電話株式会社 パケット中継装置及びその方法と、パケット受信装置及びその方法と、パケット中継プログラム及びそのプログラムを記録した記録媒体と、パケット受信プログラム及びそのプログラムを記録した記録媒体
EP1494456A1 (en) * 2003-07-01 2005-01-05 Deutsche Thomson-Brandt GmbH Method for run-length encoding of a bitmap data stream
US7715480B2 (en) * 2003-10-17 2010-05-11 Mitsubishi Electric Research Laboratories, Inc. Video encoding with motion-selective wavelet transform
JP2005167515A (ja) 2003-12-01 2005-06-23 Matsushita Electric Ind Co Ltd ストリーミングデータ通信システム、ストリーミングデータ通信装置及びストリーミングデータ配信方法
JP4716949B2 (ja) * 2005-09-02 2011-07-06 株式会社リコー 画像処理装置および画像処理方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140092517A (ko) * 2013-01-14 2014-07-24 삼성전자주식회사 카메라의 영상 데이터 압축 방법 및 이를 지원하는 단말기

Also Published As

Publication number Publication date
EP2134092A1 (en) 2009-12-16
JP2008252739A (ja) 2008-10-16
JP5162939B2 (ja) 2013-03-13
TW200906195A (en) 2009-02-01
BRPI0803098A2 (pt) 2011-08-30
EP2134092A4 (en) 2011-08-31
BRPI0803098B1 (pt) 2020-03-24
US20090201949A1 (en) 2009-08-13
TWI414183B (zh) 2013-11-01
US8184636B2 (en) 2012-05-22
WO2008120777A1 (ja) 2008-10-09
KR101426097B1 (ko) 2014-08-01
EP2134092B1 (en) 2019-10-23
CN101543071B (zh) 2013-05-08
CN101543071A (zh) 2009-09-23

Similar Documents

Publication Publication Date Title
JP5162939B2 (ja) 情報処理装置および方法、並びにプログラム
JP5527588B2 (ja) 情報処理装置および方法
KR101377021B1 (ko) 부호화 장치 및 방법, 복호 장치 및 방법, 및 전송 시스템
JP4488027B2 (ja) 情報処理装置および方法、並びに、情報処理システム
US11044437B2 (en) Method and system for combining multiple area-of-interest video codestreams into a combined video codestream
US20110090309A1 (en) Image processing apparatus and image processing method
US10334219B2 (en) Apparatus for switching/routing image signals through bandwidth splitting and reduction and the method thereof
CN111479162B (zh) 直播数据传输方法、装置以及计算机可读存储介质
US20110176601A1 (en) Image processing apparatus and method
JP5172874B2 (ja) 映像同期装置、映像表示装置、映像同期方法及びプログラム
CN113301295A (zh) 多画面视频数据处理方法、装置、计算机设备和存储介质
CN110731083A (zh) 视频编码系统和方法中的编码块位流结构和语法
US20060133497A1 (en) Method and apparatus for encoding/decoding video signal using motion vectors of pictures at different temporal decomposition level
JP2004040351A (ja) 画像配信システム及び画像配信再生システム
KR101754571B1 (ko) 대역분리 및 감축을 통한 영상신호의 스위칭/라우팅 장치 및 그 방법
JP2002077844A (ja) 画像伝送装置及び画像伝送方法並びに画像伝送プログラムを記録したコンピュータ読み取り可能な記録媒体
WO2023030070A1 (zh) 编码、封装及显示方法、装置及电子设备
JP2006115001A (ja) 映像送信装置および映像受信装置
JP7338992B2 (ja) 送信装置、受信装置、及びプログラム
JP2008244667A (ja) 画像伝送装置
JP2008011191A (ja) 映像符号化合成装置、映像符号化合成方法及び映像伝送システム
CN106210745A (zh) 一种智能化jpeg图像编解码系统及方法
CN104702970A (zh) 一种同步视频数据的方法、设备及系统
JP2011078068A (ja) 映像伝送方式
JP2004056234A (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: 20170721

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180719

Year of fee payment: 5