Imaging control apparatus, imaging control method, and non-transitory computer-readable medium
US-2019082108-A1 · Mar 14, 2019 · US
US10484690B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10484690-B2 |
| Application number | US-201515570575-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 4, 2015 |
| Priority date | Jun 4, 2015 |
| Publication date | Nov 19, 2019 |
| Grant date | Nov 19, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Techniques related to compositing video content are discussed. Such techniques may include generating transparency data for a surface of first video content and storing it in a stream out buffer, accessing the transparency data via the stream out buffer when there is no change to the surface of the first video content, and compositing the first video content with second video content based on the accessed transparency data.
Opening claim text (preview).
What is claimed is: 1. A method for adaptively batching encode tasks for slow motion video recording comprising: capturing, via a camera operating in a slow motion video recording mode, first video at a first frame rate of not less than twice a second frame rate of a standard video recording mode; buffering, via a memory and in response to the first video being captured in the slow motion video recording mode at the first frame rate, a plurality of first video frames of the first video to generate an encode batch comprising the plurality of first video frames; submitting, via a central processor, the encode batch comprising the plurality of first video frames for encoding to a graphics processor; encoding, during a continuous active state of the graphics processor, the encode batch to generate a first encoded bitstream, wherein the graphics processor does not enter a low power state during the continuous active state; capturing, via the camera in the standard video recording mode, second video at the second frame rate; buffering, via the memory and in response to the second video being captured in the standard video recording mode at the second frame rate, a plurality of second video frames of the second video; submitting, via the central processor, the second video frames for encoding to the graphics processor; and encoding, via the graphics processor, the second video frames to generate a second encoded bitstream, wherein the graphics processor enters the low power state between encode of each of the second video frames. 2. The method of claim 1 , further comprising: buffering, at least partially during the encoding of the encode batch, a plurality of third video frames of the first video to generate a second encode batch comprising the plurality of third video frames. 3. The method of claim 2 , further comprising: entering the graphics processor into the low power state upon completion of the encode batch; and encoding, during a second continuous active state of the graphics processor, the second encode batch to generate a third bitstream. 4. The method of claim 1 , further comprising: entering the slow motion video recording mode based on a requested frame capture rate comprising the first frame rate, wherein the first frame rate is not less than 120 fps. 5. The method of claim 1 , further comprising: entering the slow motion video recording mode based on a slow motion video recording request signal. 6. The method of claim 1 , further comprising: setting a batch size associated with the encode batch, wherein the batch size determines a number of video frames in the plurality of video frames. 7. The method of claim 1 , further comprising: implementing a main thread to provide the buffering of the plurality of first video frames to generate the encode batch comprising the plurality of first video frames; and implementing a worker thread to provide the submitting of the encode batch comprising the plurality of first video frames for encoding and to monitor the encoding of the encode batch. 8. The method of claim 7 , wherein the main thread is to add each of the first video frames to a buffer to generate the encode batch and to increase a buffer counter based on adding each of the first video frames. 9. The method of claim 8 , wherein the worker thread is to fetch the first video frames from the buffer based on the buffer counter reaching a batch depth associated with the encode batch and provide the first video frames to the graphics processor for encoding. 10. The method of claim 9 , wherein the worker thread is further to, upon a particular frame of the first video frames completing encoding, release a buffer portion of the buffer associated with the particular frame. 11. The method of claim 1 , wherein submitting the encode batch comprises sequentially submitting the plurality of first video frames of the encode batch. 12. The method of claim 1 , wherein encoding the encode batch comprises encoding two or more of the plurality of first video frames in parallel. 13. A system for adaptively batching encode tasks for slow motion video recording comprising: a memory comprising a buffer for storing video frames; a camera to: capture, in a slow motion video record mode, first video at a first frame rate of not less than twice a second frame rate of a standard video record mode; and capturing, in the standard video record mode, second video at the second frame rate; a central processor coupled to the memory, the central processor to: store to the buffer, in response to the first video being captured in the slow motion video record mode, a plurality of first video frames of the first video to generate an encode batch comprising the plurality of first video frames; and store to the buffer, in response to the second video being captured in the standard motion video record mode, a plurality of second video frames of the second video; and a graphics processor to: encode, during a continuous active state of the graphics processor, the encode batch to generate an encoded bitstream, wherein the graphics processor does not enter a low power state during the continuous active state; and encode the second video frames to generate a second encoded bitstream, wherein the graphics processor enters the low power state between encode of each of the second video frames. 14. The system of claim 13 , wherein the central processor is further to store to the buffer, at least partially during the encode of the encode batch, a plurality of third video frames of the first video to generate a second encode batch comprising the plurality of third video frames. 15. The system of claim 13 , wherein the central processor is further to enter the slow motion video record mode based on a requested frame capture rate comprising the first frame rate, wherein the first frame rate is not less than 120 fps. 16. The system of claim 13 , wherein the central processor is further to implement a main thread to add the first video frames to the buffer to generate the encode batch comprising the plurality of first video frames and to increase a buffer counter based on an addition of each of the first video frames, and wherein the central processor is further to implement a worker thread to submit the encode batch comprising the plurality of first video frames to the graphics processor, to monitor the encode of the encode batch, and to fetch the first video frames from the buffer based on the buffer counter reaching a batch depth associated with the encode batch. 17. The system of claim 13 , wherein the graphics processor is to encode two or more of the plurality of video frames of the encode batch in parallel. 18. The system of claim 13 , wherein the central processor and the graphics processor comprise a system on a chip. 19. At least one non-transitory machine readable medium comprising a plurality of instructions that, in response to being executed on a computing device, cause the computing device to adaptively batch encode tasks for slow motion video recording by: capturing, in a slow motion video recording mode, first video at a first frame rate of not less than twice a second frame rate of a standard video recording mode; buffering, in response to the first video being captured in the slow motion video recording mode at the first frame rate, a plurality of first video frames of the first video to generate an encode batch comprising the plurality of first video frames; submitting the encode batch comprising the plurality of first video frames
Availability of hardware or computational resources, e.g. encoding based on power-saving criteria · CPC title
the unit being a group of pictures [GOP] · CPC title
Prioritisation of hardware or computational resources · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.