Efficient video frame rendering in compliance with cross-origin resource restrictions

US2016351231A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016351231-A1
Application numberUS-201514727445-A
CountryUS
Kind codeA1
Filing dateJun 1, 2015
Priority dateJun 1, 2015
Publication dateDec 1, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A browser efficiently extracts media from a video presented through a web application having a different domain from a media server providing the web application while complying with cross-origin resource restrictions. A video portion is selected, and a header portion of the video is identified. A truncated video portion, which includes the selected video portion and a video portion contiguous to the selected video portion, is loaded into memory. A truncated video file is generated including the truncated video portion and a truncated video header. The truncated video file is encoded as a video tag included in the web application, and the media corresponding to the selected video portion is extracted by transcoding the truncated video file in the video tag. A server may also extract the media by loading the truncated video portion, generating the truncated video file, and transcoding the truncated video file to obtain the media.

First claim

Opening claim text (preview).

What is claimed is: 1 . A non-transitory computer-readable medium comprising instructions for extracting media from a portion of a video, the instructions executable to cause a processor to: present the video through a web application accessed by a browser of a client device, the video obtained from a video source having a different domain from a media server providing the web application accessed by the browser; receive a selection of a video portion of the video; obtain a header portion from a video file comprising the video, the video file stored in the video source, the header portion indicating index values within the video file of frames within the video; load a truncated video portion into client device memory allocated to executing the browser, the truncated video portion including the selected video portion and a video portion contiguous to the selected video portion; generate, at the client device, a truncated video file comprising the truncated video portion and a truncated video header indicating shifted index values within the truncated video file of frames within the video; encode, at the client device, the truncated video file in a video tag included in the web application; and generate, at the client device, the media corresponding to the selected video portion by transcoding the media from the truncated video file in the video tag. 2 . The computer-readable medium of claim 1 , wherein instructions to obtain the header portion comprise instructions to cause the processor to: obtain a subset of the video file from a file index range conventionally including the header portion; and identify the header portion from the subset of the video file by searching for a label declaring the header portion. 3 . The computer-readable medium of claim 1 , wherein instructions to load the truncated video portion comprise instructions to cause the processor to: determine, by parsing the header portion, a video index range corresponding to the truncated video portion including the selected video portion and the contiguous video portion; and load the truncated video portion into memory allocated to executing the browser by retrieving the video portion from the video source using the video index range, the truncated video portion including the selected video portion. 4 . The computer-readable medium of claim 3 , wherein instructions to determine the video index range comprise instructions to cause the processor to: identify an inter coded frame within the selected video portion that is rendered using an infra-coded frame within the contiguous video portion; and determine the video index range to comprise the frames within the selected video portion and the identified infra-coded frame within the contiguous video portion. 5 . The computer-readable medium of claim 1 , wherein instructions to generate the truncated video file comprise instructions to cause the processor to generate the truncated video header by re-indexing references to video frames included in the truncated video portion. 6 . The computer-readable medium of claim 1 , wherein instructions to encode the truncated video file in the video tag included in the web application comprise instructions to cause the processor to encode the truncated video file in binary as a data uniform resource identifier included in the video tag included in the web application. 7 . The computer-readable medium of claim 1 , wherein the data source is one of a content distribution network with a separate domain from the media server or a file store on the client device. 8 . The computer-readable medium of claim 1 , wherein the extracted media is a thumbnail image and the selected video portion is a video frame, the method further comprising uploading the thumbnail image to the video server as a preview image associated with the video. 9 . The computer-readable medium of claim 1 , wherein the extracted media is a video clip comprising multiple video frames, wherein instructions to generate the truncated video file comprise instructions to cause the processor to: obtain a truncated sound portion corresponding to the truncated video portion; and generate the truncated video file comprising the truncated video portion, the truncated video header, and the truncated sound portion. 10 . The computer-readable medium of claim 9 , wherein instructions to obtain the sound portion comprise instructions to cause the processor to: determine, by parsing the header portion, a sound index range corresponding to the truncated sound portion captured concurrently with the truncated video portion; and load the truncated sound portion into the memory allocated to executing the browser by retrieving the truncated sound portion from the video source using the sound index range. 11 . A method for extracting media from a portion of a video, the method comprising: receiving a selection of a video portion of the video; identifying a header portion from a video file comprising the video, the video file stored in a video source, the header portion indicating index values within the video file of frames within the video; loading a truncated video portion including the selected video portion and a video portion contiguous to the selected video portion; generating a truncated video file comprising the truncated video portion and a truncated video header indicating shifted index values within the truncated video file of frames within the video; and generating, by a processor, the media corresponding to the selected video portion by transcoding the media from the truncated video file in the video tag. 12 . The method of claim 11 , wherein identifying the header portion comprises: obtaining a subset of the video file from a file index range conventionally including the header portion; and identifying the header portion from the subset of the video file by searching for a label declaring the header portion. 13 . The method of claim 11 , wherein loading the truncated video portion comprises: determining, by parsing the header portion, a video index range corresponding to the truncated video portion including the selected video portion and the contiguous video portion; and loading the truncated video portion into memory allocated to executing the browser by retrieving the video portion from the video source using the video index range, the truncated video portion including the selected video portion. 14 . The method of claim 11 , wherein generating the truncated video file comprises generating the truncated video header by re-indexing references to video frames included in the truncated video portion. 15 . The method of claim 11 , wherein the extracted media is a video clip comprising multiple video frames, wherein generating the truncated video file comprises: obtaining a truncated sound portion corresponding to the truncated video file; and generating the truncated video file comprising the truncated video portion, the truncated video header, and the truncated sound portion. 16 . A non-transitory computer-readable medium storing instructions that when executed cause a processor to: receive a selection of a video portion of a video; identify a header portion from a video file comprising the video, the video file stored in a video source, the header portion indicating index values within the video file of frames within the video; load a truncated video portion including the selected video portion and a video portion contiguous to the selected video portion; generate a truncated video file comprising the truncated video portion an

Assignees

Inventors

Classifications

  • used signal is a video-frame or a video-field (P.I.P.) · CPC title

  • using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream · CPC title

  • Programmed access in sequence to addressed parts of tracks of operating record carriers (access by moving the head G11B3/08, G11B5/54, G11B7/085, G11B21/022; by moving the record carrier G11B15/005, G11B17/005, by driving of both record carrier and head G11B15/1816) · CPC title

  • G11B27/28Primary

    by using information signals recorded by the same method as the main recording {(G11B27/22 takes precedence)} · CPC title

  • Electronic editing of digitised analogue information signals, e.g. audio or video signals · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016351231A1 cover?
A browser efficiently extracts media from a video presented through a web application having a different domain from a media server providing the web application while complying with cross-origin resource restrictions. A video portion is selected, and a header portion of the video is identified. A truncated video portion, which includes the selected video portion and a video portion contiguous …
Who is the assignee on this patent?
Gopro Inc
What technology area does this patent fall under?
Primary CPC classification G11B27/28. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Dec 01 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).