US-12621178-B1 - Systems and methods for editing a video recording in progress
Abstract
A mobile app based digital media recording system with an auto-start clip toggle mode that allows a user to begin recording at the same time, in parallel, a main digital media stream and a clip stream taken from the main stream, on a single activation of a record control. A separate clip control allows the user to set an endpoint of the clip stream to create a clip segment which can be labeled within a main file generated from the main stream and stored as a separate file. A GPS location lock/refresh/edit feature and a feature to allow for muted video recording while an audio (phone) call is connected are also provided.
Inventors
- Nishant Shah
Assignees
- Nishant Shah
Dates
- Publication Date
- 20260505
- Application Date
- 20250707
Claims (7)
- 1 . A digital media recording system comprising: a recording component, the recording component being operative to produce a physical main stream of digital media data, the physical main data stream comprising at least one sequence of digital media data units, the digital media data units of the sequence representing digital media units of one type selected from digital audio samples and digital video image frames; a storage, the storage comprising a non-volatile computer-readable medium comprising a plurality of physical memory locations; an output device; a processor, the processor being operatively connected to the recording component to read the digital media data units from the physical main stream of digital media data, the processor being operatively connected to the storage to write the digital media data units to the physical memory locations and to read the digital media data units from the physical memory locations, and the processor being operatively connected to the output device to present the corresponding digital media units in a human observable form; a user input interface, the user input interface being operative to generate data representing user inputs in response to physical user interactions with the user input interface, the processor being operative to read the user inputs from the user input interface; a software application, the software application comprising computer readable instructions stored in the storage, the processor being operative to read and execute the instructions from the storage; the software application including instructions for the processor to receive and read user inputs from input controls, the input controls being activated by the physical user interactions with the user input interface, the input controls including a record control, a stop control, a clip control, and an auto-start clip toggle control; the auto-start clip toggle control being operative to be toggled on and toggled off by a user input; the software application further including instructions for the processor to: when the record control is activated with the auto-start clip toggle control toggled on: begin to record a main media segment comprising a consecutive sequence of digital media data units produced by the recording component after the record control is activated, by so reading from the recording component and writing to the storage the consecutive sequence of digital media data units; generate and begin to maintain a logical main stream of media, the logical main stream of media comprising a media timeline defined by a main start pointer and a main end pointer, the main start pointer being a logical entity referencing a physical memory location of a first digital media data unit of the main media segment, and the main end pointer being a logical entity that references a physical memory location of a last digital media data unit of the main media segment, the logical main stream media being maintained by the processor continuously updating the main end pointer to reference the physical memory location of a digital media data unit most recently written to the storage; generate and begin to maintain an auto-start logical clip stream of media at the same time that the logical main stream of media is generated, the auto-start logical clip stream of media comprising a media timeline including an auto-start clip start pointer, the auto-start clip start pointer being set to the value of the main start pointer; when the clip control is activated while the auto-start logical clip stream is being maintained, assign an auto-start clip end pointer to the auto-start logical clip stream, set the auto-start clip end pointer to a present updated value of the main end pointer, stop maintaining the auto-start logical clip stream; when the stop control is activated: stop said recording of the main media segment; write to the storage a main media file comprising the main media segment.
- 2 . The digital media recording system of claim 1 wherein the software application further includes instructions for the processor to, when the stop control is activated after the processor stops maintaining the auto-start logical clip stream, write to the storage an auto-start clip media file comprising an auto-start clip media segment, the auto-start clip media segment comprising a portion of the main media segment beginning at the time corresponding to the auto-start clip start pointer and ending at the time corresponding to the auto-start clip end pointer.
- 3 . The digital media recording system of claim 1 wherein the software application further includes instructions for the processor to, upon said activation of the clip control while the auto-start logical clip stream is being maintained, generate and begin to maintain a first manual-start logical clip stream of media, the first manual-start logical clip stream of media having a first manual-start clip start pointer set to the value of the auto-start clip end pointer.
- 4 . The digital media recording system of claim 1 wherein the software application further includes instructions for the processor to, when the clip control is activated again after the processor stops maintaining the auto-start logical clip stream and before the processor stops said recording of the main media segment, generate and begin to maintain a manual-start logical clip stream of media, assign a second manual-start clip start pointer to the second manual-start logical clip stream, and set the second manual-start clip start pointer to the value of the main end pointer.
- 5 . The digital media recording system of claim 1 wherein the software application further includes instructions for the processor to: when the record control is activated with the auto-start clip toggle control toggled off, begin to record the said main media segment, and generate and begin to maintain said logical main stream of media, without generating said auto-start logical clip stream of media; when the clip control is activated a first time after said activation of the record control with the auto-start clip toggle control toggled off and before the processor stops said recording of the main media segment, generate and begin to maintain a first manual-start logical clip stream of media comprising a media timeline including a first manual-start clip start pointer, set the first manual-start clip start pointer to a present updated value of the main end pointer; when the clip control is activated again while the first manual-start logical clip stream is being maintained, assign a first manual-start clip end pointer to the first manual-start logical clip stream, set a value of the first manual-start clip end pointer to the present value of the main end pointer, stop maintaining the first manual-start logical clip stream of media.
- 6 . The digital media recording system of claim 5 wherein the software application further includes instructions for the processor to: upon said activation of the clip control while the first manual-start logical clip stream is being maintained, generate and begin to maintain a second manual-start logical clip stream of media, the second manual-start logical clip stream of media having a second manual-start clip start pointer set to the value of the first manual-start clip end pointer.
- 7 . The digital media recording system of claim 5 wherein the software application further includes instructions for the processor to: when the clip control is activated again after the processor stops maintaining the first manual-start logical clip stream and before the processor stops said recording of the main media segment, generate and begin to maintain a second manual-start logical clip stream of media, assign a second manual-start clip start pointer to the second manual-start logical clip stream, and set the second manual-start clip start pointer to the value of the main end pointer; when the clip control is activated again while the second manual-start logical clip stream is being maintained, assign a second manual-start clip end pointer to the second manual-start logical clip stream, set a value of the first manual-start clip end pointer to the present value of the main end pointer, stop maintaining the first manual-start logical clip stream of media, and define a first manual-start clip media segment comprising a portion of the main media segment beginning at the time corresponding to the first manual-start clip start pointer and ending at a time corresponding to the first manual-start clip end pointer.
Description
CROSS REFERENCE This application is a continuation in part of U.S. patent application Ser. No. 19/221,815, filed May 29, 2025 and entitled SYSTEMS AND METHODS FOR EDITING A VIDEO RECORDING IN PROGRESS, which is hereby incorporated by reference in its entirety. FIELD OF THE DISCLOSURE The present disclosure relates to electronic media file creation and management systems and methods, and more particularly, to systems and methods for recording, organizing, customizing, and editing visual and audiovisual media. SUMMARY According to an aspect of the disclosure, a video recording system comprises a camera, a storage, a display, a processor, a user input interface and a software application. The camera is operative to produce a physical main stream of digital video data comprising sequentially ordered frames of digital video data, each digital video data frame representing a digital frame image. The storage comprises a non-volatile computer-readable medium comprising a plurality of physical memory locations. The processor is operatively connected to the camera to read the digital video data frames from the physical main stream of digital video data, operatively connected to the storage to write the digital video data frames to the physical memory locations and to read the digital video data frames from the physical memory locations, and operatively connected to the display to display the corresponding digital frame images on the display. The user input interface is operative to receive physical user input and to generate user input data from the physical user input, the user input data representing the processor being operative to read the user input data from the user input interface. The software application comprises computer readable instructions stored in the storage, the processor being operative to read and execute the instructions from the storage. More particularly, the software application includes instructions for the processor to display controls on the display, the controls being adapted and configured to be activated by physical user input to the user input interface. The controls include a record control. The software application further includes instructions for the processor, when the record control is activated, to: begin to record main video footage comprising a consecutive sequence of digital video data frames produced by the camera after the record control is activated, by so reading from the camera and writing to the storage the consecutive sequence of digital video data frames; generate and begin to maintain a logical main stream of video, the logical main stream of video comprising a video timeline defined by a main start pointer and a main end pointer, the main start pointer being a logical entity referencing a physical memory location of a first digital video data frame of the main video footage, and the main end pointer being a logical entity that references a physical memory location of a last digital video data frame of the main video footage, the logical main stream of video being maintained by the processor continuously updating the main end pointer to reference the physical memory location of a digital video data frame most recently written to the storage, and display a stop control and a pause control. The software further includes instructions for the processor, when the pause control is activated, to: pause said recording of the main video footage and said updating the main end pointer; display a back-clip control; display a resume control, when the back-clip control is activated, to: display a back-clip pointer selection control; when the back-clip pointer selection control is activated, to receive from the user input interface user input data to determine a contiguous back-clip video segment that was written to storage before the activation of the back-clip control, the back-clip video segment being defined by a static logical back-clip of digital video data, the logical back-clip comprising a back-clip start pointer and a back-clip end pointer, the logical back-clip comprising a video timeline defined by the back-clip start pointer and the back-clip end pointer, the back-clip start pointer being a logical entity referencing a physical memory location to which a first digital video data frame of the back-clip video segment was written, the back-clip end pointer being a logical entity referencing a physical memory location to which a last digital video data frame of the back-clip video segment was written. The software application further includes instructions for the processor, when the resume control is activated, to: resume said recording of main video footage and said updating the main end pointer. The software application further includes instructions for the processor, when the stop control is activated, to: stop said recording of main video footage; write to the storage a digital main video file comprising main video file footage from the main video footage, the main vid