The Highlight program is designed for computers running Windows 10 or higher with a display size of 13.3 inches or larger.  The program runs quickly on an  Intel I5 or the AMD equivalent.  It will run on an Intel I3 or AMD equivalent, but "tracking" could be very slow.

There are a few requirements for successful highlight videos. You cannot combine videos of different frame sizes or frame rates (frames per second) or file types.  The program requires a specific parameter for each file type (mp4, mov, avi, etc;) and image size (pixel width and height). The currently supported are:

1) mp4 video with 1280 by 720 pixels   (common for sports video)
2) mov video with 1440 by 1080 pixels  (Apple iPhone)
3) mp4 video with 1920 by 1080 pixels  (Samsung phone)
4) avi video with 640 by 480 pixels
5) mov video with 1920 by 1080 pixels  (Apple iPhone) (NOT FULLY FUNCTIONAL FOR OUTPUT VIDEO)



I need a short video (1 second or more) to add support for additional video types.  I can release an updated version the next day.  Please contact me at 217-390-1734 to get support for your video.


There are four pages  that combine to form the Highlight application. The Video Source page supports the generation of a video to be used to create a highlight video. The Tracking page supports the generation of a video that tracks the movement of a person. The Panels page supports the creation of panels that can display an image and/or text that identifies the highlight video that follows.  The Highlight Video page supports the combining of multiple panels and highlight videos.  


The Video Source page supports the generation of a highlight video. The user first selects the video file that contains the video segment for the highlight. The user plays the video to the start position for the highlight and clicks the Start Mark button.  The little blue rectangle shows Step 1 completed.  The user advances the video to where the highlight ends and clicks the End Mark button.  The little blue rectangle shows Step 2 completed.  Next click the Generate File button to create the highlight video file.  The little blue rectangle shows Step 3 completed.  Finally click the Name File button to save the highlight video file with the name and directory file of your choice.  The little blue rectangle shows Step 4 completed. Click the Tracker button to proceed to the Tracker page or select another page to continue.


The Tracker page is where the tracked video is created. The player tracking for a highlight video is sensitive to any camera zoom in or out operations.  When the tracking logic fails, the tracking will stop. In such situations it is possible to use multiple video segments with new tracking in each segment. The Video Editing page provides the tools that enable creation of a highlight video when one or more segments are required. The process consists of three steps.  These steps are repeated until the highlight video is complete.  The three trackers that I have found to be useful with my video have been TrackerMIL (the default tracker), TrackerBoosting, and TrackerCSRT.  Click the Select Tracker button prior to clicking the Run Tracker button.  The selected tracker can be changed before every Run Tracker operation.


If you clicked the Tracker button to get to the Tracker page, the file you created is automatically selected. Click the Select Highlight File button and make your choice. Click the Run Tracker button.  A special tracker window appears.  You select the player to be tracked by clicking the mouse at the top left corner of the player and dragging the mouse to the bottom right corner. Press the 'Enter' key.  The special tracker window closes.  The actual tracking process begins.  Let it run until the whole file is processed and a message box announces complete. The little blue rectangle shows Step 1 completed.  


As you watched the processing you probably noticed when the tracker lost the player. Use the video controls to reach the point where the tracker failed or to the end of the file.  The video controls include a speed control to allow more precise positioning.  The Slow Motion (SM) is one frame per second.  Since mp4 video only plays forward, the reverse control just steps backwards and plays forward for short time and gives an illusion of playing in reverse.  Use the half and quarter speeds to get near the failed tracker position. The SM can get you closer to the failure position. Click the Mark End button.

The Discard button can be used when the tracker seems to fail immediately. Select a different tracker and try again. If the failure keeps occurring, use the Slow Motion mentioned above.
The little blue rectangle shows Step 2 completed.


The conclusion of process is to append the video segment from step 2 to the highlight video. Click the Update Highlight Video button and the video is appended.  The program will replay the highlight video so you can see the current results.  These three steps can be repeated until the end of the orignal video segment is reached.  You can also conclude the tracking before the end of the orignal video segment is reached by simply stopping.


The Panels page has one functions: (1) generate panels that can be descriptive separators for videos.  The panel becomes video frames that are inserted in the video.


The panel layout is completely determined by you.  You can select the panel background color and add text and photographs. The text is generated by the single line format or a multiple line document.  There can be any number of single line text elements.  Each text element has its own font and font color.  Each text element is positioned by the user by dragging and is resized by stretching. The multiline text element has the same font and font color options.  The text size is determined by selecting the point size of the font in the dialog. Each multiline text element is positioned by the user by dragging and is resized by stretching.  Each photograph is positioned by the user by dragging and is resized by stretching.  The photograph can be sized to its aspect ratio or just fitted to the box size.


The layout is saved to an ".XML" file using the file name you provide. This allows you to edit the panel as needed. When the panel is generated a file with your name and ".PNG" is created.
 

The panel video must be built to the same size (width and height in pixels) as the highlight video. When the panel page is selected it is ready to create a new panel if the pixel size parameters are filled in. If no size information is available, click the "Get Video Size" button and select your video file to set the size parameters.  If you are going to edit an existing panel, click the "Load Panel Data" button and select your panel file.      


The panel is visible in a separate window which lets you layout the  panel. The source data for text and photographs is created and edited by six buttons.  The "New" button lets you create a new element.  The "Save" button adds the new element to the panel.  It is now ready to be sized and positioned on the panel.  The "Scroll" button lets you loop through the element list. You can edit the element.  The "Update" button saves the changes and leaves the element in its current position. The "Cancel" button ends the new and update operations with no changes.  The "Delete" button removes the currently selected element.  We suggest you the "Save Panel Data" button regularly so that your work is backed up.


When the panel is complete, click the Generate Panel button to save the panel as a PNG file with the name of the XML file.  The Highlight Video page will convert the panel to video when it is added to video list.


The Highlight Video page first has you add panels and highlight files to the Video List. If no video has been has played before this page is selected, the Get Video Size button should open the video file that has the highlights to set the number of pixels for the width and height. The Add button lets you select panel and  highlight files and put put the file paths in the Video List.  If you select a wrong file just select it in the list and click the Remove button.  If the files are not in the sequence you desire just select the file and click the Up or Down button.  All files are added to the end of the Video List. There are no restrictions in the order of file types.


Once the Video List is completed, click the Build Full Video button.  A dialog appears and you can enter the name of the output file.  The output file must be empty.  Generating the output can take several minutes.  When the build is complete, click the Play Video button to verify the file contains everything.

Changes, Additions, Corrections

 
Version Date Change
 1.0.0.12  11/07/2021 Corrected file select error with multiple file extensions.
 1.0.0.13  11/10/2021  Added capability generate final highlight file without using any previous window.

Eliminated race condition when opening highlight file for playback.
 1.0.014  11/13/2021 Updated text in Program Notes dialog.
 1.0.0.15  11/17/2021 Program Notes dialog now stays open and application is also available.
 1.0.0.16  11/24/2021 Corrected issue where one page was overwriting the previous page.  Corrected issue in getting video size parameters where user could cancel operation without selecting a file and lead to program crash.
 1.0.0.17  11/26/2021 Added feature that disables push buttons while full video is being generated.  This prevents possible crashes.
 1.0.0.18  12/14/2021 Cleaned up text on pages. AVI files are now fully supported. Enhanced Panels to make them easier to use. Can now generate multiple segment files at a time.
 1.0.1.0  3/7/2023 Replaced the fixed formats for panels with fully user defined formats.  Formats may be saved to user files.  Documentation is updated for user creation of panels.
 1.0.1.1  3/24/2023 Corrected layout of panels page when resized for computer screens not sized 1920x1080. Fixed several issues for building panels.
 1.0.1.2  4/2/2023 Support for iPhone with image size 1920x1080 added. There is a problem in the openCV library for images that size for iPhone.