Allow custom archive periods via -p option (e.g. new file every minute)
Cosmetic code changes to clarify that archive files can be periods other than hour

Previously archive files were always hour-based. We now permit arbitrary periods, so
archive files might last (for example) a minute, hour, or day.

This commit alters variable names and comments to reflect this. No functionality
is changed.
Documentation for -p archive period argument
Allow custom file layouts, require preset names to be specified in full.

When used with the -L option, preset file layout names (flat, heirarchy etc)
must now be specified in full. Previously only the first letter was checked.

If the specified layout does not match a preset name, the parameter is interpreted
as a strftime format string. This allows arbitrary layouts to be specified.

For example: -L "%Y-%m-%d/studio-1/%H%M.flac"
will generate files like: [root]/2012-06-05/studio-1/1300.flac
Update documentation to explain arbitrary file layout specification

No code changes - just documentation.
Man page now includes details of arbitrary strftime-style file layout
specification.
Update usage text to describe strftime-style custom file layout.

Cosmetic/descriptive change only to rotter.c, adding a description
of the strftime-style file layout specification.
Fix broken FLAC and vorbis output formats (file open mode)

Patch to fallback to write-only mode if opening files as read/write
fails for formats handled by libsndfile.

Commit 128d558572c29cbc23a64d558430c3f3b245f2d9 changed the mode for
opening archive files from SFM_WRITE to SFM_RDWR.

This breaks the flac and vorbis output formats:

$ ./src/rotter -f flac -c 1 /tmp
[INFO]   Sun Jul  1 15:43:41 2012  JACK client registered as 'rotter'.
[INFO]   Sun Jul  1 15:43:41 2012  Opening new archive file for ringbuffer A: /tmp/2012/07/01/15/archive.flac
[ERROR]  Sun Jul  1 15:43:41 2012  Failed to open output file: Error : This file format does not support read/write mode.
[ERROR]  Sun Jul  1 15:43:41 2012  Failed to open file.
...

Looking at the latest libsndfile-1.0.25, as provided on Ubuntu 12.04
systems, opening FLAC or vorbis files as SFM_RDWR is not supported.
(See libsndfile's flac.c, around line 632, or ogg_vorbis.c around
line 496.)

This patch falls back to write-only, if we cannot open the file as
read/write.

By using a fallback method (rather than hard-coding the current
capabilities of each format) we will automatically benefit if
libsndfile adds read/write capabilities for more formats.

Note that in write-only mode, we cannot append to existing files,
so their contents, if they exist wll be clobbered, but this is the
original behaviour of rotter, so isn't a regression.
Merge pull request #19 from nick-prater/fix-broken-flac-vorbis-formats

Fix broken FLAC and vorbis output formats (file open mode)
Ignore -N option if accurate file layout is specified

This patch ignores any archive name, (specified with the -N
command line option) if the 'accurate' file layout is in
use.

Previously, if the accurate file layout was used in conjuction
with the -N option, rotter would not include the expected
minutes, seconds and hundredths of a second filename parts:

$ ./rotter -L accurate -N archive /tmp
[INFO]   Sun Jul  1 19:20:27 2012  JACK client registered as 'rotter'.
[INFO]   Sun Jul  1 19:20:27 2012  Opening new archive file for ringbuffer A: /tmp/2012-07-01/archive-2012-07-01-19.aiff

$ ./rotter -L accurate  /tmp
[INFO]   Sun Jul  1 19:20:50 2012  JACK client registered as 'rotter'.
[INFO]   Sun Jul  1 19:20:50 2012  Opening new archive file for ringbuffer A: /tmp/2012-07-01/2012-07-01-19-20-50-32.aiff

This patch fixes this inconsistent and undocumented behaviour.
Merge branch 'master' of github.com:njh/rotter
Merge pull request #17 from nick-prater/arbitrary-file-layout

Allow arbitrary file layout
Merge pull request #18 from nick-prater/arbitrary-archive-period

Patches to allow arbitrary archive period
Display the default length of the ring buffer in the help text
Added rotter.1 manpage to list of files ignored by git
Added an extra digit to the version number
Converted README file to Markdown
Added Nick Prater and Paul Kelly to the list of Authors
Implemented locking of ring-buffers into physical memory.
Cleanup TwoLAME and LAME codecs if there was a problem initialising them.
Added more defaults displayed in the help text.