Optimal fragmentation of video based on shot analysis

    公开(公告)号:US10997426B1

    公开(公告)日:2021-05-04

    申请号:US16293086

    申请日:2019-03-05

    摘要: A video may include a runtime. Based on analysis of the video, a scene or shot change may be generated based on the content of the video. For instance, the video may depict a character inside of a house in a first shot and, in a subsequent shot, the video may depict the character as being outside in a forest. A shot change may indicate the transition from the character being depicted inside in the first shot and outside in the second shot at a period of time during the runtime of the video. The video may be fragmented into fragments based on the shot change and based on a minimum or maximum fragment duration. When a video is fragmented into fragments, a key frame that is independently decodable may be inserted into a fragment. Encoding settings may then be determined based on the key frame.

    Adaptive group of pictures (GOP) encoding

    公开(公告)号:US10778991B1

    公开(公告)日:2020-09-15

    申请号:US16141431

    申请日:2018-09-25

    摘要: Encoding of a video file includes determining a plurality of scenes associated with a video file, and determining at least one group of pictures (GOP). Starting sequentially from a beginning frame of the video file, the system identifies a first GOP having a first encoding error characteristic. The system changes a bitrate allocation setting from a first setting to a second setting based on the encoding error characteristic. The system identifies a second frame having a second encoding error characteristic, and changes a second bitrate allocation setting from the second setting to a third setting based on the second encoding error characteristic. The system generates an encoded video file that includes an encoded plurality of scenes.

    Resolution-based manifest generator for adaptive bitrate video streaming

    公开(公告)号:US11115697B1

    公开(公告)日:2021-09-07

    申请号:US16705952

    申请日:2019-12-06

    摘要: Techniques for resolution-based manifest generation for adaptive bitrate video streaming are described. As one example, a computer-implemented method includes performing a first, convex hull optimization on a video file for a first device resolution, performing a second, convex hull optimization on the video file for a second, lower device resolution, generating a first video representation for a point on both the first, convex hull optimization and the second, convex hull optimization for the first device resolution and the second, lower device resolution, generating a second video representation for a point only on the second, convex hull optimization for the second, lower device resolution, receiving a request for a manifest for the video file from a client device at the second, lower device resolution, generating the manifest for the client device that identifies the first video representation and the second video representation, and sending the manifest to the client device.