Log in

View Full Version : FRC Video Splitter (Beta)


Ty Tremblay
03-03-2015, 16:17
I'm proud to announce a little project I've been working on the past few days called FRC Video Splitter. I've hosted the code on GitHub. (https://github.com/tytremblay/FRC-Video-Splitter) Download the .zip file and run setup.exe to install it on your computer.

Video Splitter is a simple interface for batching the splitting of a large file into many smaller ones, specifically aimed at FRC match video. The aim is to make it easier for people to split an entire day of recording into individual match videos. At it's core, it's simply a GUI for generating ffmpeg (https://www.ffmpeg.org/) commands.

http://i.imgur.com/22uWR1Q.png

Instructions for use:

Enter the title of the event. ("2015 Granite State District Event")
Browse to the location of the large video file you want to split.
Browse to the folder you want to save the match videos to.
Enter qualification match information. If the video includes qualification matches, set the numbers of the first and last qualification matches in the large video.
Enter playoff / elimination match information. If the video includes qualification matches, enter their names (QF#, SF#, F#, SF1-2, etc).
If desired, override the default video length. This is set to 3 minutes to give a little wiggle room when inputting the time stamps.
Click the "Generate Timestamp Table" button. Video Splitter will generate a table of all the matches you indicated on the right.
Enter time stamp information. This is the part I couldn't automate. You'll have to scrub through your video and enter the start time of each match in the HH:MM:SS format. It's not too painful. I'm able to scrub through an entire day of matches in about 20 min.
Click "SPLIT VIDEOS" and sit back and watch the magic.


Notes:

This currently only works in windows. I wrote it in C# because I'm not very good with python GUIs yet.
You'll need to have FFmpeg installed and located at C:\ffmpeg.exe. (Download here (http://ffmpeg.zeranoe.com/builds/))
Make sure you have enough disk space on the drive you're saving videos to.
This is in beta.

plnyyanks
03-03-2015, 16:54
This looks awesome and really useful!

If you want a basis from cross-platform support, I've got a command line python script that does basically the same thing on my GitHub (https://github.com/phil-lopreiato/match-archive-tools). It works almost exactly the same way - read the time data from a csv file, send ffmpeg commands to split it, upload to youtube, add to a playlist, and generate a CSV file to copy/paste into the TBA Video Spreadsheet.

Conor Ryan
03-03-2015, 17:23
Cool tool!

On speeding up the time stamping process:
You might be able to pull use an excel sheet, and say the Match Timestamps from http://frc-events.usfirst.org/2015/FLFO/qualifications

If you get your recording computer clock lined up with the FMS computer....

Does the new FMS Api report timestamps in seconds?

MikeE
03-03-2015, 18:29
Cool tool!

On speeding up the time stamping process:
You might be able to pull use an excel sheet, and say the Match Timestamps from http://frc-events.usfirst.org/2015/FLFO/qualifications

If you get your recording computer clock lined up with the FMS computer....

Does the new FMS Api report timestamps in seconds?

Or use recognition of the match sounds...

Bluman56
03-03-2015, 19:11
Or use recognition of the match sounds...

That's what I was gonna suggest since the sound of the transition from Auton to Teleop has a "unique" sound signature that should be easily identifiable. Or maybe not I've never done anything related to analyzing audio. Let us know if it works out if you attempt it.

Sperkowsky
03-03-2015, 19:24
I'll definitely use it for this year. It's going to be crazy driving, and directing my little freshman video crew I trained earlier this year. So anything with organizing video will help. When I do it myself it's easy to know which one is which because I make mental notes. When there's 4 other kids using my equipment I don't know what file is which and these kind of programs help. I'll use this in conjunction with plural eyes to organize everything.

cbale2000
04-03-2015, 00:47
I tried installing this but I got an error when running the setup, I've included a copy of the error log file below. Not sure if it's the program or if I installed ffmpeg wrong (dragged the executable into "C:\").


PLATFORM VERSION INFO
Windows : 6.1.7601.65536 (Win32NT)
Common Language Runtime : 4.0.30319.34209
System.Deployment.dll : 4.0.30319.34244 built by: FX452RTMGDR
clr.dll : 4.0.30319.34209 built by: FX452RTMGDR
dfdll.dll : 4.0.30319.34244 built by: FX452RTMGDR
dfshim.dll : 4.0.41209.0 (Main.041209-0000)

SOURCES
Deployment url : file:///C:/Users/*MyUsername*/Downloads/FRC-Video-Splitter-master/FRC-Video-Splitter-master/FRCVideoSplitter.application
Application url : file:///C:/Users/*MyUsername*/Downloads/FRC-Video-Splitter-master/FRC-Video-Splitter-master/Application%20Files/FRCVideoSplitter_1_0_0_0/FRCVideoSplitter.exe.manifest

IDENTITIES
Deployment Identity : FRCVideoSplitter.application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6f52f40a19a9655d, processorArchitecture=msil

APPLICATION SUMMARY
* Installable application.

ERROR SUMMARY
Below is a summary of the errors, details of these errors are listed later in the log.
* Activation of C:\Users\*MyUsername*\Downloads\FRC-Video-Splitter-master\FRC-Video-Splitter-master\FRCVideoSplitter.application resulted in exception. Following failure messages were detected:
+ Application manifest has either a different computed hash than the one specified or no hash specified at all.
+ File, FRCVideoSplitter.exe.manifest, has a different computed hash than specified in manifest.

COMPONENT STORE TRANSACTION FAILURE SUMMARY
No transaction error was detected.

WARNINGS
There were no warnings during this operation.

OPERATION PROGRESS STATUS
* [3/3/2015 11:38:11 PM] : Activation of C:\Users\*MyUsername*\Downloads\FRC-Video-Splitter-master\FRC-Video-Splitter-master\FRCVideoSplitter.application has started.
* [3/3/2015 11:38:11 PM] : Processing of deployment manifest has successfully completed.
* [3/3/2015 11:38:11 PM] : Installation of the application has started.

ERROR DETAILS
Following errors were detected during this operation.
* [3/3/2015 11:38:11 PM] System.Deployment.Application.InvalidDeploymentExc eption (HashValidation)
- Application manifest has either a different computed hash than the one specified or no hash specified at all.
- Source: System.Deployment
- Stack trace:
at System.Deployment.Application.DownloadManager.Down loadApplicationManifest(AssemblyManifest deploymentManifest, String targetDir, Uri deploymentUri, IDownloadNotification notification, DownloadOptions options, Uri& appSourceUri, String& appManifestPath)
at System.Deployment.Application.DownloadManager.Down loadApplicationManifest(AssemblyManifest deploymentManifest, String targetDir, Uri deploymentUri, Uri& appSourceUri, String& appManifestPath)
at System.Deployment.Application.ApplicationActivator .DownloadApplication(SubscriptionState subState, ActivationDescription actDesc, Int64 transactionId, TempDirectory& downloadTemp)
at System.Deployment.Application.ApplicationActivator .InstallApplication(SubscriptionState& subState, ActivationDescription actDesc)
at System.Deployment.Application.ApplicationActivator .PerformDeploymentActivation(Uri activationUri, Boolean isShortcut, String textualSubId, String deploymentProviderUrlFromExtension, BrowserSettings browserSettings, String& errorPageUrl)
at System.Deployment.Application.ApplicationActivator .ActivateDeploymentWorker(Object state)
--- Inner Exception ---
System.Deployment.Application.InvalidDeploymentExc eption (HashValidation)
- File, FRCVideoSplitter.exe.manifest, has a different computed hash than specified in manifest.
- Source: System.Deployment
- Stack trace:
at System.Deployment.Application.ComponentVerifier.Ve rifyFileHash(String filePath, Hash hash)
at System.Deployment.Application.ComponentVerifier.Ve rifyFileHash(String filePath, HashCollection hashCollection)
at System.Deployment.Application.DownloadManager.Down loadApplicationManifest(AssemblyManifest deploymentManifest, String targetDir, Uri deploymentUri, IDownloadNotification notification, DownloadOptions options, Uri& appSourceUri, String& appManifestPath)

COMPONENT STORE TRANSACTION DETAILS
No transaction information is available.

Eugene Fang
04-03-2015, 01:07
Or use recognition of the match sounds...

And then use computer vision to automatically detect which match it is.
#automation

Ty Tremblay
04-03-2015, 07:10
Ah. I've had that hash issue on other programs. I'll work on the fix.

Ty Tremblay
04-03-2015, 09:22
I tried installing this but I got an error when running the setup, I've included a copy of the error log file below. Not sure if it's the program or if I installed ffmpeg wrong (dragged the executable into "C:\").

I think I fixed the manifest hash error. Github was modifying the file during pushes which messed with the computed hash. I told git not to mess with those files.

Try downloading again and installing.

Ty Tremblay
05-03-2015, 10:41
Hi all,

I figured out how to add ffmpeg.exe as a resource. You no longer need to download it!

Alex_Miller
09-03-2015, 08:42
And then use computer vision to automatically detect which match it is.
#automation



I think using computer vision to show when to mark the end of a match would be good too. I've seen archived matches where they don't show the final score.

If you can't detect the beginning of a match sound I think that labeling the start of the match 'X' seconds before the unique auto/teleop sound would work well too.

Ty Tremblay
09-03-2015, 10:13
I've seen archived matches where they don't show the final score.

This is a tough call. You want to show the final score, but sometimes there's that 5-10 minute delay while the refs talk confer. You could cut that out, but that's a lot of manual labor and would be a great target for automation.

Alex_Miller
09-03-2015, 13:47
This is a tough call. You want to show the final score, but sometimes there's that 5-10 minute delay while the refs talk confer. You could cut that out, but that's a lot of manual labor and would be a great target for automation.

Yes, cutting out the time when the refs/scorekeepers are doing their thing would be better. You could then automate it by saying match start = 10 seconds before noise, match end =2 minutes after noise (or whatever the correct timings are) and then if the difference between that and the scoreboard screen is larger than 20 seconds or so flag it for manual review or even automate it more to delete that time inbetween...

cbale2000
09-03-2015, 14:29
So I've finally had some time to play around with this and I must say I'm very impressed with the speed and simplicity of using this program. I'm even more happy (and a bit surprised) that it's compatible with .flv files (the native output of our stream software).


One idea on the whole scoreboard discussion; can ffmpeg merge video clips? If it can, you could just add another (optional) timestamp column to the match list for scoreboard appearance times, then take like a 10 second video clip (or for that matter just a still image would work) from that point and tack it on to the end of the match video.

Just a thought.

artdutra04
09-03-2015, 14:50
One idea on the whole scoreboard discussion; can ffmpeg merge video clips? If it can, you could just add another (optional) timestamp column to the match list for scoreboard appearance times, then take like a 10 second video clip (or for that matter just a still image would work) from that point and tack it on to the end of the match video.

Just a thought.Instead of getting crazy with sound or video recognition you could add in FRC or TBA API calls to get the match score, then generate a PNG or JPG image with all the info, then append that to the end of the match video as a still image slide for a few seconds.

plnyyanks
09-03-2015, 15:32
Instead of getting crazy with sound or video recognition you could add in FRC or TBA API calls to get the match score, then generate a PNG or JPG image with all the info, then append that to the end of the match video as a still image slide for a few seconds.

This is a pretty great idea. The FRC API includes actual match start time in its Results endpoint (http://docs.frcevents.apiary.io/#matchresults) (we'll add it into TBA if this ever happens (https://usfirst.collab.net/sf/go/artf4041?nav=1&_pagenum=1&returnUrlKey=1425929364640)).

I bet you could manually sync the video with the actual times by entering them both for the first match, then have a script calculate the rest of match start times using the API, then cut out the next ~2:30.

This actually seems really feasible. If I get the chance today, I'll try and integrate that into my python scripts (https://github.com/phil-lopreiato/match-archive-tools)

Ty Tremblay
09-03-2015, 15:39
This is a pretty great idea. The FRC API includes actual match start time in its Results endpoint (http://docs.frcevents.apiary.io/#matchresults) (we'll add it into TBA if this ever happens (https://usfirst.collab.net/sf/go/artf4041?nav=1&_pagenum=1&returnUrlKey=1425929364640)).

I bet you could manually sync the video with the actual times by entering them both for the first match, then have a script calculate the rest of match start times using the API, then cut out the next ~2:30.

This actually seems really feasible. If I get the chance today, I'll try and integrate that into my python scripts (https://github.com/phil-lopreiato/match-archive-tools)

Is autoStartTime accurate to seconds?

plnyyanks
09-03-2015, 15:42
Is autoStartTime accurate to seconds?

And more!


➜ phil@fedora ~ frc-api https://frc-api.usfirst.org/api/v1.0/matches/2015/onto2\?tournamentLevel\=qual\&matchNumber\=1
{"Matches":[{"autoStartTime":"2015-03-06T04:19:49.573","description":"Qualification 1","level":"Qualification","matchNumber":1,"scoreRedFinal":63,"scoreRedFoul":0,"scoreRedAuto":6,"scoreBlueFinal":122,"scoreBlueFoul":0,"scoreBlueAuto":6,"Teams":[{"teamNumber":3949,"station":"Red1","dq":false},{"teamNumber":4001,"station":"Red2","dq":false},{"teamNumber":3360,"station":"Red3","dq":false},{"teamNumber":5580,"station":"Blue1","dq":false},{"teamNumber":4069,"station":"Blue2","dq":false},{"teamNumber":1114,"station":"Blue3","dq":false}]}]}%

Eugene Fang
09-03-2015, 16:13
Is autoStartTime accurate to seconds?

Precise, yes. Accurate, who knows. :P

MikeE
09-03-2015, 16:16
And more!


"autoStartTime":"2015-03-06T04:19:49.573"


+1 for the new API

It also looks like it was a very early start for our friends in Canada.

Eugene Fang
09-03-2015, 16:23
+1 for the new API

It also looks like it was a very early start for our friends in Canada.

Looking at the start times, they all seem pretty off.
For example 2015CAMA's QF 1 has a start time of "2015-03-08T09:25:33.04" which doesn't make sense in local time (Pacific) or UTC.

Ty Tremblay
09-03-2015, 16:38
Looking at the start times, they all seem pretty off.
For example 2015CAMA's QF 1 has a start time of "2015-03-08T09:25:33.04" which doesn't make sense in local time (Pacific) or UTC.

I guess it wouldn't really matter for this application, all we really care about is the time span between matches.

Eugene Fang
09-03-2015, 16:41
I guess it wouldn't really matter for this application, all we really care about is the time span between matches.

Ah, you are correct.

MikeE
09-03-2015, 17:28
I guess it wouldn't really matter for this application, all we really care about is the time span between matches.

Correct. It's only the autoStartTime deltas that matter for this application, but it would be comforting to know the source of the time reference. I'd have expected it was a timestamp from the FMS server, but that's usually set to event local time.

plnyyanks
09-03-2015, 18:18
I wrote up a quick script that will hit the FMS API for an event of your choosing an make a CSV file of {tbaMatchKey, autoStartTime} for use elsewhere.

You need to have your API secrets in a file to be read

https://github.com/phil-lopreiato/match-archive-tools/blob/fms-api/create-timing-data.py

cbale2000
10-03-2015, 23:25
The only potential issue I see with relying on the API is that not every event will have API data (IE, most off-season events).

Ty Tremblay
11-03-2015, 10:01
I've created an option that can use the FRC API to automatically fill in time stamps after the first is entered.

It worked well when I tested it on my Reading District recordings. However, I haven't put the code in to handle the break between qualifications and playoffs. To work around this, run Splitter on qual videos, then run it again on playoff videos.

Ty Tremblay
02-04-2015, 11:19
New update from Vikesrock!

New features include:

Automatic uploading of all videos in destination folder to YouTube
Automatic YouTube playlist creation
TBA match results in video description.
TBA import spreadsheet creation after YouTube upload
Improved error handling
Progress bars for splitting and uploading
And more!

Hallry
02-04-2016, 00:08
Sorry to revive an old thread, but just wanted to say that I used the program for the first time today and loved it. If it's simple enough for me to figure out, it should be a breeze for any other user. Thanks so much, Ty.

AllenGregoryIV
02-04-2016, 00:21
Sorry to revive an old thread, but just wanted to say that I used the program for the first time today and loved it. If it's simple enough for me to figure out, it should be a breeze for any other user. Thanks so much, Ty.

Agreed this thing is awesome now. Anyone who can download a full achieve of a stream can quickly pull match videos and upload them YouTube and link them to blue alliance which is great for the whole community.

EmileH
02-04-2016, 05:53
Sorry to revive an old thread, but just wanted to say that I used the program for the first time today and loved it. If it's simple enough for me to figure out, it should be a breeze for any other user. Thanks so much, Ty.

Have you tried Version 2? It can pull match start and end time data from TBA and all you need to do is put in the start time of the first match from each day and let it run. Then you can use it to upload to YouTube right from the app with descriptions including match score, make a playlist of the event, and then write an upload file for TBA's match video spreadsheet.

https://github.com/tytremblay/FRC-Video-Splitter-2

Ty Tremblay
02-04-2016, 08:04
Sorry to revive an old thread, but just wanted to say that I used the program for the first time today and loved it. If it's simple enough for me to figure out, it should be a breeze for any other user. Thanks so much, Ty.

Agreed this thing is awesome now. Anyone who can download a full achieve of a stream can quickly pull match videos and upload them YouTube and link them to blue alliance which is great for the whole community.

Glad to hear you guys like it! Based on suggestions from Allen, I'm working on a few improvements that should help teams that do live recording and splitting at events with uploading to YouTube.

Have you tried Version 2? It can pull match start and end time data from TBA and all you need to do is put in the start time of the first match from each day and let it run. Then you can use it to upload to YouTube right from the app with descriptions including match score, make a playlist of the event, and then write an upload file for TBA's match video spreadsheet.

https://github.com/tytremblay/FRC-Video-Splitter-2

Good catch Emile, I'll edit the original GitHub to point to the new one.

Eugene Fang
02-04-2016, 09:54
Have you tried Version 2? It can pull match start and end time data from TBA and all you need to do is put in the start time of the first match from each day and let it run. Then you can use it to upload to YouTube right from the app with descriptions including match score, make a playlist of the event, and then write an upload file for TBA's match video spreadsheet.

https://github.com/tytremblay/FRC-Video-Splitter-2

Wow I did not realize this existed. Nice, Ty.

Though I think the match time info comes from the FRC API, not TBA API. I suggest through the source and I don't think the TBA API is used for anything.

AllenGregoryIV
02-04-2016, 10:23
Just a note the easiest way I found to link the videos to TBA is to use the TBA Youtube playlist import which you can use by clicking "Add Videos" on the top of each event page. This will let you basically automatically add all the videos to TBA just by pasting in the playlist link.


Suggestion
Add a link to the TBA breakdown page in the video description. that way we can easily see all the data from the match if we found it through youtube instead of TBA.

Ty Tremblay
02-04-2016, 17:41
Just a note the easiest way I found to link the videos to TBA is to use the TBA Youtube playlist import which you can use by clicking "Add Videos" on the top of each event page. This will let you basically automatically add all the videos to TBA just by pasting in the playlist link.


Suggestion
Add a link to the TBA breakdown page in the video description. that way we can easily see all the data from the match if we found it through youtube instead of TBA.

Fun note, the TBA playlist import tool was designed to work best with playlists created by Splitter.

Great idea.

Ty Tremblay
02-04-2016, 19:37
I've updated Splitter to add a link to TBA on each video.

I've also added some basic import functionality. To import videos, click the import button and select the video files you wish to import. When you click OK, Splitter will sort the videos by date modified and add them to the matches list starting with the first included video that doesn't have a VideoPath.

cbale2000
02-04-2016, 22:21
I'm loving version 2, much easier to use and the data pull feature actually works correctly. Honestly I wish I had this a few weeks ago when I ran the stream for our local district, it would have saved us a lot of time. :)

A few suggestions:

It would be nice if there was an option to add a fixed amount of time to the end of a match, since it seems the post result time does not always sync with when the scores actually appear.
The current system doesn't appear to handle multiple source files very well (for when recording software automatically breaks up recordings into like 4gb parts). It would be great if there was a way to have multiple sources or to have the splitter recognize the length of the source file and prompt for the next file when it gets to the end of the source instead of just looping back to the beginning and generating incorrect match videos.
Not sure if it's a limitation of the splitter or how the FIRST API is utilized at events, but it would be great to have more support for off-season competitions.

EmileH
02-04-2016, 22:33
Not sure if it's a limitation of the splitter or how the FIRST API is utilized at events, but it would be great to have more support for off-season competitions.


That's a limitation of the FRC API. If an event is not publishing it's match scores/times and other FMS data to the FIRST API then the video splitter cannot get time data, etc. You can however use manual match time inputs for off season events that don't have published match start times, which takes about 20 minutes to scrub through and find for a day of video.

cbale2000
02-04-2016, 23:46
That's a limitation of the FRC API. If an event is not publishing it's match scores/times and other FMS data to the FIRST API then the video splitter cannot get time data, etc. You can however use manual match time inputs for off season events that don't have published match start times, which takes about 20 minutes to scrub through and find for a day of video.

I figured as much, do you know if there are any limitations on which events can publish to the FIRST API (can an FTA just check a box and turn it on, or is it something that needs to be set up through FIRST)? I did notice IRI is on the list of supported events.

Does anyone know if there is, perhaps, a log file generated locally by the FMS that could be saved on a flash drive and loaded manually for match time data?

I have used the previous versions of FRC video splitter so I'm quite familiar with setting the times manually, but it would be nice if importing the data was a feature that I could make use of more than just one time a year. :rolleyes:

JohnFogarty
03-04-2016, 02:00
I like this application quite a bit.

I did notice a problem with the synchronization from the TBA match times to the actual competition video. It didn't work for me at all with the GADAL event.

I tried inputting the start time in the video of the first match I wanted and then only included matches that I wanted the program to spit from the main video file. 5632's matches were the only ones I was interested in spitting from the video file and I got wildly wrong generated time stamps.

Everything worked great if I manually input the match start time-stamp.

Ty Tremblay
04-04-2016, 11:57
I'm loving version 2, much easier to use and the data pull feature actually works correctly. Honestly I wish I had this a few weeks ago when I ran the stream for our local district, it would have saved us a lot of time. :)

A few suggestions:

It would be nice if there was an option to add a fixed amount of time to the end of a match, since it seems the post result time does not always sync with when the scores actually appear.
The current system doesn't appear to handle multiple source files very well (for when recording software automatically breaks up recordings into like 4gb parts). It would be great if there was a way to have multiple sources or to have the splitter recognize the length of the source file and prompt for the next file when it gets to the end of the source instead of just looping back to the beginning and generating incorrect match videos.
Not sure if it's a limitation of the splitter or how the FIRST API is utilized at events, but it would be great to have more support for off-season competitions.



Great idea, I've added a setting for this.
The current workflow for multiple source files is to add your first source, include only the matches on that source, split the videos, and then repeat for subsequent sources. When you're done, include all videos before uploading to YouTube.
I think Emile answered this well.

I like this application quite a bit.

I did notice a problem with the synchronization from the TBA match times to the actual competition video. It didn't work for me at all with the GADAL event.

I tried inputting the start time in the video of the first match I wanted and then only included matches that I wanted the program to spit from the main video file. 5632's matches were the only ones I was interested in spitting from the video file and I got wildly wrong generated time stamps.

Everything worked great if I manually input the match start time-stamp.

This wasn't one of the intended use cases for Splitter when it was conceived, but it shouldn't be too hard to implement. I'll work on this for the next release.

cbale2000
04-04-2016, 16:27
The current workflow for multiple source files is to add your first source, include only the matches on that source, split the videos, and then repeat for subsequent sources. When you're done, include all videos before uploading to YouTube.


Would it be possible then to add the ability to select multiple matches on the match list at once and check or uncheck them as a group? Not a deal breaker obviously, but it would be a nice way to eliminate the tedium of unchecking 60+ matches one at a time every time you load a video file.



I think Emile answered this well.


Any thoughts on my followup comments:
...do you know if there are any limitations on which events can publish to the FIRST API (can an FTA just check a box and turn it on, or is it something that needs to be set up through FIRST)? I did notice IRI is on the list of supported events.

Does anyone know if there is, perhaps, a log file generated locally by the FMS that could be saved on a flash drive and loaded manually for match time data?

plnyyanks
04-04-2016, 16:48
I figured as much, do you know if there are any limitations on which events can publish to the FIRST API (can an FTA just check a box and turn it on, or is it something that needs to be set up through FIRST)? I did notice IRI is on the list of supported events.

I believe that use of the FIRST API has to be sorted out with HQ in advance. Most (if not all?) builds of the Offseason FMS have data publishing disabled, so it's more complex than the FTA just checking a box in FMS. Additionally, I don't know if the API is just returning events on their calendar, or if they're actually planning on posting live data for it.

Does anyone know if there is, perhaps, a log file generated locally by the FMS that could be saved on a flash drive and loaded manually for match time data?

FMS does provide a cycle time report, which (IIRC) gives the elapsed time between match starts. I bet this could be used.

Ty Tremblay
04-04-2016, 16:56
Would it be possible then to add the ability to select multiple matches on the match list at once and check or uncheck them as a group? Not a deal breaker obviously, but it would be a nice way to eliminate the tedium of unchecking 60+ matches one at a time every time you load a video file.


Already there! Shift-select multiple matches, right click, and include/exclude away.

Example (http://i.imgur.com/MM2h6Mq.png)

Also, shift-selecting, then checking/unchecking the include checkbox will set all selected matches to that checkbox's state.

ATannahill
04-04-2016, 17:02
FMS does provide a cycle time report, which (IIRC) gives the elapsed time between match starts. I bet this could be used.

The cycle time report (which is able to be generated on the off-season FMS) includes the start time of each match. It usually has the elapsed time between matches, the exception is if there is a break between the matches such as an audience selection, field time-out or lunch.

plnyyanks
04-04-2016, 17:07
The cycle time report (which is able to be generated on the off-season FMS) includes the start time of each match. It usually has the elapsed time between matches, the exception is if there is a break between the matches such as an audience selection, field time-out or lunch.

Right you are. I can confirm that this year's Cycle Time report contains the start and end timestamps for each match (it also has the Referee score commit time, ref elapsed time, and cycle time)

cbale2000
04-04-2016, 17:08
Already there! Shift-select multiple matches, right click, and include/exclude away.

Example (http://i.imgur.com/MM2h6Mq.png)

Also, shift-selecting, then checking/unchecking the include checkbox will set all selected matches to that checkbox's state.

Good to know, I attempted to select multiple boxes and then left click one of them (works with some other programs) but had not tried right click. :rolleyes:

FMS does provide a cycle time report, which (IIRC) gives the elapsed time between match starts. I bet this could be used.
The cycle time report (which is able to be generated on the off-season FMS) includes the start time of each match. It usually has the elapsed time between matches, the exception is if there is a break between the matches such as an audience selection, field time-out or lunch.

I'll have to remember to ask the FTAs for this during our next off-season event. Ty, any chance FRC Video Splitter could have a feature to load this data from a file to generate times?

Ty Tremblay
04-04-2016, 17:11
I'll have to remember to ask the FTAs for this during our next off-season event. Ty, any chance FRC Video Splitter could have a feature to load this data from a file to generate times?

If someone can get me an example report, I'll give it a shot. No guarantees on when it'll be done by, GameSense is pretty busy between now and the end of CMP.

Jean Tenca
04-04-2016, 18:21
This is an awesome tool. Thank you for this!

cbale2000
04-04-2016, 20:57
If someone can get me an example report, I'll give it a shot. No guarantees on when it'll be done by, GameSense is pretty busy between now and the end of CMP.

To be fair, since it would only need to be used for off-season events there's no real rush to have it done between now and CMP. ;)