TRANSCODER SUPPORTING SELECTIVE DELIVERY OF 2D, STEREOSCOPIC 3D, AND MULTI-VIEW 3D CONTENT FROM SOURCE VIDEO
Transcoders are provided for transcoding three-dimensional content to two-dimensional content, and for transcoding three-dimensional content of a first type to three-dimensional content of another type. Transcoding of content may be performed due to user preference, display device capability, bandwidth constraints, user payment/subscription constraints, device loading, and/or for other reason. Transcoders may be implemented in a content communication network in a media source, a display device, and/or in any device/node in between.
This application is a continuation of U.S. patent application Ser. No. 12/982,199, filed on Dec. 30, 2010, and entitled “Transcoder Supporting Selective Delivery of 2D, Stereoscopic 3D, and Multi-View 3D Content from Source Video,” which claims the benefit of U.S. Provisional Application No. 61/291,818, filed on Dec. 31, 2009, and U.S. Provisional Application No. 61/303,119, filed on Feb. 10, 2010, each of which are incorporated by reference herein in their entireties; and
This application is also related to the following U.S. patent applications, each of which also claims the benefit of U.S. Provisional Patent Application Nos. 61/291,818 and 61/303,119 and each of which is incorporated by reference herein:
U.S. patent application Ser. No. 12/845,409, titled “Display With Adaptable Parallax Barrier,” filed Jul. 28, 2010;
U.S. patent application Ser. No. 12/845,440, titled “Adaptable Parallax Barrier Supporting Mixed 2D And Stereoscopic 3D Display Regions,” filed Jul. 28, 2010;
U.S. patent application Ser. No. 12/845,461, titled “Display Supporting Multiple Simultaneous 3D Views,” filed Jul. 28, 2010;
U.S. patent application Ser. No. 12/774,307, titled “Display with Elastic Light Manipulator,” filed May 5, 2010;
U.S. patent application Ser. No. 12/982,020, titled “Backlighting Array Supporting Adaptable Parallax Barrier,” filed on Dec. 30, 2010;
U.S. patent application Ser. No. 12/982,088, titled “Communication Infrastructure Including Simultaneous Video Pathways for Multi-Viewer Support,” filed on Dec. 30, 2010;
U.S. patent application Ser. No. 12/982,062, issued as U.S. Pat. No. 8,687,042, titled “Set-Top Box Circuitry Supporting 2D and 3D Content Reductions to Accommodate Viewing Environment Constraints,” filed on Dec. 30, 2010; and
U.S. patent application Ser. No. 12/982,289, titled “Frame Formatting Supporting Mixed Two and Three Dimensional Video Data Communication,” filed on Dec. 30, 2010.
BACKGROUND OF THE INVENTION1. Field of the Invention
The present invention relates to the transcoding of video content.
2. Background Art
Images may be generated for display in various forms. For instance, television (TV) is a widely used telecommunication medium for transmitting and displaying images in monochromatic (“black and white”) or color form. Conventionally, images are provided in analog form and are displayed by display devices in two-dimensions. More recently, images are being provided in digital form for display in two-dimensions on display devices having improved resolution (e.g., “high definition” or “HD”). Even more recently, images capable of being displayed in three-dimensions are being generated.
Conventional displays may use a variety of techniques to achieve three-dimensional image viewing functionality. For example, various types of glasses have been developed that may be worn by users to view three-dimensional images displayed by a conventional display. Examples of such glasses include glasses that utilize color filters or polarized filters. In each case, the lenses of the glasses pass two-dimensional images of differing perspective to the user's left and right eyes. The images are combined in the visual center of the brain of the user to be perceived as a three-dimensional image. In another example, synchronized left eye, right eye LCD (liquid crystal display) shutter glasses may be used with conventional two-dimensional displays to create a three-dimensional viewing illusion. In still another example, LCD display glasses are being used to display three-dimensional images to a user. The lenses of the LCD display glasses include corresponding displays that provide images of differing perspective to the user's eyes, to be perceived by the user as three-dimensional.
Some displays are configured for viewing three-dimensional images without the user having to wear special glasses, such as by using techniques of autostereoscopy. For example, a display may include a parallax barrier that has a layer of material with a series of precision slits. The parallax barrier is placed proximal to a display so that a user's eyes each see a different set of pixels to create a sense of depth through parallax. Another type of display for viewing three-dimensional images is one that includes a lenticular lens. A lenticular lens includes an array of magnifying lenses configured so that when viewed from slightly different angles, different images are magnified. Displays are being developed that use lenticular lenses to enable autostereoscopic images to be generated.
As such, many types of display devices exist that are capable of displaying three-dimensional images, and further types are being developed. Different types of displays that enable three-dimensional image viewing may have different capabilities and attributes, including having different resolutions, being configured for three-dimensional image viewing only, being switchable between two-dimensional image viewing and three-dimensional image viewing, and further capabilities and attributes. These and other display characteristics, and other factors such as user preferences and communication bandwidths, may dictate what type of content is displayed by particular displays.
BRIEF SUMMARY OF THE INVENTIONMethods, systems, and apparatuses are described for transcoding of two-dimensional and three-dimensional content to be displayed, substantially as shown in and/or described herein in connection with at least one of the figures, as set forth more completely in the claims.
The accompanying drawings, which are incorporated herein and form a part of the specification, illustrate the present invention and, together with the description, further serve to explain the principles of the invention and to enable a person skilled in the pertinent art to make and use the invention.
The present invention will now be described with reference to the accompanying drawings. In the drawings, like reference numbers indicate identical or functionally similar elements. Additionally, the left-most digit(s) of a reference number identifies the drawing in which the reference number first appears.
DETAILED DESCRIPTION OF THE INVENTION I. IntroductionThe present specification discloses one or more embodiments that incorporate the features of the invention. The disclosed embodiment(s) merely exemplify various aspects of the invention. The scope of the invention is not limited to the disclosed embodiment(s). The invention is defined by the claims appended hereto.
References in the specification to “one embodiment,” “an embodiment,” “an example embodiment,” etc., indicate that the embodiment described may include a particular feature, structure, or characteristic, but every embodiment may not necessarily include the particular feature, structure, or characteristic. Moreover, such phrases are not necessarily referring to the same embodiment. Further, when a particular feature, structure, or characteristic is described in connection with an embodiment, it is submitted that it is within the knowledge of one skilled in the art to effect such feature, structure, or characteristic in connection with other embodiments whether or not explicitly described.
Furthermore, it should be understood that spatial descriptions (e.g., “above,” “below,” “up,” “left,” “right,” “down,” “top,” “bottom,” “vertical,” “horizontal,” etc.) used herein are for purposes of illustration only, and that practical implementations of the structures described herein can be spatially arranged in any orientation or manner.
II. Exemplary EmbodimentsThe present invention relates to a transcoder that can be used to convert compressed 3D (i.e., “encoded” three-dimensional) video content into compressed 2D (i.e., “encoded” two-dimensional) video content, and/or to convert compressed X-view 3D video content into compressed Y-view 3D video content, where X and Y are respective numbers of camera views. Depending on the embodiment, a transcoder may operate to (i) decrypt encrypted, encoded 3D content from one or more sources to gain access to the encoded 3D content, (ii) decode the encoded 3D content to gain access to raw 3D content in the form of multiple image frame sequences, wherein each frame sequence represents a perspective view of a 3D presentation (i.e., a camera perspective view), (iii) possibly change the pixel resolution of each image frame, for example to fit a screen assembly limitation or to better conform to a regional constraint within such assembly, (iv) possibly remove a portion of each image frame corresponding to an overlap object or region within the screen assembly, the overlap involving other and perhaps unrelated media content, (v) possibly remove one or more of the camera perspective views by removing a corresponding frame sequence, (vi) possibly add via interpolation image frame sequences based on those frame sequences currently available to create a simulated further camera perspective view, (vii) possibly reduce a frame rate of the frame sequences (e.g., by deleting some of the frames), (viii) possibly increasing the frame rate of the frame sequences (e.g., by interpolating generating further frames or by repeating some current frames), (ix) possibly re-encode (per the prior encoding standard or pursuant to another proprietary or industry standard approach), (x) possibly re-encrypt (per the prior or another proprietary or industry standard approach), and (xi) delivering the resultant transcoded output to a storage device or toward a screen assembly to support a visual presentation.
The transcoder may be implemented at the content/media source, within the display device, or at any node in between. The transcoder may also be fully integrated within a single one of such devices or nodes, but may also be contained in whole or in part in multiple of or in all of them, working independently or in concert.
More specifically, in some embodiments, a transcoder may be used when the video format to be consumed by a display device comprises fewer camera views than the video format provided by a source. The limitation on the display device may be due to user preference, display device capability, media source load constraints, bandwidth constraints, user payment/subscription (a particular type of 3D content may be paid for or subscribed for display on a particular user's display device), or the like. User preferences may include stored preferences for users, and/or may be triggered based on dynamic user viewing activities, such changing locations of a viewer in a viewing space (e.g., causing a change in a displayed number of camera views, or a change in the particular camera views displayed to the user), viewing picture-in-picture content, interaction by the viewer with a user interface (e.g., a remote control, etc.) to change display attributes while viewing content, etc. With regard to media source load constraints, a media source may need to reduce an amount of streamed data in one or more supplied video content streams when content demand is high.
Numerous types of display devices may display 2D and 3D content that is selectively processed by a transcoder. For example, the display devices may include one or more light manipulators, such as parallax barriers and/or lenticular lenses, to deliver 3D media content in the form of images or views to the eyes of the viewers. Other types may include display devices with 3D display pixel constructs (e.g., multiple layers of pixels that can be illuminated in the different layers to provide depth) that may or may not employ such light manipulators. When used, light manipulators may be fixed or dynamically modified to change the manner in which the views are delivered. For instance, embodiments enable light manipulators that are adaptable to accommodate a changing viewer sweet spot, switching between two-dimensional (2D), stereoscopic three-dimensional (3D), and multi-view 3D views, as well as the simultaneous display of 2D, stereoscopic 3D, and multi-view 3D content. With regard to parallax barriers, example features that may be dynamically modified include one or more of a number of slits in the parallax barriers, the dimensions of each slit, the spacing between the slits, and the orientation of the slits. Slits of the parallax barriers may also be turned on or off in relation to certain regions of the screen such that simultaneous mixed 2D, stereoscopic 3D, and multi-view 3D presentations can be accommodated. Similarly, a lenticular lens may be dynamically modified, such as by modifying a width of the lenticular lens, to modify delivered images.
The following subsections describe numerous exemplary embodiments of the present invention. For instance, the next subsection describes embodiments for transcoders, followed by subsections that describe embodiments for example electronic devices, communication systems, and display systems that may include transcoders. It is noted that the section/subsection headings provided herein are not intended to be limiting. Embodiments are described throughout this document, and any type of embodiment may be included under any section/subsection.
It will be apparent to persons skilled in the relevant art that various changes in form and detail can be made to the embodiments described herein without departing from the spirit and scope of the invention. Thus, the breadth and scope of the present invention should not be limited by any of exemplary embodiments described herein.
A. Example Transcoder EmbodimentsAccording to embodiments, a transcoder may be present in a device to translate three-dimensional content to two-dimensional content, and/or to translate a first type of three-dimensional content to another type of three-dimensional content. Such a transcoder may be configured in various ways, in embodiments. For instance,
Device 102 may be a media source device, a communication device, a display device, or other type of device. For example, device 102 may be a mobile computing device (e.g., a handheld computer, a laptop computer, a notebook computer, a tablet computer (e.g., an Apple iPad™), a netbook, etc.), a mobile phone (e.g., a cell phone, a smart phone), a mobile email device, a display device (e.g., a television), a home theater system receiver, a set-top box, a computer (e.g., a desktop computer), a game console, a networking device (e.g., a gateway, an access point, a router, a switch, etc.), a cable head-end, a server, etc.
Content interface circuitry 106 is an interface for receiving content for transcoder 104. Content interface circuitry 106 may be implemented in any combination of hardware and software/firmware. In embodiments, content interface circuitry 106 may be an interface for a communication bus or other circuits/signals within device 102 through which content may be received from a source external or internal to device 102. In further embodiments, content interface circuitry 106 may include an interface for directly receiving signals from external to device 102.
For instance, in an embodiment, content interface circuitry 106 may include a communication interface for interfacing device 102/transcoder 104 with a network to receive video content. For example, content interface circuitry 106 may be an interface that communicates over a packet switched network, such as a local area network (LAN), a wide area network (WAN), a personal area network (PAN), or a combination of communication networks, such as the Internet. In such embodiments, content interface circuitry 106 may any type of network interface (e.g., network interface card (NIC)), wired or wireless, such as an as IEEE 802.11 wireless LAN (WLAN) wireless interface, a Worldwide Interoperability for Microwave Access (Wi-MAX) interface, an Ethernet interface, etc. In another embodiment, content interface circuitry 106 may be an interface with a cable network for transmission of video data according to cable communication techniques/standards (e.g., quadrature amplitude modulation (QAM), data over cable service interface specification (DOCSIS), etc.). In such embodiments, content interface circuitry 106 may include an analog and/or digital cable interface. In further embodiments, content interface circuitry 106 may be standard interface for audio/video data, such as an HDMI (high-definition multimedia interface) interface, or an interface for one or more of radio frequency (RF) coaxial cable, composite video, S-Video, SCART, component video, D-Terminal, or VGA (video graphics array). In other embodiments, content interface circuitry 106 may be configured in other ways, such as including a Universal Serial Bus (USB) interface or other proprietary or commercially available interface.
As shown in
Processing circuit 108 receives first video content 112 and a content control signal 116. Processing circuit 108 is configured to perform transcoding of first video content 112, if enabled by content control signal 116. Content control signal 116 may be received from control logic 118 of device 102. Content control signal 116 may be generated by control logic 118 to indicate if transcoding of first video content 112 is to be performed, and if so, what type of transcoding is to be performed. For instance, device 102 may receive an indication of a type of the target display device for receiving and displaying first video content 112, may receive user preferences provided by a viewer for the target display device, may receive an indication of a communication bandwidth between device 102 and the target display device (when the target display device and device 102 are different devices), and/or may receive other information that may be used to determine what type of transcoding is to be performed. If the target display device is not capable of displaying the type of content included in first video content 112 (e.g., the target display device cannot display 3D content, the target display can display 3D content but not of the type of 3D content of first video content 112, etc.), control logic 118 may indicate that transcoding of first video content 112 be performed to transform first video content 112 to a form that can be displayed by the target display device. Furthermore, if received user preferences for display of content at the target display device indicates a display preference that is different from first video content 112 (e.g., a viewer wants to view all content as 2D content, the viewer wants to view 3D content of a particular type, etc.), control logic 118 may indicate that transcoding of first video content 112 be performed to transform first video content 112 to a form that is compatible with the user preferences. Still further, if there is not enough communication bandwidth between device 102 and the target display device such that first video content 112 cannot be smoothly displayed at the target display device (e.g., pauses occur in displayed video, etc.), control logic 118 may indicate that transcoding of first video content 112 be performed to transform first video content 112 to a lower bandwidth form (e.g., removal from the video data of one or more perspective views, etc.) that can be communicated according to the indicated bandwidth. Still further, source media device resource constraints may cause a reduction in perspective views provided for first video content 112.
Furthermore, fewer camera views may be provided in first video content 112 if a viewer may only view a subset of the camera views at any one time. This may be performed to save media source resources, bandwidth, etc. For example, a viewer may view a pair of supplied camera views of 3D-16 video content as a central view, with one or two camera views of the 3D-16 video content that are on either side of the central views being viewed if the viewer moves his/her head left-right. Thus, instead of providing all 16 camera views (or other number) of the 3D-16 video content, the 3D-16 video content may be transcoded to 3D-6 video content, including the six camera views (or to another number of views) that the viewer is viewing. If/when the viewer changes position to see other camera views outside of the central six views, another combination of six or other number of camera views may be selected to be supplied for display for the new viewer position.
Any of these constraints may be used to generate content control signal 116 to cause appropriate transcoding of received content to be performed. Content control signal 116 may be generated by control logic 118 to indicate that 3D content is to be converted to 2D content, that a type of 3D content is to be converted to another type of 3D content, that a resolution of content is to be modified, that content is to be cropped, that a number of colors of available for displayed pixels (color representation) is to be reduced, and/or other operation to be performed on content of first video content 112. As shown in
As shown in
Transcoder 104 may perform transcoding in various ways according to embodiments. For example, in one embodiment, transcoder 104 may transcode received video content by decoding the video content (which is received in compressed/encoded form), removing perspective views from the decoded video content, and encoding the video content after removal of the perspective views. In another embodiment, the removal of perspective views may be performed directly on the received compressed/encoded video content without decoding the received video content (e.g., compressed/encoded video data corresponding to frame sequences to be removed from the compressed/encoded video content may be identified in and extracted directly from the compressed/encoded video content).
For instance,
Flowchart 200 begins with step 202. In step 202, first video content that has first data and second data is received, the first data representative of a first perspective view, and the second data representative of a second perspective view. For example, as shown in
First video content 112 may be compressed video content. For example, first video content 112 may be compressed according to a video compression standard such as MPEG-1, MPEG-2, MPEG-4, H.261, H.262, H.263, H.264, etc. Decoder 302 may decode first video content 112 to generate decoded video content 310 in a manner as would be known to persons skilled in the relevant art(s).
In step 204, a selection is made to support a visual presentation to the viewer in either three-dimensions or two-dimensions. For example, as shown in
In step 206, upon selecting the three-dimensions, the first video content is forwarded. For example, if first video content 112 is selected to be passed as three-dimensional content, processing circuit 300 does not transcode decoded first video content 310. As such, view extractor 304 may output decoded first video content 310. When view adjustor 306 is present, view adjustor 306 may receive decoded first video content 310. Decoded first video content 310 may be optionally adjusted by view adjustor 306, to output optionally adjusted video content 314. When view adjustor 306 is not present, decoded first video content 310 may be passed directly to encoder 308. Encoder 308 encodes the received content to generate second video content 114. Second video content 114 includes the 3D content of first video content 112 (e.g., the right and left perspective views).
Encoder 308 generates second video content 114 as compressed video content. For example, encoder 308 may encode second video content 114 in a manner as would be known to persons skilled in the relevant art(s) according to any compression technique described elsewhere herein or otherwise known, such as MPEG-1, MPEG-2, MPEG-4, H.261, H.262, H.263, H.264, etc.
In step 208, upon selecting the two-dimensions, the second data is extracted from the first video content to produce second video content, and forwarding the second video content. For example, if two-dimensional content is selected to be passed, processing circuit 300 transcodes first video content 112 to remove data corresponding to one of the left and right perspective views, to generate second video content 114. For instance,
In step 402 of flowchart 400, the first video content is decoded, the decoded first video content including a first frame sequence as the first data and a second frame sequence as the second data. For instance, as described above, decoder 302 may receive and decode first video content 112 to generate decoded first video content 310. Decoded first video content 310 may include pixel data corresponding to right and left perspective views. For example, the right and left perspective views may be represented by corresponding right and left frame sequences in decoded first video content 310.
For instance,
In step 404, the second frame sequence is removed from the decoded first video content to form decoded second video content. In an embodiment, view extractor 304 may receive content control signal 116, which may indicate that the right perspective view is to be removed from decoded first video content 310. View extractor 304 may extract pixel data corresponding to the right (or left) perspective view from decoded first video content 310 to generate decoded second video content 312. For example, view extractor 304 may extract the right frame sequence corresponding to the right perspective view from decoded first video content 310 to generate decoded second video content 312. Referring to
In step 406, the decoded second video content is encoded to produce encoded second video content. Note that view adjustor 306 may optionally be present. When present, view adjustor 306 may receive and adjust decoded second video content 312 to form optionally adjusted video content 314. Otherwise, decoded second video content 312 may be passed directly to encoder 308. Encoder 308 encodes decoded second video content 312 or optionally adjusted video content 314 to generate second video content 114. Second video content 114 includes 2D content extracted from first video content 112, such as by extracting one of the right and left perspective views included in first video content 112, to leave only the other of the right and left perspective views in second video content signal 114.
In further embodiments, transcoding of video content may be performed in further ways. For instance, in step 204 of flowchart 200 (
In step 702 of flowchart 700, the first video content is decoded, the decoded first video content including a plurality of pairs of frame sequences that correspond to a plurality of right and left eye perspective views. For instance, as described above, decoder 302 may receive and decode first video content 112 to generate decoded first video content 310. Decoded first video content 310 may include three-dimensional content that provides multiple pairs of camera views. A display device may include a screen that is capable of displaying 3D content having multiple camera views, to provide for the display of “multiview” 3D content. For example, first video content 112 may include 3Dx or 3D-x content having a number of “x” camera views, such as “3D-4,” having four camera views, “3D-16,” having sixteen camera views, etc. The additional pairs of camera views enable viewers to “view behind” displayed 3D content by moving their heads left-right while watching the display screen. In 3D-4, in a first position, a viewer may be delivered a first 3D view with a first pair of camera views (e.g., first left and right perspective views). When the viewer moves their head left or right to a second position, the viewer may be delivered a second 3D view with a second pair of camera views (e.g., second left and right perspective views) that is slightly different from the first 3D view, enabling the viewer to have the illusion of viewing slightly behind the objects displayed in the first 3D view. If the content has more camera views than 3D-4, the viewer may be enabled to view even further behind displayed object by moving their head further left or right to further positions to be delivered further 3D views. Each pair of camera views (e.g., right and left perspective view pairs) may be represented by corresponding right and left frame sequences in decoded first video content 310.
For instance,
In step 704, at least one frame sequence is removed from the first video content to produce the second video content to include at least one pair of frame sequences. In an embodiment, view extractor 304 may receive content control signal 116, which may indicate that one or more pairs of perspective views is/are to be removed from decoded first video content 310. For example, content control signal 116 may indicate that one or more pairs of frame sequences are to be removed from decoded first video content 310 to produce decoded second video content 312 as a different type of 3D content from decoded first video content 310. Any number of frame sequence pairs may be removed to produce decoded second video content 312 having a reduced number of pairs of frame sequences (e.g., transcoding 3D-16 to 3D-8 by removing four pairs, transcoding 3D-6 to 3D-2 by removing two pairs, etc.). Furthermore, content control signal 116 may indicate an odd number of frame sequences are to be removed from decoded first video content 310 to produce decoded second video content 312 as 2D content (leaving a single frame sequence corresponding to a single perspective view). View extractor 304 may extract pixel data corresponding to the indicated perspective views from decoded first video content 310 to generate decoded second video content 312.
For example, referring to
In step 706, the decoded second video content is encoded to produce encoded second video content. Note that view adjustor 306 may optionally be present. When present, view adjustor 306 may receive and adjust decoded second video content 312 to form optionally adjusted video content 314. Otherwise, decoded second video content 312 may be passed directly to encoder 308. Encoder 308 encodes decoded second video content 312 or optionally adjusted video content 314 to generate second video content 114. Second video content 114 includes 3D content extracted from first video content 112 by extracting one or more pairs of right and left perspective views included in first video content 112, to leave only the other of the right and left perspective views in second video content signal 114. Alternatively, second video content 114 may include 2D content extracted from first video content 112 by extracting all right and left perspective views included in first video content 112 except for one perspective view, leaving a single perspective view second video content signal 114.
In another embodiment, transcoding of video content may be performed by modifying or entirely removing a difference file from received video content. In embodiments, video content may be transmitted in a compressed form of a base “reference frame” and difference information (e.g., in a difference file) that is used to define further frames of the video content stream. The difference information may include information that indicates which frames are to be generated based on the reference frame, and includes information to be used to modify the reference frame to generate one or more frames of the video content stream. The additional frames may be frames in a same frame sequence (e.g., a frame sequence for a same perspective view) as the reference frame, or frames in other frame sequences (e.g., frame sequences for other perspective views). Furthermore, more than one base reference frame may be present that is used to generate one or more other frames using included difference information. In embodiments, the difference information may be modified to remove one or more frame sequences from the video content stream to transcode the video content stream from a type of 3D content to 2D content or to another type of 3D content. For example, entries in a difference file may be directed to generating frames of one or more particular frame sequences that are desired to be removed from the video content. Those entries may be removed from the difference file to remove the one or more particular frame sequences.
For instance,
In step 902 of flowchart 900, the first video content is decoded, the decoded first video content including a first frame sequence as the first data and a difference file as the second data, the difference file containing difference information applicable to the decoded first frame sequence to generate a second frame sequence. As described above, decoder 302 may receive and decode first video content 112 to generate decoded first video content 310. In an embodiment, decoded first video content 310 may include a first frame sequence corresponding to a first perspective view and a difference file. The first frame sequence may include a sequence of one or more reference frames. The difference file contains difference information that may be applied to the reference frames of the first frame sequence to generate one or more additional frame sequences. If first video content 112 carries standard 3D content (e.g., 3D-2, having a pair of perspective views), the difference file may contain difference information applicable to the reference frames of the first frame sequence to generate the second frame sequence. If first video content 112 carries multiview 3D content having a plurality of pairs of perspective views, the difference file may contain difference information applicable to the reference frames of the first frame sequence to generate a second frame sequence, and one or more additional pairs of frame sequences.
In step 904, the difference file is modified to form decoded second video content. In an embodiment, view extractor 304 may receive content control signal 116, which may indicate that one or more pairs of perspective views is/are to be removed from decoded first video content 310. For example, content control signal 116 may indicate that a frame sequence, and/or one or more additional pairs of frame sequences, are to be removed from decoded first video content 310 to produce decoded second video content 312 as 2D content or as a different type of 3D content from decoded first video content 310. As such, the difference file may be modified to remove any number of frame sequences to produce decoded second video content 312 having a reduced number of pairs of frame sequences (e.g., transcoding 3D-16 to 3D-8 by removing eight pairs, transcoding 3D-6 to 3D-2 by removing four pairs, transcoding 3D-6 to 2D be removing 5 pairs, etc.). View extractor 304 may extract any amount of difference information from the difference file corresponding to the indicated perspective views from decoded first video content 310 to generate decoded second video content 312.
In step 906, the decoded second video content is encoded to produce encoded second video content. Decoded second video content 312 may include one or more frame sequences that include reference frames, one or more frames sequences that do not include reference frames, and may include a modified form of the difference file (with some difference information removed), or may not include the difference file at all (if the difference file was entirely removed by view extractor 304). Note that view adjustor 306 may optionally be present. When present, view adjustor 306 may receive and adjust decoded second video content 312 to form optionally adjusted video content 314. For instance, view adjustor 306 may adjust received frame sequences, may adjust information in a received difference file, and/or may reconstruct frame sequences from reference frames and difference information, may adjust the reconstructed frame sequences, and generate difference information for the reconstructed frame sequences that is entered into the difference file. Otherwise, decoded second video content 312 may be passed directly to encoder 308. Encoder 308 encodes decoded second video content 312 or optionally adjusted video content 314 to generate second video content 114. Second video content 114 does not include the frame sequences extracted from first video content 112 by removing difference information corresponding to one or more perspective views included in first video content 112.
As described above, content control signal 116 may be generated by control logic 118 to indicate that content of first video content 112 is to be cropped, is to have its resolution modified, is to have its color scheme modified, or is to be otherwise modified. In embodiments, as shown in
Resolution modifier 1002 is configured to reduce a resolution of frames of one or more frame sequences in decoded second video content 312 to produce one or more corresponding reduced resolution frame sequences included in optionally adjusted video content 314. For example, in an embodiment, resolution modifier 1002 may use techniques of image scaling to modify each frame of frame sequences having an unsupported display pixel resolution to a supported display pixel resolution, as indicated by content control signal 116. For instance, resolution modifier 1002 may use upsampling or interpolating to increase resolution, and may use subsampling or downsampling to decrease resolution. Resolution modifier 1002 may be optionally configured to modify color schemes (e.g., reduce a number of available pixel colors) for decoded second video content 312.
Frame cropper 1004 is configured to crop frames of one or more frame sequences included in decoded second video content 312 to produce one or more corresponding cropped frame sequences included in optionally adjusted video content 314. The cropped frames of the cropped frame sequence(s) have different aspect ratios (e.g., reduced heights and/or widths) from the corresponding frames of the one or more frame sequences included in decoded second video content 312. Frame cropper 1004 may crop frames of frame sequences having unsupported display aspect ratios so that each frame has a desired/supported display aspect ratio, as indicated by content control signal 116. Frame cropper 1004 may remove a portion of each image frame corresponding to an overlap object or region within the screen assembly, the overlap involving other and perhaps unrelated media content. In an embodiment, frame cropper 1004 may crop pixels from frames (e.g., by removing the corresponding pixel data from the corresponding frame data) to convert frames from a high definition format (e.g., 16:9 aspect ratio) to a standard format (e.g., a 4:3 aspect ratio), to convert frames from a movie theater format (e.g., 1.85:1 or 2.39:1 aspect ratio) to a high definition or standard format, and/or to convert frames to other sizes/aspect ratios. Techniques for cropping that may be used by frame cropper 1004 are well known to persons skilled in the relevant art(s).
Note that first video content 112 may include encrypted content (e.g., encrypted according to a public-private key or other encryption technique). For example, one or more frame sequences and/or a difference file (when present) in first video content 112 may be encrypted. As such, processing circuit 300 of
As described above, transcoders may be implemented in various types of devices and environments according to embodiments. For instance,
As shown in
As shown in
Transcoder 1130 is an example of transcoder 104 described herein that is configured to transcode 3D content from a number “x” of perspective views to a lower number of “x-n” perspective views. As shown in
Decrypter 1148 may be present to decrypt encrypted, encoded 3D content from one or more sources to gain access to the encoded 3D content, such that decoder 1132 may decode the encoded 3D content. Decrypter 1148 may perform any form of decryption to decrypt encrypted content, as would be known to persons skilled in the relevant art(s). Interpolator 1150 may be present to perform interpolation to combine frames of a pair of image frame sequences to create a simulated further camera perspective view. In this manner, transcoder 1130 can increase a number of frame sequences/perspective views for a media product beyond those that are present to accommodate higher types of 3D multiview content that may be requested. Furthermore, interpolator 1150 may be configured to increase a frame rate of one or more frame sequences by generating additional frames by interpolating between adjacent frames of a frame sequence (and/or existing frames may be repeated to increase the frame rate). Interpolator 1150 may perform any interpolation to generate interpolated frames and/or frame sequences, as would be known to persons skilled in the relevant art(s). Note that transcoder 1130 may optionally reduce a frame rate of one or more frame sequences by deleting some of the frames of the frame sequence(s). Encrypter 1152 may be present to encrypt encoded 3D content (e.g., encoded by encoder 1138) prior to being stored and/or transmitted from media device 1102, as desired. Encrypter 1152 may perform any form of encryption to encrypt content, as would be known to persons skilled in the relevant art(s).
Media device 1102 may be any type of media-related device mentioned elsewhere herein, such as a media player (e.g., a video receiver, a DVD player, etc.), a set top box, a media gateway, etc. Media device 1102 is configured to deliver video content (e.g., second video content 114 of
As shown in
“On demand” media server 1104 is an example of a media server that may supply content to media device 1102 for display at display screen 1118 on demand. Broadcast media server 1106 is an example of a media server that may broadcast content received by media device 1102 for display at display screen 1118. For example, on demand” media server 1104 and broadcast media server 1106 may be network based servers that are accessible by media device 1102 through one or more wired and/or wireless communication networks, which may include one or more LANs, WANS (e.g., the Internet), etc.
Satellite infrastructure 1108 may include a satellite that wirelessly transmits content that may be received at a satellite signal receiver 1112 coupled to media device 1102. Cable-fiber infrastructure 1110 may include a cable head-end that provides content to media device 1102 over a cable/fiber network.
Local external device 1116 may be an external device that couples to media device 1102. For example, local external device 1116 may include one or both of removable media storage 1140 (e.g., DVD, etc.) and a local media storage 1142 (e.g., a hard drive, memory devices, etc.). Example of local external device 1116 may be a dedicated storage device, a game console, etc.
It is noted that in embodiments, any number of devices in any configuration of a content communication network may be configured to perform transcoding. For example,
As shown in
For example, server 1202 may be present to provide content for display by display device 1212. Server 1202 may be a network based server that provides content from media source 1220a as on-demand, broadcasted content, or otherwise provides content for display by display device 1212 (e.g., in the form of network or Internet based video files, such as MPEG files, etc.). Peer 1204 may be present as a peer (e.g., to server 1202) to assist in providing content for display by display device 1212. As such, media source 1220b of peer 1204 may provide similar types of content as media source 1220a of server 1202. Cable head-end 1206 may be present to provide content for display by display device 1212 over a cable-fiber infrastructure, as may be described in additional detail elsewhere herein. As such, media source 1220c of cable head-end 1206 may provide television content, movies, music, etc.
Gateway/STB/AP 1208 may be a gateway device (e.g., that interfaces different types of networks), a set top box, an access point, or other communication interface between server 1202, peer 1204 and/or cable head-end 1206 and intermediate device 1210. As such, gateway/STB/AP 1208 may transmit content from server 1202, peer 1204 and/or cable head-end 1206 to intermediate device 1210 and/or display device 1212. Furthermore, when gateway/STB/AP 1208 is a set top box, media source 1220d of gateway/STB/AP 1208 may provide stored television content, movies, etc.
Intermediate device 1210 is optional, and when present, may be a media player (e.g., a DVD player, etc.), a game console, a computer, etc., that may generate corresponding content for display by display device 1212 and/or may provide content received through gateway/STB/AP 1208 to display device 1212. As such, media source 1220e of intermediate device 1210 may provide gaming content, DVD content, video content from a media player, etc. Note that media device 1214 may be present in addition to intermediate device 1210 and/or instead of intermediate device 1210. Media device 1214 may be a media player (e.g., a DVD player, etc.), a game console, a computer, etc., that may generate corresponding content for display by display device 1212. As such, media source 1220g of media device 1214 may provide similar types of content as media source 1220e of intermediate device 1210.
Display device 1212 may be similar to display device 1114 of
Communication pathways 1216a, 1216b, 1216c, and 1216d may include one or more of any type of communication pathway, network, and/or link described elsewhere herein or otherwise known (e.g., a LAN, WAN, the Internet, cable, satellite, a USB link, etc.). For instance, communication pathways 1216a, 1216b, 1216c, and 1216d may include one or more network nodes or devices (e.g., routers, switches, hubs, etc.) as needed to transfer information for a particular configuration of a communication network. Alternatively, one or more of communication pathways 1216a, 1216b, 1216c, and 1216d may be a single communication link.
Thus, in network 1200 of
Furthermore, content may be generated and/or provided by gateway/STB/AP 1208 (by media source 1220d), and the content may be transcoded at gateway/STB/AP 1208 (by transcoder 104d) to meet the capabilities of the screen of display device 1212, according to viewer preferences of viewers of display device 1212, according to bandwidth restrictions (e.g., bandwidth restrictions of communication pathways 1216b and 1216c, permanent or temporary), according to a current load, and/or according to other criteria.
Furthermore, content may be generated and/or provided by intermediate device 1210 (by media source 1220e), and the content may be transcoded at intermediate device 1210 (by transcoder 104e) to meet the capabilities of the screen of display device 1212, according to viewer preferences of viewers of display device 1212, according to a current load, according to bandwidth restrictions (e.g., bandwidth restrictions of communication pathways 1216c, permanent or temporary), and/or according to other criteria. Content may be generated and/or provided by media device 1214 (by media source 1220g), and the content may be transcoded at media device 1214 (by transcoder 104g) to meet the capabilities of the screen of display device 1212, according to viewer preferences of viewers of display device 1212, according to bandwidth restrictions (e.g., bandwidth restrictions of communication pathway 1216d, permanent or temporary), and/or according to other criteria.
Still further, content may be generated and/or provided by display device 1212 (by media source 1220f), and the content may be transcoded at display device 1212 (by transcoder 104f) to meet the capabilities of the screen of display device 1212, and/or according to viewer preferences of viewers of display device 1212.
C. Example Display Device Screen EmbodimentsEmbodiments are described herein for the transcoding of two-dimensional and three-dimensional content that may be displayed by various types of displays. For example, some display screens are configured for displaying two-dimensional content, although they may display two-dimensional images that may be combined to form three-dimensional images by special glasses worn by users. Some other types of display screens are capable of display two-dimensional content and three-dimensional content without the users having to wear special glasses using techniques of autostereoscopy. According to embodiments, display drivers may supply transcoded content for display on a display screen. Example display devices and screens are described as follows.
As described above, display devices that display transcoded content, such as display devices 1114 and 1212, may be implemented in various ways. For instance, such a display device may be a television display (e.g., an LCD (liquid crystal display) television, a plasma television, etc.), a computer monitor, or any other type of display device. The display device may include any suitable type or combination of light and image generating devices, including an LCD screen, a plasma screen, an LED (light emitting device) screen (e.g., an OLED (organic LED) screen), etc. Furthermore, the display device may include any suitable type of light filtering device, such as a parallax barrier (e.g., an LCD filter, a mechanical filter (e.g., that incorporates individually controllable shutters), etc.) and/or a lenticular lens, and may be configured in any manner, including as a thin-film device (e.g., formed of a stack of thin film layers), etc. Furthermore, the display device may include any suitable light emitting device as backlighting, including a panel of LEDs or other light emitting elements.
For instance,
Examples of light manipulator 1304 include a parallax barrier and a lenticular lens. For instance, light manipulator 1304 may be a parallax barrier that has a layer of material with a series of precision slits. The parallax barrier is placed proximal to a light emitting pixel array so that a user's eyes each see a different set of pixels to create a sense of depth through parallax. In another embodiment, light manipulator 1304 may be a lenticular lens that includes an array of magnifying lenses configured so that when viewed from slightly different angles, different images are magnified. Such a lenticular lens may be used to deliver light from a different set of pixels of a pixel array to each of the user's eyes to create a sense of depth. Embodiments are applicable display devices that include such light manipulators, include other types of light manipulators, and that may include multiple light manipulators.
As shown in
In contrast,
Display device 1400 receives one or more control signals 1406 (e.g., from a media device or other device describe herein) that are configured to place screen 1402 in a desired display mode (e.g., either a two-dimensional display mode or a three-dimensional display mode), and/or to configure three-dimensional characteristics of any number and type as described above, such as configuring adaptable light manipulator 1404 to deliver different types of three-dimensional images, to deliver three-dimensional images to different/moving regions of a viewing space, and to deliver two-dimensional and/or three-dimensional images from any number of regions of screen 1402 to the viewing space.
As shown in
Content signals 1308 and 1408 may include video content according to any suitable format. For example, content signals 1308 and 1408 may include video content delivered over an HDMI (High-Definition Multimedia Interface) interface, over a coaxial cable, as composite video, as S-Video, a VGA (video graphics array) interface, etc. Note that control signals 1306 and 1406 may be provided separately or in a same signal stream to display devices as their corresponding one of content signals 1308 and 1408.
Further description regarding using a parallax barrier to deliver three-dimensional views, including adaptable versions of parallax barriers, is provided in pending U.S. patent application Ser. No. 12/845,409, titled “Display With Adaptable Parallax Barrier,” in pending U.S. patent application Ser. No. 12/845,440, titled “Adaptable Parallax Barrier Supporting Mixed 2D And Stereoscopic 3D Display Regions,” and in pending U.S. patent application Ser. No. 12/845,461, titled “Display Supporting Multiple Simultaneous 3D Views,” which are each incorporated by reference herein in their entireties. Further description regarding using a lenticular lens to deliver three-dimensional views, including adaptable versions of lenticular lenses, is provided in pending U.S. patent application Ser. No. 12/774,307, titled “Display with Elastic Light Manipulator,” which is incorporated by reference herein in its entirety. Example description regarding backlighting that may be integrated in a display that provides three-dimensional views is provided in pending U.S. patent application Ser. No. 12/982,020, titled “Backlighting Array Supporting Adaptable Parallax Barrier,” filed on Dec. 30, 2010, which is incorporated by reference herein in its entirety.
D. Example Electronic Device ImplementationsEmbodiments may be implemented in hardware, software, firmware, or any combination thereof. For example, transcoder 104, content interface circuitry 106, processing circuit 108, output interface circuitry 110, control logic 118, processing circuit 300, decoder 302, view extractor 304, view adjustor 306, encoder 308, resolution modifier 1002, frame cropper 1004, processing circuitry 1122, multisource weaver 1128, transcoder 1130, 3Dx decoder 1132, view extractor 1134, view adjustor 1136, encoder 1138, decrypter 1148, interpolator 1150, encrypter 1152, and/or transcoders 104a-104g may be implemented as computer program code configured to be executed in one or more processors, and/or as circuit logic (e.g., transistors, resistors, capacitors, field programmable gate arrays, application specific integrated circuits, etc.).
For instance,
Electronic device 1500 also includes a primary or main memory 1506, such as random access memory (RAM). Main memory 1506 has stored therein control logic 1528A (computer software), and data.
Electronic device 1500 also includes one or more secondary storage devices 1510. Secondary storage devices 1510 include, for example, a hard disk drive 1512 and/or a removable storage device or drive 1514, as well as other types of storage devices, such as memory cards and memory sticks. For instance, electronic device 1500 may include an industry standard interface, such a universal serial bus (USB) interface for interfacing with devices such as a memory stick. Removable storage drive 1514 represents a floppy disk drive, a magnetic tape drive, a compact disk drive, an optical storage device, tape backup, etc.
As shown in
Removable storage drive 1514 interacts with a removable storage unit 1516. Removable storage unit 1516 includes a computer useable or readable storage medium 1524 having stored therein computer software 1528B (control logic) and/or data. Removable storage unit 1516 represents a floppy disk, magnetic tape, compact disk, DVD, optical storage disk, or any other computer data storage device. Removable storage drive 1514 reads from and/or writes to removable storage unit 1516 in a well known manner.
Electronic device 1500 further includes a communication or network interface 1518. Communication interface 1518 enables the electronic device 1500 to communicate with remote devices. For example, communication interface 1518 allows electronic device 1500 to communicate over communication networks or mediums 1542 (representing a form of a computer useable or readable medium), such as LANs, WANs, the Internet, etc. Network interface 1518 may interface with remote sites or networks via wired or wireless connections.
Control logic 1528C may be transmitted to and from electronic device 1500 via the communication medium 1542.
Any apparatus or manufacture comprising a computer useable or readable medium having control logic (software) stored therein is referred to herein as a computer program product or program storage device. This includes, but is not limited to, electronic device 1500, main memory 1506, secondary storage devices 1510, and removable storage unit 1516. Such computer program products, having control logic stored therein that, when executed by one or more data processing devices, cause such data processing devices to operate as described herein, represent embodiments of the invention.
Devices in which embodiments may be implemented may include storage, such as storage drives, memory devices, and further types of computer-readable media. Examples of such computer-readable storage media include a hard disk, a removable magnetic disk, a removable optical disk, flash memory cards, digital video disks, random access memories (RAMs), read only memories (ROM), and the like. As used herein, the terms “computer program medium” and “computer-readable medium” are used to generally refer to the hard disk associated with a hard disk drive, a removable magnetic disk, a removable optical disk (e.g., CDROMs, DVDs, etc.), zip disks, tapes, magnetic storage devices, MEMS (micro-electromechanical systems) storage, nanotechnology-based storage devices, as well as other media such as flash memory cards, digital video discs, RAM devices, ROM devices, and the like. Such computer-readable storage media may store program modules that include computer program logic for transcoder 104, content interface circuitry 106, processing circuit 108, output interface circuitry 110, control logic 118, processing circuit 300, decoder 302, view extractor 304, view adjustor 306, encoder 308, resolution modifier 1002, frame cropper 1004, processing circuitry 1122, multisource weaver 1128, transcoder 1130, 3Dx decoder 1132, view extractor 1134, view adjustor 1136, encoder 1138, decrypter 1148, interpolator 1150, encrypter 1152, and/or transcoders 104a-104g, flowchart 200, flowchart 400, flowchart 700, flowchart 900 (including any one or more steps of flowcharts 200, 400, 700 and 900), and/or further embodiments of the present invention described herein. Embodiments of the invention are directed to computer program products comprising such logic (e.g., in the form of program code or software) stored on any computer useable medium (e.g., a computer readable storage medium). Such program code, when executed in one or more processors, causes a device to operate as described herein.
As described herein, electronic device 1500 may be implemented in association with a variety of types of display devices. For instance, electronic device 1500 may be one of a variety of types of media devices, such as a stand-alone display (e.g., a television display such as flat panel display, etc.), a computer, a game console, a set top box, a digital video recorder (DVR), a networking device (e.g., a router, a switch, etc.), a server, a cable head-end, or other electronic device mentioned elsewhere herein, etc. Media content that is delivered in two-dimensional or three-dimensional form according to embodiments described herein may be stored locally or received from remote locations. For instance, such media content may be locally stored for playback (replay TV, DVR), may be stored in removable memory (e.g. DVDs, memory sticks, etc.), may be received on wireless and/or wired pathways through a network such as a home network, through Internet download streaming, through a cable network, a satellite network, and/or a fiber network, etc. For instance,
Media input interfaces 1602 includes one or more media input interfaces, wired or wireless, for received media, such as those described elsewhere herein. For instance, media input interface 1602 may include an interface for receiving media content from a local media player device, such as a DVD player, a memory stick, a computer media player, etc., and may include commercially available (e.g., USB, HDMI, etc.) or proprietary interfaces for receiving local media content. Media input interface 1602 may include an interface for receiving media content from a remote source, such as the Internet, satellite, cable, etc., and may include commercially available (e.g., WLAN, Data Over Cable Service Interface Specification (DOCSIS), etc.) or proprietary interfaces for receiving remote media content.
Host processing circuitry 1604 may include one or more integrated circuit chips and/or additional circuitry, which may be configured to execute software/firmware, including operating system 1620 and application programs 1622.
User input devices 1606 includes one or more user input devices that a user may use to interact with display system 1600. Examples of user input devices are described elsewhere herein, such as a keyboard, a mouse/pointer, etc.
Display processing circuitry 1608 may be included in host processing circuitry 1604, or may be separate from host processing circuitry 1604 as shown in
Adaptable display driver circuitry 1610 includes one or more display driver circuits for an adaptable display.
Adaptable 2D, 3Dx and mixed display 1612 includes a display that is adaptable, and is capable of displaying 2D content, 3D content, and a mixture of 2D and/or 3D content. Examples of adaptable 2D, 3Dx and mixed display 1612 are described elsewhere herein.
First-third interface circuitry 1614-1618 is optional. For instance, as shown in
OS 1620 provides a platform on which programs, such as application programs 1622, may be executed. OS 1620 may be implemented in software (e.g., computer programs and/or data). OS 1620 manages hardware, provides common services, enables execution of application programs 1622, and enables application programs 1622 to access hardware. Application programs 1622 may call OS 1620 and/or be interrupted by OS 1620 for various reasons.
Application programs 1622 are optional, and are examples of applications that may be interfaced with displays 1612. One or more of application programs 1622 may separately or simultaneously execute and interact with OS 1620 to provide content for display by displays display 1612, include internally generated content and/or externally received content. Application programs 1622 may set up and control multiple separate display screen regions of display 1612 that each display 2D, 3D, or 3Dx content.
API supporting regional 2D/3Dx 1630 is configured to interface one or more applications (e.g., application programs 1622) with OS 1620, and thereby interface the applications with display device 1612. API supporting regional 2D/3Dx 1630 is configured to enable applications to access various display functions, including enabling regional definition for 2D, 3D, and 3Dx content displayed by display screens and further display functions.
User input interfaces 1624 are configured to receive user input to enable a person to interact with display system 1600, application programs 1622, and content displayed by display 1612.
2D, 3Dx & mixed display driver interface 1626 enables application programs 1622 to interface with OS 1620 via API 1630 to provide and control two- and/or three-dimensional content displayed at a display device 1612. For instance, 2D, 3Dx & mixed display driver interface 1626 may forward commands (e.g., from application programs 1622) to 2D only driver variant 1632 when a 2D-only display is present, enabling only 2D-related commands to be processed. 2D, 3Dx & mixed display driver interface 1626 may forward commands to 3Dx only driver variant 1634 when display 1612 is present, enabling 2D or 3Dx related commands to be processed. 2D, 3Dx & mixed display driver interface 1626 may forward commands to mixed 2D and 3Dx driver variant 1636 when display 1612 is regionally configurable, enabling regional 2D or 3Dx related commands to be processed.
Shell operations 1628 may be present in OS 1620 to control and/or enable user configuration of environmental properties, such as the 2D and/or 3D display configuration of an environmental background, of desktop icons, of displayed windows, etc. In embodiments, shell operations 1628 may be implemented in hardware, software, firmware, or any combination thereof, including as a shell operations module.
Transcoder 104a may be present in OS 1620 to provide for transcoding of content, as described herein.
Note that the embodiment of display system 1600 shown in
Example further description regarding video communication pathways in which embodiments may be included, of devices in which embodiments may be included, and of exemplary frame formats is provided in U.S. patent application Ser. No. 12/982,088, titled “Communication Infrastructure Including Simultaneous Video Pathways for Multi-Viewer Support,” U.S. patent application Ser. No. 12/982,062, issued as U.S. Pat. No. 8,687,042, titled “Set-Top Box Circuitry Supporting 2D and 3D Content Reductions to Accommodate Viewing Environment Constraints,” and U.S. patent application Ser. No. 12/982,289, titled “Frame Formatting Supporting Mixed Two and Three Dimensional Video Data Communication,” each of which are filed on Dec. 30, 2010, and are incorporated by reference herein in their entireties.
D. EmbodimentsIn an embodiment, a method is performed on first video content, the first video content being three-dimensional video content, the method supporting a visual presentation to a viewer, the method comprising: receiving the first video content that has first data and second data, the first data representative of a first perspective view, and the second data representative of a second perspective view; selecting to support the visual presentation to the viewer in either three-dimensions or two-dimensions; forwarding, upon selecting the three-dimensions, the first video content; and extracting, upon selecting the two-dimensions, the second data from the first video content to produce second video content, and forwarding the second video content.
In an embodiment, the first video content is encoded content, the method further comprising decoding the first video content.
In an embodiment, the first video content is encrypted content, the method further comprising decrypting the first video content.
In an embodiment, the second video content comprises encoded content.
In an embodiment, the extracting comprises: decoding the first video content, the decoded first video content including a first frame sequence as the first data and a second frame sequence as the second data; removing the second frame sequence from the decoded first video content to form decoded second video content; and encoding the decoded second video content to produce encoded second video content.
In an embodiment, the extracting comprises: decoding the first video content, the decoded first video content including a first frame sequence as the first data and a difference file as the second data, the difference file containing difference information applicable to the decoded first frame sequence to generate a decoded second frame sequence; and removing the difference file from the decoded first video content to form decoded second video content; and encoding the decoded second video content to produce encoded second video content.
In another embodiment, video circuitry is used with first video content, the first video content being representative of a plurality of perspective views that support a multi-dimensional visual presentation to a viewer, the video circuitry comprising: content interface circuitry; processing circuitry that receives the first video content via the content interface circuitry, and the processing circuitry removes data from the first video content corresponding to at least one of the plurality of perspective views to produce second video content; and output interface circuitry through which the processing circuitry delivers the second video content.
In an embodiment, the first video content is encoded content, and the processing circuitry includes a decoder that performs decoding of at least a portion of the first video content.
In an embodiment, the first video content is encrypted content, and the processing circuitry includes a decrypter that performs decryption of at least a portion of the first video content.
In an embodiment, the processing circuitry changes resolution of the second video content.
In an embodiment, the processing circuitry removes at least one frame sequence from the first video content to produce the second video content to include a single frame sequence corresponding to a single perspective view.
In an embodiment, the processing circuitry removes at least one frame sequence from the first video content to produce the second video content to include a pair of frame sequences corresponding to first and second eye perspective views.
In an embodiment, the processing circuitry removes at least one frame sequence from the first video content to produce the second video content to include a plurality of pairs of frame sequences corresponding to a plurality of pairs of first and second eye perspective views that correspond to three-dimensional views of a multi-view scene.
In an embodiment, the processing circuitry removes a difference file from the first video content to produce the second video content, the difference file containing difference information applicable to one or more frame sequences of the first video content to generate at least one additional frame sequence.
In an embodiment, the video circuitry further comprises: a frame cropper implemented by the processing circuitry that crops frames of a first frame sequence included in the first video content to produce a cropped frame sequence included in the second video content, the cropped frames of the cropped frame sequence having a different aspect ratio from frames of the first frame sequence.
In an embodiment, the video circuitry further comprises: a resolution modifier implemented by the processing circuitry that reduces a resolution of frames of a first frame sequence in the first video content to produce a reduced resolution frame sequence included in the second video content.
In an embodiment, the processing circuitry removes at least one frame sequence from the first video content to produce the second video content as a result of a received indication of available communication bandwidth.
In an embodiment, the video circuitry is included in a computer, a server, a game console, a set top box, a digital video recorder, a stereo receiver, a mobile phone, a gateway device, an access point, or a display device.
In another embodiment, a device is associated with first video content, the first video content being representative of a plurality of perspective views that support a multi-dimensional visual presentation to a viewer, the device comprising: content interface circuitry; processing circuitry that receives the first video content via the content interface circuitry, and the processing circuitry removes data from the first video content corresponding to at least one of the plurality of perspective views to produce second video content; and output interface circuitry through which the processing circuitry delivers the second video content.
In an embodiment, the device is a computer, a server, a game console, a set top box, a digital video recorder, a stereo receiver, a mobile phone, a gateway device, an access point, or a display device.
IV. ConclusionWhile various embodiments of the present invention have been described above, it should be understood that they have been presented by way of example only, and not limitation. It will be apparent to persons skilled in the relevant art that various changes in form and detail can be made therein without departing from the spirit and scope of the invention. Thus, the breadth and scope of the present invention should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.
Claims
1. A method performed on video content, the video content being three-dimensional video content, the method supporting a visual presentation to a viewer, the method comprising:
- receiving the video content that has first data and second data, the first data representative of a first perspective view, and the second data representative of a second perspective view;
- selectively processing the video content to delete the second data from the video content; and
- forwarding the video content that has been selectively processed.
2. The method of claim 1, wherein said selectively processing the video content to delete the second data from the video content produces the video content that has been selectively processed to include a single frame sequence corresponding to a single perspective view.
3. The method of claim 1, further comprising:
- selecting to support the visual presentation to the viewer in either three-dimensions or two-dimensions;
- forwarding, upon selecting the three-dimensions, the video content; and
- wherein said selectively processing the video content includes selectively processing upon selecting the two-dimensions.
4. The method of claim 1, wherein the video content is encoded content, the method further comprising:
- decoding the video content prior to selectively processing the video content; and
- encoding the video content that has been selectively processed prior to said forwarding.
5. The method of claim 1, wherein the video content is encrypted content, the method further comprising:
- decrypting the video content prior to selectively processing the video content.
6. The method of claim 1, wherein said selectively processing comprises:
- decoding the video content, the decoded video content including a first frame sequence as the first data and a second frame sequence as the second data;
- removing the second frame sequence from the decoded video content; and
- encoding the decoded video content from which the second frame sequence was removed to produce encoded video content that has been selectively processed.
7. Video circuitry configured to be used with video content, the video content being representative of a plurality of perspective views that support a multi-dimensional visual presentation to a viewer, the video circuitry comprising:
- processing circuitry configured to: receive the video content, and selectively process the video content to remove data corresponding to at least one of the plurality of perspective views, the data including at least one frame sequence; and
- output interface circuitry through which the processing circuitry is configured to deliver the video content that has been selectively processed.
8. The video circuitry of claim 7, wherein the processing circuitry is configured to remove the at least one frame sequence from the first video content to produce the video content that has been selectively processed to include a single frame sequence corresponding to a single perspective view.
9. The video circuitry of claim 7, wherein the video content is encoded content, and the processing circuitry includes a decoder configured to decode at least a portion of the video content subsequent to receiving the video content and prior to selectively processing the video content.
10. The video circuitry of claim 7, wherein the video content is encrypted content, and the processing circuitry includes a decrypter configured to decrypt at least a portion of the video content subsequent to receiving the video content and prior to selectively processing the video content.
11. The video circuitry of claim 7, wherein the processing circuitry is configured to change a resolution of the video content that has been selectively processed.
12. The video circuitry of claim 7, wherein the processing circuitry removes at least one frame sequence from the first video content to produce the second video content to include a pair of frame sequences corresponding to first and second eye perspective views.
13. The video circuitry of claim 7, wherein the processing circuitry is configured to remove the at least one frame sequence from the video content to produce the video content that has been selectively processed as a result of a received indication of available communication bandwidth.
14. The video circuitry of claim 7, wherein video circuitry is included in a computer, a server, a game console, a set top box, a digital video recorder, a stereo receiver, a mobile phone, a gateway device, an access point, or a display device.
15. A device associated with video content, the video content being representative of a plurality of perspective views that support a multi-dimensional visual presentation to a viewer, the device comprising:
- processing circuitry configured to: receive the video content via content interface circuitry, and remove data from the video content corresponding to at least one of the plurality of perspective views to alter the video content to have a single frame sequence corresponding to a single perspective view.
16. The device of claim 15, further comprising:
- the content interface circuitry; and
- output interface circuitry through which the processing circuitry delivers the altered video content.
17. The device of claim 15, wherein the plurality of perspective views comprises more than two perspective views; and
- wherein the processing circuitry is configured to: remove data from the video content corresponding to at least two of the plurality of perspective views.
18. The device of claim 15, wherein the processor is configured to remove data by removing pixel data from the video content corresponding to the at least one of the plurality of perspective views.
19. The device of claim 15, wherein the at least one of the plurality of perspective views is identified to be removed according to header information of a frame in a frame sequence.
20. The device of claim 15 wherein the device is a computer, a server, a game console, a set top box, a digital video recorder, a stereo receiver, a mobile phone, a gateway device, an access point, or a display device.
Type: Application
Filed: Feb 6, 2015
Publication Date: Jun 4, 2015
Inventors: James D. Bennett (Hroznetin), Jeyhan Karaoguz (Irvine, CA)
Application Number: 14/616,130