US20020076194A1 - Methods of recording/reproducing moving image data and the devices using the methods - Google Patents
Methods of recording/reproducing moving image data and the devices using the methods Download PDFInfo
- Publication number
- US20020076194A1 US20020076194A1 US09/212,309 US21230998A US2002076194A1 US 20020076194 A1 US20020076194 A1 US 20020076194A1 US 21230998 A US21230998 A US 21230998A US 2002076194 A1 US2002076194 A1 US 2002076194A1
- Authority
- US
- United States
- Prior art keywords
- moving image
- coded data
- image data
- resolution level
- data
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000004590 computer program Methods 0.000 claims abstract description 28
- 230000001360 synchronised effect Effects 0.000 claims 4
- 238000004891 communication Methods 0.000 description 16
- 239000000872 buffer Substances 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000007796 conventional method Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 230000010365 information processing Effects 0.000 description 4
- 239000000463 material Substances 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000000750 progressive effect Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
- H04N9/80—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
- H04N9/804—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
- H04N9/8042—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/39—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability involving multiple description coding [MDC], i.e. with separate layers being structured as independently decodable descriptions of input picture data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23106—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234327—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into layers, e.g. base layer and one or more enhancement layers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/432—Content retrieval operation from a local storage medium, e.g. hard-disk
- H04N21/4325—Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8166—Monomedia components thereof involving executable data, e.g. software
- H04N21/8193—Monomedia components thereof involving executable data, e.g. software dedicated tools, e.g. video decoder software or IPMP tool
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/2662—Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
Definitions
- the present invention relates to a method, apparatus and computer program for recording/reproducing moving image data. More particularly, the present invention relates to a method, apparatus and computer program for use in transferring the moving image data through a communication media, storing the moving image data in a storage media, and reading the moving image data.
- a typical coding system is, for example, Moving Pictures Expect Group (MPEG) coding system as illustrated in FIG. 8.
- MPEG Moving Pictures Expect Group
- a coding system for reproducing a still image is, for example, a progressive reproduction system.
- the image first appears on a display screen as an unclear image having low definition. Thereafter, the definition of the image gradually increases until a clear image of a specific definition appears.
- a conventional technique for handling moving image data is disclosed, for example, in the Japanese Published Unexamined Patent Application No. Hei 9-98430.
- the following is a brief description of technique wherein the conventional moving image data of a bitmap format is coded by the MPEG coding system and the result is stored in the storage media.
- This technique sets as an index information identifying particular packets each including an I-picture according to the MPEG coding system an I-picture is inter-frame coded data independent from preceding and succeeding the frame.
- the technique selectively reads and reproduces each packet including an I-picture during a special mode reproduction such as high-speed reproduction.
- the technique intends to reduce the burden placed on a decoder. Although the technique is able to reduce the amount of data to be read out during the special mode reproduction, it is not able to perform the reproduction under normal reproduction speed.
- Another conventional technique is disclosed, for example, in Japanese Published Unexamined Patent Application No. Hei 5-227515.
- This conventional technique makes use of hierarchical coding and monolayer coding in accordance with resolutions of the encoder on the transmitting side and the decoder on the receiving side.
- This technique is intended to achieve an improvement in the coding rate.
- this technique also needs to receive all of the moving image data in order to view the moving image from the start until the end.
- the invention provides that on the transmitting side, moving image data is encoded in accordance with a plurality of resolution levels different from each other, and output to communication media in time series by each coded data of each resolution level.
- the moving image data is reproduced by selecting coded data of an arbitrary resolution level to decode, and reproducing the selected coded data at the arbitrary resolution level from the start until the end.
- the invention is able to reproduce the moving image data within an arbitrary range from the start until the end, with less data compared with the conventional technique, and is able to display the moving image data more clearly in accordance with the increase of received data.
- the present invention is able to reproduce the moving image progressively.
- the invention makes use of not only the inter-resolution compression, but also the inter-frame compression to make the stored data even less.
- FIG. 1 is a conceptual diagram illustrating an example of a data format used in the present invention
- FIG. 2 is a conceptual diagram illustrating an example of the size of one pixel in each coding level according to the present invention
- FIG. 3 is a diagram illustrating the coding of moving image data at plural coding levels according to the present invention.
- FIG. 4 is a flowchart illustrating the coding process of the of the present invention.
- FIGS. 5A and B combined form a flowchart illustrating the decoding process of the present invention
- FIG. 6 is a diagram illustrating an example of a moving image recording and reproducing device according to the present invention.
- FIG. 7 is a diagram illustrating an example of a communication network including a plurality of moving image recording and reproducing devices according to the present invention.
- FIG. 8 is a conceptual diagram illustrating an example of the conventional MPEG format for moving image data.
- moving image data can be provided, for example, as data having a length of 30 seconds, wherein the data is formed into frames having a frequency of 30 frames per second and each frame has a screen size of 352 ⁇ 240 pixels.
- the MPEG coding system compresses the data of each frame, as illustrated in FIG. 8, and stores them from 1st through 900th frames by means of the inter-frame compression.
- a bit stream of moving image data (coded data) having a plurality of sub-bit streams corresponding to a plurality of resolution levels is generated as illustrated in FIG. 1.
- the plural resolution levels allows for the progressive reproduction of moving image.
- these three levels of resolutions could, for example be 16 ⁇ 16 pixels, 4 ⁇ 4 pixels (coding level B), and 1 ⁇ 1 pixel (coding level C).
- coding level A is the lowest resolution
- coding level C is the highest resolution level.
- the present invention will be described using the three resolutions levels described above. However, any number of resolution levels can be used.
- the bit stream of moving image data recorded and reproduced by the present invention has a format, for example, including a system header 1 at the top, a bit stream 2 of coding level A, a bit stream 3 of coding level B, and a bit stream 4 of coding level C in series. Further, a level header 2 a, level header 3 a, and level header 4 a are added to each of the leading parts of the bit streams 2 to 4 of coding levels A to C.
- the system header 1 are stored information concerning the moving data, for example, the size of the total stream and the stream type to indicate whether the data is video data or audio data.
- the data is a video stream information of resolution level, bit rate, picture rate, aspect ratio, etc. are provided.
- the data is an audio stream information of sampling frequency, bit rate, mode (stereo/monaural), etc., is provided.
- the individual headers 2 a to 4 a are written unique data to clearly demonstrate to the reproduction device that the coding level is changed at the respective level headers.
- the audio data can be mixed into the first bit stream 2 of the coding level A.
- the coding is performed under the resolution of 16 ⁇ 16 pixels per unit.
- the coding is performed under the resolution of 4 ⁇ 4 pixels per unit. Coding of data for coding level B may require, for example, differential data (relating to brightness, chrominance, etc.) from the preceding coded data of coding level A.
- the coding level C the coding is performed under the resolution of 1 ⁇ 1 pixel per unit.
- the coding of data for coding level C may require, for example, differential data (relating to brightness, chrominance, etc.) from the preceding coded data of the coding level B.
- inter-resolution compression can be carried out between the data of the coding levels of the plural different resolutions.
- the data size is about 47 Kbytes when the file size extends for 60 seconds.
- the data size is about 750 Kbytes when the file size extends for 60 seconds.
- the data size is 12 Mbytes.
- the image data of a rectangular screen having an arbitrary size can be coded by setting the coding level.
- the coding level can be set to any of the three levels, 16 ⁇ 16 (coding level A), 4 ⁇ 4 (coding level B), 1 ⁇ 1 (coding level C), arbitrarily in accordance with the resolution of moving image data as a material.
- FIG. 3 The overall construction of an exemplary coding apparatus included in a server of the present invention in which the coding of a plurality of resolution levels is performed is illustrated in FIG. 3.
- the steps performed by the server through use of the coding apparatus shown in FIG. 3 is illustrated by the flowchart in FIG. 4.
- the steps of the flowchart illustrated in FIG. 4 can, for example, correspond to one or more instructions of a computer program.
- the computer program can, for example, be in the computer programming language C++.
- the computer program can, for example, be stored on a storage medium, such as a CD ROM, floppy disk, storage device, etc., and can be distributed by a network connected to server and client apparatus.
- the computer program can be provided as part of a total operating system including a computer program that can be provided to client apparatus as needed.
- the computer program can be executed by the server or by a Personal Computer (PC) that uploads results of execution to the server.
- PC Personal Computer
- the coding apparatus includes plural coding means 10 - 1 to 10 -n (n: natural number more than 2), each of which executes a coding according to different resolutions of n-levels, and buffers 11 - 1 to 11 -n correspondingly connected to the plural coding means 10 - 1 to 10 -n.
- Each coding means 10 -n and its respective buffer 11 -n is connected in series in a line and each line is connected in parallel with other lines each have connected in series coding means 10 -n and its respective buffer 11 -n.
- material data 12 for a frame is input to each line (step 101 ).
- the coding according to each resolution level of each line for the frame is executed in parallel (step 102 ) in coding means 10 -n.
- the result is stored in the corresponding buffer 11 -n (step 103 ).
- data of a lower resolution level stored in a lower resolution level buffer 11 -n is obtained to provide differential data to the coding for a higher resolution level.
- a bit stream is generated based on the differential data and the coded data stored in buffer 11 -n of the resolution level of concern (step 104 ).
- steps 101 - 105 are repeated (step 105 ). If all of the frames have been coded, the coded data are read out from the work file in a particular order, for example, from the lower resolution level toward the higher resolution level forming a bit stream having plural sub-bit streams. The header information described above is added to the bit stream, and the bit stream is output to an arbitrary media (step 106 ). Thereafter, the work file is deleted (step 107 ).
- the bit stream being output has a plurality of sub-bit streams 2 - 4 in the format as described above and illustrated in FIG. 1.
- the steps performed by the client to reproduce the moving image data are illustrated in the flowchart in FIGS. 5A and B.
- the client reproduces the moving image data in various modes by the plural resolution levels.
- the steps of the flowchart illustrated in FIGS. 5A and 5B can, for example, correspond to one or more instructions of a computer program.
- the computer program can, for example, be in the computer programming language C++.
- the computer program can, for example, be stored on a storage medium such as a CD ROM, floppy disk, storage device, etc., and can be distributed by a network connected to server and client apparatus.
- the computer program can be provided as part of a total operating system or as a plug-in program to an internet browser such as for example Internet Explorer (registered trademark of Microsoft Corporation) or Netscape Navigator (registered trademark of Netscape Corporation).
- the client apparatus can, for example, be a PC or a stand alone reproduction device which plays movies, music videos, etc.
- the computer program to be executed by the client apparatus can, for example, be transmitted to the client apparatus by the server apparatus via the network when moving image data is requested by the client apparatus.
- bit streams 2 - 4 including the coded data A-C having different resolution levels, are input to the client apparatus in a particular order, for example, from a lower resolution level toward higher resolution levels.
- the data being input extends from less data toward more data.
- bit stream 2 of the coding level A (16 ⁇ 16 pixels) is processed for reproduction, an image having rough and vague definition (lower resolution level) as a whole is reproduced. Moving image data of coding level A can be reproduced easily and swiftly in a shorter period of time after receiving the data due to the low amount of data (coding level A produces data of 1/256 the data of coding level C).
- the moving image data can still be reproduced in a shorter period of time from the start until the end of such data.
- bit streams 3 to 4 of a coding level B (4 ⁇ 4 pixels) and a coding C (1 ⁇ 1 pixels) are processed for reproduction, images having higher definition (high resolution level) as a whole are reproduced.
- Moving image data of coding levels B and C may take longer to reproduce, however, since they are accompanied with an increase of reception data quantity.
- step 201 when the moving image data of the format illustrated in FIG. 1 is received, a determination is made as to whether decoding is for simplified reproduction with less data (step 201 ).
- Simplified reproduction can, for example, cause playback of moving image data at the lowest resolution level from the server.
- playback other than simplified reproduction can, for example, cause playback of moving image data at a higher resolution level from the storage (hard disk) of the client apparatus.
- Step 202 a determination is made as to whether the reproducing level is specified. If the reproducing level is specified a determination is made whether to reproduce coding level A (step 203 ). Steps 202 and 203 are tests to determine whether a particular resolution level has been specified and if specified is the level specified coding level A. Coding level A is the resolution level specified when simplified reproduction has been selected. If coding level A is specified, then the bit stream 2 of the coding level A having the least data, is completely received (step 204 ), and reproduction thereof is started. First a frame number n is initialized to 1 (step 205 ), and the operation of decoding the nth frame is performed (step 206 ).
- the reproduced data is output (step 207 ), and the frame number n is incremented (step 208 ).
- step 210 If the decoding is not for the simplified reproduction at step 201 , then clear, full reproduction is conducted.
- the reproduction is started after all of the bit streams 2 to 4 of the coding levels A to C are received (step 210 ).
- the frame number n is initialized to 1 (step 211 ), and data of the nth frame is read out in parallel from each of the coded data of the coding levels A to C and decoded (step 212 ).
- the decoded results are synthesized (step 213 ), and reproduced data for a normal clear image is output (step 214 ).
- the frame number n is incremented (step 215 ), and a determination is made as to whether all of the frames have been decoded (step 216 ). If all of the frames have not been decoded, then steps 212 - 216 are repeated.
- step 217 a determination is made as to whether the received data is for coding level C (step 217 ). If the data of coding level C has been received, then steps 211 - 216 are performed. If the data of coding level C has not been received, then a determination is made as to whether the received data is of coding level B (step 218 ). If the data of coding level B has not been received, then steps 204 - 209 are performed. If the data of the coding level B has been received, then the data of coding levels A and B are received (step 220 ).
- the frame number n is initialized to 1 (step 221 ) and the operation of reading out in parallel from each of the coded data of the coding levels A and B and decoding such data is performed (step 222 ).
- the results of the decoding are synthesized (step 223 ) and reproduced data corresponding to the decoded results is output (step 224 ).
- the frame number n is incremented (step 225 ) and a determination is made whether data of all of the frames have been decoded (step 226 ). If the data of all of the frames have not been decoded, then steps 222 - 226 are repeated.
- steps 217 and 218 serve to determine the amount of data that has been received, when simplified reproduction has been selected, so as to cause the appropriate steps to be performed since some amount of the data may have already been received. Accordingly, if only data of the coding level A has been received, then steps 204 - 209 are performed. If data of the coding levels B and A have been received, then the steps 220 - 226 are performed. If data of coding levels A, B and C have been received, then the steps 211 - 216 are performed.
- Steps 202 and 203 operate together along with a step 219 to perform the appropriate steps if a particular reproducing level is been specified. For example, if a reproducing level is specified then step 203 determines whether the reproducing level specified is coding level A. If coding level A has been specified, then steps 204 - 209 are performed. Step 219 determines whether the reproducing level specified is coding level B. If coding level B is specified then steps 220 - 226 are performed. If according to step 219 coding level B is not specified, then coding level C has been specified and steps 210 - 216 are performed.
- FIGS. 4 and 5A and B in which coding and decoding of moving image data according to a plurality of the resolution levels are shown, can be applied to an information processing network 50 as illustrated in FIG. 7 in which multimedia data are distributed.
- the information processing network 50 illustrated in FIG. 7 includes, for example, communication media 51 such as the Internet, Intranet, LANS, etc., a multimedia server 52 which distributes moving image data through the communication media 51 , and a plurality of multimedia client devices 53 that utilize the distributed data.
- the structure of each of the multimedia server 52 and each multimedia client device 53 is illustrated in FIG. 6.
- the multimedia server 52 includes a system bus 61 , a microprocessor 62 , a main storage unit 63 that stores various programs and data such as an operating system 63 a, which, when executed, controls operation of the microprocessor 62 and the various connected units described later, a multilevel coding program 63 b, which performs the coding process according to a plurality of resolution levels as illustrated in FIG. 4, and a buffer 63 c for use as work area.
- the multilevel coding program 63 b can, for example, include instructions corresponding to the steps of the flowchart illustrated in FIG. 4.
- the multimedia server 52 also includes an operation interface (I/F) unit 64 , a moving image data output I/F unit 65 , which is connected to a display 65 a for outputting multimedia data such as graphic images and sounds, and a speaker 65 b, etc., a network I/F unit 66 for connecting the server to the communication media 51 , an external storage unit 67 that stores desired data and other data as needed in a multilevel coding moving image data file 67 a and a work file 67 b, and a moving image data input I/F unit 68 to which a video source equipment such as an analog video recording/reproducing device, a camera, analog moving image data reproduction device, etc., are connected to input an moving image data as material data.
- a video source equipment such as an analog video recording/reproducing device, a camera, analog moving image data reproduction device, etc.
- the multimedia client device 53 is constructed the same as, for example, the multimedia server 52 described above and illustrated in FIG. 7 except that the moving image data input I/F unit 68 is not included.
- the main storage unit 63 stores, instead of the multilevel coding program 63 b, a decoding program 63 d for decoding/reproducing the multilevel coded data generated by the multilevel coding program 63 b, as illustrated in the flowchart of FIGS. 5A and B.
- the decoding program 63 d can, for example, include instructions corresponding to the steps of the flowchart illustrated in FIGS. 5A and B.
- the multimedia server 52 inputs moving image data as material data from a video source equipment through the moving image data input I/F unit 68 .
- the multimedia server 52 causes the microprocessor 62 to run the multilevel coding program 63 b using the resources such as the buffer 63 c in the main storage unit 63 and the work file 67 b in the external storage unit 67 , to execute instructions corresponding to the steps of the flowchart illustrated in FIG. 4.
- Execution of the multilevel coding program generates a bit stream of the format illustrated in FIG. 1.
- the bit stream is stored in the multilevel coding moving image data file 67 a.
- the multilevel coding moving image data file 67 a may be a database including plural bit streams of the format illustrated in FIG. 1 that are generated in correspondence with each of plural kinds of moving image data.
- the multimedia server 52 reads out the corresponding bit stream data from the multilevel coding moving image data file 67 a, and sends the data to the multimedia client device 53 through the network I/F unit 66 and the communication media 51 .
- the multimedia client device 53 on the receiving side is able to execute the simplified reproduction of the moving image data from the start until the end in a shorter period of time after receipt of the data of bit stream 2 as illustrated in FIG. 1.
- the data of bit stream 2 is less than that data of the other bit streams 3 and 4 and it comes at the beginning of the bit stream having the format illustrated in FIG. 1.
- steps 204 - 209 of the flowchart illustrated in FIGS. 5A and B are performed. Therefore, even when the communication media 51 has a narrow band and/or the multimedia client device 53 has a comparably low processing capacity, a swift and simplified reproduction of moving image data can be conducted.
- the multimedia client device 53 using the conventional technique all of the moving image data must be received before the moving image data can be reproduced.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
Description
- The present invention relates to a method, apparatus and computer program for recording/reproducing moving image data. More particularly, the present invention relates to a method, apparatus and computer program for use in transferring the moving image data through a communication media, storing the moving image data in a storage media, and reading the moving image data.
- As a result of technological advancements and widespread use of information networks and information processing devices, the amount of moving image data being transferred through the information networks has been increasing. Since a moving image carries a huge mount of data compared with a still image, generally the moving image data is compressed by a coding system before being transferred. A typical coding system is, for example, Moving Pictures Expect Group (MPEG) coding system as illustrated in FIG. 8.
- A coding system for reproducing a still image, is, for example, a progressive reproduction system. When the still image reproduced by this system is displayed through a browser of the Internet, the image first appears on a display screen as an unclear image having low definition. Thereafter, the definition of the image gradually increases until a clear image of a specific definition appears.
- When moving image data on a storage media is received through a communication media such as the Internet and is reproduced, the data can only be reproduced up to the stage in which the data has been downloaded. This is so even if MPEG or other coding systems are used. Thus, when moving image data is received or reproduced through a low capacity communication media, viewing the moving image from the start until the end takes a long time since a huge amount of data must be first received then reproduced. Therefore, receiving moving image data in low capacity communication media can be inconvenient.
- For example, if a user receives a moving image data for trial purposes, the user is required to view the content of the moving image data from the start until the end, and then judge its usefulness. In order to do this, the user must receive and store the huge amount of data corresponding to the moving image. This huge amount of data must be stored in the storage media of the user's apparatus regardless of whether all of the data is useful or not. Accordingly, there is an increase in communication costs and a loss of useable capacity of the storage media in the user's apparatus.
- Further, if the user attempts to conduct a direct reproduction from the storage media with a low performance personal computer, making use of software, the user must reproduce each of the moving data from start until the end and view each moving image data. This process takes an exceptionally long period of time.
- A conventional technique for handling moving image data is disclosed, for example, in the Japanese Published Unexamined Patent Application No. Hei 9-98430. The following is a brief description of technique wherein the conventional moving image data of a bitmap format is coded by the MPEG coding system and the result is stored in the storage media. This technique sets as an index information identifying particular packets each including an I-picture according to the MPEG coding system an I-picture is inter-frame coded data independent from preceding and succeeding the frame. Further, the technique selectively reads and reproduces each packet including an I-picture during a special mode reproduction such as high-speed reproduction. The technique intends to reduce the burden placed on a decoder. Although the technique is able to reduce the amount of data to be read out during the special mode reproduction, it is not able to perform the reproduction under normal reproduction speed.
- Another conventional technique is disclosed, for example, in Japanese Published Unexamined Patent Application No. Hei 5-227515. This conventional technique makes use of hierarchical coding and monolayer coding in accordance with resolutions of the encoder on the transmitting side and the decoder on the receiving side. This technique is intended to achieve an improvement in the coding rate. However, on the receiving side this technique also needs to receive all of the moving image data in order to view the moving image from the start until the end.
- The invention provides that on the transmitting side, moving image data is encoded in accordance with a plurality of resolution levels different from each other, and output to communication media in time series by each coded data of each resolution level. On the receiving side the moving image data is reproduced by selecting coded data of an arbitrary resolution level to decode, and reproducing the selected coded data at the arbitrary resolution level from the start until the end.
- The invention is able to reproduce the moving image data within an arbitrary range from the start until the end, with less data compared with the conventional technique, and is able to display the moving image data more clearly in accordance with the increase of received data. Thus, the present invention is able to reproduce the moving image progressively. The invention makes use of not only the inter-resolution compression, but also the inter-frame compression to make the stored data even less.
- The scope of the present invention will be apparent from the following detailed description, when taken in conjunction with the accompanying drawings, and such detailed description and specific examples, while indicating exemplary embodiments of the invention, are given by way of illustration only, since various changes and modifications within the spirit and scope of the invention will become apparent to those skilled in the art from this detailed description, in which:
- FIG. 1 is a conceptual diagram illustrating an example of a data format used in the present invention;
- FIG. 2 is a conceptual diagram illustrating an example of the size of one pixel in each coding level according to the present invention;
- FIG. 3 is a diagram illustrating the coding of moving image data at plural coding levels according to the present invention;
- FIG. 4 is a flowchart illustrating the coding process of the of the present invention;
- FIGS. 5A and B combined form a flowchart illustrating the decoding process of the present invention;
- FIG. 6 is a diagram illustrating an example of a moving image recording and reproducing device according to the present invention;
- FIG. 7 is a diagram illustrating an example of a communication network including a plurality of moving image recording and reproducing devices according to the present invention; and
- FIG. 8 is a conceptual diagram illustrating an example of the conventional MPEG format for moving image data.
- First, an exemplary embodiment of the method, apparatus and computer program for recording and reproducing moving image data will be described with reference to FIGS.1-5
- In the present invention, moving image data can be provided, for example, as data having a length of 30 seconds, wherein the data is formed into frames having a frequency of 30 frames per second and each frame has a screen size of 352×240 pixels. Conventionally, the MPEG coding system compresses the data of each frame, as illustrated in FIG. 8, and stores them from 1st through 900th frames by means of the inter-frame compression.
- By use of the method, apparatus and computer program of the present invention described below a bit stream of moving image data (coded data) having a plurality of sub-bit streams corresponding to a plurality of resolution levels is generated as illustrated in FIG. 1. The plural resolution levels allows for the progressive reproduction of moving image. As illustrated in FIG. 1, these three levels of resolutions could, for example be 16×16 pixels, 4×4 pixels (coding level B), and 1×1 pixel (coding level C). In the present invention, for example, coding level A is the lowest resolution and coding level C is the highest resolution level. The present invention will be described using the three resolutions levels described above. However, any number of resolution levels can be used.
- The bit stream of moving image data recorded and reproduced by the present invention has a format, for example, including a
system header 1 at the top, abit stream 2 of coding level A, abit stream 3 of coding level B, and abit stream 4 of coding level C in series. Further, alevel header 2 a,level header 3 a, andlevel header 4 a are added to each of the leading parts of thebit streams 2 to 4 of coding levels A to C. - In the
system header 1 are stored information concerning the moving data, for example, the size of the total stream and the stream type to indicate whether the data is video data or audio data. When the data is a video stream information of resolution level, bit rate, picture rate, aspect ratio, etc. are provided. When the data is an audio stream information of sampling frequency, bit rate, mode (stereo/monaural), etc., is provided. Further, in theindividual headers 2 a to 4 a are written unique data to clearly demonstrate to the reproduction device that the coding level is changed at the respective level headers. - Since the audio signal contains less data per unit time compared with the video signal, the audio data can be mixed into the
first bit stream 2 of the coding level A. In the coding level A, the coding is performed under the resolution of 16×16 pixels per unit. In the coding level B, the coding is performed under the resolution of 4×4 pixels per unit. Coding of data for coding level B may require, for example, differential data (relating to brightness, chrominance, etc.) from the preceding coded data of coding level A. In the coding level C, the coding is performed under the resolution of 1×1 pixel per unit. The coding of data for coding level C may require, for example, differential data (relating to brightness, chrominance, etc.) from the preceding coded data of the coding level B. - According to the present invention, inter-resolution compression can be carried out between the data of the coding levels of the plural different resolutions. For example, the data size of each of the bit streams2 to 4 of the coding levels A to C is 1.6×60=96 M bits =12 M bytes, when the file size extends for 60 seconds, the system bit rate is 1.6 Mbps, and the size of the screen is 352×240 pixels. If coding is performed using the resolution of 16×16 pixels per unit in the coding level A, the number of pixels to be processed is 16−2=1/256 compared with the case when the resolution of 1×1 pixel per unit is used. Thus, the data size is about 47 Kbytes when the file size extends for 60 seconds. If coding is performed using the resolution of 4×4 pixels per unit in the coding level B, the number of pixels to be processed is 4−2=1/16 compared with the case when the resolution of 1×1 pixel per unit is used. Thus, the data size is about 750 Kbytes when the file size extends for 60 seconds. The difference between the coding level B and the coding level A is approximately 750−47=703 Kbytes. If coding is performed using the resolution of 1×1 pixels per unit in the coding level C, the data size is 12 Mbytes. The difference between the coding level C and the coding level B is approximately 12 Mbytes−703 Kbytes=11.3 Mbytes.
- The image data of a rectangular screen having an arbitrary size (height H=width W) can be coded by setting the coding level. The coding level can be set to any of the three levels, 16×16 (coding level A), 4×4 (coding level B), 1×1 (coding level C), arbitrarily in accordance with the resolution of moving image data as a material.
- The overall construction of an exemplary coding apparatus included in a server of the present invention in which the coding of a plurality of resolution levels is performed is illustrated in FIG. 3. The steps performed by the server through use of the coding apparatus shown in FIG. 3 is illustrated by the flowchart in FIG. 4. The steps of the flowchart illustrated in FIG. 4 can, for example, correspond to one or more instructions of a computer program. The computer program can, for example, be in the computer programming language C++. Further, the computer program can, for example, be stored on a storage medium, such as a CD ROM, floppy disk, storage device, etc., and can be distributed by a network connected to server and client apparatus. In the server the computer program can be provided as part of a total operating system including a computer program that can be provided to client apparatus as needed. The computer program can be executed by the server or by a Personal Computer (PC) that uploads results of execution to the server.
- The coding apparatus includes plural coding means10-1 to 10-n (n: natural number more than 2), each of which executes a coding according to different resolutions of n-levels, and buffers 11-1 to 11-n correspondingly connected to the plural coding means 10-1 to 10-n. Each coding means 10-n and its respective buffer 11-n is connected in series in a line and each line is connected in parallel with other lines each have connected in series coding means 10-n and its respective buffer 11-n.
- According to the flowchart in FIG. 4,
material data 12 for a frame is input to each line (step 101). The coding according to each resolution level of each line for the frame is executed in parallel (step 102) in coding means 10-n. The result is stored in the corresponding buffer 11-n (step 103). For each resolution level, except the lowest resolution level, data of a lower resolution level stored in a lower resolution level buffer 11-n is obtained to provide differential data to the coding for a higher resolution level. Further, for each resolution level, except the lowest resolution level, a bit stream is generated based on the differential data and the coded data stored in buffer 11-n of the resolution level of concern (step 104). If all of the frames have not been coded, steps 101-105 are repeated (step 105). If all of the frames have been coded, the coded data are read out from the work file in a particular order, for example, from the lower resolution level toward the higher resolution level forming a bit stream having plural sub-bit streams. The header information described above is added to the bit stream, and the bit stream is output to an arbitrary media (step 106). Thereafter, the work file is deleted (step 107). The bit stream being output has a plurality of sub-bit streams 2-4 in the format as described above and illustrated in FIG. 1. - When the bit stream having the format as described above and illustrated in FIG. 1 is received in client apparatus, the steps performed by the client to reproduce the moving image data are illustrated in the flowchart in FIGS. 5A and B. The client reproduces the moving image data in various modes by the plural resolution levels. The steps of the flowchart illustrated in FIGS. 5A and 5B can, for example, correspond to one or more instructions of a computer program. The computer program can, for example, be in the computer programming language C++. Further, the computer program can, for example, be stored on a storage medium such as a CD ROM, floppy disk, storage device, etc., and can be distributed by a network connected to server and client apparatus. In the client apparatus the computer program can be provided as part of a total operating system or as a plug-in program to an internet browser such as for example Internet Explorer (registered trademark of Microsoft Corporation) or Netscape Navigator (registered trademark of Netscape Corporation). The client apparatus can, for example, be a PC or a stand alone reproduction device which plays movies, music videos, etc. The computer program to be executed by the client apparatus can, for example, be transmitted to the client apparatus by the server apparatus via the network when moving image data is requested by the client apparatus.
- The bit streams2-4, including the coded data A-C having different resolution levels, are input to the client apparatus in a particular order, for example, from a lower resolution level toward higher resolution levels. Thus, the data being input extends from less data toward more data. When the
bit stream 2 of the coding level A (16×16 pixels) is processed for reproduction, an image having rough and vague definition (lower resolution level) as a whole is reproduced. Moving image data of coding level A can be reproduced easily and swiftly in a shorter period of time after receiving the data due to the low amount of data (coding level A produces data of 1/256 the data of coding level C). - Thus, even when the capability of the communication media and the client (reproduction device) is low, or the environment on the receiving side requires a long time to receive/reproduce a great quantity of moving image data because of an increase of the load the communication media, etc., the moving image data can still be reproduced in a shorter period of time from the start until the end of such data. When the bit streams3 to 4 of a coding level B (4×4 pixels) and a coding C (1×1 pixels) are processed for reproduction, images having higher definition (high resolution level) as a whole are reproduced. Moving image data of coding levels B and C may take longer to reproduce, however, since they are accompanied with an increase of reception data quantity.
- As per the flowchart illustrated in FIGS. 5A and B, when the moving image data of the format illustrated in FIG. 1 is received, a determination is made as to whether decoding is for simplified reproduction with less data (step201). Simplified reproduction can, for example, cause playback of moving image data at the lowest resolution level from the server. Whereas playback other than simplified reproduction can, for example, cause playback of moving image data at a higher resolution level from the storage (hard disk) of the client apparatus.
- If the decoding is for simplified reproduction, a determination is made as to whether the reproducing level is specified (step202). If the reproducing level is specified a determination is made whether to reproduce coding level A (step 203).
Steps 202 and 203 are tests to determine whether a particular resolution level has been specified and if specified is the level specified coding level A. Coding level A is the resolution level specified when simplified reproduction has been selected. If coding level A is specified, then thebit stream 2 of the coding level A having the least data, is completely received (step 204), and reproduction thereof is started. First a frame number n is initialized to 1 (step 205), and the operation of decoding the nth frame is performed (step 206). The reproduced data is output (step 207), and the frame number n is incremented (step 208). A determination is then made as to whether all of the frames have been decoded (step 209). If all of the frames have not been decoded, then steps 206-209 are repeated. - If the decoding is not for the simplified reproduction at
step 201, then clear, full reproduction is conducted. The reproduction is started after all of the bit streams 2 to 4 of the coding levels A to C are received (step 210). The frame number n is initialized to 1 (step 211), and data of the nth frame is read out in parallel from each of the coded data of the coding levels A to C and decoded (step 212). The decoded results are synthesized (step 213), and reproduced data for a normal clear image is output (step 214). The frame number n is incremented (step 215), and a determination is made as to whether all of the frames have been decoded (step 216). If all of the frames have not been decoded, then steps 212-216 are repeated. - If the reproducing level is not specified at step202, then a determination is made as to whether the received data is for coding level C (step 217). If the data of coding level C has been received, then steps 211-216 are performed. If the data of coding level C has not been received, then a determination is made as to whether the received data is of coding level B (step 218). If the data of coding level B has not been received, then steps 204-209 are performed. If the data of the coding level B has been received, then the data of coding levels A and B are received (step 220). Thereafter, the frame number n is initialized to 1 (step 221) and the operation of reading out in parallel from each of the coded data of the coding levels A and B and decoding such data is performed (step 222). The results of the decoding are synthesized (step 223) and reproduced data corresponding to the decoded results is output (step 224). The frame number n is incremented (step 225) and a determination is made whether data of all of the frames have been decoded (step 226). If the data of all of the frames have not been decoded, then steps 222-226 are repeated.
- Thus, according to the invention as described above, steps217 and 218 serve to determine the amount of data that has been received, when simplified reproduction has been selected, so as to cause the appropriate steps to be performed since some amount of the data may have already been received. Accordingly, if only data of the coding level A has been received, then steps 204-209 are performed. If data of the coding levels B and A have been received, then the steps 220-226 are performed. If data of coding levels A, B and C have been received, then the steps 211-216 are performed.
-
Steps 202 and 203, as described above, operate together along with astep 219 to perform the appropriate steps if a particular reproducing level is been specified. For example, if a reproducing level is specified then step 203 determines whether the reproducing level specified is coding level A. If coding level A has been specified, then steps 204-209 are performed. Step 219 determines whether the reproducing level specified is coding level B. If coding level B is specified then steps 220-226 are performed. If according to step 219 coding level B is not specified, then coding level C has been specified and steps 210-216 are performed. - In the present invention, it is possible to perform a reproduction by an intermediate resolution level between the resolution of the simplified reproduction image and the resolution of the full reproduction image.
- The above described flowcharts illustrated in FIGS. 4 and 5A and B in which coding and decoding of moving image data according to a plurality of the resolution levels are shown, can be applied to an
information processing network 50 as illustrated in FIG. 7 in which multimedia data are distributed. Theinformation processing network 50 illustrated in FIG. 7 includes, for example,communication media 51 such as the Internet, Intranet, LANS, etc., amultimedia server 52 which distributes moving image data through thecommunication media 51, and a plurality ofmultimedia client devices 53 that utilize the distributed data. The structure of each of themultimedia server 52 and eachmultimedia client device 53 is illustrated in FIG. 6. - As illustrated in FIG. 6, the
multimedia server 52 includes asystem bus 61, amicroprocessor 62, amain storage unit 63 that stores various programs and data such as anoperating system 63 a, which, when executed, controls operation of themicroprocessor 62 and the various connected units described later, a multilevel coding program 63 b, which performs the coding process according to a plurality of resolution levels as illustrated in FIG. 4, and abuffer 63 c for use as work area. The multilevel coding program 63 b can, for example, include instructions corresponding to the steps of the flowchart illustrated in FIG. 4. Themultimedia server 52 also includes an operation interface (I/F)unit 64, a moving image data output I/F unit 65, which is connected to adisplay 65 a for outputting multimedia data such as graphic images and sounds, and aspeaker 65 b, etc., a network I/F unit 66 for connecting the server to thecommunication media 51, anexternal storage unit 67 that stores desired data and other data as needed in a multilevel coding moving image data file 67 a and awork file 67 b, and a moving image data input I/F unit 68 to which a video source equipment such as an analog video recording/reproducing device, a camera, analog moving image data reproduction device, etc., are connected to input an moving image data as material data. - The
multimedia client device 53 is constructed the same as, for example, themultimedia server 52 described above and illustrated in FIG. 7 except that the moving image data input I/F unit 68 is not included. In addition, themain storage unit 63 stores, instead of the multilevel coding program 63 b, a decoding program 63 d for decoding/reproducing the multilevel coded data generated by the multilevel coding program 63 b, as illustrated in the flowchart of FIGS. 5A and B. The decoding program 63 d can, for example, include instructions corresponding to the steps of the flowchart illustrated in FIGS. 5A and B. - In the
information processing network 50 themultimedia server 52 inputs moving image data as material data from a video source equipment through the moving image data input I/F unit 68. Themultimedia server 52 causes themicroprocessor 62 to run the multilevel coding program 63 b using the resources such as thebuffer 63 c in themain storage unit 63 and thework file 67 b in theexternal storage unit 67, to execute instructions corresponding to the steps of the flowchart illustrated in FIG. 4. Execution of the multilevel coding program generates a bit stream of the format illustrated in FIG. 1. The bit stream is stored in the multilevel coding moving image data file 67 a. - The multilevel coding moving image data file67 a may be a database including plural bit streams of the format illustrated in FIG. 1 that are generated in correspondence with each of plural kinds of moving image data. When the
multimedia client device 53 requests to download a desired moving image data, themultimedia server 52 reads out the corresponding bit stream data from the multilevel coding moving image data file 67 a, and sends the data to themultimedia client device 53 through the network I/F unit 66 and thecommunication media 51. - The
multimedia client device 53 on the receiving side is able to execute the simplified reproduction of the moving image data from the start until the end in a shorter period of time after receipt of the data ofbit stream 2 as illustrated in FIG. 1. The data ofbit stream 2 is less than that data of theother bit streams communication media 51 has a narrow band and/or themultimedia client device 53 has a comparably low processing capacity, a swift and simplified reproduction of moving image data can be conducted. In themultimedia client device 53 using the conventional technique all of the moving image data must be received before the moving image data can be reproduced. Thus, a longer period of time is necessary for moving data can be reproduced in the conventional apparatus. However, in the present invention for example, only a slight quantity of thebit stream 2 of the format illustrated in FIG. 1 is required before the moving image data can be reproduced. Thus, it possible in the present invention to judge whether the moving image data is desired or not to receive a great quantity of moving image data. Therefore, it is possible to significantly reduce the quantity of moving image data flowing through thecommunication media 51, and the quantity of moving image data temporarily stored in theexternal storage unit 67 on the side of themultimedia client device 53. Thus, it is possible to reduce the communication cost, and to utilize theexternal storage unit 67 more efficiently. - When using a nonvolatile semiconductor memory, for example, which is more costly than a normal rotary storage media, as the
external storage unit 67 on the side of themultimedia client device 53, the storage capacity of theexternal storage unit 67 can be utilized efficiently effectively. - While the present invention has been described in detail and pictorially in the accompanying drawings, it is not limited to such details since many changes and modification recognizable to these of ordinary skill in the art having the benefit of this invention may be made to the invention without departing from the spirit and scope of the invention, and all such modifications as would be obvious to one skilled in the art and/or which become possible as technology develops, are intended to be included within the scope of the following claims.
Claims (33)
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34625097A JP3479443B2 (en) | 1997-12-16 | 1997-12-16 | Moving image data compression method and output method, moving image data reproduction method, and moving image data compression device, output device, and reproduction device |
JP9-346250 | 1997-12-16 | ||
JP09-346250 | 1997-12-16 |
Publications (2)
Publication Number | Publication Date |
---|---|
US20020076194A1 true US20020076194A1 (en) | 2002-06-20 |
US6430354B1 US6430354B1 (en) | 2002-08-06 |
Family
ID=18382139
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/212,309 Expired - Lifetime US6430354B1 (en) | 1997-12-16 | 1998-12-16 | Methods of recording/reproducing moving image data and the devices using the methods |
Country Status (2)
Country | Link |
---|---|
US (1) | US6430354B1 (en) |
JP (1) | JP3479443B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080301749A1 (en) * | 2007-05-30 | 2008-12-04 | Comcast Cable Holdings, Llc | Selection of electronic content and services |
US20090279601A1 (en) * | 2008-05-08 | 2009-11-12 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and Apparatus of Displaying Video |
EP2559233A1 (en) * | 2010-04-14 | 2013-02-20 | Comcast Cable Communications, LLC | Viewing and recording streams |
US8935726B2 (en) | 2012-05-11 | 2015-01-13 | Comcast Cable Communications, Llc | Generation of dynamic content interfaces |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000013777A (en) * | 1998-06-26 | 2000-01-14 | Matsushita Electric Ind Co Ltd | Video reproducing device and video storage device |
JP3847481B2 (en) * | 1998-08-17 | 2006-11-22 | 富士写真フイルム株式会社 | Data transfer method and apparatus, and recording medium |
JP3285331B2 (en) * | 1999-04-12 | 2002-05-27 | オリンパス光学工業株式会社 | Image recording device and electronic camera device |
US6330025B1 (en) * | 1999-05-10 | 2001-12-11 | Nice Systems Ltd. | Digital video logging system |
JP2001128144A (en) * | 1999-10-26 | 2001-05-11 | Fujitsu Ltd | Method and device for on-demand picture transmission |
WO2001058170A1 (en) * | 2000-02-01 | 2001-08-09 | Koninklijke Philips Electronics N.V. | Video encoding and decoding with selectable image resolution |
US7043312B1 (en) * | 2000-02-17 | 2006-05-09 | Sonic Solutions | CD playback augmentation for higher resolution and multi-channel sound |
US7003794B2 (en) * | 2000-06-27 | 2006-02-21 | Bamboo Mediacasting, Inc. | Multicasting transmission of multimedia information |
US6925249B1 (en) * | 2000-07-28 | 2005-08-02 | Microsoft Corporation | System and method for storing compressed data onto a storage medium |
US7177520B2 (en) * | 2000-09-15 | 2007-02-13 | Ibm Corporation | System and method of timecode repair and synchronization in MPEG streams |
US20070107029A1 (en) * | 2000-11-17 | 2007-05-10 | E-Watch Inc. | Multiple Video Display Configurations & Bandwidth Conservation Scheme for Transmitting Video Over a Network |
JP2003209807A (en) * | 2002-01-10 | 2003-07-25 | Canon Inc | Moving picture reproducing method and apparatus |
JP2004151195A (en) * | 2002-10-29 | 2004-05-27 | Sony Corp | Device and method for communication, program, storage medium, and terminal device |
US7818444B2 (en) | 2004-04-30 | 2010-10-19 | Move Networks, Inc. | Apparatus, system, and method for multi-bitrate content streaming |
KR20070108434A (en) * | 2006-01-09 | 2007-11-12 | 한국전자통신연구원 | Proposals for improving data sharing in the svc(scalable video coding) file format |
JP5078538B2 (en) * | 2007-10-15 | 2012-11-21 | キヤノン株式会社 | Image reproducing apparatus, processing method thereof, and program thereof |
US8543623B2 (en) * | 2010-11-09 | 2013-09-24 | International Business Machines Corporation | Secure distribution of media data |
US8707448B2 (en) | 2010-11-09 | 2014-04-22 | International Business Machines Corporation | Secure distribution of media data |
US8914534B2 (en) | 2011-01-05 | 2014-12-16 | Sonic Ip, Inc. | Systems and methods for adaptive bitrate streaming of media stored in matroska container files using hypertext transfer protocol |
US8818171B2 (en) | 2011-08-30 | 2014-08-26 | Kourosh Soroushian | Systems and methods for encoding alternative streams of video for playback on playback devices having predetermined display aspect ratios and network connection maximum data rates |
US9467708B2 (en) | 2011-08-30 | 2016-10-11 | Sonic Ip, Inc. | Selection of resolutions for seamless resolution switching of multimedia content |
KR101928910B1 (en) | 2011-08-30 | 2018-12-14 | 쏘닉 아이피, 아이엔씨. | Systems and methods for encoding and streaming video encoded using a plurality of maximum bitrate levels |
US9191457B2 (en) | 2012-12-31 | 2015-11-17 | Sonic Ip, Inc. | Systems, methods, and media for controlling delivery of content |
JP6051066B2 (en) * | 2013-01-31 | 2016-12-21 | 株式会社第一興商 | Singing video playback system for karaoke |
EP3216219A1 (en) * | 2014-11-05 | 2017-09-13 | Colin, Jean-Claude | Method for producing animated images |
US10148989B2 (en) | 2016-06-15 | 2018-12-04 | Divx, Llc | Systems and methods for encoding video content |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3029914B2 (en) | 1992-02-10 | 2000-04-10 | 富士通株式会社 | Image hierarchical encoding / decoding device |
US5253058A (en) * | 1992-04-01 | 1993-10-12 | Bell Communications Research, Inc. | Efficient coding scheme for multilevel video transmission |
US5253056A (en) * | 1992-07-02 | 1993-10-12 | At&T Bell Laboratories | Spatial/frequency hybrid video coding facilitating the derivatives of variable-resolution images |
US5381526A (en) * | 1992-09-11 | 1995-01-10 | Eastman Kodak Company | Method and apparatus for storing and retrieving generalized image data |
US5621660A (en) * | 1995-04-18 | 1997-04-15 | Sun Microsystems, Inc. | Software-based encoder for a software-implemented end-to-end scalable video delivery system |
JP3330797B2 (en) | 1995-10-02 | 2002-09-30 | 富士通株式会社 | Moving image data storage method and moving image data decoding method |
US5727036A (en) * | 1995-11-22 | 1998-03-10 | Mitsubishi Semiconductor America, Inc. | High bit rate start code searching and detecting circuit and method |
-
1997
- 1997-12-16 JP JP34625097A patent/JP3479443B2/en not_active Expired - Fee Related
-
1998
- 1998-12-16 US US09/212,309 patent/US6430354B1/en not_active Expired - Lifetime
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080301749A1 (en) * | 2007-05-30 | 2008-12-04 | Comcast Cable Holdings, Llc | Selection of electronic content and services |
US10778930B2 (en) | 2007-05-30 | 2020-09-15 | Comcast Cable Communications, Llc | Selection of electronic content and services |
US11284036B2 (en) | 2007-05-30 | 2022-03-22 | Comcast Cable Communications, Llc | Selection of electronic content and services |
US11641442B2 (en) | 2007-05-30 | 2023-05-02 | Comcast Cable Communications, Llc | Selection of electronic content and services |
US20090279601A1 (en) * | 2008-05-08 | 2009-11-12 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and Apparatus of Displaying Video |
EP2559233A1 (en) * | 2010-04-14 | 2013-02-20 | Comcast Cable Communications, LLC | Viewing and recording streams |
EP2559233A4 (en) * | 2010-04-14 | 2013-10-23 | Comcast Cable Comm Llc | Viewing and recording streams |
US8935726B2 (en) | 2012-05-11 | 2015-01-13 | Comcast Cable Communications, Llc | Generation of dynamic content interfaces |
US10015223B2 (en) | 2012-05-11 | 2018-07-03 | Comcast Cable Communications, Llc | Generation of dynamic content interfaces |
Also Published As
Publication number | Publication date |
---|---|
JP3479443B2 (en) | 2003-12-15 |
JPH11177929A (en) | 1999-07-02 |
US6430354B1 (en) | 2002-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6430354B1 (en) | Methods of recording/reproducing moving image data and the devices using the methods | |
US6633725B2 (en) | Layered coding of image data using separate data storage tracks on a storage medium | |
JP4270379B2 (en) | Efficient transmission and reproduction of digital information | |
JP3907947B2 (en) | HDTV editing and pre-visualization of effects using SDTV devices | |
US6989868B2 (en) | Method of converting format of encoded video data and apparatus therefor | |
US6057832A (en) | Method and apparatus for video-on-demand with fast play capability | |
US6848117B1 (en) | Video-on-demand system capable of performing a high-speed playback at a correct speed | |
CN1154048A (en) | Data reproducing apparatus | |
JP2007506305A (en) | Adaptive management of video storage resources | |
US20010009446A1 (en) | Editing system with router for connection to HDTV circuitry | |
US7099567B2 (en) | Video processing method and video processing apparatus | |
US6891547B2 (en) | Multimedia data decoding apparatus and method capable of varying capacity of buffers therein | |
US20070201819A1 (en) | Apparatus and method for variable speed playback of digital broadcasting stream | |
KR100428590B1 (en) | Split Imige Data Transmission Method and System | |
US7373439B2 (en) | System method using material exchange format (MXF) converting program for audio and video data files having routines that generates attribute data from audio and video data file | |
JP3462267B2 (en) | Information communication terminal equipment | |
JPH10276388A (en) | Device, method for processing and reproducing image and recording medium | |
JP3547210B2 (en) | Video data generator with sound | |
JP2003046928A (en) | Network image reproduction method and compression image data decoding reproduction apparatus | |
US20030091331A1 (en) | Method for implementing low-speed playback of a digital broadcast program | |
JP4484220B2 (en) | Video distribution device | |
WO2001019082A1 (en) | Converting non-temporal based compressed image data to temporal based compressed image data | |
JP3894362B2 (en) | Multiple moving image viewing apparatus and recording medium | |
JPH09214955A (en) | Encode and decode system for image data | |
JP3541910B2 (en) | Video signal processing device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: HITACHI, LTD., JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:WATANABE, KENJI;REEL/FRAME:009730/0589 Effective date: 19981223 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
FEPP | Fee payment procedure |
Free format text: PAYER NUMBER DE-ASSIGNED (ORIGINAL EVENT CODE: RMPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
AS | Assignment |
Owner name: HITACHI CONSUMER ELECTRONICS CO., LTD., JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HITACHI, LTD.;REEL/FRAME:030648/0217 Effective date: 20130607 |
|
FPAY | Fee payment |
Year of fee payment: 12 |
|
AS | Assignment |
Owner name: HITACHI MAXELL, LTD., JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HITACHI CONSUMER ELECTRONICS CO., LTD.;HITACHI CONSUMER ELECTRONICS CO, LTD.;REEL/FRAME:033694/0745 Effective date: 20140826 |
|
AS | Assignment |
Owner name: MAXELL, LTD., JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HITACHI MAXELL, LTD.;REEL/FRAME:045142/0208 Effective date: 20171001 |