WO2018139284A1 - 画像処理装置および方法、並びにプログラム - Google Patents

画像処理装置および方法、並びにプログラム Download PDF

Info

Publication number
WO2018139284A1
WO2018139284A1 PCT/JP2018/001094 JP2018001094W WO2018139284A1 WO 2018139284 A1 WO2018139284 A1 WO 2018139284A1 JP 2018001094 W JP2018001094 W JP 2018001094W WO 2018139284 A1 WO2018139284 A1 WO 2018139284A1
Authority
WO
WIPO (PCT)
Prior art keywords
moving image
frame
video
segment
transition
Prior art date
Application number
PCT/JP2018/001094
Other languages
English (en)
French (fr)
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 ソニー株式会社
Priority to US16/470,844 priority Critical patent/US20190327425A1/en
Publication of WO2018139284A1 publication Critical patent/WO2018139284A1/ja

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/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/2625Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects for obtaining an image which is composed of images from a temporal image sequence, e.g. for a stroboscopic effect
    • H04N5/2627Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects for obtaining an image which is composed of images from a temporal image sequence, e.g. for a stroboscopic effect for providing spin image effect, 3D stop motion effect or temporal freeze effect
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/49Segmenting video sequences, i.e. computational techniques such as parsing or cutting the sequence, low-level clustering or determining units such as shots or scenes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44016Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet

Definitions

  • the present technology relates to an image processing apparatus and method, and a program, and more particularly, to an image processing apparatus and method, and a program that make it possible to more easily reduce discomfort when switching moving images.
  • a feature of MPEG-DASH is streaming reproduction of an optimal Representation selection method by a reproduction device called bit rate adaptation (see, for example, Non-Patent Document 1).
  • the reproduction device automatically selects moving picture data of an optimal bit rate from moving pictures (pictures) of a plurality of Representations having different bit rates according to the state of the network band.
  • the user voluntarily selects a video (moving image) of a viewpoint preferred by the user from a plurality of Representations having different viewpoints. At that time, if, for example, a transition (switching) from a predetermined viewpoint to another viewpoint occurs, the segment boundary becomes a switching point of the video and becomes a scene change, and the video becomes non-seamless.
  • the playback device in order to perform a video transition effect on a moving image, the playback device must process two moving images of a fade-out-side moving image and a fade-in-side moving image in a video transition effect application period. It does not.
  • segment data of the moving image of the transition source and segment data of the moving image of the transition destination have to be downloaded first.
  • data of segments of the same time must be downloaded redundantly.
  • a technology has been proposed in which an image of a portion to which a video transition effect is applied on the server side, that is, the content providing side, is generated in advance as a transition image (for example, see Patent Document 1). If such a transition image is used, it is possible to reduce the discomfort at the time of moving image switching while reducing the processing amount and the like on the playback device side.
  • transition images are prepared for combinations of a predetermined viewpoint and another viewpoint. You need to keep it. In this case, transition images must be prepared for all possible combinations of viewpoints, so if the number of viewpoints increases, not only many processes are required for transition image generation but also management of transition images etc. is complicated. turn into.
  • the present technology has been made in view of such a situation, and makes it possible to more easily reduce discomfort at the time of moving image switching.
  • the image processing device when switching the display from the first moving image to the second moving image, includes a predetermined frame forming the first moving image and the second moving image.
  • the moving image generation unit is configured to generate moving image data of a transition moving image in which the display transitions from the predetermined frame to the second moving image based on the moving image data.
  • the image processing apparatus includes a decoder for decoding moving image data of the first moving image and the second moving image, a first holding unit for holding the predetermined frame obtained by the decoding, and the decoding. And a second holding unit for holding a frame of the first moving image or the second moving image obtained by the above.
  • the moving image generation unit may use a temporally last frame before switching of the first moving image as the predetermined frame.
  • the last frame of the first moving image in the predetermined time unit outside the effect period in which moving image data of the transition moving image is generated for the first moving image in the predetermined time unit It is possible to hold the first holding unit as the predetermined frame.
  • the first holding unit After the predetermined frame of the second moving image is input to the decoder, the first holding unit causes the first holding unit to hold the frame of the first moving image output first. You can do so.
  • the moving image generation unit can generate moving image data of the transition moving image whose display transitions from the predetermined frame to the second moving image more sharply on the start side than on the end side.
  • the image processing apparatus is further provided with a representative frame determination unit that determines a representative frame among a plurality of frames constituting the first moving image based on the information regarding the emotional value of the first moving image,
  • the moving image generation unit can use the representative frame as the predetermined frame.
  • the representative frame determination unit may determine the representative frame based on a score indicating the emotional value of the frame of the first moving image as the information regarding the emotional value.
  • the representative frame determination unit may determine the representative frame based on recommended frame information indicating a frame recommended as the representative frame of the first moving image as the information regarding the emotional value.
  • the representative frame determination unit causes the representative frame to be determined in predetermined time units for the first moving image, and a frame indicated by the recommended frame information includes an end of the first moving image in the predetermined time unit.
  • a sequence including the end of the first moving image in the predetermined time unit based on a score indicating the emotional value of the first moving image frame as information regarding the emotional value The representative frame can be determined from frames within a period consisting of
  • the representative frame determination unit may obtain information on the emotional value from a stream in which moving image data of the first moving image is stored.
  • the method when switching the display from a first moving image to a second moving image, a predetermined frame constituting the first moving image, and the second moving image
  • the method includes the step of generating moving image data of a transition moving image whose display transitions from the predetermined frame to the second moving image based on moving image data of an image.
  • moving image data of the predetermined frame forming the first moving image and the second moving image To generate moving image data of a transition moving image whose display changes from the predetermined frame to the second moving image.
  • the present technology can be applied to the case where a video transition effect is performed between a transition source moving image and a transition destination moving image at transition of Representation in MPEG-DASH streaming reproduction.
  • the video transition effect is performed based on the frame near the end of the segment of the transition source moving image and the transition destination moving image, and the transition of the display transition from the frame of the transition source moving image to the transition front moving image A moving image is generated.
  • a moving image shown by an arrow A11 indicates a moving image for presentation presented to the user.
  • the moving image of Representation # 1 is reproduced until time t1, and switching of display to the moving image of Representation # 2 is instructed at time t1.
  • the final frame FL11 of the segment SG11 of Representation # 1 ending at time t1 and the moving image of the segment SG12 of Representation # 2 starting at time t1 are used to perform the cross-fading in period T1.
  • a moving image PR11 for presentation is generated.
  • the final frame FL11 is held, and cross fade processing as a video transition effect is continuously performed temporally between the final frame FL11 and the moving image of the segment SG12, and the moving image which is a transition moving image PR11 is generated.
  • the moving image of the segment SG11 is the moving image of the transition source
  • the moving image of the segment SG12 is the moving image of the transition destination.
  • the moving image PR11 is a transition moving image whose display changes with time from the last frame FL11 to the moving image of the segment SG12.
  • the moving image PR11 is a moving image in which the display gradually changes from the last frame FL11 to the moving image of the segment SG12.
  • the moving image PR11 becomes a moving image in which the final frame FL11 fades out and the moving image of the segment SG12 fades in.
  • an effect period a period in which a video transition effect is implemented in a moving image reproduction period such as a period T1 in this example will be particularly referred to as an effect period.
  • the final frame FL12 of the segment SG13 of Representation # 2 ending at time t2 and the moving image of the segment SG14 of Representation # 1 starting at time t2 are used to perform cross-fading, and presentation of period T2 Moving image PR12 is generated.
  • the video transition effect processing for generating a moving image to be displayed in the effect period that is, the case of crossfading as the video transition effect is described as an example
  • the video transition effect processing such as the wipe processing is also described It may be
  • video transition effect technology those specified in SMPTE Standard 258M and the like can be used.
  • the frame may not necessarily be the final frame if it is a frame near the end of the segment.
  • a predetermined frame of each segment that is a still image extracted from the segment is held. More specifically, the final frame of the segment, which will be described later but is not yet scheduled for the video transition effect, is retained. Then, when the display is switched from the moving image of the transition source to the moving image of the transition destination, a predetermined frame (still image) such as the last frame in the last segment before switching of the moving image of the transition source Image transition effect processing for realizing the image transition effect based on the moving image data of the moving image of the moving image, and the transition transition in which the display transitions from the predetermined frame of the moving image of the transition source to the moving image of the transition destination Moving image data of an image is generated.
  • the playback apparatus executes streaming data control software (hereinafter also referred to as control software), moving image playback software, client software for HTTP (Hypertext Transfer Protocol) access (hereinafter referred to as access software), and the like.
  • control software streaming data control software
  • moving image playback software moving image playback software
  • client software for HTTP (Hypertext Transfer Protocol) access hereinafter referred to as access software
  • the control software is software that controls data to be streamed from the web server.
  • the control software acquires an MPD (Media Presentation Description) file from the web server.
  • the control software uses, for example, a transmission request for segment data to be reproduced based on reproduction time information representing the reproduction time designated by the MPD file or the video reproduction software, and the network band of the Internet. Command the software.
  • MPD Media Presentation Description
  • Video reproduction software is software that reproduces a coded stream obtained from a web server via the Internet.
  • the video reproduction software designates reproduction time information as control software.
  • the video playback software decodes the encoded stream supplied from the access software.
  • the video reproduction software outputs video data (moving image data) and audio data obtained as a result of decoding.
  • the access software is software that controls communication with a web server using HTTP. For example, the access software supplies a notification of start of reception to the video playback software. Further, the access software transmits a transmission request for the encoded stream of segment data to be reproduced to the Web server in accordance with an instruction from the control software.
  • the access software receives segment data of a bit rate according to the communication environment, etc., transmitted from the Web server in response to the transmission request. Then, the access software extracts the encoded stream from the received segment data and supplies it to the moving image reproduction software.
  • FIG. 2 is a diagram showing a configuration example of an embodiment of a client apparatus to which the present technology is applied.
  • the client device 11 shown in FIG. 2 is a playback device, receives content data, ie, moving image data, from a server via a network, and performs processing such as decoding on moving image data to obtain moving images
  • the image data is supplied to the display device 12 for display.
  • moving image data of content is basically handled in predetermined time units called segments, that is, in units of a predetermined number of frames.
  • the client device 11 includes a user event handler 21, a control unit 22, a downloader 23, a video track buffer 24, an MP4 parser 25, a video AU (Access Unit) buffer 26, a video decoder 27, a switch 28, a video frame buffer 29 and a still picture buffer 30. , A video crossfader 31, and a video renderer 32.
  • the user event handler 21 supplies the control unit 22 with a signal according to the user's operation, such as a switching operation of Adaptation Set, for example.
  • the control unit 22 corresponds to the control software described above, acquires the MPD file from the server, and controls each unit of the client apparatus 11 based on the acquired MPD file.
  • control unit 22 has an MPD parser 41.
  • the MPD parser 41 downloads the MPD file from the server and parses it to obtain segment information from the MPD file. Also, the MPD parser 41 controls the downloader 23 based on the acquired segment information to acquire video segment data (segment data) in which moving image data of content is stored.
  • the downloader 23 corresponds to the access software described above, and downloads video segment data from the server according to the control of the MPD parser 41. Also, the downloader 23 supplies the downloaded video segment data to the video track buffer 24 and temporarily holds it.
  • the video segment data may be acquired not only from a device on the network such as a server but also from a recording medium or the like.
  • the video track buffer 24 comprises a memory or the like, temporarily holds the video segment data supplied from the downloader 23, and supplies the held video segment data to the MP4 parser 25.
  • the MP4 parser 25 reads video segment data from the video track buffer 24 and separates the video segment data into data of a predetermined unit called video AU and supplies the data to the video AU buffer 26.
  • the video AU buffer 26 comprises a memory and the like, temporarily holds the video AU supplied from the MP4 parser 25 and supplies the held video AU to the video decoder 27.
  • the video decoder 27 reads the video AU from the video AU buffer 26 and decodes (decodes) the video AU, and at the same time, switches the moving picture data obtained by the decoding, more specifically, a moving picture frame (hereinafter also referred to as a video frame). To the video frame buffer 29. Also, when instructed by the control unit 22, the video decoder 27 supplies the last video frame of the video segment data, that is, the last video frame of the segment to the still picture buffer 30 via the switch 28 as the last frame.
  • the switch 28 switches the output destination of the video frame supplied from the video decoder 27. That is, the switch 28 supplies the video frame supplied from the video decoder 27 to the video frame buffer 29 or the still picture buffer 30.
  • the video frame buffer 29 is a holding unit made of a memory or the like, holds the video frame supplied from the video decoder 27 via the switch 28, and supplies the held video frame to the video crossfader 31.
  • moving image data obtained by decoding in the video decoder 27, that is, video frames of the moving image are all supplied to the video frame buffer 29 and held.
  • the still picture buffer 30 is a holding unit made of a memory or the like, holds the final frame supplied from the video decoder 27 via the switch 28, and supplies the held final frame to the video crossfader 31.
  • the video crossfader 31 performs video transition effect processing for applying a video transition effect based on the video frame held in the video frame buffer 29 and the final frame held in the still image buffer 30, and the result is obtained.
  • the frame of moving image data of the transition moving image is supplied to the video renderer 32.
  • the video cross fader 31 functions as a moving image generation unit that generates moving image data of a transition moving image.
  • the video cross fader 31 supplies the video frame held in the video frame buffer 29 to the video renderer 32 as it is during a period in which the video transition effect is not performed.
  • the video renderer 32 supplies the frame of the moving image data supplied from the video cross fader 31 to the external display device 12 for display.
  • the video track buffer 24 to the video renderer 32 correspond to the above-described moving image reproduction software.
  • the control unit 22 of the client device 11 controls the downloader 23 to download the video segment data of the Representation selected by itself for the Adaptation Set designated by the user or the like. Then, the control unit 22 performs streaming reproduction of the moving image of the content based on the obtained video segment data.
  • control unit 22 selects one appropriate Representation from among a plurality of Representations prepared for the selected Adaptation Set. After that, in accordance with the network bandwidth and the like, Representation 22 is switched by control unit 22 as appropriate.
  • At the time of streaming reproduction of content at least the following five pieces of data are held in the client device 11.
  • the final frame is the temporally last frame of the segment, that is, the temporally last video sample, and the pixel value of the final frame after decoding of the moving picture data is copied as it is and held in the still picture buffer 30. Ru.
  • control is basically performed so that the final frame of each segment is always held in the still image buffer 30.
  • the video frame width and the video frame height are information indicating the horizontal length (number of pixels) indicating the size (number of pixels) of the video frame and the vertical length (number of pixels). Furthermore, the video format is a control value indicating the type of moving image to be reproduced based on video segment data such as YUV 4: 2: 0, for example.
  • the video frame width, video frame height, and video format are extracted from the MPD file by the control unit 22, and are appropriately supplied to the video decoder 27, the video crossfader 31, and the like.
  • the effect start time ts is information indicating the start time of the effect period, and the display time (msec) of the video frame presented (displayed) at the start of the effect period is taken as the effect start time ts.
  • the effect start time ts is taken as the display time of the leading video frame of the segment, and the effect start time ts is managed by the control unit 22.
  • a CTS Composition Time Stamp
  • the MP4 parser 25, the video decoder 27, and the video crossfader 31 can refer to the display time (CTS) associated with each video frame.
  • CTS display time
  • the display time of the video frame to be processed is also referred to as a display time t.
  • an effect period length d (msec) indicating the length of the effect period is set in advance, and the effect period length d is managed by the control unit 22.
  • the effect period length d may be a predetermined length, may be a length designated by a user or the like, or may be a predetermined length for content.
  • the content provider can specify the effect period length d.
  • the effect period length d may be longer than the segment length, that is, the reproduction time length of one video segment.
  • control unit 22 manages the detection result of the scene change of the content, that is, the scene change detection flag indicating the detection result of the change of the different Adaptation Set to Representation.
  • the scene change detection flag is information indicating whether or not a switch of Representation such that a scene change occurs, that is, a transition to another Representation has occurred.
  • the image (video) to be displayed is different between the moving image before switching and the moving image after switching, and the scene is changed. Is required.
  • the control unit 22 appropriately updates the value of the scene change detection flag held based on the signal supplied from the user event handler 21.
  • This streaming reproduction process is started when an Adaptation Set of content is designated by the user.
  • step S11 the control unit 22 performs initial setting of the video transition effect.
  • control unit 22 sets a predetermined value or a value designated in the MPD file as the value of the effect period length d and sets the value of the effect start time ts to ⁇ 1.
  • the values of the effect period length d and the effect start time ts are, for example, integer values in millisecond units, and the video transition effect is not performed when those values are 0 or negative values.
  • control unit 22 sets the value of the segment to be processed, that is, the segment index specifying the segment data to be downloaded to 0.
  • the video frame width, the video frame height, the video format and the like are read out in advance from the MPD file and held.
  • step S12 the control unit 22 increments the value of the held segment index by one.
  • step S13 the control unit 22 sets the value of the scene change detection flag held therein to zero.
  • step S14 the control unit 22 determines, based on the signal supplied from the user event handler 21, whether or not there is a switch (transition) of the Adaptation Set.
  • step S14 When it is determined in step S14 that there is a switch of Adaptation Set, the control unit 22 sets the value of the scene change detection flag held therein to 1 in step S15. This shows that a scene change occurs in the segment to be processed.
  • the timing at which the video segment data held in the video track buffer 24 is downloaded is not clear. Therefore, it is difficult for the MP4 parser 25 or the video decoder 27 to accurately specify at which timing the Adaptation Set has been switched.
  • control unit 22 sets the value of the scene change detection flag based on the signal supplied from the user event handler 21, and the MP4 parser 25 or the video decoder 27 switches the Adaptation Set from the scene change detection flag.
  • the timing can be specified.
  • the scene change detection flag is 1 only when switching of Representation is caused by the switching of Adaptation Set, and 0 otherwise, the scene change detection flag is set to the video transition effect execution The need can be determined.
  • step S14 when it is determined in step S14 that there is no switching of Adaptation Set, the process proceeds to step S16.
  • step S14 determines whether the content type of the segment to be processed is video in step S16. Determine
  • step S16 If it is determined in step S16 that the content type is video, the client apparatus 11 performs video segment download processing in step S17.
  • control unit 22 instructs the downloader 23 to download video segment data of the segment to be processed, and the downloader 23 downloads the video segment data in accordance with the instruction. Also, a moving image is reproduced based on the downloaded video segment data.
  • step S19 After the video segment download process is performed, the process proceeds to step S19.
  • step S16 when it is determined in step S16 that the content type is not video, the client apparatus 11 performs processing according to the content type in step S18, and then the process proceeds to step S19.
  • the client device 11 downloads the segment data of the audio in step S18, and reproduces the sound based on the obtained segment data.
  • control unit 22 determines whether the process has been performed for all the segments in step S19.
  • step S19 If it is determined in step S19 that all segments have not been processed yet, that is, if there are segments to be processed, the process returns to step S12, and the above-described process is repeated.
  • step S19 if it is determined in step S19 that the processing has been performed for all the segments, the content reproduction has ended, and the streaming reproduction processing ends.
  • the client device 11 downloads video segment data and the like and reproduces a moving image and the like.
  • the value of the scene change detection flag is set to 1.
  • step S51 the control unit 22 determines, based on the MPD file obtained by the MPD parser 41, whether the reproduction of the content has ended. For example, when the value of the segment index is larger than the value of the segment index of the last segment of the content, it is determined that the reproduction of the content is finished.
  • step S51 If it is determined in step S51 that the reproduction has ended, the video segment download processing ends because there is no video segment data to download. In this case, in the process of step S19 of FIG. 3 performed thereafter, it is determined that the process has been performed for all the segments.
  • step S51 when it is determined in step S51 that the reproduction is not finished, that is, when the video segment data to be downloaded still remains, the control unit 22 instructs the downloader 23 the video segment data to be downloaded. Then, the process proceeds to step S52.
  • step S52 the downloader 23 determines whether the video track buffer 24 has free space capable of storing new video segment data.
  • step S52 If it is determined in step S52 that there is free space, the process proceeds to step S54.
  • step S52 when it is determined in step S52 that there is no free space, the downloader 23 downloads the video segment data specified by the control unit 22 until sufficient free space is generated in the video track buffer 24 in step S53. Wait without doing
  • step S54 when a sufficient free space is generated in the video track buffer 24, the process proceeds to step S54.
  • step S52 If it is determined in step S52 that there is free space or standby is performed in step S53, the downloader 23 downloads video segment data specified by the control unit 22 from the server in step S54. That is, the downloader 23 receives the video segment data transmitted from the server.
  • step S55 the downloader 23 supplies the downloaded video segment data to the video track buffer 24 and holds it.
  • step S56 the client device 11 performs video segment processing.
  • the video segment data held in the video track buffer 24 is read and parsed by the MP4 parser 25, the video segment data is decoded, and the moving image data is generated. An image transition effect is applied to the image.
  • step S57 the MP4 parser 25 deletes the video segment data processed in step S56 from the video track buffer 24. That is, processed video segment data is discarded.
  • step S57 After the process of step S57 is performed and the video segment data that has become unnecessary is discarded, the video segment download process ends.
  • the client device 11 sequentially downloads and processes video segment data.
  • step S81 the MP4 parser 25 reads video segment data of one segment from the video track buffer 24.
  • step S82 the MP4 parser 25 parses the video AU.
  • the MP4 parser 25 sequentially selects the video AUs constituting the video segment data read out in the process of step S81 as the video AU to be processed.
  • the MP4 parser 25 supplies the video AU to be processed to the video AU buffer 26 and holds it.
  • One video AU is data of one frame of a moving image.
  • step S83 the MP4 parser 25 determines whether the video AU to be processed is the first video AU of video segment data and the value of the scene change detection flag held in the control unit 22 is 1 or not. Do.
  • the video AU at the beginning of the segment may be the timing at which a scene change occurs, that is, the start time of the effect period.
  • step S83 If it is determined in step S83 that the video AU is not the head video AU or the value of the scene change detection flag is not 1, the process proceeds to step S86.
  • step S83 if it is determined in step S83 that the video AU is the top video and the value of the scene change detection flag is 1, the process proceeds to step S84.
  • step S84 the MP4 parser 25 displays the display time t of the video AU to be processed, that is, the display time t of the video frame corresponding to the video AU, the effect start time ts and the effect period length d held in the control unit 22. It is determined based on whether or not the effect period is underway.
  • the video transition effect is performed under the following conditions, it is possible to prevent the video transition effect from being broken even if the effect period length exceeds the segment length.
  • the video frame at display time t may be a video frame within the effect period.
  • step S84 for example, when the effect start time ts is 0 or more, the display time t is more than the effect start time ts, and the display time t is less than or equal to the sum of the effect start time ts and the effect period length d. , It is determined that the effect period is underway.
  • step S84 If it is determined in step S84 that the effect period is not under, the MP4 parser 25 determines the display time t of the video AU to be processed in step S82, that is, the CTS value of the video AU to be processed in step S85. I assume. That is, the value of CTS of the video AU to be processed is substituted for the effect start time ts.
  • the display time associated with the video AU at the beginning of the segment at the timing when the switching of Representation including switching (transition) of Adaptation Set occurs is set as a new effect start time ts.
  • Such a video AU is the first video AU of the first segment of the adaptation set to which the switching is performed.
  • the effect start time ts there is no particular limitation on the effect start time ts, but in general, a series of scenes are recorded in one segment, or edited even if a scene change is included. The state is recorded. Therefore, it is unusual that the time in the middle of the segment is set to the effect start time ts.
  • step S86 when the effect start time ts is set, the effect start time ts is supplied to the control unit 22, and then the process proceeds to step S86.
  • step S84 determines whether the effect period is in progress. If it is determined in step S84 that the effect period is in progress, the effect start time ts has already been determined, so the process of step S85 is not performed, and the process proceeds to step S86.
  • step S83 If it is determined in step S83 that it is not the head video AU, or the value of the scene change detection flag is not 1, or the process of step S85 has been performed, or if it is determined that the effect period is in step S84, The process of S86 is performed.
  • step S86 the client device 11 performs video decoding processing to decode the video AU to be processed held in the video AU buffer 26.
  • the details of the video decoding process will be described later.
  • step S87 the MP4 parser 25 determines whether the end of the segment has been reached. For example, when the video AU to be processed is the segment, that is, the last video AU of video segment data, it is determined that the end of the segment has been reached.
  • step S87 If it is determined in step S87 that the segment end has not yet been reached, the decoding of the video segment data read out in step S81 is not completed, so the process returns to step S82 and the above-described process is repeated. It will be.
  • step S87 determines whether or not the effect period is in progress in step S88.
  • step S88 the display time t of the video AU input to the video decoder 27 is used, and the same processing as in step S84 is performed.
  • step S89 the video decoder 27 supplies the final frame of the segment obtained in the process of step S86 to the still image buffer 30 via the switch 28 and holds it.
  • the video decoder 27 secures a recording area necessary to hold the final frame in the still picture buffer 30 based on the video frame width, video frame height, and video format held by the control unit 22. Do.
  • the size of the recording area required to hold the final frame is determined by the video frame width, video frame height, and video format, and the size of the recording area can be determined at the timing of the playback start time of each segment. .
  • the video frame width is 3840 pixels and the video frame height is 2160 pixels.
  • the video format is YUV 4: 2: 0 format, that is, a system in which U signals from square 2 ⁇ 2 pixels are taken from upper two pixels to one pixel and V signals are taken from lower two pixels to one pixel.
  • all segments whose end portions are not included in the effect period that is, segments that may be used for the video transition effect as segments at the transition source, are always the last segment in time
  • the video frame is to be held in the still picture buffer 30 as the final frame. Therefore, even when there is a transition to another Representation in the next segment of the segment, the video transition effect is immediately performed using the video segment data of the next segment and the subsequent frames and the final frame held in the still image buffer 30. It can be performed.
  • step S90 After the final frame is held in the still image buffer 30, the process proceeds to step S90.
  • step S88 determines that the effect period is under, the final frame included in the effect period is not used for the video transition effect, so the process of step S89 is not performed, and the process proceeds to step S90. And proceed.
  • step S88 If it is determined in step S88 that an effect period is being performed, or if the process of step S89 is performed, the process of step S90 is performed.
  • step S90 the MP4 parser 25 determines whether or not the video track buffer 24 has video segment data following the video segment data read out in step S81.
  • step S90 If it is determined in step S90 that there is still the next video segment data, the process returns to step S81, and the above-described process is repeated.
  • step S90 if it is determined in step S90 that there is no next video segment data, the video segment processing ends.
  • the client apparatus 11 holds the last video frame of the segment whose end is not included in the effect period in the still image buffer 30 as a frame for the video transition effect.
  • the video transition effect can be implemented more simply, that is, with a smaller amount of processing, using the video frame (final frame) held in the still image buffer 30, and the sense of discomfort when switching displays can be reduced. .
  • step S121 the video decoder 27 reads one video AU from the video AU buffer 26. Then, in step S122, the video decoder 27 decodes the read video AU.
  • step S123 the video decoder 27 determines whether an error has occurred in the decoding in step S122.
  • step S123 If it is determined in step S123 that an error has occurred, the video decoding process ends.
  • step S123 when it is determined in step S123 that no error has occurred, the video decoder 27 supplies the video frame obtained as a result of decoding to the video frame buffer 29 through the switch 28 in step S124. , To hold.
  • the video decoder 27 secures a necessary recording area for the video frame buffer 29 based on the video frame width, the video frame height, and the video format held by the control unit 22.
  • step S125 the video cross fader 31 performs video transition effect execution processing, generates a video frame for presentation (for display) as data of one frame of moving image data, and supplies the video frame to the video renderer 32.
  • the video for presentation is based on the video frame held in the video frame buffer 29 as necessary and the final frame held in the still image buffer 30. A frame is generated.
  • step S126 the video renderer 32 performs rendering processing on the presentation video frame supplied from the video crossfader 31, and supplies the obtained video frame, that is, moving image data, to the display device 12 for moving image Is displayed.
  • the video decoding process ends. Note that this video decoding process is performed for each video AU until the video AU held in the video AU buffer 26 runs out.
  • the client device 11 decodes video segment data in units of video AUs, and applies a video transition effect as necessary.
  • step S 151 the video cross fader 31 performs an effect period based on the display time t of the video frame held in the video frame buffer 29 and the effect start time ts and the effect period length d held in the control unit 22. It is determined whether or not it is medium. In step S151, the same process as step S84 in FIG. 5 is performed.
  • step S151 If it is determined in step S151 that the effect period is not in progress, the process of step S152 is performed.
  • step S152 the video cross fader 31 outputs the video frame held in the video frame buffer 29 as it is to the video renderer 32 as a video frame for presentation, and the video transition effect execution process ends.
  • the video crossfader 31 makes the size of the video frame into a video frame of a predetermined size as needed. Convert and output.
  • step S151 determines whether the effect period is in progress.
  • step S153 the video cross fader 31 has the same size of the final frame as the still image held in the still image buffer 30 and the size of the video frame as the moving image held in the video frame buffer 29. Determine if there is.
  • step S153 If it is determined in step S153 that the sizes are the same, the video crossfader 31 reads the final frame from the still image buffer 30, reads the video frame from the video frame buffer 29, and the process proceeds to step S155. .
  • step S153 when it is determined in step S153 that the sizes are not the same, the video crossfader 31 reads the final frame from the still image buffer 30, and reads the video frame from the video frame buffer 29, and the process proceeds to step S154. move on.
  • step S154 the video crossfader 31 performs size conversion processing on the read last frame to match the size of the last frame to the size of the video frame read from the video frame buffer 29. That is, resizing processing (size conversion processing) is performed so that the final frame and the video frame have the same size.
  • step S155 After the final frame and video frame size are adjusted, the process proceeds to step S155.
  • step S154 If the process of step S154 is performed or if it is determined in step S153 that the sizes are the same, in step S155, the video crossfader 31 performs the video transition effect process based on the final frame and the video frame.
  • a video transition effect is performed, and a frame of a transition moving image is obtained as a video frame for presentation.
  • the display (viewpoint) before the display (viewpoint) is switched, that is, the temporally last frame in the last segment before transition is used as the final frame, and a frame of moving image (moving image data) is generated. .
  • the video cross fader 31 supplies the video frame for presentation obtained by the video transition effect processing to the video renderer 32, and the video transition effect execution processing ends.
  • the video cross fader 31 performs cross fade processing, wipe processing, and the like as video transition effect processing.
  • a video frame that is a fade-in frame and a final frame that is a fade-out frame have predetermined alpha values.
  • the alpha value indicates the blend ratio (mixing ratio) of the video frame to the final frame, and for example, the alpha value of the frame on the fade-out side is ⁇ .
  • the alpha value ⁇ changes linearly or non-linearly from 100% to 0% according to the display time t of the video frame on the fade-in side, that is, according to which time during the effect period.
  • the alpha value ⁇ may decrease linearly from the effect start time ts to the end time ts + d of the effect period as shown in FIG.
  • the vertical axis indicates the alpha value ⁇ , that is, the fade ratio (blending ratio)
  • the horizontal axis indicates the display time t of the video frame, that is, the display time of the video frame for presentation.
  • the alpha value ⁇ may change non-linearly as shown in FIG. 9, for example, by combining a plurality of linear functions.
  • the vertical axis indicates the alpha value ⁇ , that is, the fade ratio
  • the horizontal axis indicates the display time t of the video frame, ie, the display time of the video frame for presentation.
  • the alpha value ⁇ varies non-linearly with time, and the slope indicating the change of the alpha value ⁇ is gradual with time.
  • the fade-out side frame disappears sharply, and the fade-in side frame (transition destination image) appears sharply.
  • moving image data of a transition moving image in which the display transitions from the transition source image to the transition destination image more sharply on the start side than on the end side of the effect period is generated.
  • the frame on the fade-out side is a still image (final frame), and the frame is fixed. Therefore, when the alpha value ⁇ of the final frame changes linearly, the final frame is likely to remain visible to the user who is viewing because the design of the fade-out side frame is fixed.
  • the video crossfader 31 applies a video transition effect to the switching portion of the moving image based on the final frame which is a still image and the video frame which is a moving image. As a result, it is possible to more easily reduce the discomfort at the time of moving image switching.
  • the last video frame of the segment is held in the still image buffer 30 as the last frame, for example, as shown in FIG. 10 and FIG. An effect is implemented.
  • video segment data of segment # A0 and segment # A1 of a predetermined Representation is downloaded first to reproduce content, and the last video frame of those segments is taken as the final frame.
  • the last video frame of the segment # A1 is held in the still picture buffer 30 as the last frame FL31.
  • time T31 is the effect start time
  • period T31 is the effect period.
  • the video frame of each time of segment # B2 and the final frame FL31 are used to perform presentation by image transition effect processing. Video frames are generated and displayed.
  • the period T31 which is the effect period in this example, is a period shorter than the segment length.
  • the video frame at each time of segment # B2 is displayed as a video frame for presentation as it is, and the last video frame of segment # B2 is held in the still picture buffer 30 as a final frame FL32.
  • the final frame FL32 is used at the time of the video transition effect.
  • the video segment data of segment # A0 and segment # A1 are downloaded first and the content is played back. Also, for example, the last video frame of the segment # A1 is held in the still picture buffer 30 as the last frame FL41.
  • a period T41 which is an effect period is a period longer than the segment length. That is, the effect period length d is longer than the segment length.
  • the video frame of each time of segment # B2 and segment # C3 and the final frame FL41 are used to provide a video frame for presentation. Is generated and displayed.
  • the effect period length d may be shorter or longer than the segment length, and in any case, the moving image of the transition source smoothly to the moving image of the transition destination And the display can be switched.
  • the client device 11 in moving image reproduction such as MPEG-DASH streaming reproduction, it is possible to implement the video transition effect without decoding two moving images simultaneously at the time of scene change of moving image reproduction. As a result, it is possible to easily reduce the discomfort at the time of moving image switching with a smaller processing amount.
  • the video transition effect is appropriately implemented regardless of the reliability of the value of the scene change detection flag. be able to.
  • the time difference (delay) between the input and output inherent to the video decoder 27 is used. That is, the timing when the first video AU of the first segment after switching of Representation Set including transition of Adaptation Set is input to the video decoder 27, or the video frame output from the video decoder 27 immediately after that is the still picture as the final frame It is held in the buffer 30. In other words, after the leading video AU of the switched segment is input to the video decoder 27, the video frame first output from the video decoder 27 is made the final frame of the segment before switching.
  • the video decoder 27 does not output a video frame corresponding to the video AU, but after the video AU is input, some other video AUs are input. The corresponding video frame is output. That is, a delay of several frames occurs between input and output.
  • the video AUs of the second and third frames are also input and decoding is continuously performed, and the video AU of the fourth frame is performed.
  • the video frame of the first frame is output from the video decoder 27 at the timing when the input of.
  • the processing delay of such a video decoder 27 depends on the number of video frames to be delayed depending on the implementation of the video decoder 27, but is generated by reordering B frames and P frames of MPEG video coding. It originates and is theoretically generated.
  • the client device 11 which is a playback device, it is easy to grasp in advance the delay time generated by the video decoder 27 mounted on itself, that is, how many frames the delay is caused in advance.
  • a scene change that is, a video AU of a frame after the delay of the video decoder 27 counted from the beginning, included in the segment immediately after the occurrence of switching of Representations including transition of Adaptation Set
  • the video frame output from the video decoder 27 may be set as the final frame at the timing input to 27.
  • the video frame initially output from the video decoder 27 is held in the still picture buffer 30. .
  • the video decoder 27 outputs the temporally last video frame of the immediately preceding segment.
  • the description will be continued assuming that is the final frame. That is, the description will be continued here assuming that the delay generated in the video decoder 27 is one frame worth of time.
  • the streaming reproduction process described with reference to FIG. 3 is performed in the client device 11. Then, in step S17 in the streaming reproduction process, the video segment download process described with reference to FIG. 4 is performed.
  • step S56 of the video segment download processing the video segment processing shown in FIG. 12 is performed instead of the video segment processing described with reference to FIG.
  • step S181 and step S182 are the same as the process of step S81 of FIG. 5, and step S82, the description is abbreviate
  • step S183 the client device 11 performs video decoding processing to decode the video AU to be processed held in the video AU buffer 26.
  • the details of the video decoding process will be described later.
  • step S184 the MP4 parser 25 determines whether the end of the segment has been reached. For example, in step S184, the same process as step S87 in FIG. 5 is performed.
  • step S184 If it is determined in step S184 that the segment end has not been reached yet, the decoding of the video segment data read in step S181 is not complete, so the process returns to step S182 and the above-described process is repeated. It will be.
  • step S185 the MP4 parser 25 determines whether there is the next video segment data in the video track buffer 24 of the video segment data read in step S181. It is determined whether or not.
  • step S185 If it is determined in step S185 that there is still the next video segment data, the process returns to step S181, and the above-described process is repeated.
  • step S185 if it is determined in step S185 that there is no next video segment data, the video segment processing ends.
  • the client device 11 sequentially reads out and decodes the video segment data and the video AU.
  • or step S213 is the same as the process of step S121 of FIG. 6 thru
  • step S213 If it is determined in step S213 that an error has occurred, the video decoding process ends. If it is determined in step S213 that no error has occurred, the process proceeds to step S214.
  • step S214 the video decoder 27 is the video AU read for decoding in step S211, that is, the video AU input to the video decoder 27 is the video AU at the beginning of the segment, and the scene held in the control unit 22. It is determined whether the value of the change detection flag is one.
  • step S214 If it is determined in step S214 that the video AU is not the head video AU or the value of the scene change detection flag is not 1, it is not the retention timing of the final frame, so the process proceeds to step S218.
  • step S214 when it is determined in step S214 that the video AU is at the head and the value of the scene change detection flag is 1, the video decoder 27 determines in step S215 whether or not the effect period is in progress.
  • step S215 based on the display time t of the video AU input to the video decoder 27 and the effect start time ts and the effect period length d held in the control unit 22, the case in step S84 of FIG. Similarly, it is determined whether the effect period is in progress.
  • step S215 If it is determined in step S215 that the effect period is in progress, the process proceeds to step S218 because it is not necessary to hold the final frame.
  • step S216 the video decoder 27 sets the display time t of the video AU read in step S211, that is, the value of CTS as the effect start time ts. It supplies to the part 22.
  • step S217 after the video AU is input in step S211, the video decoder 27 supplies the video frame to be output first as the final frame to the still image buffer 30 via the switch 28 and holds it.
  • the video frame output first after the input is the temporally last frame of the immediately preceding segment.
  • step S2108 the processes of steps S218 to S220 are performed, and the video decoding process ends.
  • the processes of steps S218 to S220 are the same as the processes of steps S124 to S126 of FIG. 6, and thus the description thereof will be omitted.
  • the client device 11 supplies the final frame to the still image buffer 30 in consideration of the delay of the video decoder 27.
  • the video transition effect can be performed more easily, that is, with a smaller amount of processing using the final frame, and the sense of incongruity when switching displays can be reduced.
  • the client device 11 holds only the final frame required for the video transition effect. Then, for example, as shown in FIG. 14 and FIG. 15, the display switching and the video transition effect are performed.
  • FIGS. 14 and 15 parts corresponding to those in FIGS. 10 and 11 are assigned the same reference numerals, and descriptions thereof will be omitted as appropriate.
  • the video segment data of the segment # A0 and the segment # A1 are downloaded and the content is reproduced.
  • the final frame is not supplied to the still image buffer 30 at the boundary between segment # A0 and segment # A1 in which there is no scene change, that is, the value of the scene change detection flag remains zero. That is, the last video frame of segment # A0 is not held by the still picture buffer 30.
  • the video decoder 27 holds the last video frame of the segment # A1 output at that time as the final frame FL31 in the still picture buffer 30.
  • the video frame at each time of segment # B2 and the final frame FL31 are used to perform presentation by image transition effect processing. Video frames are generated and displayed.
  • the video frame at each time of segment # B2 is displayed as a video frame for presentation as it is.
  • the period T31 is a period shorter than the segment length.
  • the video decoder 27 holds the last video frame of the segment # B2 outputted at that time in the still picture buffer 30 as the final frame FL32.
  • segment # C4 is downloaded following segment # C3, but there is no scene change at the boundary between segment # C3 and segment # C4. There is no supply.
  • the video segment data of the segment # A0 and the segment # A1 are initially downloaded and the content is played back.
  • the video frame of each time and the final frame FL41 are used also in a partial section of the segment # C3, and a video frame for presentation is generated and displayed by the video transition effect processing.
  • segment # C4 is downloaded following segment # C3, but there is no scene change at the boundary between segment # C3 and segment # C4, so the final frame supply to still picture buffer 30 is a line I can not do it.
  • the effect period length d may be shorter or longer than the segment length, and in any case, the moving image of the transition source smoothly transitions to the transition destination
  • the display can be switched to a moving image.
  • any video frame in the segment may be used as a representative frame, and the representative frame may be used for the video transition effect. At this time, the position of the representative frame can be made different for each segment.
  • the temporally last video frame of the video segment is continuously used during the effect period.
  • the last video frame of the segment is not necessarily appropriate for use in the video transition effect. That is, whether the emotional value of the last video frame of a segment is sufficient will vary from case to case.
  • the video frame is not necessarily the frame with the highest emotional value near the end of the segment, that is, the most suitable frame.
  • the content creator can evaluate the emotional value of each video frame in the section near the segment end, and the client apparatus 11 can select an appropriate representative frame based on the evaluation result. .
  • a video frame representing one of the plurality of video frames constituting the segment, which has high emotional value is taken as a representative frame.
  • a content producer selects a video frame with high emotional value using a face recognition engine and stores the selection result in segment data.
  • representative frame information is stored in an MP4 file do it.
  • representative frame information can be stored in an MP4 file with a data structure shown in FIG.
  • segment_count indicates the number of segments included in the content stream, and information of the number of segments is stored in the portion below “segment_count”.
  • “Recommended_frame_number” indicates a frame number (hereinafter also referred to as a recommended frame number) of a video frame recommended by the content producer among video frames constituting a segment.
  • the recommended frame number is information indicating a video frame representing a segment, that is, a video frame having high emotional value and recommended as a representative frame by the content producer.
  • the first frame in the segment is regarded as the 0th frame in CTS order in the case of Live-profile, and in the CTS order in the case of On-demand profile.
  • the frame is taken as the zeroth frame. If the recommended frame is not necessary, the value of recommended_frame_number is set to 0xFFFFFFFF.
  • the representative frame information includes, in addition to the recommended frame number, an emotional score indicating an evaluation value of emotional value for the video frame for the last several consecutive frames of the segment. That is, the emotional score is a score indicating the emotional value of the video frame. In other words, the emotional score is a score indicating the degree of appropriateness when using a video frame as a representative frame.
  • the emotional score is added, that is, the number of video frames for which calculation of the emotional score is performed is also referred to as the number of evaluation frames, and a section consisting of frames for the number of continuous evaluation frames including the end of the segment is the evaluation interval It will also be called.
  • “frame_count” indicates the number of evaluation frames
  • “score” indicates an emotional score.
  • emotion frame scores are stored in the representative frame information by the number of evaluation frames.
  • the emotional score is an integer value from 0 to 100, and the larger the value is, the higher the emotional score is and the higher the emotional value is.
  • representative frame information is generated as follows, and representative frame information is stored in the MP4 file.
  • the frame number of the video frame having the highest emotional score is identified. Then, if the video frame of the specified frame number is a frame outside the evaluation section, the frame number is set as a recommended frame number, and if the video frame of the specified frame number is a frame within the evaluation section, the recommended frame The number is 0xFFFFFFFF.
  • the degree of smile of the face that is, the degree of smile of the face of the person in the video frame is determined based on the result of the face recognition process, for example. Ru.
  • the segment number segment_count is stored in the MP4 file, and then for each segment, the segment number segment_number, the recommended frame number recommended_frame_number, the evaluation frame number frame_count, and the emotion frame video frame information The score score is stored and used as representative frame information.
  • the MP4 file obtained in this manner is stored in video segment data and transmitted to the client device 11.
  • a representative frame for a video transition effect when selecting a representative frame for a video transition effect, if a video frame such as a blinking face is selected as a representative frame, the emotional value or emotional value of the image is lost.
  • the selection range of the representative frame held in the still image buffer 30 for example, a time sufficient to avoid the video during blinking is allocated.
  • the blink speed of one blink is about 100 to 150 milliseconds, which corresponds to a display time of about 6 to 9 frames for a 60 Hz image.
  • emotional scores for the last 10 frames of the segment are to be recorded. That is, in this case, the number of evaluation frames is ten.
  • the representative frame information may be stored anywhere in the stream in which moving image data such as a video AU is stored, not limited to the MP4 file.
  • representative frame information may be supplied from the outside to the client device 11, or representative frame information may be described in the MPD file.
  • the MP4 file is read out by the MP4 parser 25 from the downloaded video segment data. That is, the MP4 parser 25 extracts the recommended frame number and emotion score for the segment from the representative frame information in the MP4 file read from the video track buffer 24, and determines the representative frame for each segment, that is, for each segment.
  • the MP4 parser 25 reads out the number of evaluation frames from the representative frame information to specify the length of the evaluation section, and reads the emotion score of each video frame of the evaluation section from the representative frame information. At this time, the MP4 parser 25 identifies the video frame with the highest emotion score, and temporarily holds the identified result.
  • the MP4 parser 25 reads the recommended frame number from the representative frame information, and if the recommended frame number is 0xFFFFFFFF, that is, there is no recommended frame and the recommended frame number is an invalid value, the emotion score is highest. Let a video frame be a representative frame.
  • the MP4 parser 25 determines that the video frame of the recommended frame number is a predetermined number including the end of the segment It is determined whether or not it is included in an effective section consisting of frames of.
  • the effective section may be the same as the evaluation section, or may be a section having a length different from that of the evaluation section.
  • the valid section is a section of the last 20 frames of the segment.
  • the MP4 parser 25 takes the video frame with the highest emotional score among the video frames in the evaluation interval as the representative frame. Do. That is, the representative frame is determined based on the emotional score.
  • the video frame with the recommended frame number is a frame recommended by the content producer, but if the video frame is not near the end of the segment, the video frame with the recommended frame number is not optimal as the representative frame . Therefore, when the video frame of the recommended frame number is out of the valid section, the video frame with the highest emotion score is taken as the representative frame.
  • the MP4 parser 25 sets the video frame of the recommended frame number as a representative frame. That is, the representative frame is determined based on the recommended frame number.
  • the MP4 parser 25 sets the temporally last frame of the segment as the representative frame. May be Thus, the MP4 parser 25 determines a representative frame for determining a representative frame from among a plurality of frames constituting a segment, for each segment based on the representative frame information acquired (read) from the MP4 file. Act as a department.
  • control unit 22 of the client device 11 controls the face recognition engine to perform face recognition processing based on the video segment data, calculate the emotion score of each video frame in the evaluation section, and calculate the calculation result.
  • a representative frame may be selected.
  • step S56 of the video segment download processing the video segment processing shown in FIG. 17 is performed instead of the video segment processing described with reference to FIG.
  • steps S251 to S256 are the same as the processes of steps S81 to S86 of FIG. 5, and thus the description thereof will be omitted.
  • step S252 the MP4 parser 25 reads representative frame information from the MP4 file for the video segment data read out in the process of step S251 together with the parsing for the video AU.
  • the MP4 parser 25 performs the above-described processing to determine a representative frame based on the number of evaluation frames, the recommended frame number, the emotion score and the like included in the representative frame information.
  • the determination result of the representative frame is supplied from the MP4 parser 25 to the video decoder 27 via the control unit 22.
  • step S256 the video decoding process described with reference to FIG. 6 is performed.
  • the image transition effect execution process described with reference to FIG. 7 is performed in step S125 of FIG. 6, but in this image transition effect execution process, the representative frame held in the still image buffer 30 is regarded as a still image.
  • Video transition effect processing is performed.
  • step S 257 the video decoder 27 determines, based on the determination result of the representative frame supplied from the control unit 22, whether the video frame obtained by decoding the video AU to be processed is the representative frame.
  • step S257 If it is determined in step S257 that the video frame is a representative frame in step S258, the video decoder 27 supplies the video frame obtained by decoding the video AU to be processed to the still picture buffer 30 via the switch 28, Hold as a frame.
  • step S257 If it is determined in step S257 that the frame is not a representative frame, the process proceeds to step S259 without performing the process of step S258.
  • step S258 determines in step S259 whether or not the end of the segment is reached.
  • step S259 If it is determined in step S259 that the segment end has not been reached yet, the process returns to step S252, and the above-described process is repeated.
  • step S260 the MP4 parser 25 determines whether there is the next video segment data of the video segment data read out in step S251 in the video track buffer 24 It is determined whether or not.
  • step S260 If it is determined in step S260 that there is still the next video segment data, the process returns to step S251, and the above-described process is repeated.
  • step S260 if it is determined in step S260 that there is no next video segment data, the video segment processing ends.
  • the client device 11 determines a representative frame based on the representative frame information, and holds the representative frame in the still image buffer 30.
  • the video transition effect can be implemented more simply, that is, with less processing amount using the video frame (representative frame) held in the still image buffer 30, and the sense of discomfort when switching displays can be reduced. .
  • the series of processes described above can be executed by hardware or software.
  • a program that configures the software is installed on a computer.
  • the computer includes, for example, a general-purpose computer capable of executing various functions by installing a computer incorporated in dedicated hardware and various programs.
  • FIG. 18 is a block diagram showing an example of a hardware configuration of a computer that executes the series of processes described above according to a program.
  • a central processing unit (CPU) 501 a read only memory (ROM) 502, and a random access memory (RAM) 503 are mutually connected by a bus 504.
  • CPU central processing unit
  • ROM read only memory
  • RAM random access memory
  • an input / output interface 505 is connected to the bus 504.
  • An input unit 506, an output unit 507, a recording unit 508, a communication unit 509, and a drive 510 are connected to the input / output interface 505.
  • the input unit 506 includes a keyboard, a mouse, a microphone, an imaging device, and the like.
  • the output unit 507 includes a display, a speaker, and the like.
  • the recording unit 508 includes a hard disk, a non-volatile memory, and the like.
  • the communication unit 509 is formed of a network interface or the like.
  • the drive 510 drives a removable recording medium 511 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
  • the CPU 501 loads, for example, the program recorded in the recording unit 508 into the RAM 503 via the input / output interface 505 and the bus 504, and executes the above-described series. Processing is performed.
  • the program executed by the computer (CPU 501) can be provided by being recorded on, for example, a removable recording medium 511 as a package medium or the like. Also, the program can be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting.
  • the program can be installed in the recording unit 508 via the input / output interface 505 by attaching the removable recording medium 511 to the drive 510. Also, the program can be received by the communication unit 509 via a wired or wireless transmission medium and installed in the recording unit 508. In addition, the program can be installed in advance in the ROM 502 or the recording unit 508.
  • the program executed by the computer may be a program that performs processing in chronological order according to the order described in this specification, in parallel, or when necessary, such as when a call is made. It may be a program to be processed.
  • the present technology can have a cloud computing configuration in which one function is shared and processed by a plurality of devices via a network.
  • each step described in the above-described flowchart can be executed by one device or in a shared manner by a plurality of devices.
  • the plurality of processes included in one step can be executed by being shared by a plurality of devices in addition to being executed by one device.
  • present technology can also be configured as follows.
  • the predetermined frame is determined based on the predetermined frame forming the first moving image and the moving image data of the second moving image.
  • An image processing apparatus comprising: a moving image generation unit that generates moving image data of a transition moving image whose display transitions from the second moving image to the second moving image.
  • a decoder for decoding moving image data of the first moving image and the second moving image;
  • a first holding unit that holds the predetermined frame obtained by the decoding;
  • the image processing apparatus according to (1) further including: a second holding unit that holds a frame of the first moving image or the second moving image obtained by the decoding.
  • the image processing apparatus uses the last frame in time before switching of the first moving image as the predetermined frame.
  • the decoder is configured to determine the last frame of the first moving picture in the predetermined time unit, outside the effect period in which moving image data of the transition moving picture is generated, for the first moving picture in the predetermined time unit.
  • the image processing apparatus wherein the first holding unit is held as a predetermined frame.
  • the decoder causes the first holding unit to hold the frame of the first moving image, which is initially output after the predetermined frame of the second moving image is input, as the predetermined frame.
  • the image processing apparatus according to 2.
  • the moving image generation unit generates moving image data of the transition moving image whose display transitions from the predetermined frame to the second moving image more sharply on the start side than on the end side (1) to (5)
  • the image processing apparatus according to any one of the above.
  • the representative frame determination unit is further configured to determine a representative frame among a plurality of frames constituting the first moving image based on the information on the emotional value of the first moving image, The image processing apparatus according to (1) or (2), wherein the moving image generation unit uses the representative frame as the predetermined frame.
  • the representative frame determination unit determines the representative frame based on a score indicating the emotional value of the frame of the first moving image as the information on the emotional value.
  • the representative frame determination unit determines the representative frame based on recommended frame information indicating a frame recommended as the representative frame of the first moving image as the information regarding the emotional value (7) or (8).
  • the image processing apparatus as described in 2.).
  • the representative frame determination unit The representative frame is determined in predetermined time units for the first moving image, If the frame indicated by the recommended frame information is a frame outside the effective period including the end of the first moving image in the predetermined time unit, the emotion of the frame of the first moving image as information on the emotional value
  • the image processing apparatus according to any one of (7) to (10), wherein the representative frame determination unit acquires information on the emotional value from a stream in which moving image data of the first moving image is stored.
  • the predetermined frame is determined based on the predetermined frame forming the first moving image and the moving image data of the second moving image.
  • An image processing method including the step of generating moving image data of a transition moving image of which display transition is from the second moving image to the second moving image.
  • the predetermined frame is determined based on the predetermined frame forming the first moving image and the moving image data of the second moving image.
  • a program that causes a computer to execute processing including the step of generating moving image data of a transition moving image whose display transitions from the second moving image to the second moving image.
  • 11 client device 22 control unit, 23 downloader, 24 video track buffer, 25 MP4 parser, 26 video AU buffer, 27 video decoder, 29 video frame buffer, 30 still picture buffer, 31 video crossfader

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本技術は、より簡単に動画像切り替え時の違和感を低減させることができるようにする画像処理装置および方法、並びにプログラムに関する。 画像処理装置は、第1の動画像から第2の動画像へと表示を切り替える場合に、第1の動画像を構成する所定フレームと、第2の動画像の動画像データとに基づいて、所定フレームから第2の動画像へと表示が遷移する遷移動画像の動画像データを生成する動画像生成部を備える。本技術はクライアント装置に適用することができる。

Description

画像処理装置および方法、並びにプログラム
 本技術は画像処理装置および方法、並びにプログラムに関し、特に、より簡単に動画像切り替え時の違和感を低減させることができるようにした画像処理装置および方法、並びにプログラムに関する。
 MPEG-DASH(Moving Picture Experts Group phase - Dynamic Adaptive Streaming over HTTP)の特徴は、ビットレートアダプテーションと呼ばれる再生機器による最適なRepresentation選択方式のストリーミング再生である(例えば、非特許文献1参照)。
 例えばストリーミング再生時には、再生機器はビットレートが異なる複数のRepresentationの動画像(映像)からネットワーク帯域の状況に応じて最適なビットレートの動画像のデータを自動的に選択する。
 Representationの選択を行うと、その選択に応じてコンテンツの動画像データはセグメントと呼ばれる単位で切り替えられる。この場合、各Representationの映像そのものは同一であるため、セグメントの切り替わり点においてシーン変更とはならず、映像はシームレスに続くことになる。
 このようなMPEG-DASHストリーミング再生において動画像の映像遷移エフェクトが有用となってくる局面がある。例えば動画像のAdaptation Setを複数定義し、それぞれのAdaptation SetのRepresentationが独自のViewpoint(視点)から撮影された動画像とされているときである。
 ユーザは視点が異なる複数のRepresentationから自身が嗜好する視点の映像(動画像)を自主的に選択する。そのとき、例えば所定の視点から他の視点への遷移(切り替え)が発生したとすると、セグメント境界が映像の切り替わり点となってシーン変更となり、映像がノンシームレスとなる。
 このようなシーン変更が生じると、ユーザに対して提示される映像が急に切り替わることから、シーン変更部分でユーザに対して違和感を与えてしまう。そこで、一般的には映像編集処理の1つであるクロスフェードやワイプなどの映像遷移エフェクト技術を施すことでノンシームレスな映像遷移で生じる違和感が緩和される。
 例えば映像遷移エフェクト技術に関しては、SMPTE Standard 258Mなどにおいて規定されたものを用いることができる。
 しかし、動画像に対して映像遷移エフェクトを実施するためには、再生機器が映像遷移エフェクトの適用区間において、フェードアウト側の動画像とフェードイン側の動画像の2つの動画像を処理しなければならない。
 したがって、MPEG-DASHの動画像再生において映像遷移エフェクト技術を適用しようとすると、再生機器側の負荷が大きくなってしまう。
 すなわち、まず同一時刻のセグメントについて、遷移元の動画像のセグメントデータと遷移先の動画像のセグメントデータとをダウンロードしなければならない。つまり同一時刻のセグメントのデータを重複してダウンロードしなければならない。
 また、2つのセグメントデータを同時に扱うため、再生機器における処理量が多くなってしまう。特にビデオデコードの処理量が多くなってしまう。
 そこで、例えばサーバ側、つまりコンテンツの提供側において映像遷移エフェクトを施した部分の画像をトランジション画像として予め生成しておく技術が提案されている(例えば、特許文献1参照)。このようなトランジション画像を用いれば、再生機器側での処理量等を低減させつつ動画像切り替え時の違和感を低減させることができる。
ISO/IEC 23009-1:2014 Information technology -- Dynamic adaptive streaming over HTTP (DASH) -- Part 1: Media presentation description and segment formats
特開2015-73156号公報
 しかしながら、上述した技術では、簡単に動画像切り替え時の違和感を低減させることは困難であった。
 具体的には、サーバ側でトランジション画像を予め用意しておく技術では、例えば各視点の動画像がRepresentationとして定義される場合、所定の視点と他の視点との組み合わせに対してトランジション画像を用意しておく必要がある。この場合、取り得る視点の組み合わせ全てについてトランジション画像を用意しなければならないので、視点数が多くなるとトランジション画像生成のために多くの処理が必要となるだけでなく、トランジション画像等の管理も煩雑になってしまう。
 本技術は、このような状況に鑑みてなされたものであり、より簡単に動画像切り替え時の違和感を低減させることができるようにするものである。
 本技術の一側面の画像処理装置は、第1の動画像から第2の動画像へと表示を切り替える場合に、前記第1の動画像を構成する所定フレームと、前記第2の動画像の動画像データとに基づいて、前記所定フレームから前記第2の動画像へと表示が遷移する遷移動画像の動画像データを生成する動画像生成部を備える。
 画像処理装置には、前記第1の動画像および前記第2の動画像の動画像データをデコードするデコーダと、前記デコードにより得られた前記所定フレームを保持する第1の保持部と、前記デコードにより得られた前記第1の動画像または前記第2の動画像のフレームを保持する第2の保持部とをさらに設けることができる。
 前記動画像生成部には、前記第1の動画像の切り替え前の時間的に最後のフレームを前記所定フレームとして用いるようにさせることができる。
 前記デコーダには、所定時間単位の前記第1の動画像について、前記遷移動画像の動画像データが生成されるエフェクト期間外における、前記所定時間単位の前記第1の動画像の最後のフレームを前記所定フレームとして前記第1の保持部に保持させるようにすることができる。
 前記デコーダには、前記第2の動画像の予め定められたフレームが入力された後、最初に出力される前記第1の動画像のフレームを前記所定フレームとして前記第1の保持部に保持させるようにすることができる。
 前記動画像生成部には、終了側よりも開始側においてより急峻に前記所定フレームから前記第2の動画像へと表示が遷移する前記遷移動画像の動画像データを生成させることができる。
 画像処理装置には、前記第1の動画像の情緒価値に関する情報に基づいて、前記第1の動画像を構成する複数のフレームのなかの代表フレームを決定する代表フレーム決定部をさらに設け、前記動画像生成部には、前記代表フレームを前記所定フレームとして用いるようにさせることができる。
 前記代表フレーム決定部には、前記情緒価値に関する情報としての前記第1の動画像のフレームの情緒価値を示すスコアに基づいて、前記代表フレームを決定させることができる。
 前記代表フレーム決定部には、前記情緒価値に関する情報としての前記第1の動画像の前記代表フレームとして推奨されるフレームを示す推奨フレーム情報に基づいて、前記代表フレームを決定させることができる。
 前記代表フレーム決定部には、前記第1の動画像について所定時間単位で前記代表フレームを決定させ、前記推奨フレーム情報により示されるフレームが前記所定時間単位の前記第1の動画像の終端を含む有効期間外のフレームである場合、前記情緒価値に関する情報としての前記第1の動画像のフレームの情緒価値を示すスコアに基づいて、前記所定時間単位の前記第1の動画像の終端を含む連続するフレームからなる期間内のフレームから前記代表フレームを決定させることができる。
 前記代表フレーム決定部には、前記第1の動画像の動画像データが格納されたストリームから前記情緒価値に関する情報を取得させることができる。
 本技術の一側面の画像処理方法またはプログラムは、第1の動画像から第2の動画像へと表示を切り替える場合に、前記第1の動画像を構成する所定フレームと、前記第2の動画像の動画像データとに基づいて、前記所定フレームから前記第2の動画像へと表示が遷移する遷移動画像の動画像データを生成するステップを含む。
 本技術の一側面においては、第1の動画像から第2の動画像へと表示を切り替える場合に、前記第1の動画像を構成する所定フレームと、前記第2の動画像の動画像データとに基づいて、前記所定フレームから前記第2の動画像へと表示が遷移する遷移動画像の動画像データが生成される。
 本技術の一側面によれば、より簡単に動画像切り替え時の違和感を低減させることができる。
 なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載された何れかの効果であってもよい。
映像遷移エフェクトについて説明する図である。 クライアント装置の構成例を示す図である。 ストリーミング再生処理を説明するフローチャートである。 ビデオセグメントダウンロード処理を説明するフローチャートである。 ビデオセグメント処理を説明するフローチャートである。 ビデオデコード処理を説明するフローチャートである。 映像遷移エフェクト実行処理を説明するフローチャートである。 アルファブレンディングのブレンド比率の例を示す図である。 アルファブレンディングのブレンド比率の例を示す図である。 表示切り替えと映像遷移エフェクトの例を示す図である。 表示切り替えと映像遷移エフェクトの例を示す図である。 ビデオセグメント処理を説明するフローチャートである。 ビデオデコード処理を説明するフローチャートである。 表示切り替えと映像遷移エフェクトの例を示す図である。 表示切り替えと映像遷移エフェクトの例を示す図である。 代表フレーム情報の例を示す図である。 ビデオセグメント処理を説明するフローチャートである。 コンピュータの構成例を示す図である。
 以下、図面を参照して、本技術を適用した実施の形態について説明する。
〈第1の実施の形態〉
〈本技術について〉
 本技術は、動画像のスナップショットとして保持可能な静止画像、つまり1つのビデオフレームと動画像とを用いて映像遷移エフェクトを行うことで、より簡単に動画像切り替え時の違和感を低減させることができるようにするものである。
 例えば本技術は、MPEG-DASHストリーミング再生において、Representationの遷移時に遷移元動画像と遷移先動画像との間で映像遷移エフェクトを実施する場合に適用することができる。この場合、遷移元動画像のセグメントの終端近傍のフレームと遷移先動画像とに基づいて映像遷移エフェクトが実施され、遷移元動画像のフレームから遷移先動画像へと表示が遷移していく遷移動画像が生成される。
 例えば図1に示すように、互いに異なる視点のRepresentation#1の動画像とRepresentation#2の動画像とがあり、時刻t1と時刻t2において表示の切り替え、つまり視点の切り替えが行われたとする。また、矢印A11に示す動画像は、ユーザに対して提示される提示用の動画像を示している。
 この例では、時刻t1まではRepresentation#1の動画像が再生されており、時刻t1においてRepresentation#2の動画像へと表示の切り替えが指示されている。
 この場合、時刻t1を終端とするRepresentation#1のセグメントSG11の最終フレームFL11と、時刻t1を先頭とするRepresentation#2のセグメントSG12の動画像とが用いられてクロスフェードが行われ、期間T1の提示用の動画像PR11が生成される。
 このとき、最終フレームFL11が保持され、この最終フレームFL11とセグメントSG12の動画像との間で、映像遷移エフェクトとしてのクロスフェード処理が時間的に連続して行われ、遷移動画像である動画像PR11が生成される。特に、この例ではセグメントSG11の動画像が遷移元の動画像であり、セグメントSG12の動画像が遷移先の動画像となる。また、動画像PR11は、最終フレームFL11からセグメントSG12の動画像へと時間とともに表示が遷移する遷移動画像となる。
 時刻t1以降の期間T1では、このようにして得られた動画像PR11が表示される。
 この動画像PR11は、時刻t1では最終フレームFL11が表示されているが、その後、徐々に最終フレームFL11からセグメントSG12の動画像へと表示が遷移していく動画像となっている。換言すれば、動画像PR11は最終フレームFL11がフェードアウトしていき、セグメントSG12の動画像がフェードインしていく動画像となる。
 そのため、映像遷移エフェクトを実施せずにRepresentation#1の動画像からRepresentation#2の動画像へと表示を切り替える場合と比べて、切り替え時の違和感を低減させることができる。
 なお、以下、この例における期間T1など、動画像の再生期間のうちの映像遷移エフェクトが実施される期間を、特にエフェクト期間とも称することとする。
 また、期間T1の後は、Representation#2のセグメントSG13の動画像が再生され、時刻t2において表示の切り替えが指示されると、動画像PR11と同様の動画像PR12が生成され、時刻t2以降の期間T2では動画像PR12が再生される。
 すなわち、時刻t2を終端とするRepresentation#2のセグメントSG13の最終フレームFL12と、時刻t2を先頭とするRepresentation#1のセグメントSG14の動画像とが用いられてクロスフェードが行われ、期間T2の提示用の動画像PR12が生成される。
 このようにして遷移元の動画像の最終フレーム(静止画像)と、遷移先の動画像とに基づいて映像遷移エフェクトを実施することで、少ない処理量で簡単に動画像のノンシームレスな切り替えの違和感を低減させることができる。また、サーバ側で映像遷移エフェクトを施した動画像を用意する必要もない。
 しかも、この場合、遷移元の動画像についてはエフェクト期間のセグメントデータをダウンロードする必要がなくなる。さらに、遷移元については静止画像を用いるようにしたので、遷移元のエフェクト期間の動画像のデコード処理等が不要となり、2つの動画像を用いて映像遷移エフェクトを行う場合と比較して処理量を低減させることができる。
 なお、ここではエフェクト期間に表示される動画像を生成する映像遷移エフェクト処理、つまり映像遷移エフェクトとしてクロスフェードを行う場合を例として説明したが、その他、ワイプ処理など、映像遷移エフェクト処理はどのようなものであってもよい。例えば映像遷移エフェクト技術に関しては、SMPTE Standard 258Mなどにおいて規定されたものを用いることができる。
 また、ここではセグメントの最終フレームを映像遷移エフェクトに用いる例について説明したが、セグメントの終端近傍のフレームであれば、必ずしも最終フレームでなくてもよい。
 以上のように、本技術ではコンテンツを再生するクライアント側において、セグメントから抽出された静止画像である各セグメントの所定フレームが保持される。より詳細には、後述するが映像遷移エフェクトが行われる期外にある、セグメントの最終フレームが保持される。そして、遷移元の動画像から、遷移先の動画像へと表示を切り替える場合には、遷移元の動画像の切り替え前の最後のセグメントにおける最終フレーム等の所定フレーム(静止画像)と、遷移先の動画像の動画像データとに基づいて映像遷移エフェクトを実現する映像遷移エフェクト処理が行われ、遷移元の動画像の所定フレームから、遷移先の動画像へと表示が遷移していく遷移動画像の動画像データが生成される。
 ここで、MPEG-DASHストリーミング再生について説明する。
 再生装置はストリーミングデータの制御用ソフトウェア(以下、制御用ソフトウェアとも称する)、動画再生ソフトウェア、HTTP(Hypertext Transfer Protocol)アクセス用のクライアント・ソフトウェア(以下、アクセス用ソフトウェアと称する)等を実行する。
 制御用ソフトウェアは、Webサーバからストリーミングするデータを制御するソフトウェアである。例えば、制御用ソフトウェアは、WebサーバからMPD(Media Presentation Description)ファイルを取得する。また、制御用ソフトウェアは、例えば、そのMPDファイルや動画再生ソフトウェアにより指定される再生時刻等を表す再生時刻情報、およびインターネットのネットワーク帯域に基づいて、再生対象のセグメントデータの送信要求を、アクセス用ソフトウェアに指令する。
 動画再生ソフトウェアは、インターネットを介してWebサーバから取得された符号化ストリームを再生するソフトウェアである。例えば、動画再生ソフトウェアは、再生時刻情報を制御用ソフトウェアに指定する。また、動画再生ソフトウェアは、アクセス用ソフトウェアから受信開始の通知を取得すると、アクセス用ソフトウェアから供給される符号化ストリームを復号する。動画再生ソフトウェアは、復号の結果得られるビデオデータ(動画像データ)やオーディオデータを出力する。
 アクセス用ソフトウェアは、HTTPを用いたWebサーバとの通信を制御するソフトウェアである。例えば、アクセス用ソフトウェアは、受信開始の通知を動画再生ソフトウェアに供給する。また、アクセス用ソフトウェアは、制御用ソフトウェアの指令に応じて、再生対象のセグメントデータの符号化ストリームの送信要求をWebサーバに送信する。
 さらに、アクセス用ソフトウェアは、その送信要求に応じてWebサーバから送信されてくる、通信環境等に応じたビットレートのセグメントデータを受信する。そして、アクセス用ソフトウェアは、その受信したセグメントデータから符号化ストリームを抽出し、動画再生ソフトウェアに供給する。
〈クライアント装置の構成例〉
 次に、本技術を適用したより具体的な実施の形態について説明する。
 図2は、本技術を適用したクライアント装置の一実施の形態の構成例を示す図である。
 図2に示すクライアント装置11は再生装置であり、ネットワークを介してサーバからコンテンツのデータ、すなわち動画像データを受信するとともに、動画像データに対してデコード等の処理を行って、得られた動画像データを表示装置12に供給して表示させる。
 クライアント装置11では、ダウンロードやその後の処理等、コンテンツの動画像データは、基本的にはセグメントと呼ばれる所定時間単位、つまり所定フレーム数単位で取り扱われる。
 クライアント装置11はユーザイベントハンドラ21、制御部22、ダウンローダ23、ビデオトラックバッファ24、MP4パーサ25、ビデオAU(Access Unit)バッファ26、ビデオデコーダ27、スイッチ28、ビデオフレームバッファ29、静止画バッファ30、ビデオクロスフェーダ31、およびビデオレンダラ32を有している。
 ユーザイベントハンドラ21は、例えばAdaptation Setの切り替え操作など、ユーザの操作に応じた信号を制御部22に供給する。
 制御部22は、上述した制御用ソフトウェアに対応し、サーバからMPDファイルを取得するとともに、取得したMPDファイルに基づいてクライアント装置11の各部を制御する。
 また、制御部22はMPDパーサ41を有している。MPDパーサ41は、サーバからMPDファイルをダウンロードしてパース(解析)し、MPDファイルからセグメント情報を取得する。また、MPDパーサ41は、取得したセグメント情報に基づいてダウンローダ23を制御し、コンテンツの動画像データが格納されたビデオセグメントデータ(セグメントデータ)を取得させる。
 ダウンローダ23は、上述したアクセス用ソフトウェアに対応し、MPDパーサ41の制御に従ってサーバからビデオセグメントデータをダウンロードする。また、ダウンローダ23は、ダウンロードしたビデオセグメントデータをビデオトラックバッファ24に供給し、一時的に保持させる。
 なお、ビデオセグメントデータは、サーバ等のネットワーク上の装置に限らず、記録媒体等から取得するなどしてもよい。
 ビデオトラックバッファ24はメモリなどからなり、ダウンローダ23から供給されたビデオセグメントデータを一時的に保持するとともに、保持しているビデオセグメントデータをMP4パーサ25に供給する。
 MP4パーサ25は、ビデオトラックバッファ24からビデオセグメントデータを読み出すとともに、ビデオセグメントデータをビデオAUと呼ばれる所定単位のデータに分離してビデオAUバッファ26に供給する。
 ビデオAUバッファ26はメモリなどからなり、MP4パーサ25から供給されたビデオAUを一時的に保持するとともに、保持しているビデオAUをビデオデコーダ27に供給する。
 ビデオデコーダ27は、ビデオAUバッファ26からビデオAUを読み出してデコード(復号)するとともに、デコードにより得られた動画像データ、より詳細には動画像のフレーム(以下、ビデオフレームとも称する)をスイッチ28を介してビデオフレームバッファ29に供給する。また、ビデオデコーダ27は、制御部22から指示があった場合、ビデオセグメントデータの最後のビデオフレーム、つまりセグメントの最後のビデオフレームを最終フレームとしてスイッチ28を介して静止画バッファ30に供給する。
 スイッチ28は、ビデオデコーダ27から供給されたビデオフレームの出力先を切り替える。すなわち、スイッチ28は、ビデオデコーダ27から供給されたビデオフレームをビデオフレームバッファ29または静止画バッファ30に供給する。
 ビデオフレームバッファ29はメモリなどからなる保持部であり、スイッチ28を介してビデオデコーダ27から供給されたビデオフレームを保持するとともに、保持しているビデオフレームをビデオクロスフェーダ31に供給する。基本的には、ビデオデコーダ27におけるデコードにより得られた動画像データ、つまり動画像のビデオフレームは、全てビデオフレームバッファ29に供給されて保持される。
 静止画バッファ30はメモリなどからなる保持部であり、スイッチ28を介してビデオデコーダ27から供給された最終フレームを保持するとともに、保持している最終フレームをビデオクロスフェーダ31に供給する。
 ビデオクロスフェーダ31は、ビデオフレームバッファ29に保持されているビデオフレームと、静止画バッファ30に保持されている最終フレームとに基づいて映像遷移エフェクトを施す映像遷移エフェクト処理を行い、その結果得られた遷移動画像の動画像データのフレームをビデオレンダラ32に供給する。この場合、ビデオクロスフェーダ31は、遷移動画像の動画像データを生成する動画像生成部として機能する。
 また、ビデオクロスフェーダ31は、映像遷移エフェクトを行わない期間では、ビデオフレームバッファ29に保持されているビデオフレームをそのままビデオレンダラ32に供給する。
 ビデオレンダラ32は、ビデオクロスフェーダ31から供給された動画像データのフレームを外部の表示装置12に供給し、表示させる。
 クライアント装置11では、ビデオトラックバッファ24乃至ビデオレンダラ32が、上述した動画再生ソフトウェアに対応する。
〈ストリーミング再生処理の説明〉
 次に、クライアント装置11の動作について説明する。
 クライアント装置11の制御部22はダウンローダ23を制御して、ユーザ等により指定されたAdaptation Setについて、自身が選択したRepresentationのビデオセグメントデータをダウンロードさせる。そして、制御部22は、得られたビデオセグメントデータに基づいてコンテンツの動画像をストリーミング再生させる。
 コンテンツを再生する場合、例えばユーザによりAdaptation Setが選択され、選択されたAdaptation Setについて用意された複数のRepresentationのなかから、制御部22により適切な1つのRepresentationが選択される。そして、その後はネットワーク帯域等に応じて、適宜、制御部22によりRepresentationが切り替えられる。
 コンテンツのストリーミング再生時には、クライアント装置11では、少なくとも以下の5つのデータが保持されているようになされる。
 (1)最終フレーム
 (2)ビデオフレーム幅
 (3)ビデオフレーム高さ
 (4)ビデオフォーマット
 (5)エフェクト開始時刻ts
 ここで、最終フレームはセグメントの時間的に最後のフレーム、つまり時間的に最後のビデオサンプルであり、動画像データのデコード後の最終フレームのピクセル値がそのままコピーされて静止画バッファ30に保持される。特に、この例では、基本的には各セグメントの最終フレームが必ず静止画バッファ30に保持されるように制御される。
 ビデオフレーム幅およびビデオフレーム高さは、ビデオフレームのサイズ(ピクセル数)を示す横方向の長さ(ピクセル数)および縦方向の長さ(ピクセル数)を示す情報である。さらに、ビデオフォーマットは、例えばYUV4:2:0などのビデオセグメントデータに基づいて再生される動画像の形式を示す制御値である。
 これらのビデオフレーム幅、ビデオフレーム高さ、ビデオフォーマットは制御部22によってMPDファイルから抽出され、適宜、ビデオデコーダ27やビデオクロスフェーダ31などに供給される。
 エフェクト開始時刻tsは、エフェクト期間の開始時刻を示す情報であり、エフェクト期間の開始時に提示(表示)されるビデオフレームの表示時刻(msec)がエフェクト開始時刻tsとされる。なお、基本的にはエフェクト開始時刻tsはセグメントの先頭のビデオフレームの表示時刻とされ、エフェクト開始時刻tsは制御部22により管理される。
 例えばビデオフレームの表示時刻として、ビデオセグメントデータに含まれているビデオフレームのCTS(Composition Time Stamp)が用いられる。MP4パーサ25やビデオデコーダ27、ビデオクロスフェーダ31では、各ビデオフレームに対応付けられた表示時刻(CTS)を参照することができるようになされている。以下では、処理対象となっているビデオフレームの表示時刻を表示時刻tとも記すこととする。
 さらに、クライアント装置11では、エフェクト期間の長さを示すエフェクト期間長d(msec)が予め設定されており、このエフェクト期間長dは制御部22により管理される。例えばエフェクト期間長dは予め定められた長さとされてもよいし、ユーザ等により指定された長さとされてもよいし、コンテンツに対して予め定められた長さであってもよい。
 例えばエフェクト期間長dとすべき時間を示す情報がMPDファイル内に格納可能な場合には、コンテンツ提供者がエフェクト期間長dを指定することができるようになる。
 エフェクト期間長dはセグメントの長さ、つまり1つのビデオセグメントの再生時間長を超える長さとされてもよい。
 さらに、制御部22ではコンテンツのシーン変更の検出結果、つまり異なるAdaptation SetのRepresentationへの変更の検出結果を示すシーン変更検出フラグが管理される。
 このシーン変更検出フラグは、シーン変更が生じるようなRepresentationの切り替え、つまり他のRepresentationへの遷移が発生したか否かを示す情報である。
 例えばRepresentationの切り替え(遷移)がAdaptation Setの切り替えに起因する場合、つまり現時点でのAdaptation Setとは異なる他のAdaptation SetのRepresentationへの切り替えが発生した場合、シーン変更検出フラグの値は「1」とされる。
 現時点で所定のAdaptation SetにおけるRepresentationの動画像が再生されており、その後、他のAdaptation SetにおけるRepresentationの動画像が再生されるように再生動画像の切り替え(表示切り替え)の指示がなされたとする。
 この場合、切り替え前の動画像と、切り替え後の動画像とでは表示される画像(映像)が異なり、シーン変更となるため、表示切り替え時に違和感が生じないようにするために映像遷移エフェクトの実施が必要となる。
 これに対して、例えばRepresentationの切り替えが同一Adaptation Set内の異なるRepresentationへの切り替えである場合、つまり切り替え前後でRepresentationは異なるもののAdaptation Setについては変化しない場合、シーン変更検出フラグの値は「0」とされる。
 これは、同一のAdaptation Setについて用意された所定のRepresentationから他のRepresentationへと切り替えを行っても切り替えの前後で画質等は異なるものの映像自体は変化しないためシーン変更とはならず、特に映像遷移エフェクトを実施しなくてもよいからである。
 制御部22は、ユーザイベントハンドラ21から供給された信号に基づいて、適宜、保持しているシーン変更検出フラグの値を更新する。
 次に、クライアント装置11により行われる具体的な処理について説明する。
 すなわち、以下、図3のフローチャートを参照してクライアント装置11により行われるストリーミング再生処理について説明する。このストリーミング再生処理は、ユーザによりコンテンツのAdaptation Setが指定されたときに開始される。
 ステップS11において、制御部22は映像遷移エフェクトの初期設定を行う。
 例えば制御部22は、予め定められた値やMPDファイル内で指定された値などをエフェクト期間長dの値として設定するとともにエフェクト開始時刻tsの値を-1とする。
 エフェクト期間長dやエフェクト開始時刻tsの値は、例えばミリ秒を単位とする整数値とされ、それらの値が0または負値である場合には映像遷移エフェクトは実施されないようになされている。
 また、制御部22は処理対象のセグメント、すなわちダウンロードするセグメントデータを特定するセグメントインデックスの値を0とする。
 その他、制御部22では、ビデオフレーム幅やビデオフレーム高さ、ビデオフォーマットなどが予めMPDファイルから読み出され、保持されている。
 ステップS12において制御部22は保持しているセグメントインデックスの値を1だけインクリメントする。
 ステップS13において、制御部22は保持しているシーン変更検出フラグの値を0とする。
 ステップS14において、制御部22はユーザイベントハンドラ21から供給された信号に基づいて、Adaptation Setの切り替え(遷移)があるか否かを判定する。
 ステップS14においてAdaptation Setの切り替えがあると判定された場合、ステップS15において制御部22は、保持しているシーン変更検出フラグの値を1とする。これにより、処理対象となっているセグメントにおいてシーン変更が発生することが分かる。
 例えばMP4パーサ25やビデオデコーダ27では、ビデオトラックバッファ24に保持されているビデオセグメントデータがダウンロードされたタイミングは分明ではない。そのため、MP4パーサ25やビデオデコーダ27が、どのタイミングでAdaptation Setの切り替えがあったかを正確に特定することは困難である。
 そこで、クライアント装置11では、制御部22がユーザイベントハンドラ21から供給された信号に基づいてシーン変更検出フラグの値を設定し、MP4パーサ25やビデオデコーダ27がシーン変更検出フラグからAdaptation Setの切り替えタイミングを特定することができるようにされている。
 シーン変更検出フラグの値は、Representationの切り替えがAdaptation Setの切り替えにより発生したときにだけ1とされ、それ以外の場合は0とされるようにすれば、シーン変更検出フラグから映像遷移エフェクト実施の必要性を判別することができる。
 シーン変更検出フラグが1に更新されると、その後、処理はステップS16へと進む。
 これに対して、ステップS14においてAdaptation Setの切り替えがないと判定された場合、処理はステップS16へと進む。
 ステップS14においてAdaptation Setの切り替えがないと判定されたか、またはステップS15においてシーン変更検出フラグが更新されると、ステップS16において制御部22は、処理対象のセグメントのコンテンツ種別がビデオであるか否かを判定する。
 ステップS16においてコンテンツ種別がビデオであると判定された場合、ステップS17においてクライアント装置11はビデオセグメントダウンロード処理を行う。
 なお、詳細は後述するがビデオセグメントダウンロード処理では、制御部22がダウンローダ23に処理対象のセグメントのビデオセグメントデータのダウンロードを指示し、ダウンローダ23はその指示に従ってビデオセグメントデータをダウンロードする。また、ダウンロードされたビデオセグメントデータに基づいて動画像が再生される。
 ビデオセグメントダウンロード処理が行われると、その後、処理はステップS19に進む。
 これに対して、ステップS16においてコンテンツ種別がビデオでないと判定された場合、ステップS18においてクライアント装置11は、コンテンツ種別に応じた処理を行い、その後、処理はステップS19へと進む。
 例えばコンテンツ種別がオーディオである場合、クライアント装置11はステップS18においてオーディオのセグメントデータをダウンロードし、得られたセグメントデータに基づいて音声の再生を行う。
 ステップS17においてビデオセグメントダウンロード処理が行われたか、またはステップS18においてコンテンツ種別に応じた処理が行われると、ステップS19において制御部22は全てのセグメントについて処理を行ったか否かを判定する。
 ステップS19において、まだ全てのセグメントについて処理を行っていないと判定された場合、つまりまだ処理すべきセグメントが残っている場合、処理はステップS12に戻り、上述した処理が繰り返し行われる。
 これに対して、ステップS19において全てのセグメントについて処理を行ったと判定された場合、コンテンツの再生が終了したので、ストリーミング再生処理は終了する。
 以上のようにしてクライアント装置11は、ビデオセグメントデータ等をダウンロードして動画像等を再生し、Adaptation Setの切り替えが発生したときにはシーン変更検出フラグの値を1とする。
〈ビデオセグメントダウンロード処理の説明〉
 続いて、図4のフローチャートを参照して、図3のステップS17の処理に対応し、クライアント装置11により行われるビデオセグメントダウンロード処理について説明する。
 ステップS51において、制御部22はMPDパーサ41で得られるMPDファイルに基づいて、コンテンツの再生が終了したか否かを判定する。例えばセグメントインデックスの値が、コンテンツの最後のセグメントのセグメントインデックスの値よりも大きい場合、コンテンツの再生が終了したと判定される。
 ステップS51において再生が終了したと判定された場合、ダウンロードするビデオセグメントデータはないので、ビデオセグメントダウンロード処理は終了する。この場合、その後に行われる図3のステップS19の処理では、全てのセグメントについて処理を行ったと判定されることになる。
 これに対して、ステップS51において再生が終了していないと判定された場合、すなわち、まだダウンロードすべきビデオセグメントデータが残っている場合、制御部22はダウンロードすべきビデオセグメントデータをダウンローダ23に指示し、処理はステップS52へと進む。
 ステップS52において、ダウンローダ23は、ビデオトラックバッファ24に、新たなビデオセグメントデータを格納可能な空き容量があるか否かを判定する。
 ステップS52において空き容量があると判定された場合、その後、処理はステップS54へと進む。
 これに対して、ステップS52において空き容量がないと判定された場合、ステップS53において、ダウンローダ23はビデオトラックバッファ24に十分な空き容量が生じるまで、制御部22により指定されたビデオセグメントデータのダウンロードを行わずに待機する。
 そして、ビデオトラックバッファ24に十分な空き容量が生じると、その後、処理はステップS54へと進む。
 ステップS52において空き容量があると判定されたか、またはステップS53において待機が行われると、ステップS54において、ダウンローダ23は、制御部22により指定されたビデオセグメントデータをサーバからダウンロードする。すなわち、ダウンローダ23は、サーバから送信されてきたビデオセグメントデータを受信する。
 ステップS55において、ダウンローダ23は、ダウンロードしたビデオセグメントデータをビデオトラックバッファ24に供給して保持させる。
 ステップS56において、クライアント装置11はビデオセグメント処理を行う。なお、詳細は後述するが、ビデオセグメント処理では、ビデオトラックバッファ24に保持されているビデオセグメントデータがMP4パーサ25により読み出されてパースされたり、ビデオセグメントデータがデコードされたり、動画像データに対して映像遷移エフェクトが施されたりする。
 ステップS57において、MP4パーサ25は、ステップS56で処理されたビデオセグメントデータをビデオトラックバッファ24から削除する。すなわち、処理済みのビデオセグメントデータが破棄される。
 ステップS57の処理が行われ、不要となったビデオセグメントデータが破棄されると、ビデオセグメントダウンロード処理は終了する。
 以上のようにしてクライアント装置11は、順次、ビデオセグメントデータをダウンロードして処理していく。
〈ビデオセグメント処理の説明〉
 また、図5のフローチャートを参照して、図4のステップS56の処理に対応し、クライアント装置11により行われるビデオセグメント処理について説明する。
 ステップS81において、MP4パーサ25はビデオトラックバッファ24から1セグメント分のビデオセグメントデータを読み出す。
 ステップS82において、MP4パーサ25はビデオAUに対するパースを行う。
 すなわち、MP4パーサ25はステップS81の処理で読み出したビデオセグメントデータを構成するビデオAUを順番に処理対象のビデオAUとして選択していく。
 MP4パーサ25は処理対象のビデオAUに対してパースを行った後、処理対象のビデオAUをビデオAUバッファ26に供給して保持させる。なお、1つのビデオAUは、動画像の1フレーム分のデータとなっている。
 ステップS83において、MP4パーサ25は、処理対象のビデオAUがビデオセグメントデータの先頭のビデオAUであり、かつ制御部22に保持されているシーン変更検出フラグの値が1であるか否かを判定する。
 例えばMPEG-DASHストリーミング再生では、Representationが切り替わるタイミングはセグメント先頭のタイミングとなることから、セグメント先頭のビデオAUはシーン変更が発生するタイミング、つまりエフェクト期間の開始時刻となる可能性がある。
 ステップS83において先頭のビデオAUでないか、またはシーン変更検出フラグの値が1でないと判定された場合、処理はステップS86へと進む。
 これに対して、ステップS83において先頭のビデオAUであり、かつシーン変更検出フラグの値が1であると判定された場合、処理はステップS84へと進む。
 ステップS84において、MP4パーサ25は処理対象のビデオAUの表示時刻t、すなわちビデオAUに対応するビデオフレームの表示時刻tと、制御部22に保持されているエフェクト開始時刻tsおよびエフェクト期間長dとに基づいて、エフェクト期間中であるか否かを判定する。
 例えば以下のような条件で映像遷移エフェクトを実施すれば、エフェクト期間長がセグメント長を超えても映像遷移エフェクトに破綻が生じないようにすることができる。
 すなわち、0≦ts、かつts≦t、かつt≦ts+dを満たす場合に、表示時刻tのビデオフレームはエフェクト期間内のビデオフレームであるとされればよい。
 したがって、ステップS84では、例えばエフェクト開始時刻tsが0以上であり、かつ表示時刻tがエフェクト開始時刻ts以上であり、かつ表示時刻tがエフェクト開始時刻tsとエフェクト期間長dの和以下である場合、エフェクト期間中であると判定される。
 ステップS84においてエフェクト期間中でないと判定された場合、ステップS85において、MP4パーサ25はステップS82で処理対象としたビデオAUの表示時刻t、すなわち処理対象のビデオAUのCTSの値をエフェクト開始時刻tsとする。つまり、処理対象のビデオAUのCTSの値がエフェクト開始時刻tsに代入される。
 これにより、Adaptation Setの切り替え(遷移)を含むRepresentationの切り替えが生じたタイミングにおけるセグメントの先頭のビデオAUに対応付けられている表示時刻が新たなエフェクト開始時刻tsとされる。このようなビデオAUは、切り替え先のAdaptation Setの最初のセグメントの先頭のビデオAUである。
 なお、クライアント装置11では、特にエフェクト開始時刻tsには制約はないが、一般的には、1つのセグメント内では一続きのシーンが記録されているか、またはシーンチェンジを含んでいても編集された状態のものが記録されている。そのため、セグメントの途中の時刻がエフェクト開始時刻tsに設定されることは異例である。
 このようにしてエフェクト開始時刻tsが設定されると、そのエフェクト開始時刻tsが制御部22に供給され、その後、処理はステップS86へと進む。
 一方、ステップS84においてエフェクト期間中であると判定された場合、エフェクト開始時刻tsは既に定められているのでステップS85の処理は行われず、処理はステップS86へと進む。
 ステップS83において先頭のビデオAUでないか、若しくはシーン変更検出フラグの値が1でないと判定されたか、ステップS85の処理が行われたか、またはステップS84においてエフェクト期間中であると判定された場合、ステップS86の処理が行われる。
 ステップS86において、クライアント装置11は、ビデオデコード処理を行ってビデオAUバッファ26に保持されている処理対象のビデオAUをデコードする。なお、ビデオデコード処理の詳細は後述する。
 ステップS87において、MP4パーサ25はセグメント終端に到達したか否かを判定する。例えば処理対象のビデオAUがセグメント、つまりビデオセグメントデータの最後のビデオAUとなった場合、セグメント終端に到達したと判定される。
 ステップS87において、まだセグメント終端に到達していないと判定された場合、ステップS81で読み出されたビデオセグメントデータのデコードが終了していないので、処理はステップS82に戻り、上述した処理が繰り返し行われる。
 これに対して、ステップS87においてセグメント終端に到達したと判定された場合、ステップS88において、ビデオデコーダ27はエフェクト期間中であるか否かを判定する。ステップS88では、ビデオデコーダ27に入力されたビデオAUの表示時刻tが用いられて、ステップS84における場合と同様の処理が行われる。
 ステップS88においてエフェクト期間中でないと判定された場合、ステップS89において、ビデオデコーダ27は、ステップS86の処理で得られたセグメントの最終フレームを、スイッチ28を介して静止画バッファ30に供給し、保持させる。
 このとき、ビデオデコーダ27は、制御部22で保持されているビデオフレーム幅、ビデオフレーム高さ、およびビデオフォーマットに基づいて、静止画バッファ30に最終フレームを保持させるのに必要な記録領域を確保する。
 例えば最終フレームの保持に必要な記録領域のサイズは、ビデオフレーム幅、ビデオフレーム高さ、およびビデオフォーマットによって定まり、この記録領域のサイズは、各セグメントの再生開始時刻のタイミングで決定することができる。
 具体的には、例えばビデオフレーム幅が3840ピクセルであり、ビデオフレーム高さが2160ピクセルであるとする。また、ビデオフォーマットがYUV4:2:0形式、つまり正方2×2ピクセルのうちU信号を上2ピクセルから1ピクセル取りV信号を下2ピクセルから1ピクセル取る方式であるとする。
 このような場合には、3840×2160×3/2=12441600バイトの記録領域を最終フレーム保持のための領域として確保すればよい。
 以上の処理により、クライアント装置11では終端部分がエフェクト期間に含まれない全てのセグメント、つまり遷移元のセグメントとして映像遷移エフェクトに用いられる可能性のあるセグメントについては、必ずセグメントの時間的に最後のビデオフレームが最終フレームとして静止画バッファ30に保持されることになる。したがって、そのセグメントの次のセグメントで他のRepresentationへの遷移があるときでも、次のセグメント以降のビデオセグメントデータと、静止画バッファ30に保持されている最終フレームとを用いて、直ちに映像遷移エフェクトを行うことができる。
 最終フレームが静止画バッファ30に保持されると、その後、処理はステップS90へと進む。
 一方、ステップS88においてエフェクト期間中であると判定された場合、エフェクト期間に含まれる最終フレームは映像遷移エフェクトには使用されることはないので、ステップS89の処理は行われず、処理はステップS90へと進む。
 ステップS88においてエフェクト期間中であると判定されたか、またはステップS89の処理が行われると、ステップS90の処理が行われる。
 ステップS90においてMP4パーサ25はビデオトラックバッファ24に、ステップS81で読み出したビデオセグメントデータの次のビデオセグメントデータがあるか否かを判定する。
 ステップS90において、まだ次のビデオセグメントデータがあると判定された場合、処理はステップS81に戻り、上述した処理が繰り返し行われる。
 これに対して、ステップS90において次のビデオセグメントデータがないと判定された場合、ビデオセグメント処理は終了する。
 以上のようにしてクライアント装置11は、終端部分がエフェクト期間に含まれないセグメントの最後のビデオフレームを映像遷移エフェクト用のフレームとして静止画バッファ30に保持する。これにより、静止画バッファ30に保持されたビデオフレーム(最終フレーム)を用いて、より簡単に、すなわちより少ない処理量で映像遷移エフェクトを実施し、表示の切り替え時における違和感を低減させることができる。
〈ビデオデコード処理の説明〉
 さらに、図6のフローチャートを参照して、図5のステップS86の処理に対応し、クライアント装置11により行われるビデオデコード処理について説明する。
 ステップS121において、ビデオデコーダ27は、ビデオAUバッファ26からビデオAUを1つ読み出す。そしてステップS122において、ビデオデコーダ27は読み出したビデオAUに対してデコード(復号)を行う。
 ステップS123において、ビデオデコーダ27はステップS122のデコードでエラーが発生したか否かを判定する。
 ステップS123においてエラーが発生したと判定された場合、ビデオデコード処理は終了する。
 これに対してステップS123においてエラーが発生していないと判定された場合、ステップS124において、ビデオデコーダ27はデコードの結果として得られたビデオフレームを、スイッチ28を介してビデオフレームバッファ29に供給し、保持させる。
 このとき、ビデオデコーダ27は、制御部22で保持されているビデオフレーム幅、ビデオフレーム高さ、およびビデオフォーマットに基づいてビデオフレームバッファ29に必要な記録領域を確保する。
 ステップS125においてビデオクロスフェーダ31は、映像遷移エフェクト実行処理を行って、提示用(表示用)のビデオフレームを動画像データの1フレーム分のデータとして生成し、ビデオレンダラ32に供給する。
 なお、詳細は後述するが映像遷移エフェクト実行処理では、必要に応じてビデオフレームバッファ29に保持されているビデオフレームと、静止画バッファ30に保持されている最終フレームとに基づいて提示用のビデオフレームが生成される。
 ステップS126において、ビデオレンダラ32は、ビデオクロスフェーダ31から供給された提示用のビデオフレームに対してレンダリング処理を行い、得られたビデオフレーム、つまり動画像データを表示装置12に供給して動画像を表示させる。
 表示装置12に動画像データが供給されると、ビデオデコード処理は終了する。なお、このビデオデコード処理は、ビデオAUバッファ26に保持されているビデオAUがなくなるまでビデオAUごとに行われる。
 以上のようにしてクライアント装置11は、ビデオAU単位でビデオセグメントデータをデコードし、必要に応じて映像遷移エフェクトを施す。
〈映像遷移エフェクト実行処理の説明〉
 次に、図7のフローチャートを参照して、図6のステップS125の処理に対応し、ビデオクロスフェーダ31により行われる映像遷移エフェクト実行処理について説明する。例えばこの映像遷移エフェクト実行処理はビデオフレームごとに行われる。
 ステップS151においてビデオクロスフェーダ31は、ビデオフレームバッファ29に保持されているビデオフレームの表示時刻tと、制御部22に保持されているエフェクト開始時刻tsおよびエフェクト期間長dとに基づいて、エフェクト期間中であるか否かを判定する。ステップS151では、図5のステップS84と同様の処理が行われる。
 ステップS151においてエフェクト期間中でないと判定された場合、ステップS152の処理が行われる。
 ステップS152において、ビデオクロスフェーダ31は、ビデオフレームバッファ29に保持されているビデオフレームをそのまま提示用のビデオフレームとしてビデオレンダラ32に出力し、映像遷移エフェクト実行処理は終了する。
 エフェクト期間でない場合、ビデオフレームバッファ29に保持されているもとのビデオフレームに対して特に映像遷移エフェクトを施す必要はないので、そのビデオフレームがそのまま提示用のビデオフレームとして出力される。
 なお、より詳細にはビデオフレームの大きさ、すなわち幅と高さはRepresentationごとに定められているが、ビデオクロスフェーダ31は必要に応じてビデオフレームのサイズを予め定められたサイズのビデオフレームに変換してから出力する。
 これに対して、ステップS151においてエフェクト期間中であると判定された場合、処理はステップS153へと進む。
 ステップS153において、ビデオクロスフェーダ31は、静止画バッファ30に保持されている静止画像である最終フレームの大きさと、ビデオフレームバッファ29に保持されている動画像であるビデオフレームの大きさとが同じであるか否かを判定する。
 ステップS153において、大きさが同じであると判定された場合、ビデオクロスフェーダ31は、静止画バッファ30から最終フレームを読み出すとともにビデオフレームバッファ29からビデオフレームを読み出して、処理はステップS155へと進む。
 これに対して、ステップS153において大きさが同じでないと判定された場合、ビデオクロスフェーダ31は、静止画バッファ30から最終フレームを読み出すとともにビデオフレームバッファ29からビデオフレームを読み出し、処理はステップS154に進む。
 ステップS154において、ビデオクロスフェーダ31は、読み出した最終フレームに対してサイズ変換処理を行って、最終フレームの大きさをビデオフレームバッファ29から読み出したビデオフレームの大きさに合わせる。すなわち、最終フレームとビデオフレームとが同じ大きさとなるようにリサイズ処理(サイズ変換処理)が行われる。
 最終フレームとビデオフレームのサイズ合わせが行われると、その後、処理はステップS155へと進む。
 ステップS154の処理が行われたか、またはステップS153において大きさが同じであると判定されると、ステップS155において、ビデオクロスフェーダ31は、最終フレームとビデオフレームに基づいて映像遷移エフェクト処理を行う。
 これにより、映像遷移エフェクトが実施され、遷移動画像のフレームが提示用のビデオフレームとして得られる。この場合、表示(視点)の切り替え前、つまり遷移前の最後のセグメントにおける時間的に最後のフレームが最終フレームとして用いられて、遷移動画像のフレーム(動画像データ)が生成されることになる。
 ビデオクロスフェーダ31は、映像遷移エフェクト処理により得られた提示用のビデオフレームをビデオレンダラ32に供給し、映像遷移エフェクト実行処理は終了する。
 例えばビデオクロスフェーダ31は、映像遷移エフェクト処理としてクロスフェード処理やワイプ処理などを行う。
 具体的には、例えば映像遷移エフェクト処理としてクロスフェード、すなわちアルファブレンディングを用いたディゾルブを行う場合、フェードイン側のフレームであるビデオフレームと、フェードアウト側のフレームである最終フレームとが所定のアルファ値によりブレンドされて提示用のビデオフレームが生成される。つまり、所定の合成比率(混合比率)によりビデオフレームと最終フレームが合成されて提示用のビデオフレームとされる。
 ここで、アルファ値はビデオフレームと最終フレームとのブレンド比率(混合比率)を示しており、例えばフェードアウト側のフレームのアルファ値をαとする。
 この場合、アルファ値αは、フェードイン側のビデオフレームの表示時刻tに応じて、つまりエフェクト期間中のどの時刻であるかに応じて100%から0%まで線形または非線形に変化する。
 例えばアルファ値αは、図8に示すようにエフェクト開始時刻tsからエフェクト期間の終了時刻ts+dまで線形に減少するようにしてもよい。なお、図8において縦軸はアルファ値α、つまりフェード比率(ブレンド比率)を示しており、横軸はビデオフレームの表示時刻t、つまり提示用のビデオフレームの表示時刻を示している。
 この例では、アルファ値αは、エフェクト開始時刻tsで100%とされ、エフェクト期間の終了時刻ts+dで0%とされ、その間の時刻でアルファ値αが単調に減少している。すなわち、表示時刻tにおけるアルファ値αは、α=100×(d-t+ts)/dにより求まる値とされる。この場合、フェードイン側のフレームのブレンド比率は、エフェクト開始時刻tsからエフェクト期間の終了時刻ts+dの間で、0%から100%まで線形に(単調に)増加していくことになる。
 その他、線形関数を複数組み合わせることで、アルファ値αが例えば図9に示すように非線形に変化するようにしてもよい。なお、図9において縦軸はアルファ値α、つまりフェード比率を示しており、横軸はビデオフレームの表示時刻t、つまり提示用のビデオフレームの表示時刻を示している。
 この例では、アルファ値αは時間とともに非線形に変化しており、アルファ値αの変化を示す傾きが時間とともに緩やかになっている。
 この例では、エフェクト開始時刻tsから時刻(ts+d/10)の間では、アルファ値αはα=100-5×100(t-ts)/dにより求まる値とされる。
 また、時刻(ts+d/10)から時刻(ts+d/2)の間では、アルファ値αはα=60-100(t-ts)/dにより求まる値とされ、時刻(ts+d/2)から終了時刻ts+dの間では、アルファ値αはα=20-100(t-ts)/5dにより求まる値とされる。
 したがって、この例では表示切り替え時、つまりエフェクト期間においては、フェードアウト側のフレーム(遷移元の画像)が急峻に消えていき、フェードイン側のフレーム(遷移先の画像)が急峻に表れることになる。換言すれば、エフェクト期間の終了側よりも開始側においてより急峻に遷移元の画像から遷移先の画像へと表示が遷移する遷移動画像の動画像データが生成されることになる。
 ビデオクロスフェーダ31における映像遷移エフェクトでは、フェードアウト側のフレームは静止画像(最終フレーム)であり、フレームが固定される。そのため、最終フレームのアルファ値αが線形に変化する場合には、フェードアウト側のフレームの絵柄が固定されているために最終フレームは見ているユーザの視覚に残りやすい。
 そこで、図9に示した例のように最終フレームが急峻に消えていくようにアルファ値αを定めることで、表示切り替え時の違和感をさらに低減させることができる。
 以上のようにビデオクロスフェーダ31は、静止画像である最終フレームと、動画像であるビデオフレームとに基づいて動画像の切り替え部分に対して映像遷移エフェクトを施す。これにより、より簡単に動画像切り替え時の違和感を低減させることができる。
 クライアント装置11では、エフェクト期間外においては、セグメントの最後のビデオフレームが最終フレームとして静止画バッファ30に保持されるようになされており、例えば図10や図11に示すように表示切り替えと映像遷移エフェクトが実施される。
 例えば図10では、最初は所定のRepresentationのセグメント#A0およびセグメント#A1のビデオセグメントデータがダウンロードされてコンテンツの再生が行われており、それらのセグメントの最後のビデオフレームが最終フレームとされる。
 ここでは、例えばセグメント#A1の最後のビデオフレームが最終フレームFL31として静止画バッファ30に保持される。
 その後、時刻t31においてAdaptation Setの遷移を含むRepresentationの切り替えが生じると、これまでとは異なるRepresentationのセグメント#B2のビデオセグメントデータがダウンロードされ、表示の切り替えと映像遷移エフェクトが行われる。
 すなわち、ここでは時刻t31をエフェクト開始時刻として期間T31がエフェクト期間とされ、そのエフェクト期間中、セグメント#B2の各時刻のビデオフレームと最終フレームFL31とが用いられて映像遷移エフェクト処理により提示用のビデオフレームが生成され、表示される。
 特に、この例ではエフェクト期間である期間T31は、セグメント長よりも短い長さの期間とされている。エフェクト期間が終了すると、その後はセグメント#B2の各時刻のビデオフレームがそのまま提示用のビデオフレームとして表示され、セグメント#B2の最後のビデオフレームが最終フレームFL32として静止画バッファ30に保持される。
 さらに時刻t32において、Adaptation Setの遷移を含むRepresentationの切り替えが生じると、これまでとは異なるRepresentationのセグメント#C3のビデオセグメントデータがダウンロードされ、表示の切り替えと映像遷移エフェクトが行われる。すなわち、時刻t32をエフェクト開始時刻とする、期間T31と同じ長さの期間T32がエフェクト期間とされ、そのエフェクト期間中、映像遷移エフェクト処理が行われる。このとき、映像遷移エフェクト時には最終フレームFL32が用いられることになる。
 また、例えば図11に示す例では、最初はセグメント#A0およびセグメント#A1のビデオセグメントデータがダウンロードされてコンテンツの再生が行われている。また、例えばセグメント#A1の最後のビデオフレームが最終フレームFL41として静止画バッファ30に保持されている。
 その後、時刻t41においてAdaptation Setの遷移を含むRepresentationの切り替えが生じると、これまでとは異なるRepresentationのセグメント#B2のビデオセグメントデータがダウンロードされ、表示の切り替えと映像遷移エフェクトが行われる。
 また、時刻t42においてもAdaptation Setの遷移を含むRepresentationの切り替えが生じており、これまでとは異なるRepresentationのセグメント#C3のビデオセグメントデータがダウンロードされ、表示の切り替えと映像遷移エフェクトが行われる。
 この例では、エフェクト期間である期間T41は、セグメント長よりも長い期間となっている。すなわち、エフェクト期間長dがセグメント長よりも長くなっている。
 そのため、ここではセグメント#B2とセグメント#C3の一部の区間とからなる期間T41において、セグメント#B2およびセグメント#C3の各時刻のビデオフレームと最終フレームFL41とが用いられて提示用のビデオフレームが生成され、表示される。
 その後、エフェクト期間が終了すると、セグメント#C3の各時刻のビデオフレームがそのまま提示用のビデオフレームとして表示され、セグメント#C3の最後のビデオフレームが最終フレームFL42として静止画バッファ30に保持される。
 図10や図11に示したようにクライアント装置11では、エフェクト期間長dはセグメント長より短くても長くてもよく、何れの場合においても滑らかに遷移元の動画像から遷移先の動画像へと表示を切り替えることができる。
 以上のようにクライアント装置11によれば、MPEG-DASHストリーミング再生等の動画像再生において、動画像再生のシーンチェンジ時に2つの動画像を同時にデコードすることなく映像遷移エフェクトを実施することができる。これにより、より少ない処理量で簡単に動画像切り替え時の違和感を低減させることができる。
 特に、映像遷移エフェクト実施期間外であれば常に各セグメントの最後のビデオフレームが静止画バッファ30に保持されるので、シーン変更検出フラグの値の信頼度によらず適切に映像遷移エフェクトを実施することができる。
〈第2の実施の形態〉
〈ビデオセグメント処理の説明〉
 ところで、以上において説明した例では、エフェクト期間以外においては、常にセグメントの最後のビデオフレームが最終フレームとして静止画バッファ30に保持されることになる。しかし、そのような場合、静止画バッファ30に保持された最終フレームのなかには映像遷移エフェクトに用いられずに破棄されるものもあり、無駄が生じてしまう。
 そこで、ビデオデコーダ27による入力と出力の遅延を利用して、不要なビデオフレームが最終フレームとして保持されないようにし、クライアント装置11における処理負荷を低減させるようにしてもよい。
 この例では、ビデオデコーダ27が固有に有する入力と出力の時間差(遅延)が利用される。すなわち、Adaptation Setの遷移を含むRepresentationの切り替え後の最初のセグメントの先頭のビデオAUがビデオデコーダ27に入力されたタイミング、またはその直後にビデオデコーダ27から出力されるビデオフレームが最終フレームとして静止画バッファ30に保持される。換言すれば、切り替え後のセグメントの先頭のビデオAUがビデオデコーダ27に入力された後、最初にビデオデコーダ27から出力されたビデオフレームが切り替え前のセグメントの最終フレームとされる。
 ビデオデコーダ27では、ビデオAUが入力された直後に、そのビデオAUに対応するビデオフレームが出力されるのではなく、ビデオAUが入力された後、いくつかの他のビデオAUが入力されてから対応するビデオフレームが出力される。つまり、入力から出力までの間に数フレーム分の遅延が生じる。
 具体例として、例えば1フレーム目のビデオAUが入力されてデコードが開始された後、2フレーム目と3フレーム目のビデオAUも入力されてデコードが継続して行われ、4フレーム目のビデオAUが入力されたタイミングで1フレーム目のビデオフレームがビデオデコーダ27から出力される。
 このようなビデオデコーダ27の処理遅延は、遅延するビデオフレーム数こそビデオデコーダ27の実装依存により異なるが、MPEGビデオ符号化のBフレームおよびPフレームをリオーダリングすることにより発生するという符号化方式に由来し、理論上必ず発生するものである。
 一般的に再生装置であるクライアント装置11では、自身に搭載されているビデオデコーダ27で生じる遅延時間を把握すること、つまり何フレーム分の遅延が生じるかは予め把握することが容易である。
 そこで、例えばシーン変更(シーンチェンジ)、つまりAdaptation Setの遷移を含むRepresentationの切り替えが発生した直後のセグメントに含まれる、先頭から数えてビデオデコーダ27の遅延分だけ後のフレームのビデオAUがビデオデコーダ27に入力されたタイミングで、ビデオデコーダ27から出力されるビデオフレームが最終フレームとされるようにすればよい。換言すれば、切り替えが発生した直後のセグメントの予め定められたフレームのビデオAUがビデオデコーダ27に入力された後、最初にビデオデコーダ27から出力されるビデオフレームが静止画バッファ30に保持される。
 以下では、例えばシーン変更直後のセグメントの先頭フレームのビデオAUがビデオデコーダ27に入力されたタイミングで、ビデオデコーダ27からはその直前のセグメントの時間的に最後のビデオフレームが出力され、そのビデオフレームが最終フレームとされるものとして説明を続ける。すなわち、ここではビデオデコーダ27で生じる遅延が1フレーム分の時間であるものとして説明を続ける。
 このようにビデオデコーダ27で生じる処理の遅延が利用されて最終フレームが保持される場合、クライアント装置11では図3を参照して説明したストリーミング再生処理が行われる。そして、そのストリーミング再生処理におけるステップS17では、図4を参照して説明したビデオセグメントダウンロード処理が行われる。
 但し、ビデオセグメントダウンロード処理のステップS56では、図5を参照して説明したビデオセグメント処理ではなく、図12に示すビデオセグメント処理が行われる。
 以下、図12のフローチャートを参照して、図4のステップS56の処理に対応する、クライアント装置11によるビデオセグメント処理について説明する。なお、ステップS181およびステップS182の処理は、図5のステップS81およびステップS82の処理と同様であるので、その説明は省略する。
 ステップS183において、クライアント装置11は、ビデオデコード処理を行ってビデオAUバッファ26に保持されている処理対象のビデオAUをデコードする。なお、ビデオデコード処理の詳細は後述する。
 ステップS184において、MP4パーサ25はセグメント終端に到達したか否かを判定する。例えばステップS184では図5のステップS87と同様の処理が行われる。
 ステップS184において、まだセグメント終端に到達していないと判定された場合、ステップS181で読み出されたビデオセグメントデータのデコードが終了していないので、処理はステップS182に戻り、上述した処理が繰り返し行われる。
 これに対して、ステップS184においてセグメント終端に到達したと判定された場合、ステップS185において、MP4パーサ25はビデオトラックバッファ24に、ステップS181で読み出したビデオセグメントデータの次のビデオセグメントデータがあるか否かを判定する。
 ステップS185において、まだ次のビデオセグメントデータがあると判定された場合、処理はステップS181に戻り、上述した処理が繰り返し行われる。
 これに対して、ステップS185において次のビデオセグメントデータがないと判定された場合、ビデオセグメント処理は終了する。
 以上のようにしてクライアント装置11は、逐次、ビデオセグメントデータやビデオAUを読み出してデコードを行う。
〈ビデオデコード処理の説明〉
 さらに、図13のフローチャートを参照して、図12のステップS183の処理に対応し、クライアント装置11により行われるビデオデコード処理について説明する。
 なお、ステップS211乃至ステップS213の処理は図6のステップS121乃至ステップS123の処理と同様であるので、その説明は適宜省略する。
 ステップS213ではエラーが発生したと判定された場合にはビデオデコード処理は終了する。また、ステップS213においてエラーが発生していないと判定された場合、処理はステップS214へと進む。
 ステップS214において、ビデオデコーダ27はステップS211でデコードのために読み込んだビデオAU、つまりビデオデコーダ27に入力されたビデオAUがセグメントの先頭のビデオAUであり、かつ制御部22に保持されているシーン変更検出フラグの値が1であるか否かを判定する。
 ステップS214において先頭のビデオAUでないか、またはシーン変更検出フラグの値が1でないと判定された場合、最終フレームの保持タイミングではないので、処理はステップS218へと進む。
 一方、ステップS214において先頭のビデオAUであり、かつシーン変更検出フラグの値が1であると判定された場合、ステップS215においてビデオデコーダ27はエフェクト期間中であるか否かを判定する。
 例えばステップS215では、ビデオデコーダ27に入力されたビデオAUの表示時刻tと、制御部22に保持されているエフェクト開始時刻tsおよびエフェクト期間長dとに基づいて、図5のステップS84における場合と同様にしてエフェクト期間中であるかの判定が行われる。
 ステップS215においてエフェクト期間中であると判定された場合、最終フレームの保持は必要ないので、処理はステップS218へと進む。
 これに対して、ステップS215においてエフェクト期間中でないと判定された場合、ステップS216において、ビデオデコーダ27はステップS211で読み出したビデオAUの表示時刻t、すなわちCTSの値をエフェクト開始時刻tsとし、制御部22に供給する。
 ステップS217において、ビデオデコーダ27は、ステップS211でビデオAUが入力された後、最初に出力するビデオフレームを最終フレームとしてスイッチ28を介して静止画バッファ30に供給し、保持させる。
 この場合、ビデオデコーダ27に入力されるビデオAUはセグメントの先頭のビデオAUであるから、その入力後、最初に出力されるビデオフレームは、直前のセグメントの時間的に最後のフレームとなっている。
 しかもエフェクト期間外であり、かつシーン変更直前のセグメントの最後のビデオフレームのみが最終フレームとして保持されるので、不要な最終フレームを保持する必要がなくなり、処理量等の負荷を低減させることができる。
 このようにして最終フレームが保持されると、その後、処理はステップS218へと進み、ステップS218乃至ステップS220の処理が行われてビデオデコード処理は終了する。なお、これらのステップS218乃至ステップS220の処理は、図6のステップS124乃至ステップS126の処理と同様であるので、その説明は省略する。
 以上のようにしてクライアント装置11は、ビデオデコーダ27の遅延を考慮して最終フレームの静止画バッファ30への供給を行う。これにより、最終フレームを用いて、より簡単に、すなわちより少ない処理量で映像遷移エフェクトを実施し、表示の切り替え時における違和感を低減させることができる。
 以上において説明した第2の実施の形態においては、クライアント装置11では、映像遷移エフェクトに必要となる最終フレームのみが保持される。そして、例えば図14や図15に示すように表示切り替えと映像遷移エフェクトが実施される。なお、図14および図15において図10および図11における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
 例えば図14では、セグメント#A0およびセグメント#A1のビデオセグメントデータがダウンロードされてコンテンツの再生が行われる。
 この場合、シーン変更がない、つまりシーン変更検出フラグの値が0のままであるセグメント#A0とセグメント#A1との境界の部分では、静止画バッファ30への最終フレームの供給は行われない。すなわち、セグメント#A0の最後のビデオフレームは静止画バッファ30では保持されない。
 一方、時刻t31においてAdaptation Setの遷移を含むRepresentationの切り替えが生じると、これまでとは異なるRepresentationのセグメント#B2のビデオセグメントデータがダウンロードされ、表示の切り替えと映像遷移エフェクトが行われる。
 このとき、セグメント#B2の先頭のビデオAUがビデオデコーダ27に入力されると、ビデオデコーダ27は、その時に出力されるセグメント#A1の最後のビデオフレームを最終フレームFL31として静止画バッファ30に保持させる。
 また、エフェクト期間とされる期間T31では、図10を参照して説明したのと同じように、セグメント#B2の各時刻のビデオフレームと最終フレームFL31とが用いられて映像遷移エフェクト処理により提示用のビデオフレームが生成され、表示される。
 そして、エフェクト期間が終了すると、その後はセグメント#B2の各時刻のビデオフレームがそのまま提示用のビデオフレームとして表示される。この例では、期間T31はセグメント長よりも短い長さの期間とされている。
 また、時刻t32においてAdaptation Setの遷移を含むRepresentationの切り替えが生じると、セグメント#C3のビデオセグメントデータがダウンロードされ、表示の切り替えと映像遷移エフェクトが行われる。
 このとき、セグメント#C3の先頭のビデオAUがビデオデコーダ27に入力されると、ビデオデコーダ27は、その時に出力されるセグメント#B2の最後のビデオフレームを最終フレームFL32として静止画バッファ30に保持させる。
 さらに、その後、セグメント#C3に続いてセグメント#C4のビデオセグメントデータがダウンロードされるが、セグメント#C3とセグメント#C4との境界部分ではシーン変更がないので、静止画バッファ30への最終フレームの供給は行われない。
 また、例えば図15に示す例では、最初はセグメント#A0およびセグメント#A1のビデオセグメントデータがダウンロードされてコンテンツの再生が行われている。
 この例でもセグメント#A0とセグメント#A1との境界部分ではシーン変更がないため、最終フレームの保持は行われない。
 その後、時刻t41においてAdaptation Setの遷移を含むRepresentationの切り替えが生じると、セグメント#B2のビデオセグメントデータがダウンロードされ、表示の切り替えと映像遷移エフェクトが行われる。
 このとき、セグメント#B2の先頭のビデオAUがビデオデコーダ27に入力されると、図14における場合と同様にしてセグメント#A1の最後のビデオフレームが最終フレームFL41として保持される。
 また、時刻t42においてRepresentationの切り替えが行われ、セグメント#C3のビデオセグメントデータがダウンロードされるが、この例ではエフェクト期間がセグメント長よりも長く、セグメント#C3の一部も期間T41に含まれている。
 そのため、セグメント#C3の一部の区間においても各時刻のビデオフレームと最終フレームFL41とが用いられて映像遷移エフェクト処理により提示用のビデオフレームが生成され、表示される。
 さらにセグメント#C3に続いてセグメント#C4のビデオセグメントデータがダウンロードされるが、セグメント#C3とセグメント#C4との境界部分ではシーン変更がないので、静止画バッファ30への最終フレームの供給は行われない。
 図14や図15に示したように第2の実施の形態においてもエフェクト期間長dはセグメント長より短くても長くてもよく、何れの場合においても滑らかに遷移元の動画像から遷移先の動画像へと表示を切り替えることができる。
〈第3の実施の形態〉
〈代表フレームについて〉
 ところで、以上においてはセグメントの時間的に最後のビデオフレームが静止画バッファ30に保持される例について説明した。しかし、セグメント内の任意のビデオフレームを代表フレームとし、その代表フレームを映像遷移エフェクトに用いるようにしてもよい。このとき、代表フレームの位置はセグメントごとに異なるようにすることができる。
 以下、セグメント内の代表フレームを映像遷移エフェクトに用いる例について説明する。
 例えば静止画像である最終フレームと、動画像のビデオフレームとを用いて映像遷移エフェクトを行う場合、ビデオセグメントの時間的に最後のビデオフレームがエフェクト期間中連続して用いられることになる。
 この場合、セグメントの最後のビデオフレームが用いられると予め定められているが、必ずしもセグメントの最後のビデオフレームが映像遷移エフェクトに用いるのに適切であるとは限らない。すなわち、セグメントの最後のビデオフレームの情緒価値が十分であるかは場合によって異なる。
 例えば典型的には、人物の表情などである。スポーツコンテンツ等では必ずしも笑顔の情緒価値が高いとは言えないが、音楽コンテンツ等ではアーティストが笑顔で歌う場面の方が、情緒価値が高いことが多い。セグメントの最後のビデオフレームを映像遷移エフェクトに用いるときには、そのビデオフレームがセグメントの終端近傍において最も情緒価値が高いフレーム、つまり最も適したフレームとなるとは限らない。
 コンテンツの一部分だけが抽出されたビデオフレームの情緒価値の重み付けを一般化された処理により行うことは難しいが、コンテンツ製作者側で評価指標を設けることは難しいことではない。
 そこで、例えばコンテンツ製作者側においてセグメント終端近傍の区間内の各ビデオフレームについて情緒価値の評価を行い、クライアント装置11においてその評価結果に基づいて、適切な代表フレームを選択するようにすることができる。
 この場合、セグメントを構成する複数のビデオフレームのうちの情緒価値の高い、そのセグメントを代表するビデオフレームが代表フレームとされることになる。
 例えば具体的な実現例として、コンテンツ製作者側において顔認識エンジンを用いた情緒価値の高いビデオフレームの選択を行い、その選択結果をセグメントデータ内に格納しておくことが考えられる。
 そのためには、まずセグメント単位でビデオフレームの情緒価値に関する情報、つまりセグメントを代表するビデオフレームに関する情報(以下、代表フレーム情報と称する)を格納する必要があるが、代表フレーム情報はMP4ファイルに格納すればよい。例えば代表フレーム情報は、図16に示すデータ構造でMP4ファイルに格納することができる。
 図16に示す例では、「 segment_count」はコンテンツのストリームに含まれるセグメント数を示しており、その「segment_count」以下の部分にはセグメント数分の情報が格納されている。
 「segment_number」はセグメントを識別するセグメント番号を示している。例えばLive-profileである場合は1セグメントが1MP4であるのでsegment_count=1としてsegment_number=0xFFFFFFFFとされるようにしてもよい。一方、On-demand profileである場合には1MP4ファイル中に複数のサブセグメントが含まれることから、一般的にはsegment_count>1となる。
 「recommended_frame_number」は、セグメントを構成するビデオフレームのうちのコンテンツ製作者側が推奨するビデオフレームのフレーム番号(以下、推奨フレーム番号とも称する)を示している。推奨フレーム番号は、セグメントを代表するビデオフレーム、つまり情緒価値が高くコンテンツ製作者側により代表フレームとして推奨されたビデオフレームを示す情報である。
 例えばビデオフレームのフレーム番号については、Live-profileである場合にはCTS順でセグメント内の先頭フレームが0番目のフレームとされ、On-demand profileである場合にはCTS順でサブセグメント内の先頭フレームが0番目のフレームとされる。推奨フレームが不要である場合には、recommended_frame_numberの値は0xFFFFFFFFとされる。
 また、代表フレーム情報には、推奨フレーム番号の他、セグメントの連続する最後の数フレームについて、ビデオフレームに対する情緒価値の評価値を示す情緒スコアが含まれている。すなわち、情緒スコアは、ビデオフレームの情緒価値を示すスコアである。換言すれば、情緒スコアは、ビデオフレームを代表フレームとして用いる場合の適切さの度合いを示すスコアである。
 以下では、情緒スコアが付加されている、つまり情緒スコアの算出が行われたビデオフレームの数を評価フレーム数とも称し、セグメントの終端を含む連続する評価フレーム数分のフレームからなる区間を評価区間とも称することとする。
 図16では「frame_count」が評価フレーム数を示しており、「score」が情緒スコアを示している。この例では、代表フレーム情報には評価フレーム数分だけ情緒スコアが格納されている。また、例えば情緒スコアは0から100までの整数値とされ、数値が大きいほど情緒スコアが高く、情緒価値が高いことを示している。
 例えばコンテンツ製作者側においては、以下のようにして代表フレーム情報が生成され、代表フレーム情報がMP4ファイルに格納される。
 すなわち、まずセグメント内の全ビデオフレームについて、ビデオフレームに対する顔認識処理等が行われてビデオフレームの情緒スコアが算出され、最も情緒スコアが高いビデオフレームのフレーム番号が特定される。そして、特定されたフレーム番号のビデオフレームが評価区間外のフレームであれば、そのフレーム番号が推奨フレーム番号とされ、特定されたフレーム番号のビデオフレームが評価区間内のフレームであれば、推奨フレーム番号は0xFFFFFFFFとされる。
 ここで、情緒スコアの算出時には、例えば顔認識処理の結果に基づいて、ビデオフレーム内の人の顔について、その顔の笑顔の度合い、つまりスマイル度が求められ、そのスマイル度が情緒スコアとされる。
 セグメントごとに推奨フレーム番号が得られると、MP4ファイルにセグメント数segment_countが格納された後、各セグメントについて、セグメント番号segment_number、推奨フレーム番号recommended_frame_number、評価フレーム数frame_count、および評価区間の各ビデオフレームの情緒スコアscoreが格納されて代表フレーム情報とされる。このようにして得られたMP4ファイルはビデオセグメントデータに格納されてクライアント装置11に送信される。
 例えば映像遷移エフェクトのために代表フレームを選択するにあたり、まばたき途中の顔などのビデオフレームが代表フレームとして選択されてしまうと映像の情緒価値や感情価値が損なわれてしまう。
 そこで、コンテンツ製作者側では、静止画バッファ30に保持する代表フレームの選択範囲として、例えばまばたき中の映像を回避するのに十分な時間を割り当てる。通常、1回のまばたきの速さは100乃至150ミリ秒程度であり、これは60Hzの映像であれば6乃至9フレーム程度の表示時間に相当する。したがって、ここでは60Hzの映像に対して、セグメントの最後の10フレームについての情緒スコアが記録されるようにされる。すなわち、この場合、評価フレーム数が10とされる。
 なお、代表フレーム情報は、MP4ファイルに限らずビデオAU等の動画像データが格納されるストリーム内であれば、どこに格納されるようにしてもよい。また、代表フレーム情報が外部からクライアント装置11に供給されるようにしてもよいし、代表フレーム情報がMPDファイル内に記述されるようにしてもよい。
 一方、クライアント装置11においては、ダウンロードされたビデオセグメントデータからMP4ファイルがMP4パーサ25により読み出される。すなわち、MP4パーサ25はビデオトラックバッファ24から読み出したMP4ファイル内の代表フレーム情報から、セグメントについての推奨フレーム番号や情緒スコアを抽出し、セグメント単位で、つまりセグメントごとに代表フレームを決定する。
 例えばMP4パーサ25は、代表フレーム情報から評価フレーム数を読み出して評価区間の長さを特定するとともに、評価区間の各ビデオフレームの情緒スコアを代表フレーム情報から読み出す。このとき、MP4パーサ25は最も情緒スコアが高いビデオフレームを特定し、その特定結果を一時的に保持しておく。
 また、MP4パーサ25は、代表フレーム情報から推奨フレーム番号を読み出して、その推奨フレーム番号が0xFFFFFFFFである場合、つまり推奨するフレームがなく推奨フレーム番号が無効な値である場合、最も情緒スコアが高いビデオフレームを代表フレームとする。
 これに対して、MP4パーサ25は推奨フレーム番号が0xFFFFFFFFでない場合、すなわち推奨フレーム番号が有効な値である場合、推奨フレーム番号のビデオフレームが、セグメントの終端(終了端)を含む連続する所定数のフレームからなる有効区間内に含まれるか否かを判定する。
 ここで、有効区間は評価区間と同じとされてもよいし、評価区間とは異なる長さの区間とされてもよい。例えば有効区間はセグメントの最後の20フレームの区間などとされる。
 MP4パーサ25は、判定処理の結果、推奨フレーム番号のビデオフレームが有効区間外のフレームであると判定されたときには、評価区間内のビデオフレームのなかの最も情緒スコアが高いビデオフレームを代表フレームとする。つまり、情緒スコアに基づいて代表フレームが決定される。
 推奨フレーム番号のビデオフレームは、コンテンツ製作者側が推奨するフレームであるが、そのビデオフレームがセグメントの終端近傍にない場合には、推奨フレーム番号のビデオフレームが代表フレームとして最適であるとはいえない。そこで、推奨フレーム番号のビデオフレームが有効区間外であるときには、最も情緒スコアが高いビデオフレームが代表フレームとされる。
 また、MP4パーサ25は、判定処理の結果、推奨フレーム番号のビデオフレームが有効区間内のフレームであると判定されたときには、その推奨フレーム番号のビデオフレームを代表フレームとする。つまり、推奨フレーム番号に基づいて代表フレームが決定される。
 代表フレーム情報がない場合や、最も高い情緒スコアが閾値以下である場合、予め設定により定められている場合などにおいては、MP4パーサ25がセグメントの時間的に最後のフレームを代表フレームとするようにしてもよい。このように、MP4パーサ25は、MP4ファイルから取得された(読み出された)代表フレーム情報に基づいて、各セグメントについて、セグメントを構成する複数のフレームのなかから代表フレームを決定する代表フレーム決定部として機能する。
 さらに、クライアント装置11の制御部22が顔認識エンジンを制御して、ビデオセグメントデータに基づいて顔認識処理を行わせ、評価区間内の各ビデオフレームの情緒スコアを算出させて、その算出結果から代表フレームを選択するようにしてもよい。
〈ビデオセグメント処理の説明〉
 以上のようにクライアント装置11がサーバから代表フレーム情報が含まれるMP4ファイルを受信(取得)する場合、クライアント装置11では図3を参照して説明したストリーミング再生処理が行われる。そして、そのストリーミング再生処理におけるステップS17では、図4を参照して説明したビデオセグメントダウンロード処理が行われる。
 但し、ビデオセグメントダウンロード処理のステップS56では、図5を参照して説明したビデオセグメント処理ではなく、図17に示すビデオセグメント処理が行われる。
 以下、図17のフローチャートを参照して、図4のステップS56の処理に対応する、クライアント装置11によるビデオセグメント処理について説明する。なお、ステップS251乃至ステップS256の処理は、図5のステップS81乃至ステップS86の処理と同様であるので、その説明は省略する。
 但し、ステップS252では、MP4パーサ25はビデオAUに対するパースとともに、ステップS251の処理で読み出したビデオセグメントデータについて、MP4ファイルから代表フレーム情報を読み出す。
 そして、MP4パーサ25は代表フレーム情報に含まれる評価フレーム数、推奨フレーム番号、情緒スコア等に基づいて、上述した処理を行って代表フレームを決定する。この代表フレームの決定結果は、MP4パーサ25から制御部22を介してビデオデコーダ27に供給される。
 また、ステップS256では、図6を参照して説明したビデオデコード処理が行われる。このとき、図6のステップS125では図7を参照して説明した映像遷移エフェクト実行処理が行われるが、この映像遷移エフェクト実行処理では、静止画バッファ30に保持されている代表フレームが静止画像として用いられて映像遷移エフェクト処理が行われる。
 ステップS257において、ビデオデコーダ27は、制御部22から供給された代表フレームの決定結果に基づいて、処理対象のビデオAUに対するデコードにより得られたビデオフレームが代表フレームであるか否かを判定する。
 ステップS257において代表フレームであると判定された場合、ステップS258においてビデオデコーダ27は、処理対象のビデオAUに対するデコードにより得られたビデオフレームを、スイッチ28を介して静止画バッファ30に供給し、代表フレームとして保持させる。
 代表フレームが保持されると、その後、処理はステップS259に進む。
 また、ステップS257において代表フレームではないと判定された場合、ステップS258の処理は行われずに、処理はステップS259へと進む。
 ステップS258の処理が行われたか、またはステップS257において代表フレームではないと判定された場合、ステップS259において、MP4パーサ25はセグメント終端に到達したか否かを判定する。
 ステップS259において、まだセグメント終端に到達していないと判定された場合、処理はステップS252に戻り、上述した処理が繰り返し行われる。
 これに対して、ステップS259においてセグメント終端に到達したと判定された場合、ステップS260において、MP4パーサ25はビデオトラックバッファ24に、ステップS251で読み出したビデオセグメントデータの次のビデオセグメントデータがあるか否かを判定する。
 ステップS260において、まだ次のビデオセグメントデータがあると判定された場合、処理はステップS251に戻り、上述した処理が繰り返し行われる。
 これに対して、ステップS260において次のビデオセグメントデータがないと判定された場合、ビデオセグメント処理は終了する。
 以上のようにしてクライアント装置11は、代表フレーム情報に基づいて代表フレームを決定し、代表フレームを静止画バッファ30に保持する。これにより、静止画バッファ30に保持されたビデオフレーム(代表フレーム)を用いて、より簡単に、すなわちより少ない処理量で映像遷移エフェクトを実施し、表示の切り替え時における違和感を低減させることができる。
 なお、以上において説明した本技術は、同一時刻を持つ異なるビデオセグメントデータを重複してダウンロードする必要がないため、MPEG-DASHストリーミング再生で通常行われる同一Adaptation Set内でのRepresentationの遷移時にも適用が可能である。
〈コンピュータの構成例〉
 ところで、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のコンピュータなどが含まれる。
 図18は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
 コンピュータにおいて、CPU(Central Processing Unit)501,ROM(Read Only Memory)502,RAM(Random Access Memory)503は、バス504により相互に接続されている。
 バス504には、さらに、入出力インターフェース505が接続されている。入出力インターフェース505には、入力部506、出力部507、記録部508、通信部509、及びドライブ510が接続されている。
 入力部506は、キーボード、マウス、マイクロホン、撮像素子などよりなる。出力部507は、ディスプレイ、スピーカなどよりなる。記録部508は、ハードディスクや不揮発性のメモリなどよりなる。通信部509は、ネットワークインターフェースなどよりなる。ドライブ510は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブル記録媒体511を駆動する。
 以上のように構成されるコンピュータでは、CPU501が、例えば、記録部508に記録されているプログラムを、入出力インターフェース505及びバス504を介して、RAM503にロードして実行することにより、上述した一連の処理が行われる。
 コンピュータ(CPU501)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブル記録媒体511に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
 コンピュータでは、プログラムは、リムーバブル記録媒体511をドライブ510に装着することにより、入出力インターフェース505を介して、記録部508にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部509で受信し、記録部508にインストールすることができる。その他、プログラムは、ROM502や記録部508に、あらかじめインストールしておくことができる。
 なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
 また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
 また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
 さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
 また、本明細書中に記載された効果はあくまで例示であって限定されるものではなく、他の効果があってもよい。
 さらに、本技術は、以下の構成とすることも可能である。
(1)
 第1の動画像から第2の動画像へと表示を切り替える場合に、前記第1の動画像を構成する所定フレームと、前記第2の動画像の動画像データとに基づいて、前記所定フレームから前記第2の動画像へと表示が遷移する遷移動画像の動画像データを生成する動画像生成部を備える
 画像処理装置。
(2)
 前記第1の動画像および前記第2の動画像の動画像データをデコードするデコーダと、
 前記デコードにより得られた前記所定フレームを保持する第1の保持部と、
 前記デコードにより得られた前記第1の動画像または前記第2の動画像のフレームを保持する第2の保持部と
 をさらに備える(1)に記載の画像処理装置。
(3)
 前記動画像生成部は、前記第1の動画像の切り替え前の時間的に最後のフレームを前記所定フレームとして用いる
 (2)に記載の画像処理装置。
(4)
 前記デコーダは、所定時間単位の前記第1の動画像について、前記遷移動画像の動画像データが生成されるエフェクト期間外における、前記所定時間単位の前記第1の動画像の最後のフレームを前記所定フレームとして前記第1の保持部に保持させる
 (3)に記載の画像処理装置。
(5)
 前記デコーダは、前記第2の動画像の予め定められたフレームが入力された後、最初に出力される前記第1の動画像のフレームを前記所定フレームとして前記第1の保持部に保持させる
 (2)に記載の画像処理装置。
(6)
 前記動画像生成部は、終了側よりも開始側においてより急峻に前記所定フレームから前記第2の動画像へと表示が遷移する前記遷移動画像の動画像データを生成する
 (1)乃至(5)の何れか一項に記載の画像処理装置。
(7)
 前記第1の動画像の情緒価値に関する情報に基づいて、前記第1の動画像を構成する複数のフレームのなかの代表フレームを決定する代表フレーム決定部をさらに備え、
 前記動画像生成部は、前記代表フレームを前記所定フレームとして用いる
 (1)または(2)に記載の画像処理装置。
(8)
 前記代表フレーム決定部は、前記情緒価値に関する情報としての前記第1の動画像のフレームの情緒価値を示すスコアに基づいて、前記代表フレームを決定する
 (7)に記載の画像処理装置。
(9)
 前記代表フレーム決定部は、前記情緒価値に関する情報としての前記第1の動画像の前記代表フレームとして推奨されるフレームを示す推奨フレーム情報に基づいて、前記代表フレームを決定する
 (7)または(8)に記載の画像処理装置。
(10)
 前記代表フレーム決定部は、
  前記第1の動画像について所定時間単位で前記代表フレームを決定し、
  前記推奨フレーム情報により示されるフレームが前記所定時間単位の前記第1の動画像の終端を含む有効期間外のフレームである場合、前記情緒価値に関する情報としての前記第1の動画像のフレームの情緒価値を示すスコアに基づいて、前記所定時間単位の前記第1の動画像の終端を含む連続するフレームからなる期間内のフレームから前記代表フレームを決定する
 (9)に記載の画像処理装置。
(11)
 前記代表フレーム決定部は、前記第1の動画像の動画像データが格納されたストリームから前記情緒価値に関する情報を取得する
 (7)乃至(10)の何れか一項に記載の画像処理装置。
(12)
 第1の動画像から第2の動画像へと表示を切り替える場合に、前記第1の動画像を構成する所定フレームと、前記第2の動画像の動画像データとに基づいて、前記所定フレームから前記第2の動画像へと表示が遷移する遷移動画像の動画像データを生成する
 ステップを含む画像処理方法。
(13)
 第1の動画像から第2の動画像へと表示を切り替える場合に、前記第1の動画像を構成する所定フレームと、前記第2の動画像の動画像データとに基づいて、前記所定フレームから前記第2の動画像へと表示が遷移する遷移動画像の動画像データを生成する
 ステップを含む処理をコンピュータに実行させるプログラム。
 11 クライアント装置, 22 制御部, 23 ダウンローダ, 24 ビデオトラックバッファ, 25 MP4パーサ, 26 ビデオAUバッファ, 27 ビデオデコーダ, 29 ビデオフレームバッファ, 30 静止画バッファ, 31 ビデオクロスフェーダ

Claims (13)

  1.  第1の動画像から第2の動画像へと表示を切り替える場合に、前記第1の動画像を構成する所定フレームと、前記第2の動画像の動画像データとに基づいて、前記所定フレームから前記第2の動画像へと表示が遷移する遷移動画像の動画像データを生成する動画像生成部を備える
     画像処理装置。
  2.  前記第1の動画像および前記第2の動画像の動画像データをデコードするデコーダと、
     前記デコードにより得られた前記所定フレームを保持する第1の保持部と、
     前記デコードにより得られた前記第1の動画像または前記第2の動画像のフレームを保持する第2の保持部と
     をさらに備える請求項1に記載の画像処理装置。
  3.  前記動画像生成部は、前記第1の動画像の切り替え前の時間的に最後のフレームを前記所定フレームとして用いる
     請求項2に記載の画像処理装置。
  4.  前記デコーダは、所定時間単位の前記第1の動画像について、前記遷移動画像の動画像データが生成されるエフェクト期間外における、前記所定時間単位の前記第1の動画像の最後のフレームを前記所定フレームとして前記第1の保持部に保持させる
     請求項3に記載の画像処理装置。
  5.  前記デコーダは、前記第2の動画像の予め定められたフレームが入力された後、最初に出力される前記第1の動画像のフレームを前記所定フレームとして前記第1の保持部に保持させる
     請求項2に記載の画像処理装置。
  6.  前記動画像生成部は、終了側よりも開始側においてより急峻に前記所定フレームから前記第2の動画像へと表示が遷移する前記遷移動画像の動画像データを生成する
     請求項1に記載の画像処理装置。
  7.  前記第1の動画像の情緒価値に関する情報に基づいて、前記第1の動画像を構成する複数のフレームのなかの代表フレームを決定する代表フレーム決定部をさらに備え、
     前記動画像生成部は、前記代表フレームを前記所定フレームとして用いる
     請求項1に記載の画像処理装置。
  8.  前記代表フレーム決定部は、前記情緒価値に関する情報としての前記第1の動画像のフレームの情緒価値を示すスコアに基づいて、前記代表フレームを決定する
     請求項7に記載の画像処理装置。
  9.  前記代表フレーム決定部は、前記情緒価値に関する情報としての前記第1の動画像の前記代表フレームとして推奨されるフレームを示す推奨フレーム情報に基づいて、前記代表フレームを決定する
     請求項7に記載の画像処理装置。
  10.  前記代表フレーム決定部は、
      前記第1の動画像について所定時間単位で前記代表フレームを決定し、
      前記推奨フレーム情報により示されるフレームが前記所定時間単位の前記第1の動画像の終端を含む有効期間外のフレームである場合、前記情緒価値に関する情報としての前記第1の動画像のフレームの情緒価値を示すスコアに基づいて、前記所定時間単位の前記第1の動画像の終端を含む連続するフレームからなる期間内のフレームから前記代表フレームを決定する
     請求項9に記載の画像処理装置。
  11.  前記代表フレーム決定部は、前記第1の動画像の動画像データが格納されたストリームから前記情緒価値に関する情報を取得する
     請求項7に記載の画像処理装置。
  12.  第1の動画像から第2の動画像へと表示を切り替える場合に、前記第1の動画像を構成する所定フレームと、前記第2の動画像の動画像データとに基づいて、前記所定フレームから前記第2の動画像へと表示が遷移する遷移動画像の動画像データを生成する
     ステップを含む画像処理方法。
  13.  第1の動画像から第2の動画像へと表示を切り替える場合に、前記第1の動画像を構成する所定フレームと、前記第2の動画像の動画像データとに基づいて、前記所定フレームから前記第2の動画像へと表示が遷移する遷移動画像の動画像データを生成する
     ステップを含む処理をコンピュータに実行させるプログラム。
PCT/JP2018/001094 2017-01-30 2018-01-17 画像処理装置および方法、並びにプログラム WO2018139284A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/470,844 US20190327425A1 (en) 2017-01-30 2018-01-17 Image processing device, method and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-014120 2017-01-30
JP2017014120 2017-01-30

Publications (1)

Publication Number Publication Date
WO2018139284A1 true WO2018139284A1 (ja) 2018-08-02

Family

ID=62979013

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/001094 WO2018139284A1 (ja) 2017-01-30 2018-01-17 画像処理装置および方法、並びにプログラム

Country Status (2)

Country Link
US (1) US20190327425A1 (ja)
WO (1) WO2018139284A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7458848B2 (ja) 2020-03-24 2024-04-01 日本放送協会 ユーザ端末及びプログラム

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3410728A1 (en) * 2017-05-30 2018-12-05 Vestel Elektronik Sanayi ve Ticaret A.S. Methods and apparatus for streaming data
WO2019195547A1 (en) * 2018-04-05 2019-10-10 Vid Scale, Inc. Viewpoint metadata for omnidirectional video
JP6772218B2 (ja) * 2018-06-29 2020-10-21 Line株式会社 プログラム、情報処理方法、端末
US11716474B2 (en) * 2020-01-02 2023-08-01 Samsung Electronics Co., Ltd. Storage of EVC decoder configuration information

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010039724A (ja) * 2008-08-04 2010-02-18 Sony Corp 画像処理装置、撮像装置、画像処理方法およびプログラム
JP2010171787A (ja) * 2009-01-23 2010-08-05 Alpine Electronics Inc ディジタル放送受信装置およびディジタル放送受信装置の番組切り替え方法
JP2015518350A (ja) * 2012-04-24 2015-06-25 ヴィド スケール インコーポレイテッド Mpeg/3gpp−dashにおける滑らかなストリーム切り換えのための方法および装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010039724A (ja) * 2008-08-04 2010-02-18 Sony Corp 画像処理装置、撮像装置、画像処理方法およびプログラム
JP2010171787A (ja) * 2009-01-23 2010-08-05 Alpine Electronics Inc ディジタル放送受信装置およびディジタル放送受信装置の番組切り替え方法
JP2015518350A (ja) * 2012-04-24 2015-06-25 ヴィド スケール インコーポレイテッド Mpeg/3gpp−dashにおける滑らかなストリーム切り換えのための方法および装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7458848B2 (ja) 2020-03-24 2024-04-01 日本放送協会 ユーザ端末及びプログラム

Also Published As

Publication number Publication date
US20190327425A1 (en) 2019-10-24

Similar Documents

Publication Publication Date Title
WO2018139284A1 (ja) 画像処理装置および方法、並びにプログラム
US20210183408A1 (en) Gapless video looping
US12028564B2 (en) Methods, systems, processors and computer code for providing video clips
JP2021061628A (ja) 情報処理装置および情報処理方法
EP1929407A2 (en) Method and system for online remixing of digital multimedia
WO2007084871A2 (en) Method and system for combining edit information with media content
US20150067721A1 (en) Method and system for transmitting videos to mobile phones
CN111512634A (zh) 信息处理装置、信息处理方法和程序
CN113490047A (zh) 一种Android音视频播放方法
US20190387271A1 (en) Image processing apparatus, image processing method, and program
EP1929405A2 (en) Method and system for recording edits to media content
WO2018142945A1 (ja) 情報処理装置および方法
US20240086451A1 (en) Information processing apparatus, reception apparatus, information processing method, and storage medium
JP2015510727A (ja) メディアファイル用のファイルデータを提供するための方法およびシステム
WO2018139285A1 (ja) 画像処理装置および方法、並びにプログラム
US20240314396A1 (en) Methods for generating videos, and related systems and servers
CN117812289A (zh) 一种音视频转码方法、装置及电子设备
CN116723356A (zh) 终端多媒体数据处理方法、装置、计算机设备、存储介质
JP2021166363A (ja) 映像再生装置および映像再生方法
CN118741223A (zh) 游戏视频处理方法、视频处理方法、计算设备及存储介质
JP2012034210A (ja) 映像音声記録再生装置、および映像音声記録再生方法
JP2008141638A (ja) 映像信号再生装置
JP2008118222A (ja) 再生装置および再生方法
JP2010245754A (ja) 通信ネットワークシステム、コンテンツ再生方法、及びサーバ

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18745404

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18745404

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP