US2023091776A1PendingUtilityA1

Data Stream Encoder Configuration

Assignee: IMAGINATION TECH LTDPriority: Dec 16, 2013Filed: Dec 1, 2022Published: Mar 23, 2023
Est. expiryDec 16, 2033(~7.4 yrs left)· nominal 20-yr term from priority
H04N 19/117H04N 19/132H04N 19/70H04N 19/186H04N 19/172H04N 19/33H04N 19/85H04N 19/184H04N 19/60H04N 19/80H04N 19/423H04N 19/182H04N 19/103H04N 19/115H04N 19/59H04N 19/136H04N 19/463H04N 19/42
67
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A media encoder for encoding a stream of media data blocks is provided having an encoder pipeline comprising a sequence of processing modules for processing a stream of media data blocks, and a pipeline configurator configured effect a switch in the encoder pipeline from one or more first encode parameters to one or more second encode parameters. The first processing module of the pipeline can be configured to associate a trigger value with at least a first media data block processed at the first processing module in accordance with second encode parameters, the trigger value passing to subsequent modules so as to cause those modules to adopt the second encode parameters.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A frame processor for preparing a stream of video frames for encoding, the frame processor being arranged to receive a video frame having a first set of pixel dimensions representing the number of pixels along each dimension of the video frame, the frame processor comprising:
 a rescaling filter configured to rescale the received video frame to a second set of pixel dimensions such that at least one of the second set of pixel dimensions are no greater than respective predetermined pixel dimension(s) and the aspect ratio of the received video frame is maintained; and   a frame generator configured to:
 embed the rescaled video frame within an output video frame having the predetermined pixel dimensions, and 
 mark pixels of the output video frame outside the bounds of the rescaled video frame as inactive; 
   the frame processor being arranged to provide the output video frame to a video encoder.   
     
     
         2 . The frame processor as claimed in  claim 1 , wherein the rescaling filter is configured to rescale the received video frame such that said at least one of the second set of pixel dimensions are equal to the respective predetermined pixel dimension(s). 
     
     
         3 . The frame processor as claimed in  claim 1 , wherein the rescaling filter is configured to rescale the received video frame such that said at least one of the second set of pixel dimensions are no greater than respective predetermined pixel dimension(s) in the case that said at least one of the first set of pixel dimensions are greater than the respective predetermined pixel dimension(s) but not in the case that the first set of pixel dimensions are each equal to or less than the respective predetermined pixel dimension(s), said rescaled video frame being the received video frame in the case that the received video frame is not rescaled. 
     
     
         4 . The frame processor as claimed in  claim 1 , wherein the rescaling filter comprises a polyphase filter adapted to use a number of filter coefficients selected to be greater than or equal to the ratio of one of the first pixel dimensions to the respective predetermined pixel dimension, provided that the number of filter coefficients is a minimum of two. 
     
     
         5 . The frame processor as claimed in  claim 4 , wherein the polyphase filter is adapted to, for a received frame having a luma channel and subsampled chroma channels, use said selected number of filter coefficients for rescaling the luma channel and a respective integer number of filter coefficients for rescaling each of the chroma channels, each respective integer number of filter coefficients being determined from the selected number of filter coefficients divided by the subsampling ratio of the respective chroma channel. 
     
     
         6 . The frame processor as claimed in  claim 1 , wherein the frame processor is configured to set pixels of the output video frame outside the bounds of the rescaled video frame to a predetermined colour so as to mark those pixels as inactive. 
     
     
         7 . The frame processor as claimed in  claim 1 , wherein the predetermined colour is black. 
     
     
         8 . The frame processor as claimed in  claim 1 , wherein the frame processor is configured to write data to the video frame or its metadata, said data defining the position and dimensions of the rescaled video frame within the output video frame so as to mark pixels of the output video frame outside the bounds of the rescaled video frame as inactive. 
     
     
         9 . The frame processor as claimed in  claim 1 , wherein the frame processor is configured to be used in an encoder pipeline having an encoder arranged to encode video frames output from the frame processor according to a video compression standard adapted to divide a video frame into macroblocks for processing, the frame processor being configured to align the rescaled video frame within the output video frame such that at least two adjacent boundaries of the rescaled video frame are coincident with a macroblock boundary. 
     
     
         10 . The frame processor as claimed in  claim 9 , wherein the frame processor is configured to, on each of the pixel dimensions of a rescaled video frame not being an integer multiple of the respective dimensions of the macroblocks, trim pixels from the rescaled video frame such that each of the pixel dimensions of the rescaled video frame are an integer multiple of the respective dimensions of the macroblocks. 
     
     
         11 . The frame processor as claimed in  claim 1 , wherein the frame processor is configured to maintain the orientation of the received video frame in the output frame with respect to the two dimensions of the received and output video frames. 
     
     
         12 . A method of preparing video frames for encoding at a video encoder, comprising:
 receiving a video frame having a first set of pixel dimensions representing the number of pixels along each dimension of the video frame;   rescaling the received video frame to have a second set of pixel dimensions such that at least one of the second set of pixel dimensions are no greater than respective predetermined pixel dimension(s) and the aspect ratio of the received video frame is maintained;   embedding the rescaled video frame within an output video frame having the predetermined pixel dimensions;   marking pixels of the output video frame outside the bounds of the rescaled video frame as inactive; and   providing the output video frame to a video encoder.   
     
     
         13 . The method as claimed in  claim 12 , the rescaling step being performed if said at least one of the first pixel dimensions are greater than the respective predetermined pixel dimension(s) but not if the first pixel dimensions are each equal to or less than the respective predetermined pixel dimension(s), said rescaled video frame being the received video frame if the rescaling step is not performed. 
     
     
         14 . The method as claimed in  claim 12 , comprising the rescaling to rescale the received video frame such that said at least one of the second set of pixel dimensions are equal to the respective predetermined pixel dimension(s). 
     
     
         15 . The method as claimed in  claim 12 , the rescaling comprising using a number of filter coefficients selected to be greater than or equal to the ratio of one of the first pixel dimensions to the respective predetermined pixel dimension, provided that the number of filter coefficients is a minimum of two. 
     
     
         16 . The method as claimed in  claim 15 , the rescaling comprising using, for a received frame having a luma channel and subsampled chroma channels, said selected number of filter coefficients for rescaling the luma channel and a respective integer number of filter coefficients for rescaling each of the chroma channels, each respective integer number of filter coefficients being determined from the selected number of filter coefficients divided by the subsampling ratio of the respective chroma channel. 
     
     
         17 . The method as claimed in  claim 12 , comprising setting the pixels of the output video frame outside the bounds of the rescaled video frame to a predetermined colour so as to mark those pixels as inactive. 
     
     
         18 . The method as claimed in  claim 12 , comprising writing data is written to the video frame or its metadata, said data defining the position and dimensions of the rescaled video frame within the output video frame so as to mark pixels of the output video frame outside the bounds of the rescaled video frame as inactive. 
     
     
         19 . A non-transitory computer readable storage medium having stored thereon computer executable instructions that when executed cause at least one processor to:
 receive a video frame having a first set of pixel dimensions representing the number of pixels along each dimension of the video frame;   rescale the received video frame to have a second set of pixel dimensions such that at least one of the second set of pixel dimensions are no greater than respective predetermined pixel dimension(s) and the aspect ratio of the received video frame is maintained;   embed the rescaled video frame within an output video frame having the predetermined pixel dimensions;   mark pixels of the output video frame outside the bounds of the rescaled video frame as inactive; and   provide the output video frame to a video encoder.

Join the waitlist — get patent alerts

Track US2023091776A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.