- Number
- 20190096028
- Published
- 2019-03-28
- Filed
- 2017-09-26
- Assignee
- Disney Enterprises, Inc.
- Inventors
- Mitchell; Kenneth J. et al.
- CPC
- G06F9/5016; G06T1/60; G06F9/50; G06F9/5044; G06F12/0802
- Verdict
- Set aside memory allocation for seamless media content presentation, technical infra
- Source
- Google Patents · FreePatentsOnline
Abstract
A system for performing memory allocation for seamless media content presentation includes a computing platform having a CPU, a GPU having a GPU memory, and a main memory storing a memory allocation software code. The CPU executes the memory allocation software code to transfer a first dataset of media content to the GPU memory, seamlessly present the media content to a system user, register a location of the system user during the seamless presentation of the media content, and register a timecode status of the media content at the location. The CPU further executes the memory allocation software code to identify a second dataset of the media content based on the location and the timecode status, transfer a first differential dataset to the GPU memory, continue to seamlessly present the media content to the system user, and transfer a second differential dataset out of the GPU memory.
Background
BACKGROUND
The growing popularity of Virtual Reality (VR) technologies has resulted in an increase in real-time rendering performance requirements, while concurrently demanding high fidelity and immersive content for viewers. The storage requirements for datasets utilized in VR applications can easily reach tens of Gigabytes, which exceeds the memory capacity of many graphics processing units (GPUs).SUMMARY
There are provided systems and methods for performing memory allocation for seamless media content presentation, substantially as shown in and/or described in connection with at least one of the figures, and as set forth more completely in the claims.
Claims
1. A media content presentation system comprising: a computing platform having a central processing unit (CPU), a graphics processing unit (GPU) having a GPU memory, and a main memory storing a memory allocation software code; the CPU configured to execute the memory allocation software code to: transfer a first dataset of a video content from a media content storage to the GPU memory, wherein the video content is indexed according to a plurality of timecodes; seamlessly present the video content to a system user by the GPU utilizing the first dataset, wherein the first dataset presents the video content to the system user from a first viewpoint corresponding to a first location of the system user; register a second location of the system user during the seamless presentation of the video content to the system user by the GPU utilizing the first dataset, wherein the second location is different than the first location; register a current timecode of the plurality of timecodes of the video content during the seamless presentation of the video content to the system user by the GPU utilizing the first dataset; identify a second dataset of the video content based on the second location of the system user and the current timecode of the video content, wherein the second dataset presents the video content to the system user from a second viewpoint corresponding to the second location of the system user, wherein the second viewpoint is different than the first viewpoint; transfer a first differential dataset to the GPU memory, the first differential dataset comprising data included in the second dataset but omitted from the first dataset; and continue to seamlessly present the video content to the system user from the second viewpoint by the GPU utilizing at least the first differential dataset.
8. A method for use by a media content presentation system including a computing platform having a central processing unit (CPU), a graphics processing unit (GPU) having a GPU memory, and a main memory storing a memory allocation software code, the method comprising: transferring, using the CPU, a first dataset of a video content from a media content storage to the GPU memory, wherein the video content is indexed according to a plurality of timecodes; seamlessly presenting the video content to a system user by the GPU utilizing the first dataset, wherein the first dataset presents the video content to the system user from a first viewpoint corresponding to a first location of the system user; registering, using the CPU, a second location of the system user during the seamless presentation of the video content to the system user by the GPU utilizing the first dataset wherein the second location is different than the first location; registering, using the CPU, a current timecode of the plurality of timecodes status of the video content during the seamless presentation of the video content to the system user by the GPU utilizing the first dataset; identifying, using the CPU, a second dataset of the video content based on the second location of the system user and the current timecode of the video content, wherein the second dataset presents the video content to the system user from a second viewpoint corresponding to the second location of the system user, wherein the second viewpoint is different than the first viewpoint; transferring, using the CPU, a first differential dataset to the GPU memory, the first differential dataset comprising data included in the second dataset but omitted from the first dataset; and continuing to seamlessly present, using the CPU, the media video content to the system user from the second viewpoint by the GPU utilizing at least the first differential dataset.
15. A computer-readable non-transitory medium having stored thereon instructions, which when executed by a central processing unit (CPU) of a media content presentation system, instantiate a method comprising: transferring a first dataset of a video content from a media content storage to the GPU memory, wherein the video content is indexed according to a plurality of timecodes; seamlessly presenting the video content to a system user by the GPU utilizing the first dataset, wherein the first dataset presents the video content to the system user from a first viewpoint corresponding to a first location of the system user; registering a second location of the system user during the seamless presentation of the video content to the system user by the GPU utilizing the first dataset, wherein the second location is different than the first location; registering a current timecode of the plurality of timecodes of the video content during the seamless presentation of the video content to the system user by the GPU utilizing the first dataset; identifying a second dataset of the video content based on the second location of the system user and the current timecode of the video content, wherein the second dataset presents the video content to the system user from a second viewpoint corresponding to the second location of the system user, wherein the second viewpoint is different than the first viewpoint; transferring a first differential dataset to the GPU memory, the first differential dataset comprising data included in the second dataset but omitted from the first dataset; and continuing to seamlessly present the video content to the system user from the second viewpoint by the GPU utilizing at least the first differential dataset.