IP Library › Granted Patent US 12,526,438
Granted Patent B2
US 12,526,438 · App. 18/724,494 · Granted Jan 13, 2026

Video transcoding and video display method, apparatus, and electronic device

Inventor: Hou Wang (Zhejiang, CN)
Assignee: HANGZHOU HIKVISION DIGITAL TECHNOLOGY CO., LTD.
H04N19/40H04N19/119H04N19/136H04N19/172
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,526,438
App. No.
18/724,494
Granted
Jan 13, 2026
Kind
B2
Abstract

Embodiments of the present application provide a video transcoding method, a video display method, an apparatus and an electronic device, which relate to the field of video processing technology. The video transcoding method includes: acquiring a first image in an initial images obtained by stitching multi-channel video images; determining an initial resolution of each of initial sub-images; wherein each initial resolution is not greater than a maximum resolution of input data that can be supported by a preset encoder, and a target resolution of a target sub-image obtained after transcoding each initial sub-image is not greater than a maximum resolution of output data that can be supported by the preset encoder; segmenting a to-be-cut image into respective initial sub-images based on the respective initial resolutions; encoding each initial sub-image according to a target resolution of a target sub-image after transcoding this initial sub-image by using a preset encoder, to obtain each of target code-streams. Compared with the prior art, by applying the solution provided by the embodiments of the present application, it is possible to transcode the video screen obtained after stitching multi-channel video screens.

Claims (72)

1 . A video transcoding method comprising:

acquiring a first image in an initial image obtained by stitching multi-channel video images as a to-be-cut image;

determining an initial resolution of each of to-be-transcoded initial sub-images; wherein each initial resolution is not greater than a maximum resolution of input data that can be supported by a preset encoder, and a target resolution of a target sub-image obtained after transcoding each initial sub-image is not greater than a maximum resolution of output data that can be supported by the preset encoder, and a sum of all target resolutions is a preset resolution of a second image obtained after transcoding the first image; wherein determining the initial resolution of each of to-be-transcoded initial sub-images comprises: determining a preset target resolution of each of the target sub-images obtained after transcoding; for each target resolution, based on a first proportion of the target resolution in the preset resolution and a specified resolution of the first image, determining an initial resolution corresponding to the target resolution as an initial resolution of an initial sub-image corresponding to the target resolution; wherein a second proportion of each initial resolution in the specified resolution is the same as the first proportion of the target resolution corresponding to the initial resolution in the preset resolution;

segmenting the to-be-cut image into respective to-be-transcoded initial sub-images based on respective initial resolutions;

encoding each initial sub-image according to a target resolution of a target sub-image obtained after transcoding this initial sub-image by using the preset encoder to obtain each of target code-streams.

2 . The method according to claim 1 , further comprising:

adding a specified information structure to code-stream information of each target code-stream to obtain each of to-be-encapsulated code-streams;

encapsulating each of the to-be-encapsulated code-streams, and adding the specified information structure to encapsulation information to obtain a multi-track stream code-stream for the first image.

3 . The method according to claim 2 , wherein, segmenting the to-be-cut image into respective to-be-transcoded initial sub-images based on respective initial resolutions comprises:

based on the determined respective initial resolutions, segmenting the to-be-cut image into the respective to-be-transcoded initial sub-images without overlapping areas.

4 . The method according to claim 2 , wherein before segmenting the to-be-cut image into respective to-be-transcoded initial sub-images based on respective initial resolutions, the method further comprises:

increasing each initial resolution that does not meet a byte alignment requirement of the preset encoder to a resolution that meets the byte alignment requirement to obtain each of cutting resolutions;

wherein segmenting the to-be-cut image into respective to-be-transcoded initial sub-images based on respective initial resolutions, comprises:

based on each of available resolutions and each of the cutting resolutions, segmenting the first image into the respective to-be-transcoded initial sub-images; wherein the available resolution is an initial resolution that meets the byte alignment requirement; wherein the respective initial sub-images comprise initial sub-images with overlapping areas;

wherein encoding each initial sub-image according to a target resolution of a target sub-image obtained after transcoding this initial sub-image by using the preset encoder to obtain each of target code-streams, comprises:

for each initial sub-image whose resolution is an available resolution, encoding by using the preset encoder, this initial sub-image according to the target resolution of the target sub-image obtained after transcoding this initial sub-image, to obtain a target code-stream;

for each initial sub-image whose resolution is a cutting resolution, encoding by using the preset encoder, this initial sub-image according to an encoding resolution of this initial sub-image and adding a tag for specified pixels in code-stream information of the obtained code-stream to obtain a target code-stream;

wherein, the encoding resolution is a product of the target resolution of the target sub-image obtained after transcoding this initial sub-image and a specified multiple, wherein the specified multiple is a ratio of the cutting resolution of this initial sub-image to the initial resolution of this initial sub-image, the specified pixels are added pixels in the target sub-image obtained after transcoding the initial sub-image when the target resolution of the target sub-image obtained after transcoding the initial sub-image is increased to the encoding resolution.

5 . The method according to claim 1 , wherein, segmenting the to-be-cut image into respective to-be-transcoded initial sub-images based on respective initial resolutions comprises:

based on the determined respective initial resolutions, segmenting the to-be-cut image into the respective to-be-transcoded initial sub-images without overlapping areas.

6 . The method according to claim 1 , wherein before segmenting the to-be-cut image into respective to-be-transcoded initial sub-images based on respective initial resolutions, the method further comprises:

increasing each initial resolution that does not meet a byte alignment requirement of the preset encoder to a resolution that meets the byte alignment requirement to obtain each of cutting resolutions;

wherein segmenting the to-be-cut image into respective to-be-transcoded initial sub-images based on respective initial resolutions, comprises:

based on each of available resolutions and each of the cutting resolutions, segmenting the first image into the respective to-be-transcoded initial sub-images; wherein the available resolution is an initial resolution that meets the byte alignment requirement; wherein the respective initial sub-images comprise initial sub-images with overlapping areas;

wherein encoding each initial sub-image according to a target resolution of a target sub-image obtained after transcoding this initial sub-image by using the preset encoder to obtain each of target code-streams, comprises:

for each initial sub-image whose resolution is an available resolution, encoding by using the preset encoder, this initial sub-image according to the target resolution of the target sub-image obtained after transcoding this initial sub-image, to obtain a target code-stream;

for each initial sub-image whose resolution is a cutting resolution, encoding by using the preset encoder, this initial sub-image according to an encoding resolution of this initial sub-image and adding a tag for specified pixels in code-stream information of the obtained code-stream to obtain a target code-stream;

wherein, the encoding resolution is a product of the target resolution of the target sub-image obtained after transcoding this initial sub-image and a specified multiple, wherein the specified multiple is a ratio of the cutting resolution of this initial sub-image to the initial resolution of this initial sub-image, the specified pixels are added pixels in the target sub-image obtained after transcoding the initial sub-image when the target resolution of the target sub-image obtained after transcoding the initial sub-image is increased to the encoding resolution.

7 . The method according to claim 6 , wherein before encoding by using the preset encoder, this initial sub-image according to an encoding resolution of this initial sub-image, the method further comprises:

determining whether the cutting resolution of this initial sub-image is not greater than the maximum resolution of the input data that can be supported by the preset encoder, and whether the encoding resolution of this initial sub-image is not greater than the maximum resolution of the output data that can be supported by the preset encoder;

if so, encoding by using the preset encoder, this initial sub-image according to the encoding resolution of this initial sub-image;

otherwise, returning to the step of determining an initial resolution of each of the to-be-transcoded initial sub-images.

8 . A video display method comprising:

acquiring each of target code-streams for a target image; wherein each of the target code-streams is obtained based on the video transcoding method according to claim 1 ;

decoding each target code-stream to obtain a transcoded target sub-image corresponding to each target code-stream;

stitching the obtained respective target sub-images to obtain the target image for displaying.

9 . The method according to claim 8 , wherein decoding each target code-stream to obtain a transcoded target sub-image corresponding to each target code-stream, comprises:

for each target code-stream, detecting whether there is a tag for specified pixels in the target code-stream;

if so, decoding the target code-stream, and cutting off an image area corresponding to the specified pixels from the decoded image to obtain the transcoded target sub-image corresponding to the target code-stream;

if not, decoding the target code-stream to obtain the transcoded target sub-image corresponding to the target code-stream.

10 . An electronic device comprising a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other through the communication bus;

the memory is configured to store a computer program;

the processor is configured to implement the method according to claim 9 when executing the program stored in the memory.

11 . An electronic device comprising a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other through the communication bus;

the memory is configured to store a computer program;

the processor is configured to implement the method according to claim 8 when executing the program stored in the memory.

12 . An electronic device comprising a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other through the communication bus;

the memory is configured to store a computer program;

the processor is configured to, when executing the program stored in the memory, implement the following operations:

acquiring a first image in an initial image obtained by stitching multi-channel video images as a to-be-cut image;

determining an initial resolution of each of to-be-transcoded initial sub-images; wherein each initial resolution is not greater than a maximum resolution of input data that can be supported by a preset encoder, and a target resolution of a target sub-image obtained after transcoding each initial sub-image is not greater than a maximum resolution of output data that can be supported by the preset encoder, and a sum of all target resolutions is a preset resolution of a second image obtained after transcoding the first image; wherein determining the initial resolution of each of to-be-transcoded initial sub-images comprises: determining a preset target resolution of each of the target sub-images obtained after transcoding; for each target resolution, based on a first proportion of the target resolution in the preset resolution and a specified resolution of the first image, determining an initial resolution corresponding to the target resolution as an initial resolution of an initial sub-image corresponding to the target resolution; wherein a second proportion of each initial resolution in the specified resolution is the same as the first proportion of the target resolution corresponding to the initial resolution in the preset resolution;

segmenting the to-be-cut image into respective to-be-transcoded initial sub-images based on respective initial resolutions;

encoding each initial sub-image according to a target resolution of a target sub-image obtained after transcoding this initial sub-image by using the preset encoder to obtain each of target code-streams.

13 . The electronic device according to claim 12 , wherein the processor is further configured to, when executing the program stored in the memory, implement the following operations:

adding a specified information structure to code-stream information of each target code-stream to obtain each of to-be-encapsulated code-streams;

encapsulating each of the to-be-encapsulated code-streams, and adding the specified information structure to encapsulation information to obtain a multi-track stream code-stream for the first image.

14 . The electronic device according to claim 13 , wherein the processor is further configured to, when executing the program stored in the memory, implement the following operations:

copying the multi-track stream code-stream, and transmitting the obtained multiple multi-track stream code-streams to a specified device.

15 . The electronic device according to claim 12 , wherein, segmenting the to-be-cut image into respective to-be-transcoded initial sub-images based on respective initial resolutions comprises:

based on the determined respective initial resolutions, segmenting the to-be-cut image into the respective to-be-transcoded initial sub-images without overlapping areas.

16 . The electronic device according to claim 12 , wherein before segmenting the to-be-cut image into respective to-be-transcoded initial sub-images based on respective initial resolutions, the processor is further configured to, when executing the program stored in the memory, implement the following operations:

increasing each initial resolution that does not meet a byte alignment requirement of the preset encoder to a resolution that meets the byte alignment requirement to obtain each of cutting resolutions;

wherein segmenting the to-be-cut image into respective to-be-transcoded initial sub-images based on respective initial resolutions, comprises:

based on each of available resolutions and each of the cutting resolutions, segmenting the first image into the respective to-be-transcoded initial sub-images; wherein the available resolution is an initial resolution that meets the byte alignment requirement; wherein the respective initial sub-images comprise initial sub-images with overlapping areas;

wherein encoding each initial sub-image according to a target resolution of a target sub-image obtained after transcoding this initial sub-image by using the preset encoder to obtain each of target code-streams, comprises:

for each initial sub-image whose resolution is an available resolution, encoding by using the preset encoder, this initial sub-image according to the target resolution of the target sub-image obtained after transcoding this initial sub-image, to obtain a target code-stream;

for each initial sub-image whose resolution is a cutting resolution, encoding by using the preset encoder, this initial sub-image according to an encoding resolution of this initial sub-image and adding a tag for specified pixels in code-stream information of the obtained code-stream to obtain a target code-stream;

wherein, the encoding resolution is a product of the target resolution of the target sub-image obtained after transcoding this initial sub-image and a specified multiple, wherein the specified multiple is a ratio of the cutting resolution of this initial sub-image to the initial resolution of this initial sub-image, the specified pixels are added pixels in the target sub-image obtained after transcoding the initial sub-image when the target resolution of the target sub-image obtained after transcoding the initial sub-image is increased to the encoding resolution.

17 . The electronic device according to claim 16 , wherein before encoding by using the preset encoder, this initial sub-image according to an encoding resolution of this initial sub-image, the processor is further configured to, when executing the program stored in the memory, implement the following operations:

determining whether the cutting resolution of this initial sub-image is not greater than the maximum resolution of the input data that can be supported by the preset encoder, and whether the encoding resolution of this initial sub-image is not greater than the maximum resolution of the output data that can be supported by the preset encoder;

if so, encoding by using the preset encoder, this initial sub-image according to the encoding resolution of this initial sub-image;

otherwise, returning to the step of determining an initial resolution of each of the to-be-transcoded initial sub-images.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S ADDRESS PREVIOUSLY RECORDED ON REEL 69682 FRAME 583. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Dec 31, 2024
From: WANG, HOU
To: HANGZHOU HIKVISION DIGITAL TECHNOLOGY CO., LTD.
Reel/Frame 069829/0134 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 26, 2024
From: WANG, HOU
To: HANGZHOU HIKVISION DIGITAL TECHNOLOGY CO., LTD.
Reel/Frame 069682/0583 →
Priority Claims (1)
CN 202111657026.X · Dec 30, 2021 · national
Continuity (1)
Related Publication 20250071300A1 · Feb 27, 2025
References Cited (20)
US 9497457B1 · Gupta · 2016 [cited by applicant]
US 20140146869A1 · Zhang · 2014 [cited by applicant]
US 20180007375A1 · He · 2018 [cited by examiner]
US 20180061002A1 · Lee · 2018 [cited by applicant]
US 20210051306A1 · Han · 2021 [cited by applicant]
US 20210287337A1 · Newman · 2021 [cited by applicant]
CN 104159063A · 2014 [cited by examiner]
CN 107690074A · 2018 [cited by applicant]
CN 111435979A · 2020 [cited by applicant]
CN 111447394A · 2020 [cited by applicant]
CN 112104835A · 2020 [cited by applicant]
CN 113766235A · 2021 [cited by applicant]
CN 114339248A · 2022 [cited by applicant]
JP 2013507084A · 2013 [cited by applicant]
China National Intellectual Property Administration, International Search Report issued for PCT/CN2022/139653, mailed Mar. 6, 2023, 5 pages. [cited by applicant]
China National Intellectual Property Administration, Written Opinion of the International Searching Authority issued for PCT/CN2022/139653, mailed Mar. 6, 2023, 9 pages. [cited by applicant]
First Office Action in the priority Chinese Application dated Dec. 16, 2024. [cited by applicant]
Gabriel A., et al., “Polyphase Subsampling Applied to 360 Degree Video Sequences in the Context of the Joint Call for Evidence on Video Compression,” JVET-G0026, ITU, Jul. 13, 2017, pp. 1-7. [cited by applicant]
Office Action for Japanese Application No. 2024-539377, dated May 20, 2025, 9 Pages. [cited by applicant]
Second Office Action for Chinese Application No. 202111657026.X, dated Jun. 7, 2025, 21 Pages. [cited by applicant]