KR101411248B1 - 동화상 재생 장치, 정보 처리 장치 및 동화상 재생 방법 - Google Patents
동화상 재생 장치, 정보 처리 장치 및 동화상 재생 방법 Download PDFInfo
- Publication number
- KR101411248B1 KR101411248B1 KR1020137011485A KR20137011485A KR101411248B1 KR 101411248 B1 KR101411248 B1 KR 101411248B1 KR 1020137011485 A KR1020137011485 A KR 1020137011485A KR 20137011485 A KR20137011485 A KR 20137011485A KR 101411248 B1 KR101411248 B1 KR 101411248B1
- Authority
- KR
- South Korea
- Prior art keywords
- video stream
- chunk
- picture
- reproduction
- bit rate
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 230000010365 information processing Effects 0.000 title claims description 4
- 238000012545 processing Methods 0.000 claims abstract description 71
- 230000008569 process Effects 0.000 claims abstract description 37
- 238000004891 communication Methods 0.000 claims description 16
- 238000001094 photothermal spectroscopy Methods 0.000 description 46
- 230000003287 optical effect Effects 0.000 description 27
- 239000000872 buffer Substances 0.000 description 22
- 230000006870 function Effects 0.000 description 17
- 230000003044 adaptive effect Effects 0.000 description 10
- 238000006243 chemical reaction Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 230000006835 compression Effects 0.000 description 9
- 238000007906 compression Methods 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 230000009466 transformation Effects 0.000 description 6
- 230000008707 rearrangement Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 239000004973 liquid crystal related substance Substances 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000013139 quantization Methods 0.000 description 4
- 238000009877 rendering Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 239000000470 constituent Substances 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 210000003811 finger Anatomy 0.000 description 2
- 210000004247 hand Anatomy 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000012536 storage buffer Substances 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23424—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/23439—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing 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/2387—Stream processing in response to a playback request from an end-user, e.g. for trick-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26258—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/4302—Content synchronisation processes, e.g. decoder synchronisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44209—Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/765—Interface circuits between an apparatus for recording and another apparatus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
- H04N5/92—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
- H04N5/93—Regeneration of the television signal or of selected parts thereof
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
동화상 재생 장치(12)는, 비디오 스트림의 재생 처리로서, 그 비디오 스트림의 청크에 포함되는 픽처를 복호하여 표시시키는 재생부(40)와, 재생 처리의 개시를 지시하는 제어부(30)를 구비한다. 제1 비트 레이트에 대응하는 제1 비디오 스트림의 재생 처리 중에, 재생 대상을 제2 비트 레이트에 대응하는 제2 비디오 스트림으로 전환할 때, 재생부(40)는, 재생 처리 중의 제1 비디오 스트림의 청크에 대한 재생 처리를 계속한다. 제어부(30)는, 제2 비디오 스트림의 청크에 포함되는 픽처와, 상기 재생 처리 중의 청크에 포함되는 픽처가 중복될 경우, 제2 비디오 스트림의 청크에 대한 재생 처리에 있어서 그 중복되는 픽처를 비표시로 하도록 재생부(40)에 지시한다.
Description
본 발명은 데이터 처리 기술에 관한 것으로, 특히, 동화상을 재생하는 기술에 관한 것이다.
최근 들어, 웹 서버가 복수 종류의 영상 비트 레이트에 의해 동화상을 부호화한 복수 종류의 부호화 데이터(이하, "비디오 스트림"이라고도 함)를 배신(配信)하고, 웹 클라이언트가 비디오 스트림의 종류를 동적으로 전환하면서 동화상을 재생하는 스트리밍 기술이 제안되어 있다. 이 기술은, "어댑티브·스트리밍"이라고도 불리고 있으며, 본 명세서에서도 이하 그와 같이 칭하기로 한다.
본 발명자는, 어댑티브·스트리밍에 있어서, 서로 다른 비트 레이트에 대응하는 복수 종류의 비디오 스트림이 반드시 서로 정합하도록 부호화되어 있지 않으며, 그 결과, 웹 클라이언트에 있어서 재생 대상의 비디오 스트림의 종류를 전환했을 때에, 동화상의 표시가 흐트러지는 경우가 있음을 인식하였다.
본 발명은 이러한 과제를 감안하여 이루어진 것이며, 그 주된 목적은, 어댑티브·스트리밍에 있어서 재생 대상의 비디오 스트림의 종류를 전환할 때의 동화상 표시의 흐트러짐을 억제하기 위한 기술을 제공하는 것이다.
상기 과제를 해결하기 위해서, 본 발명의 어느 한 형태의 동화상 재생 장치는, 복수 종류의 비트 레이트에 의해 동화상이 부호화된 복수 종류의 비디오 스트림을 병행하여 배신하는 서버이며, 각 비디오 스트림을, 동화상을 구성하는 복수의 픽처를 포함하는 청크(chunk) 단위로 배신하는 서버로부터, 어느 하나의 비트 레이트에 대응하는 비디오 스트림의 청크를 취득하는 취득부와, 취득 대상으로 하는 비디오 스트림의 종류를 취득부에 지시하는 취득 제어부와, 비디오 스트림의 재생 처리로서, 취득된 청크에 포함되는 픽처를 복호하여 표시시키는 재생부와, 재생 처리의 개시를 재생부에 지시하는 재생 제어부를 구비한다. 제1 비트 레이트에 대응하는 제1 비디오 스트림의 재생 처리 중에, 재생 대상을 제2 비트 레이트에 대응하는 제2 비디오 스트림으로 전환할 때, 재생부는, 재생 처리 중의 제1 비디오 스트림의 청크에 대해서는 그 재생 처리를 계속하고, 취득 제어부는, 제1 비디오 스트림 대신에 제2 비디오 스트림을 취득하도록 취득부에 지시하고, 재생 제어부는, 제2 비디오 스트림의 청크에 포함되는 픽처와, 재생 처리 중의 제1 비디오 스트림의 청크에 포함되는 픽처가 중복될 경우, 제2 비디오 스트림의 청크에 대한 재생 처리에 있어서 그 중복되는 픽처를 비표시로 하도록 재생부에 지시한다.
본 발명의 다른 형태는 정보 처리 장치이다. 이 장치는, 장치 전체를 통괄적으로 제어하는 메인 프로세서와, 화상 처리 연산을 행하는 그래픽 프로세서를 구비한다. 메인 프로세서는, 복수 종류의 비트 레이트에 의해 동화상이 부호화된 복수 종류의 비디오 스트림을 병행하여 배신하는 서버이며, 각 비디오 스트림을, 동화상을 구성하는 복수의 픽처를 포함하는 청크 단위로 배신하는 서버로부터, 어느 하나의 비트 레이트에 대응하는 비디오 스트림의 청크를 취득하고, 그 재생 처리의 개시를 그래픽 프로세서에 지시하는 처리를 실행하고, 그래픽 프로세서는, 비디오 스트림의 재생 처리로서, 취득된 청크에 포함되는 픽처를 복호하여 표시시키는 처리를 실행하고, 제1 비트 레이트에 대응하는 제1 비디오 스트림의 재생 처리 중에, 재생 대상을 제2 비트 레이트에 대응하는 제2 비디오 스트림으로 전환할 때, 그래픽 프로세서는, 재생 처리 중의 제1 비디오 스트림의 청크에 대해서는 그 재생 처리를 계속하고, 메인 프로세서는, 제1 비디오 스트림 대신에 제2 비디오 스트림을 취득하고, 제2 비디오 스트림의 청크에 포함되는 픽처와, 재생 처리 중의 제1 비디오 스트림의 청크에 포함되는 픽처가 중복될 경우, 제2 비디오 스트림의 청크에 대한 재생 처리에 있어서 그 중복되는 픽처를 비표시로 하도록 그래픽 프로세서에 지시한다.
본 발명의 또 다른 형태는 동화상 재생 방법이다. 이 방법은, 복수 종류의 비트 레이트에 의해 동화상이 부호화된 복수 종류의 비디오 스트림을 병행하여 배신하는 서버이며, 각 비디오 스트림을, 동화상을 구성하는 복수의 픽처를 포함하는 청크 단위로 배신하는 서버로부터, 제1 비트 레이트에 대응하는 제1 비디오 스트림의 청크를 취득하는 스텝과, 제1 비디오 스트림의 재생 처리로서, 그 청크에 포함되는 픽처를 복호하여 표시시키는 스텝과, 제1 비디오 스트림의 재생 처리 중에, 재생 대상을 제2 비트 레이트에 대응하는 제2 비디오 스트림으로 전환할 때, 제2 비디오 스트림의 청크를 취득하는 스텝과, 제2 비디오 스트림의 재생 처리를 실행하는 스텝이며, 그 청크에 포함되는 픽처와, 재생 처리 중의 제1 비디오 스트림의 청크에 포함되는 픽처가 중복될 경우, 그 중복되는 픽처를 비표시로 하는 스텝을 구비한다.
또한, 이상의 구성 요소의 임의의 조합, 본 발명의 표현을 장치, 방법, 시스템, 프로그램, 프로그램을 저장한 기록 매체 등의 사이에서 변환한 것도 또한, 본 발명의 형태로서 유효하다.
본 발명에 따르면, 어댑티브·스트리밍에 있어서 재생 대상의 비디오 스트림의 종류를 전환할 때의 동화상 표시의 흐트러짐을 저감할 수 있다.
도 1의 (a)는 싱크·샘플의 PTS가 일치하는 예를 도시하는 도면이다.
도 1의 (b)는 싱크·샘플의 PTS가 불일치하는 예를 나타내는 도이다.
도 2는 실시 형태의 동화상 배신 시스템의 구성을 도시하는 도면이다.
도 3은 도 2의 거치형 재생 장치의 내부 회로의 개략 구성을 도시하는 도면이다.
도 4는 도 2의 휴대형 재생 장치의 외관을 도시하는 도면이다.
도 5는 도 2의 휴대형 재생 장치의 내부 회로의 개략 구성을 도시하는 도면이다.
도 6은 동화상 재생 장치의 기능 구성을 도시하는 블록도이다.
도 7은 동화상 재생 장치의 동작을 나타내는 흐름도이다.
도 8은 재생 대상의 비디오 스트림의 비트 레이트를 전환할 때의 처리 과정과 유저 화면에서의 표시 내용을 모식적으로 도시하는 도이다.
도 1의 (b)는 싱크·샘플의 PTS가 불일치하는 예를 나타내는 도이다.
도 2는 실시 형태의 동화상 배신 시스템의 구성을 도시하는 도면이다.
도 3은 도 2의 거치형 재생 장치의 내부 회로의 개략 구성을 도시하는 도면이다.
도 4는 도 2의 휴대형 재생 장치의 외관을 도시하는 도면이다.
도 5는 도 2의 휴대형 재생 장치의 내부 회로의 개략 구성을 도시하는 도면이다.
도 6은 동화상 재생 장치의 기능 구성을 도시하는 블록도이다.
도 7은 동화상 재생 장치의 동작을 나타내는 흐름도이다.
도 8은 재생 대상의 비디오 스트림의 비트 레이트를 전환할 때의 처리 과정과 유저 화면에서의 표시 내용을 모식적으로 도시하는 도이다.
실시 형태의 구성을 설명하기 전에, 우선 개요를 설명한다.
어댑티브·스트리밍에서는, 재생 대상으로 하는 비디오 스트림이, 서로 다른 비트 레이트에 대응하는 비디오 스트림간에서 전환된다. 이 경우에 동화상 표시의 흐트러짐을 억제하고 매끄럽게 전환하기 위해서는, 싱크·샘플의 시간적 위치(PTS: Presentation Time Stamp)가 모두 일치할 필요가 있었다. 싱크·샘플은, 그 샘플로부터 복호를 개시했을 때에, 이후의 전체 샘플을 정확하게 복호할 수 있는 샘플(픽처)이며, AVC(Advanced Video Coding)에서의 IDR 픽처에 상당한다. PTS는, 동화상 전체에 있어서 픽처를 표시시키는 시간적 위치, 말하자면 동화상 내에서의 픽처의 표시 시각을 나타내는 것이다.
도 1의 (a)는 싱크·샘플의 PTS가 일치하는 예를 나타낸다. 이 도면의 상단은, 비트 레이트 X(예를 들어 8Mbps)로 부호화된 비디오 스트림을 나타내고 있으며, 이 비디오 스트림은 동화상을 구성하는 복수의 픽처를 포함하는 그룹(이하, "청크"라고도 함) 단위로 배신된다. 즉, 청크 X-1, 청크 X-2, …, 청크 X-5로 순차 배신된다. 이 도면의 하단은, 비트 레이트 Y(예를 들어 4Mbps)로 부호화된 비디오 스트림을 나타내고 있고, 이 비디오 스트림도 또한 청크 단위로 배신된다. 즉, 청크 Y-1, 청크 Y-2, …, 청크 Y-5로 순차 배신된다.
또한 설명의 간단 명료화를 위해, 본 실시 형태의 비디오 스트림(의 청크)이 포함하는 복수의 픽처는, 표시순으로 배열되어 있고, 개개의 픽처에 대하여 PTS가 붙어 있는 것으로 한다. 또한, 청크의 선두 픽처는, 싱크·샘플(예를 들어 AVC의 IDR 픽처)인 것으로 한다.
도 1의 (a)와 같이 서로 다른 비트 레이트의 비디오 스트림간에서 싱크·샘플의 PTS가 일치하고 있을 때, 청크 X-2의 재생 중에, 재생 대상의 비디오 스트림의 종류를 비트 레이트 Y로 전환했다고 하자. 이 도면에서는, 청크 X-3의 싱크·샘플의 위치(PTS=190K)와, 청크 Y-3의 싱크·샘플의 위치(PTS=190K)가 일치한다. 따라서, 청크 X-2에서 마지막으로 표시되는 픽처와, 청크 Y-3에서 최초로 표시되는 픽처가 연속되게 된다. 그로 인해, 청크 X-2의 표시 종료 후에 청크 Y-3을 그대로 표시시키면, 비디오 스트림의 전환에 걸쳐서 동화상은 매끄럽게 표시된다. 즉, 중복되는 화상이 반복해서 표시되지 않고, 또한, 일부 화상이 비표시가 되는 경우도 없다.
그러나 현 상황에서, 서로 다른 비트 레이트의 비디오 스트림간에서는, 싱크·샘플의 PTS가 반드시 일치하지는 않는다. 도 1의 (b)는 싱크·샘플의 PTS가 불일치하는 예를 나타낸다. 이 도면에 있어서, 청크 X-2의 재생 중에, 재생 대상의 비디오 스트림의 종류를 비트 레이트 Y로 전환했다고 하자. 이 도면에서는, 청크 X-3의 싱크·샘플의 위치(PTS=190K)에 대하여 청크 Y-3의 싱크·샘플의 위치(PTS=160K)와, 청크 Y-4의 싱크·샘플의 위치(PTS=310K) 모두 불일치한다. 이러한 경우, 지금까지는, 청크 Y-3의 선두에서부터 재생하거나, 청크 Y-4의 선두에서부터 재생하는 선택지밖에 없었다. 전자의 경우, PTS=160K 내지 190K의 화상이 반복해서 표시되어버리고, 후자의 경우, PTS=190K 내지 310K의 화상이 비표시로 되어버린다.
따라서 본 실시 형태에서는, 비트 레이트 X의 비디오 스트림에서의 청크(예를 들어 청크 X-2)를 재생 중에, 재생 대상이 비트 레이트 Y의 비디오 스트림으로 전환되었을 경우, 비트 레이트 Y의 비디오 스트림에서의 청크(예를 들어 청크 Y-3)에 포함되는 픽처 중, X-2의 재생에 의해 표시되는 픽처와 중복되는 픽처(예를 들어 PTS=160K부터 190K까지의 픽처)를 비표시로 하는 동화상 재생 기술을 제안한다. 이에 의해, 서로 다른 비트 레이트의 비디오 스트림간에서 싱크·샘플의 PTS가 불일치해도, 비디오 스트림의 종류를 전환할 때에, 중복되는 화상의 반복 표시나, 원래 표시되어야 할 화상의 비표시가 발생되는 것을 피한다.
도 2는 실시 형태의 동화상 배신 시스템의 구성을 나타낸다. 동화상 배신 시스템(100)은, 동화상 배신 서버(10)와, 동화상 재생 장치(12)로 총칭되는 거치형 재생 장치(12a), 휴대형 재생 장치(12b)를 구비한다. 동화상 재생 장치(12)는, LAN·WAN·인터넷 등의 공지된 통신망(14)을 통해 동화상 배신 서버(10)와 접속된다.
동화상 배신 서버(10)는, 복수 종류의 비트 레이트에 의해 동화상이 부호화된 복수 종류의 부호화 데이터를 유지하는 서버이다. 본 실시 형태에서는 웹 서버인 것으로 한다. 예를 들어, 256Kbps, 512Kbps, 1Mbps, 4Mbps, 8Mbps의 비트 레이트 각각에 대응하는 부호화 데이터를 유지한다. 동화상 배신 서버(10)는, 복수 종류의 부호화 데이터를 비디오 스트림으로서 병행해서 동화상 재생 장치(12)에 배신한다. 각 비디오 스트림의 배신에 있어서는, 각 비디오 스트림에서 미리 정해진 청크 단위로 데이터를 송신한다. 또한, 동화상의 부호화에는 공지된 동화상 압축 부호화 기술이 적용되어도 되고, 예를 들어 MPEG(Moving Picture Experts Group)나 H.264/AVC가 적용되어도 된다.
동화상 재생 장치(12)는, 웹브라우저가 탑재된 정보 처리 장치이며, 그 웹브라우저를 통해 동화상 배신 서버(10)에 액세스하여, 비디오 스트림의 배신을 요구한다. 그리고, 자신의 장치 환경의 변화에 따라서 취득 및 재생의 대상으로 하는 비디오 스트림의 종류를 동적으로 전환하여, 현재의 장치 환경에 적합한 비트 레이트의 비디오 스트림을 취득 및 재생하여 동화상을 표시시킨다. 또한, 거치형 재생 장치(12a)는 거치형 게임기이어도 되고, 일반적인 PC이어도 된다. 휴대형 재생 장치(12b)는 휴대형 게임기이어도 되고, 휴대 전화 단말기나 휴대 정보 단말기, 스마트 폰이어도 된다.
도 3은 도 2의 거치형 재생 장치(12a)의 내부 회로의 개략 구성을 나타내는 블록 회로도이다. 이 도면은, 주로 거치형 게임기를 상정한 구성을 나타내고 있다. 거치형 재생 장치(12a)는, CPU(Central Processor Unit)(102)와, GPU(Graphics Processor Unit)(104)와, 메인 메모리(106)와, 내장 스토리지(108)와, 광 디스크 재생 프로세서(110)와, 전원 제어 회로(112)와, LAN 모듈(114)을 기본 구성으로 하여 포함한다.
CPU(102)는, 거치형 재생 장치(12a) 전체를 통괄적으로 제어하는 범용 프로세서로서의 메인 프로세서이며, 게임이나 전자 메일, 웹브라우저용의 어플리케이션 등의 각종 프로그램에 기초하여, 신호 처리나 내부 구성 요소를 제어한다. GPU(104)는, 화상 처리 연산을 효율적으로 실행하도록 설계된 전용 프로세서로서의 그래픽 프로세서이며, 거치형 재생 장치(12a)에서의 화상 처리를 실행한다. 광 디스크 재생 프로세서(110)는, 도시하지 않은 광 디스크 재생부에 삽입된 어플리케이션 프로그램이나 멀티미디어 데이터가 기록되어 있는 BD(Blu-ray Disc; 상표)나 DVD, CD 등의 광 디스크를 재생한다. 메인 메모리(106)는, CPU(102)의 워크에리어나 광 디스크로부터 판독된 데이터를 일시적으로 저장하는 버퍼로서 기능한다.
LAN 모듈(114)은, 무선 LAN 모듈로서의 기능과, 유선 LAN 모듈로서의 기능을 구비하고, 거치형 재생 장치(12a)와 그 외부 장치의 사이에서 데이터의 송수신을 행한다. 예를 들어, 무선 LAN 모듈로서 휴대 전화(200)나 액세스 포인트(900)와 통신하고, 또한 유선 LAN 모듈로서 레이어 2 스위치(800)와 통신한다.
또한, 거치형 재생 장치(12a)는, USB 포트(116)와, 근거리 무선 통신 포트(118)와, 메모리 카드 슬롯(120)과, 비디오 출력 포트(122)도 포함한다. USB 포트(116)는, 외장형 하드 디스크 등의 주변 기기(124)와의 접속에 이용된다. 근거리 무선 통신 포트(118)는, 주변 기기(124)와 무선으로 접속하는 것 이외에, 거치형 재생 장치(12a)의 컨트롤러(126)와도 접속한다. 또한, 컨트롤러(126)는, USB 포트(116)와 접속할 수도 있다. 메모리 카드 슬롯(120)은 거치형 재생 장치(12a)와 착탈 가능한 메모리 카드(128)와 정보를 주고받는다. 또한 내장 스토리지(108)는, 예를 들어 광 디스크로부터 판독된 어플리케이션 프로그램이나 게임의 세이브 데이터를 기억, 또는 USB 포트(116)나 근거리 무선 통신 포트(118), 메모리 카드 슬롯(120)을 통해 취득한 사진, 동화상, 음악 등의 데이터 등을 기억한다.
GPU(104)는, 좌표 변환 등의 처리를 하는 지오메트리 트랜스퍼 엔진(geometry transfer engine)의 기능과, 렌더링 프로세서의 기능을 가지며, CPU(102)로부터의 묘화(描畵) 지시에 따라서 묘화하여, 묘화된 화상을 도시하지 않은 프레임 버퍼에 저장한다. 즉 예를 들어, 광 디스크에 기록되어 있는 각종 어플리케이션 프로그램이 게임과 같이 소위 3차원(3D) 그래픽을 이용하는 것인 경우, 당해 GPU(104)는, 지오메트리 연산 처리에 의해, 3차원 오브젝트를 구성하기 위한 폴리곤의 좌표 등을 계산한다. 또한, 렌더링 처리에 의해, 이 3차원 오브젝트를 가상적인 카메라로 촬영함으로써 얻어지는 화상을 생성하기 위한 계산, 즉 투시 변환(3차원 오브젝트를 구성하는 각 폴리곤의 정점을 가상적인 카메라 스크린상에 투영한 경우의 좌표값의 계산 등)을 계산한다. 최종적으로 얻어진 화상 데이터를 프레임 버퍼상에 기입한다. 비디오 출력 포트(122)는, GPU(104)가 작성한 화상에 대응하는 비디오 신호를, 텔레비전 등의 모니터(130)에 출력한다.
거치형 재생 장치(12a)의 인터페이스(132)에는, 전원의 투입이나 광 디스크 취출을 위한 조작부(134)나, 전원의 온·오프, 각종 디바이스의 액세스 상황 등을 표시하기 위한 LED(136)가 포함된다.
이들 각 부는, 주로 버스 라인(138)을 통해 각각 서로 접속되어 있다. 또한, 이상의 거치형 재생 장치(12a)의 내부 회로에는, 도시하지 않은 전원으로부터 구동을 위한 전력이 공급된다. 또한, CPU(102)와 GPU(104)는, 전용 버스로 접속된다. 이상과 같은 구성을 갖는 거치형 재생 장치(12a)는, 전원이 투입되면, 도시하지 않은 마스크 ROM으로부터 메인 메모리(106)에 오퍼레이팅 시스템 프로그램이 판독되고, CPU(102)는, 오퍼레이팅 시스템 프로그램을 실행한다. 이에 의해, CPU(102)는, 거치형 재생 장치(12a)의 각 부를 통괄적으로 제어한다.
CPU(102)는, 오퍼레이팅 시스템 프로그램을 실행하면, 우선, 동작 확인 등의 초기화 처리를 한다. 계속해서 광 디스크에 기록되어 있는 게임 등의 어플리케이션 프로그램을 판독하여, 메인 메모리(106)에 로드한 후, 그 게임 어플리케이션 프로그램을 실행한다. 이 게임 어플리케이션 프로그램의 실행에 의해, CPU(102)는, 컨트롤러(126)로부터 접수한 유저의 지시에 따라 GPU(104) 등을 제어하고, 화상의 표시나 효과음, 악음(樂音)의 발생을 제어한다.
도 4는 도 2의 휴대형 재생 장치(12b)의 외관을 나타낸다. 이 도면은, 주로 휴대형 게임기를 상정한 구성을 나타내고 있다. 휴대형 재생 장치(12b)는, 동화상, 정지 화상, 음악 등의 디지털 콘텐츠를 재생할 수 있는 것 외에, 게임 프로그램 등의 콘텐츠를 실행할 수 있다. 각 콘텐츠는, 휴대형 재생 장치(12b)에 착탈할 수 있는 외부 기록 매체로부터 주로 판독된다. 본 실시 형태에서의 외부 기록 매체는, 소형의 광 디스크(402)와 메모리 카드(426)이다. 소형의 광 디스크(402) 및 메모리 카드(426)는, 각각 휴대형 재생 장치(12b)에 설치된 도시하지 않은 구동 장치에 장전된다. 소형의 광 디스크(402)는, 음악 데이터나 정지 화상 데이터는 물론, 영화 등의 비교적 데이터 크기가 큰 동화상 데이터를 저장할 수 있다. 메모리 카드(426)는, 디지털 카메라나 휴대 전화에도 착탈할 수 있는 소형의 메모리 카드이며, 정지 화상 데이터, 동화상 데이터, 음성 데이터 등, 유저 자신이 다른 기기 등에서 작성한 데이터나 다른 기기와의 사이에서 수수되는 데이터가 주로 저장된다.
휴대형 재생 장치(12b)에는, 액정 디스플레이(404)와, 십자 키(416), 아날로그 스틱(418), 버튼 키(420) 등의 키가 설치되어 있다. 유저는 휴대형 재생 장치(12b)의 좌우 단부를 양손으로 파지하고, 주로 왼쪽 손의 엄지 손가락으로 십자 키(416) 또는 아날로그 스틱(418)을 사용하여 상하 좌우의 방향을 지시하고, 주로 오른손의 엄지 손가락으로 버튼 키(420)를 사용하여 각종 조작을 지시한다. 홈 버튼(436)은, 십자 키(416)나 버튼 키(420)와 달리, 휴대형 재생 장치(12b)의 좌우 단부를 양손으로 파지했을 때에 어느 하나의 손가락으로 누르기 어려운 위치에 설치되어, 오조작의 방지를 꾀하고 있다. 액정 디스플레이(404)에는, 그래피컬 유저 인터페이스에 의한 메뉴 화면 및 각 콘텐츠의 재생 화면이 표시된다. 또한, 휴대형 재생 장치(12b)에는, USB 포트, 무선 LAN 통신의 기능이 탑재되어 있으며, 이들 포트 또는 통신 기능을 통해 다른 장치(인터넷상의 다른 장치를 포함함)와의 사이에서 데이터를 송수신한다. 또한, 적외선 포트를 구비하여, 적외선 통신을 통해 다른 장치와의 사이에서 데이터를 송수신하는 구성을 구비해도 된다.
또한, 휴대형 재생 장치(12b)는, 셀렉트 버튼(440), 시작 버튼(438) 등을 구비하고 있다. 시작 버튼(438)은, 게임 개시나 전자 메일 화면의 표시 개시, 영화나 음악의 재생 개시, 일시 정지 등을 유저가 지시하기 위한 버튼이다. 셀렉트 버튼(440)은, 액정 디스플레이(404) 상에 표시된 메뉴 표시의 선택 등을 유저가 지시하기 위한 버튼이다.
도 5는 도 2의 휴대형 재생 장치(12b)의 내부 회로 구성을 나타낸다. 휴대형 재생 장치(12b)는, 메인 CPU(500)와 GPU(502)와, 입출력 프로세서(504)와, 광 디스크 재생부(506)와, 메인 메모리(508)와, 마스크 ROM(510)과, 사운드 프로세서(512)를 기본 구성으로서 구비한다. 메인 CPU(500)는, 휴대형 재생 장치(12b) 전체를 통괄적으로 제어하는 범용 프로세서로서의 메인 프로세서이며, 게임이나 전자 메일, 웹브라우저용의 어플리케이션 등의 각종 프로그램에 기초하여, 신호 처리나 내부 구성 요소를 제어한다. GPU(502)는, 화상 처리 연산을 효율적으로 실행하도록 설계된 전용 프로세서로서의 그래픽 프로세서이며, 휴대형 재생 장치(12b)에서의 화상 처리를 실행한다.
입출력 프로세서(504)는, 외부와 장치 내부의 사이의 인터페이스 처리나 하위 호환성을 유지하기 위한 처리를 한다. 광 디스크 재생부(506)는, 어플리케이션 프로그램이나 멀티미디어 데이터가 기록되어 있는 UMD 등의 광 디스크를 재생한다. 메인 메모리(508)는, 메인 CPU(500)의 워크에리어나 광 디스크로부터 판독된 데이터를 일시적으로 저장하는 버퍼로서 기능한다. 마스크 ROM(510)은, 주로 메인 CPU(500)나 입출력 프로세서(504)가 실행하는 오퍼레이팅 시스템 프로그램을 저장하고 있다. 사운드 프로세서(512)는 음성 신호를 처리한다.
또한, 이 휴대형 재생 장치(12b)는, UMD 프로세서(514)와, 광 디스크 재생 드라이버(516) 및 메카니즘 컨트롤러(518)도 갖고 있다. UMD 프로세서(514)는, 광 디스크 재생부(506)에 의해 UMD로부터 판독되어 RF 증폭기(528)에서 증폭된 디스크 재생 신호에 대하여, 예를 들어 오류 정정 처리(예를 들어 CIRC 처리)나 신장 복호화 처리 등을 실시함으로써, UMD에 기록된 데이터를 재생(복원)한다. 광 디스크 재생 드라이버(516) 및 메카니즘 컨트롤러(518)는, 광 디스크 재생부(506)의 스핀들 모터의 회전 제어, 광 픽업의 포커스/트래킹 제어, 디스크 트레이의 로딩 제어 등을 행한다.
이들 각 부는, 주로 버스 라인(522, 524) 등을 통해 각각 서로 접속되어 있다. 또한, 메인 CPU(500)와 GPU(502)는, 전용 버스로 접속되어 있다. 또한, 메인 CPU(500)와 입출력 프로세서(504)는, 버스(550)에 의해 접속되어 있다. 입출력 프로세서(504)와 UMD 프로세서(514), 마스크 ROM(510), 사운드 프로세서(512)는, 각각 버스(522)에 접속되어 있다.
메인 CPU(500)는, 마스크 ROM(510)에 기억되어 있는 메인 CPU용의 오퍼레이팅 시스템 프로그램을 실행함으로써, 휴대형 재생 장치(12b)의 전체 동작을 제어한다. 또한, 메인 CPU(500)는, UMD 등의 광 디스크로부터 판독되어 메인 메모리(508)에 로드되거나, 또는, 무선 LAN(530)을 통해 다운로드된, 각종 어플리케이션 프로그램 등을 실행하여, 게임이나 전자 메일의 작성 편집, 웹 페이지의 열람 등의 동작을 제어한다.
입출력 프로세서(504)는, 마스크 ROM(510)에 기억되어 있는 입출력 프로세서용의 오퍼레이팅 시스템 프로그램을 실행함으로써, 유저의 조작에 따른 컨트롤러(540)로부터의 신호나 게임의 설정, 전자 메일의 내용이나 어드레스, 메모리 카드 슬롯(532)을 통한, 웹 사이트의 URL 등을 기억하는 메모리 카드(326)로부터의 데이터 등의 입출력, 그 외, USB 접속 단자(542)나 무선 LAN(530) 등에서의 데이터의 입출력을 제어한다. 여기서 컨트롤러(540)란, 십자 키(416), 아날로그 스틱(418), 버튼 키(420) 등의 유저가 휴대형 재생 장치(12b)를 제어하기 위한 키의 총칭이다.
GPU(502)는, 좌표 변환 등의 처리를 행하는 지오메트리 트랜스퍼 엔진의 기능과, 렌더링 프로세서의 기능을 가지며, 메인 CPU(500)로부터의 묘화 지시에 따라서 묘화를 행하여, 묘화된 화상을 도시하지 않은 프레임 버퍼에 저장한다. 즉 예를 들어, 광 디스크에 기록되어 있는 각종 어플리케이션 프로그램이 게임과 같이 소위 3차원(3D) 그래픽을 이용하는 것인 경우, 당해 GPU(502)는, 지오메트리 연산 처리에 의해 3차원 오브젝트를 구성하기 위한 폴리곤의 좌표 등을 계산한다. 또한, 렌더링 처리에 의해, 이 3차원 오브젝트를 가상적인 카메라로 촬영함으로써 얻어지는 화상을 생성하기 위한 계산, 즉 투시 변환(3차원 오브젝트를 구성하는 각 폴리곤의 정점을 가상적인 카메라 스크린상에 투영한 경우의 좌표값의 계산 등)을 실행한다. 최종적으로 얻어진 화상 데이터를 프레임 버퍼상에 기입한다. 그리고, GPU(502)는, 이 작성한 화상에 대응하는 비디오 신호를 출력한다.
사운드 프로세서(512)는, ADPCM(Adaptive Differential Pulse Code Modulation) 복호 기능, 오디오 신호 재생 기능, 신호 변조 기능 등을 구비하고 있다. ADPCM 복호 기능이란, 당해 사운드 프로세서(512)에 내장 또는 외장된 도시하지 않은 사운드 버퍼에 기억되어 있는 파형 데이터를 판독함으로써, 효과음 등의 오디오 신호를 재생하여 출력하는 기능이다. 신호 변조 기능이란, 상기 사운드 버퍼에 기억되어 있는 파형 데이터로부터, 악음이나 효과음 등의 오디오 신호를 발생하는, 소위 샘플링 음원으로서도 동작한다.
이상과 같은 구성을 갖는 휴대형 재생 장치(12b)는, 예를 들어 전원이 투입되면, 마스크 ROM(510)으로부터 메인 CPU(500)용 및 입출력 프로세서(504)용의 오퍼레이팅 시스템 프로그램이 판독된다. 메인 CPU(500)와 입출력 프로세서(504)는, 각각 대응한 오퍼레이팅 시스템 프로그램을 실행한다. 이에 의해, 메인 CPU(500)는, 휴대형 재생 장치(12b)의 각 부를 통괄적으로 제어한다. 또한, 입출력 프로세서(504)는, 컨트롤러(540)나 메모리 카드(526) 등과의 사이의 신호의 입출력을 제어한다. 또한, 메인 CPU(500)는, 오퍼레이팅 시스템 프로그램을 실행하면, 우선 동작 확인 등의 초기화를 행한다. 계속해서 광 디스크 재생부(506)를 제어하고, 광 디스크에 기록되어 있는 게임 등의 어플리케이션 프로그램을 판독하여, 메인 메모리(508)에 로드하고, 그 게임 어플리케이션 프로그램을 실행한다. 이 게임 어플리케이션 프로그램의 실행에 의해, 메인 CPU(500)는, 입출력 프로세서(504)를 통해 컨트롤러(540)로부터 접수한 유저의 지시에 따라, GPU(502)나 사운드 프로세서(512)를 제어하여, 화상의 표시나 효과음, 악음의 발생을 제어한다.
또한, 예를 들어 광 디스크에 기록된 영화 등을 재생하는 경우, 메인 CPU(500)는, 입출력 프로세서(504)를 통해 컨트롤러(540)로부터 접수한 유저로부터의 지시(커맨드)에 따라서 GPU(502)나 사운드 프로세서(512)를 제어하고, 광 디스크로부터 재생된 영화의 영상의 표시나 효과음이나 음악 등의 발생을 제어한다. GPU(502)의 처리 결과를 액정 디스플레이(404)에 표시하고, 사운드 프로세서(512)에서 생성된 효과음이나 음악 등은 스피커(544)에서 재생된다.
도 6은 동화상 재생 장치(12)의 기능 구성을 도시하는 블록도이다. 동화상 재생 장치(12)는, 취득부(20)와, 축적 버퍼(22)와, 제어부(30)와, 재생부(40)를 구비한다. 본 명세서의 블록도에서 나타나는 각 블록은, 하드웨어적으로는, 컴퓨터의 CPU나 메모리를 비롯한 소자나 기계 장치로 실현할 수 있고, 소프트웨어적으로는 컴퓨터 프로그램 등에 의해 실현되지만, 여기에서는, 그것들의 연계에 의해 실현되는 기능 블록을 묘사하고 있다. 따라서, 이들 기능 블록은, 하드웨어, 소프트웨어의 조합에 의해 다양한 형태로 실현할 수 있음은, 당업자에게 이해되는 바이다.
취득부(20)는, 동화상 배신 서버(10)가 배신하는 복수 종류의 비트 레이트에 대응하는 복수 종류의 비디오 스트림 중, 제어부(30)에 의해 지정된 종류의 비디오 스트림을 청크 단위로 취득하여, 축적 버퍼(22)에 저장한다. 구체적으로는, 제어부(30)에 의해 지정된 종류의 비디오 스트림의 배신을 동화상 배신 서버(10)에 요구하고, 그 종류의 비디오 스트림에서의 복수의 청크를 동화상 배신 서버(10)로부터 순차 수신한다. 취득부(20)는, 도 3에서의 CPU(102)와 LAN 모듈(114)의 연계, 또는 도 5에서의 CPU(500)와 무선 LAN(530)의 연계에 의해 실현된다. 축적 버퍼(22)는, 취득부(20)에서 취득된 비디오 스트림의 청크를 일시적으로 저장하는 메모리이다.
제어부(30)는, 어댑티브·스트리밍에서의 비디오 스트림의 취득 처리 및 재생 처리를 통괄적으로 제어한다. 제어부(30)는, 도 3에서의 CPU(102), 도 5에서의 CPU(500)에 의해 실현된다. 제어부(30)는, 전환 판정부(32)와, 취득 제어부(34)와, 스킵 판정부(36)와, 재생 제어부(38)를 포함한다.
전환 판정부(32)는, 제1 비트 레이트(예를 들어 8Mbps)에 대응하는 제1 비디오 스트림의 재생 처리 중에, 재생 대상을 제1 비트 레이트와는 다른 제2 비트 레이트(예를 들어 4Mbps)에 대응하는 제2 비디오 스트림으로 전환해야 할 상황이 되었을 경우, 그 사실을 검출한다. 구체적으로는, 미리 정해진 전환 조건이 충족되었는지 여부를 판정한다.
이 전환 조건은, 동화상 재생 장치(12)에서의 하드웨어 환경, 소프트웨어 환경, 통신 환경에 관한 각종 조건이어도 된다. 예를 들어, 상대적으로 높은 비트 레이트에서 상대적으로 낮은 비트 레이트로의 전환 조건은, CPU 사용률이 소정의 임계값 이상이 된 것이어도 좋다. 또한, 픽처의 복호 처리에 필요한 시간이 소정값 이상이 된 것이어도 좋고, 이용 가능한 통신 대역 폭이나 실행 통신 속도가 소정값 미만이 된 것이어도 좋다. 반대로, 상대적으로 낮은 비트 레이트에서 상대적으로 높은 비트 레이트로의 전환 조건은, CPU 사용률이 소정의 임계값 미만이 된 것이어도 좋다. 또한, 픽처의 복호 처리에 필요한 시간이 소정값 미만이 된 것이어도 좋고, 이용 가능한 통신 대역 폭이나 실행 통신 속도가 소정값 이상이 된 것이어도 좋다. 또한 전환 조건은, 동화상 재생 장치(12)에 대한 유저의 전환 조작, 구체적으로는 현재 선택 중인 비트 레이트에서 다른 비트 레이트로의 전환을 요구하는 소정의 조작이 검출된 것이어도 된다.
취득 제어부(34)는, 상대적으로 높은 비트 레이트에서 상대적으로 낮은 비트 레이트로의 전환 조건이 충족되었다고 전환 판정부(32)에 의해 판정된 경우, 취득 대상으로 하는 비디오 스트림의 비트 레이트를, 현재의 비트 레이트보다 낮은 비트 레이트로 변경하도록 취득부(20)에 지시한다. 또한, 상대적으로 낮은 비트 레이트에서 상대적으로 높은 비트 레이트로의 전환 조건이 충족되었다고 판정된 경우, 취득 대상으로 하는 비디오 스트림의 비트 레이트를, 현재의 비트 레이트보다 높은 비트 레이트로 변경하도록 취득부(20)에 지시한다. 또한, 유저의 전환 조작에 의해 특정한 비트 레이트가 지정된 경우에는, 유저 지정의 비트 레이트로 변경하도록 취득부(20)에 지시한다.
스킵 판정부(36)는, 전환 조건이 충족되었다고 전환 판정부(32)에 의해 판정된 경우, 비트 레이트 전환 후에 취득된 청크에 포함되는 픽처 중, 비트 레이트 전환 전에 취득되어 재생 처리 중의 청크에 포함되는 픽처와 중복되는 픽처를, 표시 대상에서 제외하도록(표시를 스킵하도록) 결정한다. 이하 구체적인 처리를 설명한다.
스킵 판정부(36)는, 후술하는 재생부(40)에서 재생 처리 중의 청크에 포함되는 픽처 중, 시계열의 마지막으로 표시해야 할 픽처(이하, "전환전 최종 픽처"라고도 함)의 표시 시각을 특정한다. 본 실시 형태에서는, 제어부(30)로부터 재생부(40)에 대하여 청크의 재생을 지시할 때에 그 청크에 있어서 마지막으로 표시해야 할 픽처의 PTS를 유지해 둔다. 스킵 판정부(36)는, 그 PTS를, 전환전 최종 픽처의 표시 시각으로서 특정한다. 변형예로서, 재생 처리 중의 청크에 있어서 마지막으로 표시되는 픽처의 PTS를 재생부(40)에 문의하고, 그 PTS를, 전환전 최종 픽처의 표시 시각으로서 특정해도 된다.
스킵 판정부(36)는, 비트 레이트 전환 후에 취득된 청크에 포함되는 픽처 중, 시계열의 최초로 표시해야 할 픽처(예를 들어 IDR 픽처이며, 이하, "전환후 선두 픽처"라고도 함)의 표시 시각을 특정한다. 본 실시 형태에서는, 비트 레이트 전환 후에 취득된 청크에 있어서 최초로 표시해야 할 픽처에 부여된 PTS를, 전환후 선두 픽처의 표시 시각으로서 특정한다.
스킵 판정부(36)는, 비트 레이트 전환 후에 취득된 청크에 포함되는 픽처 중, 전환후 선두 픽처의 표시 시각으로부터 전환전 최종 픽처의 표시 시각의 사이에 표시해야 할 픽처를 표시 대상에서 제외하도록 결정한다. 바꿔 말하면, 전환전 최종 픽처의 표시 이전에 표시시켜야 할 픽처를 비표시의 대상으로 하도록 결정한다. 예를 들어, 도 1의 (b)에서 나타낸 바와 같이, 청크 X-2의 재생 중에, 재생 대상이 전환되어 청크 Y-3이 취득된 경우, PTS=160K 내지 190K의 픽처를 표시 대상에서 제외하도록 결정한다. 스킵 판정부(36)는, 표시 대상에서 제외해야 할 픽처를 나타내는 정보(이하, "표시 스킵 정보"라고도 함)를 재생 제어부(38)에 통지한다. 이 표시 스킵 정보에는, 예를 들어 표시 대상에서 제외하는 픽처의 PTS 범위가 설정된다.
재생 제어부(38)는, 스킵 판정부(36)로부터 표시 스킵 정보가 미통지인 통상시에는, 축적 버퍼(22)에 저장된 비디오 스트림의 청크의 데이터를 재생부(40)에 송신하고, 그 청크에 포함되는 픽처 전체의 재생 표시를 지시한다. 이 지시를 이하에서는 "통상 재생 지시"라고도 한다. 스킵 판정부(36)로부터 표시 스킵 정보가 통지된 경우, 재생 제어부(38)는, 축적 버퍼(22)에 저장된 청크의 데이터와 함께 표시 스킵 정보를 재생부(40)에 송신하고, 청크에 포함되는 픽처 중 표시 대상이 된(표시 대상에서 제외되지 않은) 픽처의 재생 표시를 지시한다. 이 지시를 이하에서는 "선택 재생 지시"라고도 한다.
재생부(40)는, 비디오 스트림의 재생 처리, 구체적으로는 비디오 스트림에 포함되는 픽처의 복호 처리와, 복호 결과로서의 화상의 표시 처리를 실행하는 비디오 디코더이다. 재생부(40)는, 도 3에서의 GPU(104), 도 5에서의 GPU(502)에 의해 실현된다. 재생부(40)는, 복호 대상 선택부(42)와, 가변 길이 복호부(44)와, 역양자화부(46)와, 역직교 변환부(48)와, 가산기(50)와, 프레임 메모리(52)와, 움직임 보상부(54)와, 재배열용 버퍼(56)와, 표시 대상 선택부(58)와, D/A 변환부(60)를 포함한다.
복호 대상 선택부(42)는, 부호화된 복수의 픽처의 데이터와 움직임 벡터 정보를 포함하는, 비디오 스트림의 청크의 데이터(이하, "화상 압축 정보"라고도 함)와 함께, 통상 재생 지시를 제어부(30)로부터 접수한다. 이 화상 압축 정보에는, 예를 들어 그 헤더 정보로서, 각 픽처의 PTS를 나타내는 정보와, 각 픽처가 다른 픽처의 복호시에 참조되는 참조 픽처인지, 또는, 다른 픽처의 복호시에 참조되지 않는 비참조 픽처인지를 나타내는 정보가 포함된다. 또한, 복호 대상 선택부(42)는, 선택 재생 지시를 제어부(30)로부터 접수하고, 이 경우에는, 청크의 데이터(화상 압축 정보) 외에 표시 스킵 정보를 수취한다.
복호 대상 선택부(42)는, 통상 재생 지시를 접수한 경우, 화상 압축 정보를 그대로 가변 길이 복호부(44)에 공급한다. 한편, 선택 재생 지시를 접수한 경우, 표시 대상에서 제외하는 범위의 PTS가 붙여진 부호화 픽처를 우선 특정한다. 그리고, 그 부호화 픽처 중, 비참조 픽처를 복호 대상에서 제외하고, 참조 픽처만을 복호 대상으로 한다. 표시 대상으로 되는 범위의 PTS가 붙여진 부호화 픽처는, 참조 픽처인지 여부에 관계없이, 전체 픽처를 복호 대상으로 한다. 복호 대상 선택부(42)는, 각 부호화 픽처가 복호 대상인지 여부를 나타내는 정보와 함께 화상 압축 정보를 가변 길이 복호부(44)에 공급한다. 복호 대상 선택부(42)에 의해 복호 대상에서 제외된 부호화 픽처는, 이후의 복호 처리가 캔슬되어, 예를 들어 복호되지 않고 폐기된다.
가변 길이 복호부(44)는, 화상 압축 정보를 가변 길이 복호하고, 복호된 화상 데이터를 역양자화부(46)에 공급하고, 움직임 벡터 정보를 움직임 보상부(54)에 공급한다. 역양자화부(46)는, 복호된 화상 데이터를 역양자화하여 역직교 변환부(48)에 공급한다. 역직교 변환부(48)는, 역양자화부(46)에 의해 역양자화된 DCT 계수를 역 이산 코사인 변환(IDCT)함으로써, 원래의 화상 데이터를 복원한다. 역직교 변환부(48)에 의해 복원된 화상 데이터는 가산기(50)에 공급된다.
역직교 변환부(48)로부터 출력되는 화상 데이터가 프레임간 예측을 사용하지 않고 부호화된 픽처(예를 들어, IDR 픽처나 I 픽처)일 경우, 가산기(50)는, 그 화상 데이터를 그대로 재배열용 버퍼(56)에 저장한다. 그와 함께, 가산기(50)는, 그 화상 데이터가 참조 픽처일 경우, 그 화상 데이터를, 프레임간 예측을 사용하여 부호화된 픽처의 예측 화상을 생성할 때에 참조시키기 위해 프레임 메모리(52)에 저장한다.
역직교 변환부(48)로부터 출력되는 화상 데이터가 프레임간 예측을 사용하여 부호화된 픽처(예를 들어, P 픽처나 B 픽처)일 경우, 그 화상 데이터는 차분 화상이기 때문에, 가산기(50)는, 그 차분 화상과 움직임 보상부(54)로부터 공급되는 예측 화상을 가산함으로써, 원래의 화상 데이터를 복원하여 재배열용 버퍼(56)에 저장한다.
움직임 보상부(54)는, 가변 길이 복호부(44)로부터 공급되는 움직임 벡터 정보와, 프레임 메모리(52)에 저장된 참조 픽처를 사용하여, P 픽처나 B 픽처 등을 위한 예측 화상을 생성하여, 가산기(50)에 공급한다.
재배열용 버퍼(56)는, 부호화된 픽처에 대한 복호 처리의 결과로서의 원래의 화상(이하, "복호 픽처"라고도 함)을 축적하고, 그 복호 픽처를 표시 순서로 재배열하기 위한 버퍼이다. 예를 들어, 부호화된 픽처 개개에 부여된 PTS에 기초하여, 부호화된 픽처 개개에 대응하는 복호 픽처가 재배열되어도 된다.
표시 대상 선택부(58)는, 복호 대상 선택부(42)에서 통상 재생 지시가 접수되었을 경우, 재배열용 버퍼(56)에 표시순으로 유지된 복호 픽처의 데이터를, PTS에 따른 타이밍에서 D/A 변환부(60)에 공급한다. 한편, 복호 대상 선택부(42)에서 선택 재생 지시가 접수되었을 경우, 재배열용 버퍼(56)에 표시순으로 유지된 복호 픽처 중, 표시 대상의 (바꿔 말하면, 표시 대상에서 제외되지 않은) 복호 픽처의 데이터만을 D/A 변환부(60)에 공급한다. 구체적으로는, 표시 스킵 정보로 지정된, 표시 대상에서 제외하는 범위의 PTS가 부여된 부호화 픽처에 대응하는 복호 픽처를 폐기하는 한편, 그 범위 외의 PTS가 부여된 부호화 픽처에 대응하는 복호 픽처를 D/A 변환부(60)에 공급한다.
D/A 변환부(60)는, 표시 대상 선택부(58)로부터 공급된 복호 픽처의 데이터를 아날로그 신호로 변환하여, 도 3의 모니터(130)나 도 5의 디스플레이(404) 등의 표시 장치에 출력한다. 상술한 바와 같이, PTS에 따른 타이밍에서, 복호 픽처의 데이터가 공급되기 때문에, PTS의 설정값에 동기한 동화상의 재생 표시가 실현된다.
또한 재생부(40)는, 제어부(30)의 전환 판정부(32)에서 전환 조건이 충족되었다고 판정된 경우에도, 제어부(30)로부터 접수 완료된 청크에 대한 재생 처리는 마지막까지 계속된다. 바꿔 말하면, 재생 중인 청크에 대해서는, 그 청크에 포함되는 마지막 픽처까지 표시시킨다. 또한, 도 6에서의 가변 길이 복호부(44) 내지 재배열용 버퍼(56)의 처리는 픽처를 복호하는 일례이며, 공지된 동화상 압축 부호화 기술에 대응한 복호 처리가 적절히 실행되어도 됨은 물론이다.
이상의 구성에 의한 동작을 이하 설명한다.
도 7은 동화상 재생 장치(12)의 동작을 나타내는 흐름도이다. 취득부(20)는, 동화상 배신 서버(10)로부터, 제1 비트 레이트에 의해 동화상이 부호화된 제1 비디오 스트림을 청크 단위로 순차 수신한다(S10). 제어부(30)의 재생 제어부(38)는, 제1 비디오 스트림의 청크를 재생부(40)에 걸쳐서 통상 재생을 지시한다(S12). 재생부(40)는, 통상 재생이 지시된 청크에 대한 재생 처리를 개시하고, 그 청크에 포함되는 전체 픽처를 복호하여, PTS에 따라서 순차 표시시킨다(S14).
제어부(30)의 전환 판정부(32)는, 동화상 재생 장치(12)의 각종 환경 정보를 항상 감시한다. 비트 레이트의 전환 조건이 충족된 것이 전환 판정부(32)에 의해 검출되면(S16의 Y), 취득 제어부(34)는, 충족된 전환 조건에 따라, 제1 비트 레이트보다 높은 또는 낮은 제2 비트 레이트에 대응하는 제2 비디오 스트림을 취득하도록 취득부(20)에 지시한다. 이후, 취득부(20)는, 동화상 배신 서버(10)로부터, 제1 비디오 스트림 대신에 제2 비디오 스트림을 청크 단위로 수신한다(S18). 스킵 판정부(36)는, 제2 비디오 스트림의 청크에 포함되는 픽처 중, 재생부(40)에서 재생 처리 중의 제1 비디오 스트림의 청크에 포함되는 픽처와 중복되는 픽처를 비표시 대상으로 하여, 비표시 범위(PTS의 값 범위)를 결정한다(S20). 재생 제어부(38)는, 제2 비디오 스트림의 청크를 재생부(40)에 전달하고, 비표시 범위를 지정하여 선택 재생을 지시한다(S22). 비트 레이트의 전환 조건이 비충족이면(S16의 N), 이하의 처리는 스킵되고, 비디오 스트림의 전환에 관한 본 도면의 플로우를 종료한다.
재생부(40)는, 제2 비디오 스트림의 청크에 대한 재생 처리를 개시한다. 그 청크에 포함되는 부호화 픽처가 비표시 범위에 속하고(S24의 Y), 또한, 참조 픽처일 경우(S26의 Y), 그 픽처를 복호해서(S28), 참조용의 버퍼에 저장하지만(S30), 표시는 스킵한다. 비참조 픽처인 경우에는(S26의 N), 복호 처리 자체를 실행하지 않는다. 한편, 비표시 범위에 속하지 않는, 즉 표시 범위의 PTS가 붙여진 부호화 픽처의 경우(S24의 N), 참조 픽처인지 여부에 관계없이 복호한다(S32). 그리고 참조 픽처이면(S34의 Y), 참조용의 버퍼에 저장하고(S36), 비참조 픽처이면(S34의 N), S36을 스킵하고, 복호 픽처를 PTS에 따른 타이밍에서 표시시킨다(S38). 미처리의 부호화 픽처가 잔존하면(S40의 N), S24로 되돌아오고, 모든 부호화 픽처가 처리 완료이면(S40의 Y), 비디오 스트림의 전환에 관한 본 도면의 플로우를 종료한다.
이후, 본 예에서의 제2 비디오 스트림이 당초의 제1 비디오 스트림의 입장이 되어, 비디오 스트림의 재생 처리가 S10부터 반복 실행된다. 즉, 어댑티브·스트리밍이 계속되어 동화상의 재생 표시가 계속된다. 또한, 동화상 재생 장치(12)의 환경이 또 변화하여 전환 조건이 충족되었을 경우에는, 취득 및 재생의 대상이 다시 제1 비디오 스트림으로 되돌아오거나, 또는, 제1 및 제2 비트 레이트와는 다른 제3 비트 레이트에 대응하는 제3 비디오 스트림으로 전환된다.
도 8은 재생 대상의 비디오 스트림의 비트 레이트를 전환할 때의 처리 과정과 유저 화면에서의 표시 내용을 모식적으로 도시한다. 이 도면은, 도 1의 (b)에서 나타내는 청크 X-2의 재생 중에, 재생 대상의 비디오 스트림의 종류를 비트 레이트 Y로 전환한 예를 나타내고 있다. 우선, 제어부(30)는, 청크 X-2를 판독해서 재생부(40)에 전달하고, 그 재생을 지시한다(S50). 재생부(40)는, 청크 X-2를 디코드하고, 그 복호 픽처를 PTS에 의해 규정되는 타이밍에서 유저 화면에 표시시킨다(S52). 청크 X-2의 재생 처리에서 마지막으로 표시되는 픽처의 PTS는 190K이다(실제의 값은 190K 미만이지만, 여기에서는 설명의 간단 명료화를 위해 190K라 함).
재생부(40)에서의 청크 X-2의 재생 처리 중에, 제어부(30)는, 통신 속도의 저하를 검출한다(S54). 제어부(30)는, 보다 낮은 비트 레이트에 대응하는 비디오 스트림의 청크 Y-3을 판독하여 재생부(40)에 전달한다. 그때에, 제어부(30)는, 청크 X-2와 청크 Y-3의 사이에서 픽처가 중복되는 PTS=160K 내지 190K의 범위를 비표시로 하도록 지시한다(S56). 재생부(40)는, 청크 Y-3의 재생 처리에 있어서, PTS=160K 내지 190K의 픽처에 대해서는, 참조 픽처만을 디코드하고, 또한, 비표시로 한다(S58). PTS=190K 이후의 픽처에 대해서는, 통상대로 디코드하여 유저 화면에 표시시킨다(S60). 이상의 처리에 의해, 유저 화면에는, X-2의 모든 복호 픽처가 표시된 후, 도중에 끊어지지 않고 Y-3의 PTS=190K 이후에 대응하는 복호 픽처가 표시되게 된다.
본 실시 형태의 동화상 재생 장치(12)에 의하면, 다른 비트 레이트의 비디오 스트림간에서 싱크·샘플의 PTS가 불일치, 바꿔 말하면, 청크의 경계가 불일치해도, 비디오 스트림의 종류를 전환할 때에, 중복되는 화상이 반복해서 표시되어버리는 것을 피하여 동화상 표시의 흐트러짐을 억제할 수 있다. 예를 들어, 이용 가능한 통신 대역 폭이 비교적 빈번히 변동할 경우, 구체적으로는, 휴대형 재생 장치(12b)에 의한 이동 중의 동화상 시청이나, 베스트 에포트형 통신에 의한 동화상 시청에 있어서는, 비디오 스트림의 종류가 비교적 빈번히 전환되는 경우가 있다. 이러한 경우에, 실시 형태에서 제안하는 동화상 재생 기술에 의해 동화상 표시의 혼란을 억제함으로써, 어댑티브·스트리밍의 편리성을 높일 수 있다.
또한, 동화상 재생 장치(12)에서는, 비트 레이트 전환 후의 청크의 재생 처리에 있어서, 전환 전의 청크에 포함되는 픽처와 중복되기 때문에 비표시로 하는 픽처이여도, 참조 픽처에 대해서는 복호하여 다른 픽처의 복호시에 참조 가능하게 한다. 이에 의해, 표시 대상으로 하는 픽처(P 픽처 및 B 픽처)의 복호를 담보할 수 있다. 한편, 비표시로 하는 픽처이면서 또한 비참조 픽처는, 다른 픽처의 복호에는 불필요하여, 본래, 화면 표시 이외의 목적으로는 사용되지 않는 것이기 때문에, 복호 처리 자체를 스킵함으로써 비트 레이트 전환 후의 청크의 재생 처리를 신속화할 수 있다. 즉, 전환 전의 청크에 포함되는 픽처의 재생 표시가 종료될 때까지, 전환 후의 청크에 포함되는 픽처를 재생 표시 가능한 상태로 하기 쉬워져, 매끄러운 전환 표시를 실현하기 쉬워진다. 예를 들어, 전환 후의 청크에 포함되는 픽처를 재생 표시 가능한 상태로 하기 전에, 전환 전의 청크에 포함되는 픽처의 재생 표시가 종료했을 경우의, 동화상의 재생 표시가 일시적으로 정지되어버리는 것을 방지하기 쉬워진다.
또한, 동화상 재생 장치(12)에서는, 비디오 스트림의 취득 제어 및 재생 제어, 예를 들어 전환 조건의 충족의 판정 처리나 비표시 범위의 판정 처리를 메인 프로세서에서 실행하는 한편, 비디오 스트림의 재생 처리 자체, 예를 들어 복호 처리는 그래픽 프로세서에서 실행시킨다. 이에 의해, 그래픽 프로세서를 화상 연산 처리에 전념시키기 쉬워져, 그 능력을 효율적으로 발휘시킬 수 있다. 또한 그 결과, 비트 레이트 전환 후의 청크의 재생 처리(복호 처리)가 지연되는 것을 방지하기 쉬워져, 매끄러운 전환 표시를 실현하기 쉬워진다.
또한, 본 실시 형태와는 다른 방식으로서, 서로 다른 비트 레이트의 비디오 스트림을 항상 병행해서 취득 및 복호해 두어, 한쪽을 표시시키고, 다른 쪽을 비표시로 하는 것을 생각할 수 있다. 비트 레이트 전환시에는, 표시·비표시의 관계를 역전시킴으로써 동화상 표시의 흐트러짐을 억제한다. 그러나 이 방식에서는, 복수 종류의 비디오 스트림의 취득 및 복호 처리가 항상 병행 실행되기 때문에, 본 실시 형태에서 제안한 방식과 비교하여, 하드웨어 리소스를 보다 많이 사용하게 된다. 또한, 비트 레이트의 종류가 많을수록, 하드웨어 리소스의 사용량도 증가해버리고, 또한, 비트 레이트의 전환이 발생하지 않으면, 하드웨어 리소스가 낭비되게 된다. 이에 반해, 본 실시 형태에서 제안하는 방식은, 동시에 취득 및 재생하는 비트 레이트는 1종이며, 하드웨어 리소스의 효율적인 사용과, 매끄러운 전환 표시를 양립시키는 것이다.
이상, 본 발명을 실시 형태를 바탕으로 설명하였다. 이 실시 형태는 예시이며, 이들 각 구성 요소나 각 처리 프로세스의 조합에 다양한 변형예가 가능한 점, 또한 그러한 변형예도 본 발명의 범위에 있음은 당업자에게 이해되는 바이다.
예를 들어, 상기 실시 형태에서는, 비디오 스트림의 청크에서의 선두 픽처가 싱크·샘플(IDR 픽처)인 것으로 하였다. 변형예에서는, 청크에서의 선두 픽처는 싱크·샘플이 아니고, 바꿔 말하면, 싱크·샘플의 시간적 위치는 청크의 경계와 불일치해도 된다. 이 변형예에서는, 재생부(40)의 프레임 메모리(52)에 저장된 참조 픽처의 화상 데이터가 클리어되는 타이밍이 실시 형태와 상이할 뿐이며, 실시 형태와 마찬가지로, 비디오 스트림의 종류를 전환할 때에, 중복되는 화상이 반복해서 표시되어버리는 것을 피하여 동화상 표시의 흐트러짐을 억제할 수 있다.
또한 상기 변형예에 대해서, 비디오 스트림의 청크의 데이터에는, 그 청크 중에 존재하는 싱크·샘플의 위치(예를 들어 PTS의 값)를 나타내는 인덱스 정보가 포함되어도 된다. 이 경우, 동화상 재생 장치(12)의 복호 대상 선택부(42)는, 표시 대상에서 제외하는 범위의 PTS가 붙여진 부호화 픽처 중, 당해 범위에서의 마지막 싱크·샘플 이전에 위치하는 부호화 픽처(예를 들어 최후의 싱크·샘플 이전의 PTS가 붙여진 부호화 픽처)를 특정해도 된다. 그리고, 이들 부호화 픽처에 대해서는, 비참조 픽처인지 여부에 관계없이, 전체 픽처를 복호 대상에서 제외해도 된다. 이들 부호화 픽처는, 표시 대상의 픽처의 복호에 필요하지 않기 때문이다. 이 형태에 의하면, 복호해야 할 픽처의 범위를 한층 한정하여, 비트 레이트 전환 후의 청크의 재생 처리를 한층 효율화되고, 신속화될 수 있다. 또한, 다른 형태로서, 비디오 스트림의 청크 중에 존재하는 싱크·샘플의 위치를 나타내는 인덱스 정보가, 청크의 데이터와는 별도로 동화상 배신 서버(10)로부터 동화상 재생 장치(12)에 제공되어도 된다. 또한, 동화상 배신 서버(10)가 인덱스 정보를 유지하지 않을 경우, 동화상 재생 장치(12) 자신이 청크의 데이터에 포함되는 싱크·샘플의 위치를 서치하여, 인덱스 정보를 생성해도 된다.
상술한 실시 형태 및 변형예의 임의의 조합도 또한 본 발명의 실시 형태로서 유용하다. 조합에 의해 발생하는 새로운 실시 형태는, 조합되는 실시 형태 및 변형예 각각의 효과를 겸비한다.
청구항에 기재된 각 구성 요건이 완수해야 할 기능은, 실시 형태 및 변형예에서 나타난 각 구성 요소의 단체 또는 그것들의 연계에 의해 실현되는 것도 당업자에게는 이해되는 바이다.
본 발명은 동화상의 데이터를 재생하는 장치에 이용할 수 있다.
10 : 동화상 배신 서버 12 : 동화상 재생 장치
20 : 취득부 30 : 제어부
32 : 전환 판정부 34 : 취득 제어부
36 : 스킵 판정부 38 : 재생 제어부
40 : 재생부 100 : 동화상 배신 시스템
20 : 취득부 30 : 제어부
32 : 전환 판정부 34 : 취득 제어부
36 : 스킵 판정부 38 : 재생 제어부
40 : 재생부 100 : 동화상 배신 시스템
Claims (8)
- 동화상 재생 장치로서,
복수 종류의 비트 레이트에 의해 동화상이 부호화된 복수 종류의 비디오 스트림을 병행하여 배신(配信)하는 서버이며, 각 비디오 스트림을, 상기 동화상을 구성하는 복수의 픽처를 포함하는 청크(chunk) 단위로 배신하는 서버로부터, 어느 하나의 비트 레이트에 대응하는 비디오 스트림의 청크를 취득하는 취득부와,
취득 대상으로 하는 비디오 스트림의 종류를 상기 취득부에 지시하는 취득 제어부와,
비디오 스트림의 재생 처리로서, 취득된 상기 청크에 포함되는 픽처를 복호하여 표시시키는 재생부와,
상기 재생 처리의 개시를 상기 재생부에 지시하는 재생 제어부
를 구비하고,
제1 비트 레이트에 대응하는 제1 비디오 스트림의 재생 처리 중에, 재생 대상을 제2 비트 레이트에 대응하는 제2 비디오 스트림으로 전환할 때,
상기 재생부는, 재생 처리 중의 제1 비디오 스트림의 청크에 대해서는 그 재생 처리를 계속하고,
상기 취득 제어부는, 상기 제1 비디오 스트림 대신에 상기 제2 비디오 스트림을 취득하도록 상기 취득부에 지시하고,
상기 제1 비디오 스트림의 청크에 포함되는 픽처와, 상기 제2 비디오 스트림의 청크에 포함되는 픽처 각각에는, 상기 동화상에서의 픽처의 표시 시각을 나타내는 타임 스탬프가 미리 대응지어져 있고,
상기 재생 제어부는, 상기 제2 비디오 스트림의 청크에 포함되는 픽처에 대응지어진 타임 스탬프와, 상기 재생 처리 중의 제1 비디오 스트림의 청크에 포함되는 픽처에 대응지어진 타임 스탬프에 기초하여, 상기 제2 비디오 스트림의 청크에 포함되는 픽처와, 상기 재생 처리 중의 제1 비디오 스트림의 청크에 포함되는 픽처 사이에서 중복되는 픽처를 검출하고, 상기 제2 비디오 스트림의 청크에 대한 재생 처리에서 그 중복되는 픽처를 비표시로 하도록 상기 재생부에 지시하는 것을 특징으로 하는 동화상 재생 장치. - 제1항에 있어서,
상기 취득 제어부는, 이용 가능한 통신 대역 폭의 변동에 따라, 상기 제1 비디오 스트림 대신에 상기 제2 비디오 스트림을 취득하도록 상기 취득부에 지시하는 것을 특징으로 하는 동화상 재생 장치. - 제1항 또는 제2항에 있어서,
상기 재생 제어부는, 상기 제2 비디오 스트림의 청크에 포함되는 픽처 중, 상기 재생 처리 중의 제1 비디오 스트림의 청크에 대한 재생 처리의 종료 이전에 표시시켜야 할 픽처를, 상기 중복되는 픽처로서 특정하는 것을 특징으로 하는 동화상 재생 장치. - 제1항 또는 제2항에 있어서,
상기 재생부는, 상기 제2 비디오 스트림의 청크에 대한 재생 처리에 있어서, 상기 중복되는 픽처 중, 다른 픽처의 복호시에 참조되는 참조 픽처를 복호한 뒤에 비표시로 하는 한편, 다른 픽처의 복호시에 참조되지 않는 비참조 픽처를 복호 대상에서 제외하는 것을 특징으로 하는 동화상 재생 장치. - 제3항에 있어서,
상기 재생부는, 상기 제2 비디오 스트림의 청크에 대한 재생 처리에 있어서, 상기 중복되는 픽처 중, 다른 픽처의 복호시에 참조되는 참조 픽처를 복호한 뒤에 비표시로 하는 한편, 다른 픽처의 복호시에 참조되지 않는 비참조 픽처를 복호 대상에서 제외하는 것을 특징으로 하는 동화상 재생 장치. - 정보 처리 장치로서,
장치 전체를 통괄적으로 제어하는 메인 프로세서와,
화상 처리 연산을 행하는 그래픽 프로세서
를 구비하고,
상기 메인 프로세서는, 복수 종류의 비트 레이트에 의해 동화상이 부호화된 복수 종류의 비디오 스트림을 병행하여 배신하는 서버이며, 각 비디오 스트림을, 상기 동화상을 구성하는 복수의 픽처를 포함하는 청크 단위로 배신하는 서버로부터, 어느 하나의 비트 레이트에 대응하는 비디오 스트림의 청크를 취득하고, 그 재생 처리의 개시를 상기 그래픽 프로세서에 지시하는 처리를 실행하고,
상기 그래픽 프로세서는, 비디오 스트림의 재생 처리로서, 취득된 상기 청크에 포함되는 픽처를 복호하여 표시시키는 처리를 실행하고,
제1 비트 레이트에 대응하는 제1 비디오 스트림의 재생 처리 중에, 재생 대상을 제2 비트 레이트에 대응하는 제2 비디오 스트림으로 전환할 때,
상기 그래픽 프로세서는, 재생 처리 중의 제1 비디오 스트림의 청크에 대해서는 그 재생 처리를 계속하고,
상기 제1 비디오 스트림의 청크에 포함되는 픽처와, 상기 제2 비디오 스트림의 청크에 포함되는 픽처 각각에는, 상기 동화상에서의 픽처의 표시 시각을 나타내는 타임 스탬프가 미리 대응지어져 있고,
상기 메인 프로세서는, 상기 제1 비디오 스트림 대신에 상기 제2 비디오 스트림을 취득하고, 상기 제2 비디오 스트림의 청크에 포함되는 픽처에 대응지어진 타임 스탬프와, 상기 재생 처리 중의 제1 비디오 스트림의 청크에 포함되는 픽처에 대응지어진 타임 스탬프에 기초하여, 상기 제2 비디오 스트림의 청크에 포함되는 픽처와, 상기 재생 처리 중의 제1 비디오 스트림의 청크에 포함되는 픽처 사이에서 중복되는 픽처를 검출하고, 상기 제2 비디오 스트림의 청크에 대한 재생 처리에서 그 중복되는 픽처를 비표시로 하도록 상기 그래픽 프로세서에 지시하는 것을 특징으로 하는 정보 처리 장치. - 동화상 재생 방법으로서,
복수 종류의 비트 레이트에 의해 동화상이 부호화된 복수 종류의 비디오 스트림을 병행하여 배신하는 서버이며, 각 비디오 스트림을, 상기 동화상을 구성하는 복수의 픽처를 포함하는 청크 단위로 배신하는 서버로부터, 제1 비트 레이트에 대응하는 제1 비디오 스트림의 청크를 취득하는 스텝과,
상기 제1 비디오 스트림의 재생 처리로서, 그 청크에 포함되는 픽처를 복호하여 표시시키는 스텝과,
상기 제1 비디오 스트림의 재생 처리 중에, 재생 대상을 제2 비트 레이트에 대응하는 제2 비디오 스트림으로 전환할 때, 상기 제2 비디오 스트림의 청크를 취득하는 스텝
을 구비하고,
상기 제1 비디오 스트림의 청크에 포함되는 픽처와, 상기 제2 비디오 스트림의 청크에 포함되는 픽처 각각에는, 상기 동화상에서의 픽처의 표시 시각을 나타내는 타임 스탬프가 미리 대응지어져 있고,
상기 제2 비디오 스트림의 재생 처리를 실행하는 스텝으로서, 상기 제2 비디오 스트림의 청크에 포함되는 픽처에 대응지어진 타임 스탬프와, 상기 재생 처리 중의 제1 비디오 스트림의 청크에 포함되는 픽처에 대응지어진 타임 스탬프에 기초하여, 상기 제2 비디오 스트림의 청크에 포함되는 픽처와, 재생 처리 중의 제1 비디오 스트림의 청크에 포함되는 픽처 사이에서 중복되는 픽처를 검출하고, 그 중복되는 픽처를 비표시로 하는 스텝
을 구비하는 것을 특징으로 하는 동화상 재생 방법. - 복수 종류의 비트 레이트에 의해 동화상이 부호화된 복수 종류의 비디오 스트림을 병행하여 배신하는 서버이며, 각 비디오 스트림을, 상기 동화상을 구성하는 복수의 픽처를 포함하는 청크 단위로 배신하는 서버로부터, 어느 하나의 비트 레이트에 대응하는 비디오 스트림의 청크를 취득하는 취득 기능과,
취득 대상으로 하는 비디오 스트림의 종류를 상기 취득 기능에 지시하는 취득 제어 기능과,
비디오 스트림의 재생 처리로서, 취득된 상기 청크에 포함되는 픽처를 복호하여 표시시키는 재생 기능과,
상기 재생 처리의 개시를 상기 재생 기능에 지시하는 재생 제어 기능
을 컴퓨터에 실현시키고,
제1 비트 레이트에 대응하는 제1 비디오 스트림의 재생 처리 중에, 재생 대상을 제2 비트 레이트에 대응하는 제2 비디오 스트림으로 전환할 때,
상기 재생 기능은, 재생 처리 중의 제1 비디오 스트림의 청크에 대해서는 그 재생 처리를 계속하고,
상기 취득 제어 기능은, 상기 제1 비디오 스트림 대신에 상기 제2 비디오 스트림을 취득하도록 상기 취득 기능에 지시하고,
상기 제1 비디오 스트림의 청크에 포함되는 픽처와, 상기 제2 비디오 스트림의 청크에 포함되는 픽처 각각에는, 상기 동화상에서의 픽처의 표시 시각을 나타내는 타임 스탬프가 미리 대응지어져 있고,
상기 재생 제어 기능은, 상기 제2 비디오 스트림의 청크에 포함되는 픽처에 대응지어진 타임 스탬프와, 상기 재생 처리 중의 제1 비디오 스트림의 청크에 포함되는 픽처에 대응지어진 타임 스탬프에 기초하여, 상기 제2 비디오 스트림의 청크에 포함되는 픽처와, 상기 재생 처리 중의 제1 비디오 스트림의 청크에 포함되는 픽처 사이에서 중복되는 픽처를 검출하고, 상기 제2 비디오 스트림의 청크에 대한 재생 처리에서 그 중복되는 픽처를 비표시로 하도록 상기 재생 기능에 지시하는 것을 특징으로 하는 컴퓨터 프로그램을 저장한 컴퓨터 판독 가능한 기록 매체.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JPJP-P-2010-231698 | 2010-10-14 | ||
JP2010231698A JP5331773B2 (ja) | 2010-10-14 | 2010-10-14 | 動画再生装置、情報処理装置および動画再生方法 |
PCT/JP2011/005685 WO2012049833A1 (ja) | 2010-10-14 | 2011-10-11 | 動画再生装置、情報処理装置および動画再生方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130062371A KR20130062371A (ko) | 2013-06-12 |
KR101411248B1 true KR101411248B1 (ko) | 2014-06-24 |
Family
ID=45938074
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137011485A KR101411248B1 (ko) | 2010-10-14 | 2011-10-11 | 동화상 재생 장치, 정보 처리 장치 및 동화상 재생 방법 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9055272B2 (ko) |
EP (1) | EP2629514B1 (ko) |
JP (1) | JP5331773B2 (ko) |
KR (1) | KR101411248B1 (ko) |
CN (1) | CN103155581B (ko) |
WO (1) | WO2012049833A1 (ko) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9813325B2 (en) * | 2012-12-27 | 2017-11-07 | Comcast Cable Communications, Llc | Information stream management |
US20150089073A1 (en) | 2013-09-25 | 2015-03-26 | Ericsson Television Inc | System and method for effectuating fast channel change in an adpative streaming environment |
US9444856B2 (en) | 2013-09-25 | 2016-09-13 | Ericsson Ab | System and method for managing adjacent channels in an adaptive streaming environment |
CN104768011B (zh) | 2015-03-31 | 2018-03-06 | 浙江大学 | 图像编解码方法和相关装置 |
CN105867856A (zh) * | 2015-12-08 | 2016-08-17 | 乐视移动智能信息技术(北京)有限公司 | 移动设备作为显示器的应用方法及装置、移动设备 |
US11689776B2 (en) * | 2018-03-15 | 2023-06-27 | Saturn Licensing Llc | Information processing apparatus, information processing apparatus, and program |
JP7327953B2 (ja) * | 2019-03-11 | 2023-08-16 | キヤノン株式会社 | 動画配信装置、動画配信方法及びプログラム |
CN115002550B (zh) * | 2022-05-19 | 2024-07-02 | 深圳康佳电子科技有限公司 | 基于图像识别的视频播放控制方法、终端设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006060802A (ja) | 2004-07-29 | 2006-03-02 | Microsoft Corp | 帯域幅が制限されるネットワーク上のメディア変換方法および装置 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4007575B2 (ja) * | 2001-10-23 | 2007-11-14 | Kddi株式会社 | 画像・音声ビットストリーム分割装置 |
JP2004104704A (ja) * | 2002-09-12 | 2004-04-02 | Toshiba Solutions Corp | 映像再生装置、映像再生方法、プログラム |
JP4134164B2 (ja) * | 2003-07-10 | 2008-08-13 | 富士通株式会社 | メディア再生装置 |
JP2005033556A (ja) * | 2003-07-14 | 2005-02-03 | Toshiba Corp | データ送信装置、データ送信方法、データ受信装置、データ受信方法 |
JP4222253B2 (ja) * | 2004-05-13 | 2009-02-12 | 日本ビクター株式会社 | クライアント端末、ストリーミングサーバ及びストリーミング切り替え配信システム |
EP1615443A3 (en) * | 2004-06-14 | 2009-11-04 | Broadcom Corporation | Bit rate automatic gear |
EP2293571A1 (en) * | 2005-09-27 | 2011-03-09 | Qualcomm Incorporated | Channel switch frame |
CN101202906A (zh) * | 2006-12-11 | 2008-06-18 | 国际商业机器公司 | 在数字视频广播系统中对视频流进行处理的方法和设备 |
JP2008193654A (ja) * | 2007-01-10 | 2008-08-21 | Matsushita Electric Ind Co Ltd | デジタル放送受信回路、これを備えたデジタル放送受信装置とその制御方法 |
JP4888263B2 (ja) | 2007-07-19 | 2012-02-29 | ソニー株式会社 | 受信装置、受信方法およびコンピュータプログラム |
US7779140B2 (en) * | 2008-03-14 | 2010-08-17 | International Business Machines Corporation | Method and system for switching media streams in a client system as directed by a control system |
US8352996B2 (en) * | 2008-06-27 | 2013-01-08 | Microsoft Corporation | Adaptive video switching for variable network conditions |
KR20100061908A (ko) * | 2008-12-01 | 2010-06-10 | 엘지전자 주식회사 | 영상표시장치, 영상전송장치, 영상전송방법 및 기록매체 |
US9009337B2 (en) * | 2008-12-22 | 2015-04-14 | Netflix, Inc. | On-device multiplexing of streaming media content |
US8260877B2 (en) * | 2008-12-31 | 2012-09-04 | Apple Inc. | Variant streams for real-time or near real-time streaming to provide failover protection |
JP2010193131A (ja) * | 2009-02-18 | 2010-09-02 | Renesas Electronics Corp | 動画像復号方法及び動画像復号装置 |
-
2010
- 2010-10-14 JP JP2010231698A patent/JP5331773B2/ja active Active
-
2011
- 2011-10-11 CN CN201180049135.1A patent/CN103155581B/zh active Active
- 2011-10-11 WO PCT/JP2011/005685 patent/WO2012049833A1/ja active Application Filing
- 2011-10-11 EP EP11832277.5A patent/EP2629514B1/en active Active
- 2011-10-11 KR KR1020137011485A patent/KR101411248B1/ko active IP Right Grant
-
2013
- 2013-04-09 US US13/859,244 patent/US9055272B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006060802A (ja) | 2004-07-29 | 2006-03-02 | Microsoft Corp | 帯域幅が制限されるネットワーク上のメディア変換方法および装置 |
Also Published As
Publication number | Publication date |
---|---|
EP2629514A4 (en) | 2014-06-25 |
WO2012049833A1 (ja) | 2012-04-19 |
US9055272B2 (en) | 2015-06-09 |
CN103155581A (zh) | 2013-06-12 |
US20130223813A1 (en) | 2013-08-29 |
KR20130062371A (ko) | 2013-06-12 |
CN103155581B (zh) | 2016-08-03 |
JP2012085216A (ja) | 2012-04-26 |
JP5331773B2 (ja) | 2013-10-30 |
EP2629514B1 (en) | 2017-07-05 |
EP2629514A1 (en) | 2013-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101411248B1 (ko) | 동화상 재생 장치, 정보 처리 장치 및 동화상 재생 방법 | |
JP5189640B2 (ja) | ビデオデータの再生システム | |
JP6225446B2 (ja) | 動画像データ配信装置、方法、プログラム、及びシステム | |
JP2004515941A (ja) | デジタルビデオ用のトリックモード処理 | |
KR20190019953A (ko) | 트릭 플레이 모드에서 가변 속도를 제공하기 위한 시스템 및 방법 | |
TWI390980B (zh) | A content reproduction apparatus, a content reproduction method, a content reproduction program, and a content reproduction system | |
US20140179423A1 (en) | Video Game Display System and Related Method of Using a Portable Computing Device to Control Game Play in Video Games Displayed on a Wireless Display | |
JP4362510B2 (ja) | 録画再生編集装置 | |
US7660512B2 (en) | Systems and methods for managing frame rates during multimedia playback | |
JP2018038064A (ja) | 静止画情報処理方法 | |
JP5106671B1 (ja) | 電子機器および再生制御方法 | |
JPWO2007123014A1 (ja) | 画像出力装置 | |
JP2010166386A (ja) | 動画再生装置及びプログラム | |
JP2004140575A (ja) | データ処理装置、データ処理方法、および情報記憶媒体、並びにコンピュータ・プログラム | |
JP2006339980A (ja) | 映像再生装置 | |
JP5875837B2 (ja) | コンテンツ再生装置、コンテンツ再生方法、プログラム、および記録媒体 | |
JP6036373B2 (ja) | コンテンツ再生システム、通信装置及びコンテンツ再生方法 | |
JP2010193131A (ja) | 動画像復号方法及び動画像復号装置 | |
JP2006339995A (ja) | 再生装置、再生方法、再生プログラム、及び記憶媒体 | |
US20110289446A1 (en) | Information processing apparatus, information processing method, and program therefor | |
JP2015041930A (ja) | 画像再生装置、プログラム | |
JP2004135241A (ja) | データ処理装置およびデータ処理方法、並びにプログラム | |
JP2022037529A (ja) | 記録再生装置、記録再生方法、およびシステム | |
JP5713585B2 (ja) | コンテンツ再生装置及びコンテンツ再生方法 | |
JP2005006199A (ja) | データ記録装置、記録残量出力方法、プログラム及び記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20170522 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20180530 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20190530 Year of fee payment: 6 |