Category Archives: Software

Race Report: 2014 Minnesota Half Marathon

A lot of people question the value of the Minnesota Half Marathon.  However, after the race this year, this event should be considered a staple of the Midwest outdoor racing circuit and anyone within reasonable driving distance should put this race on their calendar.

I have often felt that this race rejuvenates my confidence as a skater after the Chicagoland Inline Marathon, as I haven’t been able to keep up with the main pack at that race since I have raced it.  Coming out of the Chicagoland, I was aggressive with the two weeks of training I had getting ready for this race.  I like this race, generally, even if it is only a half marathon.  The road conditions are decent, there aren’t a lot of big hills, and the pace is pretty fast.  This is a local race for Minnesota skaters, and it usually draws a big crowd from the local speed skating contingent here.  This year was no exception.

I got out of the house and on the road by the time I had planned, but didn’t get to St. Paul, where the race took place, until 7:15 AM.  The race was scheduled to start for the Open Wave at 7:33 AM, so I was very late.  The line for parking was long, and I still had to get to packet pick-up and get my skates on before getting to the start line.  The gear drop was also in an odd place.  Thankfully, one of my teammates from Team Rainbo was kind enough to drop my gear bag for me at gear drop while I got my skates on.  When I checked in and got my bib, I didn’t get an ankle chip.

I made it to the start line, but just barely before the National Anthem.  I got in with the group of skaters in the open group, but was shuffled a couple of skaters back from the start line.  The conditions were tight, and it took a bit to get across the start line.  At the start, the pace was predictably fast through the turn around.  The main group filtered out after a couple of miles.  We had a solid group through the first half of the race.  Oddly, at about mile 5.5, I was pulling the line and found myself alone.  I looked back to see the line dropping off behind me.  I knew I wasn’t going to be able to hold that pace through the rest of the race, and opted to let the line catch me.  We rotated out, I continued to draft, and as we approached the turn around a couple of skaters got away.  Cale Carvell gave chase, and caught the group on the flyer.  The line broke up a bit up the hill to the turn around, and I opted to see if I could catch the flyer. It took about a mile, but I managed to reel them in.  Unfortunately, the rest of the pack came with us.  The last couple of miles were very fast.  I managed to duck in behind Roger Olson and hang on to the finish.  We were cruising into the final sprint, and I looked to my right only to see one of the other skaters closing, so I shot my right foot out to cross the line first, finishing in the top 5 for the wave, first for my age group, and 33rd overall, finishing in 42:02.30.  Full results can be found here.  The open wave was lead by Matt Melanson, Cale Carvell, Roger Olson, and myself.  However, the official results list Dan Stietz as finishing first, though I don’t know we ever saw him in or around the main pack, and he finished about 3 seconds ahead of the pack.  There was some great racing in the open division this year.

Inline Skate Minneapolis‘s race report from the overall event can be found here.  Kelin Dunfree pulled out the overall win, followed by Rob Bell and Alex Fadek with Hernan Diaz and  Team Rainbo’s Steve Meisinger rounding out the top five finishers.  Kaari, over at the Longtrack Life also pulled out her inline skates and raced the event.  Her race report can be found here.

My technique was better in this race, but after watching the video and observing some of the other skaters, I can say that the big problem with my technique is where my center of gravity sits over my skates.  The other fast skaters have their center of gravity further back over the heels of their skates.  Mine tends to be over my skates.  I noticed this after the Chicagoland, but this certifies the problem.  I have been working on this aspect of my technique.  I need to get my balance and weight farther over the heels of my skates, and I will continue to work on this body position.  The big benefit of doing this is it forces me to push out to side more effectively, thereby transferring power to the ground more effectively to generate more speed.

The race was a little slower than last year, but my finish result was better in the main pack.  While there was a little hiccup with the timing because I didn’t have an ankle chip, the race organizers were very accommodating to add my time to the final results.  My helmet camera video follows:

I used DashWare to make the gauge overlay for this video.  This process is shockingly more cumbersome than using CycleCam.  CycleCam creates the gauge videos with just the use of the Garmin TCX file.  However, it doesn’t have very many options for gauges.  DashWare has considerably more gauge options, and the gauge designer is very powerful, though not entirely user friendly.  DashWare, though, is designed to make the entire video, start to finish.  DashWare has options for titling, but isn’t very capable as an editor.  I had to make a background to make the green screen so I could use chroma key to overlay the gauges on the camera footage.  I like the gauge options, but you have to render the video with audio in DashWare then edit the camera video and gauge video in Lightworks.  I am going to keep working with DashWare to see if I can construct a viable workflow.  I will have a review of DashWare specifically in the near future.


Race Report: 2014 Chicagoland Inline Marathon

This year, the Chicagoland Inline Marathon took place on July 20, 2014.  The weather is usually a source of concern for this race because, as one friend and fellow racer of mine put it, its like racing on the surface of the sun.  It is usually brutally hot and terribly humid, but that is what you get when you schedule a race in the Chicago area in July, basically the dog days of summer.  This year, though, the race start for the Advanced division at 8 AM, the weather was reasonably pleasant.  The temperature was in the mid 60’s and the humidity was around 70%.  The Elite group had a little tougher time weather wise, but it never got much more humid.  Generally, pleasant conditions for skating, all things considered.

The race started shortly after 8 AM, and the group came off of the line typically quick, with the speed of the lead pack jumping quickly up to 20 MPH.  As the group thinned to the 20 of us, or so that could hold that pace.  The pace stayed in that range, and for the first half of the race, we were averaging 18+ mph even over the hills.  Last year, I got dropped after the the hills on Central, headed up Huntington toward Lakewood.  This year, I managed to stick with the lead pack through the entire first lap, and through the long outbound stretch on Central to the turn around about 12 miles in to the race.  For this race, it is the longest I have managed to stick with the lead pack.

Like previous years, we lost half of the pack on the hills on the return on Central.  This group got together and hung together for the rest of the race.  The lead pack put some good distance on them in the half of a lap or so after we got away.  However, it wasn’t too much longer before I lost the lead pack.  At the turn around, I got shuffled to the back of the pack.  When we came around the corner back onto Central, I had the opportunity to jump up the line, but, mentally, I wasn’t there, and miss the opportunity.  The guy in front of me lapped the line, and I got stuck in the accordion effect of the sprint back toward the hills on Central.  I couldn’t get my legs under me and sprint after the pack to stay in the draft.

I lost the pack after 12 miles, and then skated the remainder of the entirely alone.  I tried to pick up a skater or two on the way, but wasn’t able to find anyone to skate with.  Another skater was on my tail, but not closing fast enough to allow us to work together.  I think we both may have done better if we managed to connect and work together.  Regardless, after seeing one of my team mates with a bit of a lead, I was hoping to catch him.  Unfortunately, I couldn’t close the gap and I spent the rest of the race in no-man’s land, skating solo in the wind, fighting for every minute I could manage.  I finished the race in something of a disappointing 1:35:20, 5th in my division and 16th overall in the wave, as I hoped to finish around 90 minutes.  However, I do think this is one of my highest overall finishes at this race, which does give me some hope that the work I have been doing on technique and fitness are helping.  This time was better than last year, but not better than the year before, which was a personal best at this course, if memory serves.  The advanced division race results can be found here.  The rest of the results by category can be found here.

This race is challenging.  While the road conditions get a lot of complaints, that isn’t what really makes this race hard:  it’s the hills.  To race Chicagoland, you have to be ready for hills, intervals, and hot weather.  Without that combination, you won’t last.  The road conditions are just another layer that will separate those who are comfortable skating on any surface from those who aren’t.  I will keep attending this race because I like the challenge.  I wasn’t prepared mentally, and could have used a little better physical preparation, but I learned a lot (like how my form on hills falls apart when I get tired, leaving me with heel blisters to remember the experience).  My hips were pretty sore after the race, too, which also gives me confidence that my work on technique is helping as the kind of soreness and fatigue I came away from the race with is a good indication that my technique wasn’t as bad as my feet would have me believe.  That said, the goal for next year is to hang with the lead pack through the entire race.  I have a better idea of how to train now, generally, and will be adjusting my off season work to accommodate a lot more base cardio, something I missed this last winter.  Mixed with a strong helping of weight lifting, a little bit of ice skating, and a mix of other things that I will probably discuss more at length come October, I am hoping for a stronger finish next year.  Overall, I can’t complain much about this race.  I did better than last year and placed higher, overall, than I have at this race.  My time wasn’t spectacular, but given the other gains, I can’t say that this race was a total loss.  I know now what I need to work on, and if I am not learning something in this sport, I am doing something very wrong.

From a gear perspective, I have been messing with my frame placement, and I think it was a little off on both skates, but more so on my left skate. That is where the biggest blister was after the race.  I skated some earlier this week and noticed the placement issue.  I moved the frames in a couple of millimeters, and they feel dialed in at the moment.  I am going to stick with this placement for the near future, probably through the end of the season.  While cleaning my bearings before the race, it became apparent that my Adam’s Swiss bearings were dead after not being properly clean after getting wet during the Apostle Island race.  It was a stupid mistake that forced me to replace the bearings with ILQ9 Pro bearings.  I like the ILQ bearings from TwinCam generally.  They are a good product, but I wish I had more break in time on them.  They roll very smoothly, and I couldn’t complain about the team price.  It is also what a lot of the guys that skate in Minnesota run, too.  The WRW Truth wheels seem to be doing reasonably well, but they are wearing more quickly than I anticipated.  I will have to see how they fair over the next two races to provide a better review.  Any experience I had at Chicagoland this year will be colored by a lot of other gear changes that contributed to my struggles in this race.

The next race is the Minnesota Half Marathon on August 2. I don’t feel ready for this race, but I didn’t feel ready for Apostle Island this year or the Minnesota Half last year.  My goal is ambitious, though I don’t know if I am capable.  Last year, I accomplished my goal of staying with the lead pack.  This year, I am shooting for a top 10 finish in the open division.

My race video follows.  I am switching to DashWare to create the gauges, but building custom gauges in that program takes some time.  I hope to have that program in the mix for the NorthShore in September.  Beyond that, I used Lightworks to do all of the editing, rather than having to create the titles with an image editor and importing them into the video.  The new version of Lightworks is great.  If you need an NLE video editor, check it out.  As for the video, judge for yourself:


How To: Video Overlays (Updated)

Recently, I have had a couple of additional requests for instructions on how I make my race and training videos with the gauges showing speed, heart rate, and other metrics from the work out.  Since I last did a post on this topic, a lot has changed with the software I use to create the videos.  I used to have to jump through a lot of hoops, but now the process is a little more straightforward.

Disclaimer:  This process works for me after a lot of messing with the work flow.  Also, this process was developed for Microsoft Windows.  VeryMadMart has instructions on his site that works for Mac.  Linux users who have access to Lightworks can also try, since CycleCam is a Java application, but it has not been tested on Linux, so use it at your own peril.

Before you start, you need the following software:

You will also need some additional data to work with:  Your point of view video and GPS data in TCX format from your fitness tracker.

I suggest you use a .TCX file because CycleCam was designed to work with the Garmin proprietary format.  However, you can get this kind of data from most kinds of fitness tracking apps that are made for smartphones, like Endomondo, RunKeeper, and Wahoo.  After you download your GPS workout data, open CycleCam.


CycleCam is an open source project that is made by a guy in the UK as part of his cycling hobby.  I don’t get picky about features because the guy designs the software for free.  I tend to work with what he provides, and if I really want to get crazy with overlays, will look for a different product, like DashWare, in the future.

To use CycleCam, start the .jar file by double clicking it after the download.  It opens a window that has a blank layout on a black background.  If you have your TCX file, you can click the file button, and then click “Load Garmin TCX.”
CycleCam 1
After the TCX File loads, you will get a default layout with a variety of gauges on a black background.

CycleCam 2
To edit a gauge, double click on the gauge, and the gauge editing dialogue will appear.

CycleCam 3
With this dialogue, you can adjust all of the parameters tracked by the gauge.  Note that if data does not exist in your TCX file, the gauge will not do anything.  The TCX file predetermines the information for data sets like speed, GPS, and heart rate, based on the input.  Essentially, if you don’t have a heart rate monitor, but tell a gauge to read heart rate, it won’t do anything.  An example is my video of the Chicagoland Inline Marathon, which, due to my error, did not have heart rate data.  The result is a dead gauge that does nothing.  You can also add gauges using the “Add Gauge” menu.
CycleCam 4
Once you have your layout organized like you want it with various types of gauges, save it.  When you create your next project, you can load the layout from the File menu as shown here.

CycleCam 5
Once you have your layout, you are ready to make some final detail choices and create the gauge video.  First, in order to complete the overlay process in Lightworks, you need to select a Chroma Key because the Chroma Key effect will be used to merge the gauge video with the helmet camera video in Lightworks.  Chroma Key is a special editing effect commonly known as Green-Screen or Blue-Screen.  You can change the Chroma Key setting in CycleCam using the Chroma Key menu.

CycleCam 6
Once you have the Chroma Key color set, the background of the video will change to the desired color from black.  You next need to select your frame rate from the “Rate(12)” menu.  It is important to match your frame rate to the frame rate used by your helmet camera.  If you import the wrong frame rate into Lightworks, the video will play at the frame rate set in Lightworks for the project.  If the frame rate in CycleCam is higher, the video will play slower, and if the frame rate is lower, the video will play faster, resulting in video that cannot be synchronized, and causing odd results once the final video is exported from Lightworks.  I use a Contour+ camera, and have it set to shoot video at 29.97 frames per second.  You can choose to set the frame rate in CycleCam as either 30 frames per second or 29.97 frames per second.  Generally, I have better luck with 30 frames per second, and suggest you use that frame rate for your gauge video.

CycleCam 7
You can see in this picture that the background color has changed, and the data is loaded.  Once the frame rate has been set, you are ready to render the video.  Select the “Render” menu for these settings.  At this point, you have three options for the quality of the output video.  I tend to favor the lossless format.  It will have a larger file size upon export.

CycleCam 8
When you select your render setting, you will be prompted to save the video file.  When you are prompted to save the video file, you must also put an extension on the end of the file for the file type as CycleCam does not do this automatically.  The proper file extension is .mov, which is added to the end of the file name as shown below.  If you do not do this in CycleCam, you can add it later, but it is easier to do it as part of this process.

CycleCam 9
Once you have designated the file name and save location, the software will begin the work of rendering the video file.  This process can take several hours depending on how long your video will be.  The video produced by CycleCam will have the same duration as the recorded work-out.  For my Chicagoland race, it was approximately one hour and thirty seven minutes.  The render took several hours.

CycleCam 10
Once the process is complete you have a video with the gauges converting the TCX data into the information tracked by the gauges.  The next step is to convert all of your source video into a format that will work with Lightworks.  For that you need to use EyeFrame Video Converter.

EyeFrame Video Converter:

EyeFrame Video Converter is a piece of software developed by some Lightworks users to convert video into formats and codecs that work with Lightworks Free and Pro.  I work with Lightworks Free and convert all of the video using the default EyeFrame settings for Lightworks Free.

A tutorial explaining how to do this can be found HERE.  I won’t reiterate the process as it is handled completely by this tutorial.

Once all of your source video is converted, you can bring it into Lightworks for editing.

Lightworks Free:

Working with Lightworks can be complicated if you have never used a video editor before.  I suggest you review all of the offerings for tutorials on the Editshare YouTube page before working with Lightworks.  Of particular note, you will want to know how to install the software, start a project (use 30FPS settings), and import videos.

Once you understand how this process works, follow the tutorial concerning the Chroma Key Effect that follows:

Once you have your video edited together, you are ready to export the video.  Follow the tutorials on the Editshare YouTube channel on how to export video from Lightowrks.  Use the 10 bit video using the uncompressed YuYv AVI or MOV format.  This file will be very large, and you will need to use another piece of software to compress the file to a file type that will work for uploading or storing locally.  Unless you have access to limitless digital storage, you will want to compress your 20+ gigabyte videos using Handbrake, AnyVideoConverter, or EyeFrame.

Video Conversion:

This process will require the use of EyeFrame, AnyVideoConverter, or Handbrake.  Select settings from these applications that fit your purpose.  Generally, I try to keep the quality of the video as high as possible while getting a file that is as small as possible.  My video from the Chicagoland marathon was approximately 30 gigabytes upon export from Lightworks.  I used AnyVideoConverter, with settings for a .AVI file using the xvid codec, MP3 audio, and an 8000 bitrate.  It reduced the file size to around 3 gigabytes.  I have also used Handbrake.  I have not tried EyeFrame for final video, but since there are settings to make video specifically to upload to YouTube or Vimeo, I will experiment with it for future projects.

Finished Product:

In total, this is a bit of an involved process, and takes some tinkering to get the kind of video that you want.  All of the videos on InlinePaceline, with rare exception, were made using some version of this process.  If you want a solution that will produce the videos with gauges for you, consider DashWare, but note that it costs $60.  My goal with this software workflow was to develop a process that used free software.  This makes the steps a little more complicated, but provided you have a camera and a device to track your work outs that will output data in TCX format, you can start creating your own overlay videos and share them with the world.  Please let me know if you have any questions or if I did anything wrong in the comments.

Training update…

The last couple of weeks have been pretty good for training.  After the let-down of Roll for the Roses, I refocused and got on a better, more specific training plan, involving at least one interval skate, one hill skate, and one long skate each week, mixed with recovery skates and bike rides.  This seems like it is working out well so far.  I have only been on this plan for a short time, but I feel like I am getting better.

Last weekend, I did my last long skate before the taper going into the Chicagoland Marathon this weekend.  I skated with one of the other local guys, and we took the shortened route out on Old Salem Road.  This is usually the route we take for the 20+ mile skates, but the guy that usually skates that route with us was out of town, so we started right off of Old Salem Road rather than leaving from his house.  Leaving from his house adds an additional 6 miles to the trip.  As a result, this last long skate was only 14 miles.  My goal was to work on maintaining better speed on hill climbs.  Usually, with steep hills my speed will drop down around 7 or 8 miles per hour.  My goal for most of the hills was to stay above 10 miles per hour.  I got some acceptable results, but my hamstrings have been tight and sore since the skate.  At least this means I am getting stronger.  I shot some video of the skate, which shows the metrics, including the climbs.  The video follows.

Concerning the video, I may either shell out for DashWare or the Pro Version of Lightworks.  They are both comparably priced.  I may favor DashWare because it provides a lot more options for using data and gauges.  CycleCam has been buggy lately, and the beta version doesn’t provide very good gauge options at the moment.  I can’t complain, though, because it is free software, and the developer is a great guy.  I will probably continue using my current set up for videos for the foreseeable future because our financial situation is such that I can’t afford to spend money on software.  And, if the current system isn’t broken, there is no need to fix it.

Going into the race this weekend, I am feeling a bit uneasy.  Since last Saturday, my hamstrings have been a bit sore.  This is muscle soreness that appears to be related to skating.  I am taking it really easy this week so I am ready to go on Sunday.  I don’t want to get 20 miles into the race and not have enough energy in the tank to finish the race.  I am also recovering from a fairly mild head cold that started up Sunday.  Going into the race, I have high hopes of a new personal best, and my target is to finish the race in less than 90 minutes.  I got really close last year, and I feel strong this year, particularly on the hills.  Provide the rest of my body holds out, and I have the energy to finish strong, it should be a good race.  I just hope I can get recovered in time to race hard on Sunday morning.

Finished Videos and Other News

I finally finished the gauge videos from the Chicagoland Inline Marathon and the Minnesota Half Marathon.  They aren’t as clean as my earlier videos because I had to find a new editor.  Lightworks has been problematic.  I am working on figuring out a solution.  I think it is a setting issue, and I am going to keep working with it until I find a solution.

In the mean time, I have stumbled upon a pseudo-replacement to keep the videos coming while I get Lightworks processing again.  VideoPad Video Editor has been my fill-in editor.  The free version does reasonably well, and works with pretty much all major video file types.  If switching to the pro version of Lightworks gets me back to running, and it is as easy as VideoPad, I may spend the money to make the switch.  However, since my present goal is to assemble the videos for free, this is a good option. Using VideoPad reminds me a lot of using Wax 2.0, which I have never been able to get working in Windows.  Since they are so similar, it was easy to get the editing going.  Be warned, it takes a very long time to process footage, but you get fully rendered and compressed files, so it is a workable trade off.

The first video is the Chicagoland Inline Marathon.  I cut down the video so it is just the race footage.

The second video is the Minnesota Half Marathon.  I also cut down this footage so it is just the race.

Also, from the Minnesota Half Marathon, I received my award for placing second.  I like that it is functional.

More soon about life changes, training, etc.  Hopefully a lot more on technique also.  I am working on adding the double push into my skating on the recommendation of another skater on the SkateLog Forum.  I will be posting more about technique from resources I have found on the internet in the near future.

Minnesota Half Marathon, August 4, 2012

I am a little late with posting this race report, but life has been a bit hectic lately.  That not withstanding, this was a great race to attend, though I didn’t perform as well as I had hoped.

The trip to my Sister-in-Law’s was a bit harrowing, and ended with a very slow drive through a monsoon on the highway just before getting to her house.  We made it, but we didn’t get in until around midnight.  The start of the race was bright and early at 7:30, and since I had to pick up my race packet, it meant being out the door by 6 AM to get there for packet pick-up at 6:30.  As a result, I was really tired from lack of sleep and stress from the late night of driving.  Adversity is where you really learn who you are, though.

I got ready and skipped the warm up.  This was a mistake.  I was nervous on the start line, and had a hard time getting focused.  The horn sounded and it was all business.  Once we got going, my goal was just to stick with the lead pack in the Open Division.  I hoped to finish in 40:00.00.  That would have been a great time for me.  Realistically, my goal was to beat my half marathon split from the Chicagoland Marathon, which was 44 minutes.  I finished in just over 43 minutes, and am happy with the result.

Conditions were decent for racing, though it threatened rain all morning.  The start temperature was in the mid 60’s and the humidity was a bit high, but not unbearable.  The ground was dry for the most part, with a couple of wet spots, so everyone opted for dry wheels instead of rain wheels.  I used the Black Ops 87a wheels for this race.  Grip was good and consistent, as was the roll.  I am still really enjoying these wheels.  Overall, we couldn’t have asked for better weather.

The trip out was relatively uneventful, although the skaters at the front of the pace line were all over the place.  They were going slow where they should have been fast and fast where it didn’t make sense to go fast.  They weren’t calling out hazards either, so we nearly took a tumble once or twice because the front of the line wasn’t letting anyone know about road hazards.  I skated with a couple of Team Rainbo members for most of the race, but they broke away to move up in the pace line.  I should have followed suit.  I got stuck at the back of the line when it accordioned at mile 9.  The gap was too big for me to make up, and I skated the last four miles or so on my own.  I managed to keep a good pace for most of that time, but was caught by a group from behind in the last mile of the race.  I jumped on their line and cruised with them.  As we got to the final stretch, I sprinted from the line, hoping to get a good enough gap to finish ahead of them.  I sprinted too early, though, and ended up being passed by the leader of that pace line.  That skater won our division, Advanced Masters 30-39.  I placed second.  Either way, it was a great race, and the video has some good action in it.  My official time was 43:03.61, and just over 2 seconds behind the skater who one the division.  Endomondo has my time for the half marathon at 42:50.  I don’t know what accounts for the difference.  Either way, I will use the official time for the record.  Also, I have a new personal best for a 10k sprint at 19:22.  This was a fast race and a lot of fun.  Average pace was around 18 miles per hour with a top speed of 26.2 miles per hour.

This race I learned that I need to hydrate more before the race because I don’t drink enough during the race.  I also learned that when I am going fast to keep up with a pack, my form suffers, which burns more energy.  In addition, I learned the importance of being farther up in the pace line to avoid being dropped when the accordion effect hits.

The video below is just the race video.  I have an alternative for my video editor and am getting caught up on my video edits.  I will be posting video showing my technique front and back, soon, too.  I am hoping to use this to tweak my form going into the off season so I know what I need to work on in my technique.

Update on the Chicagoland Race (Pictures and Video)

I have some updates on the Chicagoland Marathon.  The previous post lacked any media.  This post has some updated pictures and video.  First, the pictures:

The pictures were taken by my step-father.  I think he did a pretty good job.

I haven’t been able to get the editing software to work.  The Beta version has been producing some interesting errors in final videos.  I am working on getting the editing caught up, but I am limited by my software at this point.  I combined the videos from my helmet camera and posted the video to YouTube, which follows: