/A/ /M/A/G/N/I/F/I/C/E/N/T/ /P/L/A/C/E/ 

November 2015

20:45 Wednesday 25 November 2015

How I make the most of local trail shot video


declare -a STARTS
declare -a LENGTH


FILE+=("FILE0001.MOV");	START+=("00:00:39");	LENGTH+=("00:00:01");
FILE+=("FILE0001.MOV");	START+=("00:01:06");	LENGTH+=("00:00:01");
FILE+=("FILE0001.MOV");	START+=("00:01:57");	LENGTH+=("00:00:01");
FILE+=("FILE0001.MOV");	START+=("00:02:05");	LENGTH+=("00:00:03");
FILE+=("FILE0001.MOV");	START+=("00:02:34");	LENGTH+=("00:00:01");
FILE+=("FILE0001.MOV");	START+=("00:02:53");	LENGTH+=("00:00:01");
FILE+=("FILE0001.MOV");	START+=("00:03:43");	LENGTH+=("00:00:02");
FILE+=("FILE0001.MOV");	START+=("00:04:04");	LENGTH+=("00:00:06");
FILE+=("FILE0001.MOV");	START+=("00:05:17");	LENGTH+=("00:00:03");
FILE+=("FILE0001.MOV");	START+=("00:05:37");	LENGTH+=("00:00:03");
FILE+=("FILE0001.MOV");	START+=("00:06:07");	LENGTH+=("00:00:04");
FILE+=("FILE0001.MOV");	START+=("00:06:21");	LENGTH+=("00:00:04");
FILE+=("FILE0001.MOV");	START+=("00:07:05");	LENGTH+=("00:00:02");
FILE+=("FILE0001.MOV");	START+=("00:07:24");	LENGTH+=("00:00:01");
FILE+=("FILE0001.MOV");	START+=("00:07:36");	LENGTH+=("00:00:01");
FILE+=("FILE0001.MOV");	START+=("00:07:46");	LENGTH+=("00:00:10");
FILE+=("FILE0001.MOV");	START+=("00:08:23");	LENGTH+=("00:00:05");
FILE+=("FILE0001.MOV");	START+=("00:08:51");	LENGTH+=("00:00:05");
FILE+=("FILE0001.MOV");	START+=("00:09:06");	LENGTH+=("00:00:10");
FILE+=("FILE0002.MOV");	START+=("00:00:09");	LENGTH+=("00:00:12");
FILE+=("FILE0002.MOV");	START+=("00:00:42");	LENGTH+=("00:00:04");
FILE+=("FILE0002.MOV");	START+=("00:00:58");	LENGTH+=("00:00:10");
FILE+=("FILE0002.MOV");	START+=("00:01:58");	LENGTH+=("00:00:15");
FILE+=("FILE0002.MOV");	START+=("00:02:41");	LENGTH+=("00:00:04");
FILE+=("FILE0002.MOV");	START+=("00:02:49");	LENGTH+=("00:00:08");
FILE+=("FILE0002.MOV");	START+=("00:03:21");	LENGTH+=("00:00:01");
FILE+=("FILE0003.MOV");	START+=("00:00:23");	LENGTH+=("00:00:15");
FILE+=("FILE0003.MOV");	START+=("00:00:55");	LENGTH+=("00:00:05");
FILE+=("FILE0003.MOV");	START+=("00:01:05");	LENGTH+=("00:00:25");
FILE+=("FILE0003.MOV");	START+=("00:01:32");	LENGTH+=("00:00:05");
FILE+=("FILE0003.MOV");	START+=("00:01:43");	LENGTH+=("00:00:03");
FILE+=("FILE0003.MOV");	START+=("00:02:09");	LENGTH+=("00:00:06");
FILE+=("FILE0003.MOV");	START+=("00:02:33");	LENGTH+=("00:00:06");
FILE+=("FILE0003.MOV");	START+=("00:02:47");	LENGTH+=("00:00:04");
FILE+=("FILE0003.MOV");	START+=("00:03:26");	LENGTH+=("00:00:35");
FILE+=("FILE0004.MOV");	START+=("00:00:04");	LENGTH+=("00:00:03");
FILE+=("FILE0004.MOV");	START+=("00:00:44");	LENGTH+=("00:00:15");
FILE+=("FILE0004.MOV");	START+=("00:01:20");	LENGTH+=("00:00:05");
FILE+=("FILE0004.MOV");	START+=("00:01:57");	LENGTH+=("00:00:20");
FILE+=("FILE0004.MOV");	START+=("00:02:26");	LENGTH+=("00:00:01");
FILE+=("FILE0005.MOV");	START+=("00:00:43");	LENGTH+=("00:00:05");
FILE+=("FILE0005.MOV");	START+=("00:01:53");	LENGTH+=("00:00:30");
FILE+=("FILE0005.MOV");	START+=("00:03:12");	LENGTH+=("00:00:06");
FILE+=("FILE0005.MOV");	START+=("00:03:25.25");	LENGTH+=("00:00:06");
FILE+=("FILE0005.MOV");	START+=("00:03:39");	LENGTH+=("00:00:06");
FILE+=("FILE0005.MOV");	START+=("00:04:15.35");	LENGTH+=("00:00:07");
FILE+=("FILE0005.MOV");	START+=("00:04:50");	LENGTH+=("00:00:09");
FILE+=("FILE0006.MOV");	START+=("00:00:00");	LENGTH+=("00:00:02");
FILE+=("FILE0006.MOV");	START+=("00:00:10");	LENGTH+=("00:00:03");
FILE+=("FILE0006.MOV");	START+=("00:00:22");	LENGTH+=("00:00:04");
FILE+=("FILE0006.MOV");	START+=("00:00:59");	LENGTH+=("00:00:04");
FILE+=("FILE0006.MOV");	START+=("00:01:23");	LENGTH+=("00:00:04");
FILE+=("FILE0006.MOV");	START+=("00:01:33");	LENGTH+=("00:00:04");
FILE+=("FILE0006.MOV");	START+=("00:02:21");	LENGTH+=("00:00:04");
FILE+=("FILE0006.MOV");	START+=("00:03:16");	LENGTH+=("00:00:02");
FILE+=("FILE0006.MOV");	START+=("00:03:24");	LENGTH+=("00:00:02");
FILE+=("FILE0006.MOV");	START+=("00:03:30");	LENGTH+=("00:00:02");
FILE+=("FILE0006.MOV");	START+=("00:04:58");	LENGTH+=("00:00:03");
FILE+=("FILE0006.MOV");	START+=("00:05:36");	LENGTH+=("00:00:10");
FILE+=("FILE0006.MOV");	START+=("00:06:25");	LENGTH+=("00:00:05");
FILE+=("FILE0006.MOV");	START+=("00:06:39");	LENGTH+=("00:00:02");
FILE+=("FILE0006.MOV");	START+=("00:07:41");	LENGTH+=("00:00:02");
FILE+=("FILE0006.MOV");	START+=("00:08:08");	LENGTH+=("00:00:10");
FILE+=("FILE0006.MOV");	START+=("00:09:01");	LENGTH+=("00:00:05");
FILE+=("FILE0007.MOV");	START+=("00:00:02");	LENGTH+=("00:00:16");
FILE+=("FILE0009.MOV");	START+=("00:00:02");	LENGTH+=("00:00:04");
FILE+=("FILE0009.MOV");	START+=("00:00:26");	LENGTH+=("00:00:04");
FILE+=("FILE0009.MOV");	START+=("00:00:36");	LENGTH+=("00:00:04");
FILE+=("FILE0009.MOV");	START+=("00:02:40");	LENGTH+=("00:00:06");
FILE+=("FILE0010.MOV");	START+=("00:01:01");	LENGTH+=("00:00:02");
FILE+=("FILE0010.MOV");	START+=("00:01:26");	LENGTH+=("00:00:02");
FILE+=("FILE0010.MOV");	START+=("00:03:01");	LENGTH+=("00:00:05");


for F in "${FILE[@]}"
  OUT=$(printf "${OUTN}%02d.${OUTE}" $N)
  if [[ ${START[$N]} ]]
    echo  "Clip $N: start ${START[$N]}  length ${LENGTH[$N]}... "
    ffmpeg -y -ss "${START[$N]}" -i ${FILE[$N]} -t "${LENGTH[$N]}" \ 
           -vcodec copy -acodec copy $OUT

ffmpeg -y -f concat -i <(printf "file '$PWD/%s'n" "${FILES[@]}") \
       -c copy "$OUTN.$OUTE"

ffmpeg -i -i hardfloor_robot_hardfloor_remix.mp3 \
       -vf 'fade=t=in:st=0:d=1, fade=t=out:st=467:d=10' \
       -filter_complex amix=inputs=2:duration=shortest \
       -t 00:07:57 -vcodec libx264 -acodec mp3 15m-commute-robot.mp4

21:33 Tuesday 24 November 2015

Making the most of local trails on MTB

20:58 Friday 20 November 2015

The Unfashionable MTB

I cycle to work every day. My current preferred route is about 4.1 miles. I could take a shorter route but my preference is to avoid traffic and the risks cycling in traffic entails. My typical route takes me to the outskirts of a built up area, mostly aggricultural rather than scenic countryside, but it still has the benefits of something approaching solitude, less pollution, and lots of green things that grow rather than urban sprawl and disarray.

My bicycle for commuting is a hardtail mountain bike tuned for commuting on roads as well as cross country (XC) cycling. Over the past few years I've replaced all the components on it: hydraulic disc brakes from the old bike, wider flatter handle bars, shorter stem, decent saddle, upgraded the bottom bracket and cranks, upgraded the chainrings and cassette with gearing better suited to road riding and fewer hills, fitted stronger wheels from my old bike (the wheels it came with didn't last long before they buckled), fast-rolling tyres, upgraded shifters and derailleurs, fitted clipless SPD pedals, and upgraded the front suspension forks.

Now Winter is approaching and the weather is gradually becoming wetter and colder I have also fitted full mudguards to my MTB and so without a doubt my mountain bike goes against almost every trend within mountain biking with one exception - wide bars and short stem.

Mudguards are probably the most controversial aspect of mountain biking. We're told to man up and not worry about the mud and to just enjoy sliding around in it instead - our enjoyment will improve if we do so, apparently.

But the thing is you'll also not only get your bike dirtier without mudguards, your back pack (for spairs, water, food, tools, etc) and clothing will also get wetter and muddier. Not much of a problem if you cycle for leisure once a week perhaps, but you don't need to cope with all that grime on a daily commute to work. Cycling seems to have a bit of an image problem amongst the general population and that won't be improved at work by me dragging half the field I rode through into the office.


I recently learnt about a number for Cyclist's known as the Eddington Number. The Eddington number for cyclists (as opposed to the same as used by Physicists) is the number of days a cyclist rode as many miles. Mine was 23 so I have ridden at least 23 miles or more, on 23 separate days. Considering I rode 105 miles for charity in March (and trained for it in the months that approached), and cycle 5 days a week, I felt a bit let down by my Eddington number, which doesn't reflect very well how much I cycle.

To improve the situation, I decided to be realistic about what sort of mileage I could achieve in a single day at least once or twice a week. My initial target, 30 miles, is achievable. Last week there were two days where I cycled over 30 miles. I did this by taking a route to work which was just over 15 miles, and a different route home which was nearer 17 miles. This week, I felt in need of some recovery from the 100+ miles I cycled in total last week - including several laps of the 2012 Olympic cross country moutain bike trails at Hadleigh Park in Essex - and only managed one day this week where I cycled over 30 miles (mostly in the dark as I didn't get up early enough to substantially increase the distance of my morning commute).

I am expecting to increase the goal for my Eddington number once through to the other side of Winter and the days are getting longer. This time of year however I frequently find myself wondering quite why I'm in the middle of a field in the dark on a 17 mile cycle ride - not that it particularly troubles me at all.

Fun vs Practicality

It's now been at least two years since I decided to cycle to work everyday instead of driving a car. I recently realised I'm now at the stage where it doesn't bother me at all anymore. My fitness has improved such that it isn't a problem to cycle, even if my legs are tired from a long ride the previous day. I've more or less kitted myself out with enough clothes for most conditions and am getting better at judging what I should wear given the weather and what it is predicted to do.

While at this time of year the weather recommends mudguards to me for commuting, the off-road ground conditions highly recommend tyres with more grip. Mountain biking trends have been increasingly heading toward wider tyres for a number of years, and in wet conditions, widely spaced knobbly tread is commonly used to gain grip and shed mud.

Knobbly widely space treads are not fast rolling, and due to the way suspension forks are designed, don't fit under full mudguards on the front. You might find they do fit if you're lucky, but the type of terrain and conditions that require chunky knobbly tyres will have the mudguards constantly hitting the tyre (potentially damaging them - allegedly).

In other words, full mudguards on a mountain bike cause compromise and is the reason why full mudguards are very rare on mountain bikes. But a mountain bike used for commuting may use tyres more suitable for roads with densely packed tread patterns to decrease rolling resistance. Decreased rolling resistance at the expense of grip, especially when off road turning around a corner in the wet. These sorts of tyres will fit comfortably under full mudguards on front suspension forks provided the tyre width is 2.1" or under.

Local Trails

Of course practicallity for commuting on a mountain bike limits the types of terrain you can ride on. Luckily for me, there's not any hills high or steep enough for the gearing on my MTB to be inadequate, even off road. Nor are there any local trails which are technical and twisty enough for my tyre choice to be a problem. Most of them only have gentle corners at most but are otherwise straight. The most technical the trails near me get, is in choosing which of the ruts created by agricultural vehicles to ride in, and how to get out of them in order to avoid a deep muddy puddle. Fast rolling tyres and close fitting mudguards are adequate in these conditions when wet. Obviously 26x1.25" slicks will fail even in straight lines, but 26x2.1" (measued at 1.9") with moderate side lugs are just grippy enough to make it fun trying to stay upright rather than a chore.

There's currently enough clearance with these tyres and full mudguards to not cause a problem with them battering the tyres when riding off 18" drops or riding down steps. Coastal sea defences are the best places on my doorstep to practice riding drops and steps and is the closest I'll get to anything approaching the technical features found at most trail centres known as rock gardens without a car journey.

Which Reminds Me

This was all a long round-about way of saying I've been enjoying cycling lately, and having fun doing so, going as fast as I can in straight lines while staying relatively clean off-road and riding down steps and small drops. Sure, it's not Wales, the Lake District, or the Alps, but it's still fun. When the trails you commonly ride don't have any 'interesting bits' then the enjoyment comes with maintaining pace over what little bits there are.

Oh well, here's a video of me riding a drop in the skills area of Hadleigh Park, Essex - the site of the 2012 Olympic Cross Country Mountain Biking competition.



A page detailing new stuff and other random noise.

The journal is a general place for writing about what I am doing, or for making more official announcements concerning the things I do. It's also a place where I can write freely about my ideas, or just play with words and language.

DISCLAIMER: The opinions and attitudes of James W. Morris as expressed here in the past may or may not accurately reflect the opinions and attitudes of James W. Morris at present, moreover, they may never have.

this page last updated:29th April 2013 (C) 2003 - 2015 James W. Morris

script time:0.2699