IP Library Granted Patent US 12,294,743
Granted Patent B2
US 12,294,743 · App. 17/900,057 · Granted May 6, 2025

Dynamic insertion of content via macroblock modification

Inventors: Freddy Ceranton (Rennes, FR); Mikael Le Guerroue (Rennes, FR); David Clewer (Southampton, GB)
Assignee: MK Systems USA Inc.
H04N19/85H04N19/105H04N19/139H04N19/167H04N19/172H04N19/176H04N19/517H04N19/593
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,294,743
App. No.
17/900,057
Granted
May 6, 2025
Kind
B2
Abstract

This disclosure provides systems, methods, and devices for inserting content into a video frame. In one aspect, a frame of video data encoded to include a plurality of macroblocks is received. An insertion region of the frame for inserting content is defined, the insertion region spanning a subset of the macroblocks. The frame is augmented with a duplication region configured as a non-displayed region, the duplication region including duplicated macroblocks that duplicate the macroblocks of insertion region. The macroblocks of the insertion region are replaced with replacement macroblocks that encode replacement content.

Claims (30)

1. A computer-implemented method for inserting content into a video frame, the method comprising:

receiving a frame of video data encoded to include a plurality of macroblocks, wherein the frame of video data is encoded with block motion compensation;

defining an insertion region of the frame for inserting content, the insertion region spanning a subset of the plurality of macroblocks;

augmenting the frame with a duplication region configured as a non-displayed region, the duplication region including duplicated macroblocks that duplicate the macroblocks of the insertion region; and

replacing the macroblocks of the insertion region with replacement macroblocks that encode replacement content.

2. The computer-implemented method of claim 1 , further comprising:

upon detecting that the frame is an inter-coded frame, modifying a motion vector referencing a macroblock of an insertion region of a reference frame to reference instead a corresponding duplicated macroblock of a duplication region of the reference frame.

3. The computer-implemented method of claim 1 , further comprising:

upon detecting that the frame is an intra-coded frame, modifying at least one of the macroblocks outside the insertion region to remove a spatial reference to within the insertion region.

4. The computer-implemented method of claim 1 , further comprising setting a cropping parameter for the frame to configure the duplication region as a non-displayed region.

5. The computer-implemented method of claim 1 , wherein the duplication region includes duplicated macroblocks that duplicate macroblocks in a margin around the insertion region.

6. The computer-implemented method of claim 1 , wherein the duplication region is located at the bottom of the frame or on the right side of the frame.

7. The computer-implemented method of claim 1 , wherein the duplication region has a height equal to a height of the frame or has a width equal to the width of the frame.

8. The computer-implemented method of claim 1 , wherein the duplication region has at least one of: a height greater than a height of the insertion region or a width greater than a width of the insertion region.

9. The computer-implemented method of claim 1 , reversing the replacing of the macroblocks of the insertion region to recover, substantially, the replaced macroblocks.

10. The computer-implemented method of claim 1 , further comprising terminating decoding of the frame before reaching the end of the frame.

11. A computer-implemented system for inserting content into a video frame, the system comprising:

at least one processor;

memory in communication with said at least one processor;

software code stored in said memory, which when executed at said at least one processor causes the system to:

receive a frame of video data encoded to include a plurality of macroblocks, wherein the frame of video data is encoded with block motion compensation;

define an insertion region of the frame for inserting content, the insertion region spanning a subset of the macroblocks;

augment the frame with a duplication region configured as a non-displayed region, the duplication region including duplicated macroblocks that duplicate the macroblocks of the insertion region; and

replace the macroblocks of the insertion region with replacement macroblocks that encode replacement content.

12. The computer-implemented system of claim 11 , wherein the software code when executed at the at least one processor further causes the system to:

upon detecting that the frame is an inter-coded frame, modify a motion vector referencing a macroblock of an insertion region of a reference frame to reference instead a corresponding duplicated macroblock of a duplication region of the reference frame.

13. The computer-implemented system of claim 11 , wherein the software code when executed at the at least one processor further causes the system to:

upon detecting that the frame is an intra-coded frame, modify at least one of macroblocks outside the insertion region to remove a spatial reference to within the insertion region.

14. The computer-implemented system of claim 11 , wherein the software code when executed at the at least one processor further causes the system to:

set a cropping parameter for the frame to configure the duplication region as a non-displayed region.

Assignments (2)
SECURITY INTEREST Recorded Oct 10, 2025
From: MK SYSTEMS USA INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 073062/0487 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 7, 2022
From: CERANTON, FREDDY; LE GUERROUE, MIKAEL; CLEWER, DAVID
To: MK SYSTEMS USA INC.
Reel/Frame 061011/0372 →
Priority Claims (1)
EP 21306193 · Sep 1, 2021 · regional
Continuity (1)
Related Publication 20230067258A1 · Mar 2, 2023
References Cited (20)
US 6167162A · Jacquin · 2000 [cited by examiner]
US 6373530B1 · Birks · 2002 [cited by examiner]
US 8238420B1 · Shankarappa · 2012 [cited by examiner]
US 20030076363A1 · Murphy · 2003 [cited by examiner]
US 20030112870A1 · Fukuda · 2003 [cited by examiner]
US 20050047504A1 · Sung · 2005 [cited by examiner]
US 20080178246A1 · Blanchard · 2008 [cited by applicant]
US 20090019491A1 · Kulas · 2009 [cited by applicant]
US 20100266045A1 · Katzur · 2010 [cited by examiner]
US 20110235704A1 · Kim · 2011 [cited by examiner]
US 20110292287A1 · Washington · 2011 [cited by examiner]
US 20150339234A1 · Karandikar · 2015 [cited by examiner]
US 20210014496A1 · Abe · 2021 [cited by examiner]
US 20210044834A1 · Li · 2021 [cited by examiner]
US 20210105499A1 · Lee · 2021 [cited by examiner]
US 20230067258A1 · Ceranton · 2023 [cited by examiner]
EP 0977439A2 · 2000 [cited by applicant]
European Patent Office, Communication, Extended European Search Report issued for European Application No. 21306193.0, dated Feb. 18, 2022, 11 pages. [cited by applicant]
Michalevsky, Y. et al. “Fast H.264 Picture in Picture (PIP) Transcoder with B-slices and Direct Mode Support,” Melecon 2010-2010 15th IEEE Mediterranean Electrotechnical Conference, 2010, pp. 862-867, 6 pages. [cited by applicant]
Bordes, P. et al “SEI Message for Logo Insertion,” Joint Video Team of ISO/IEC MPEG & ITU-T VCEG, Document JVT-Q019, 17th Meeting, Nice, France, Oct. 2005, 9 pages. [cited by applicant]