Converting DASHhigh to FLAC with ffmpeg
Jeremy Nicoll - ml gip
jn.ml.gti.91 at wingsandbeaks.org.uk
Wed Jan 25 03:12:41 PST 2017
On 2017-01-25 00:04, Budge wrote:
>
> I am certain I shall not be able to hear the differences if a young
> chap like you cannot. When I find out how, in detail, I shall try
> converting some samples to mp3 and thanks for the further nudge in
> that direction.
I installed the 'lame' converter. I wanted it specifically for
converting WAV
files to MP3 which is its default behaviour; there are options though to
tell it
that input files are other things, but I don't know if they include
whatever you
would be using as input.
If you use linux I should imagine there will be a suitable package; for
Windows
one can either find source on Sourceforge and compile it yourself (which
I didn't
want to do) or find precompiled binaries. I did the latter.
I got it at: http://www.rarewares.org/mp3-lame-bundle.php
One downloaded, I unpacked the zip. It contained the important parts:
lame.exe
(which is the command line tool), lame_enc.dll (which does the work and
can also
be invoked by other .exe's that know it exists to do encoding on their
behalf), &
a load of CSS & HTML help files.
I put the whole lot in a named folder on my system so I could create
commands that
would use the specific version I'd downloaded, or - perhaps in future -
use a
different version, keeping those versions apart. On the other hand you
could just
put lame.exe and lame_enc.dll in some folder that is on your PATH.
Once you've done that, issuing
lame -?
eg as
C:\>lame -?
in a command window should show you help information on how to use it.
Obviously you
can also look at the html files in the unzipped thing you downloaded,
but making sure
the command line help works is sensible, as it shows that other command
line lame
commands are likely to work too.
The commands I use generate 'cbr' ie 'constant bit rate' files. That's
to say, every
portion of the audio in such a file is encoded at the same bit rate,
regardless of the
complexity of the music present in it. It's possible also to use
variable bit rate,
where simpler music is stored at lower bit rates, but one of the
drawbacks of that is
that it's impossible to determine a file's playing time from its size in
bytes.
Bit rate is specified by: -b nnn eg -b 320 for 320 kbps.
Also apart from specifying the bit rate I want the result files to have,
one can tell
lame to do the conversion as quickly as possible or to take its time and
be as careful
as possible, or pick some intermediate point. I always use the 'slow &
careful' option
as with a fast computer time isn't a problem. That's: -q 0
I like to see any useful info that a command might produce, so:
--verbose
The basic command then becomes, say
lame.exe --cbr -b 320 -q 0 --verbose "path\to\input\file.wav"
"path\to\result.mp3"
In my case, isssuing lots of these commands from a script I also knew
for each one what the
'track' number, title etc for each result file should be in mp3 tag
terms. The command for
tagging the result files at the same time is more complicated, eg:
lame.exe --cbr -b 320 -q 0 --verbose --id3v2-only
-ta "name of choir"
-tl "name of concert"
-tg Classical
-ty 2015
-tt "song title"
-tn 23
"path\to\input\track23.wav" "path\to\result\track23.mp3"
- though that was all on one long command line. The --id3v2-only
forced lame to define only a
particular type of mp3 ID tag in the result files; -ta, -tl etc defined
what in MP3 terms are
the 'artist', 'album', 'genre', 'year', 'track title' and 'track
numnber'. Those concepts
don't fit classical music all that well and I chose values that would
make sense in an average
choir member's mp3 player/app. Note that while most of the values are
enclosed in double quotes,
the 'genre' isn't because 'Classical' is a genre subtype that lame knows
about; also values
that are numeric like year and track number do not need to be in quotes.
The scripts I used to build and issue these commands were quite
complicated as they had to
be able to determine the names of the input files and derive names for
output files; some
of my files were for individual items in a concert while others were for
a sequence of
movements in a longer piece and both file names and track numbering
reflected whether a
file contained single items/movements or multiples.
[The files that I fed in to this process had been chopped up from the
original recordings using
another command line utility, 'sox', which allows one to do many of the
things that most people
use a GUI-based seditor like Audacity to do, but I like command line
tools because if you store
the command you used to manipulate a file in a certain way, you've
documented exactly what you
did... whereas writing a description of something you might do in a GUI
tool is... tricky... and
replicating it /exactly/ on some future occasion is probably impossible.
After making a recording I'd have listened through it very carefully and
made detailed notes on
performance blemishes, start & stop times of each item, where applause
starts and ends, how
much silence there is before each item starts and so on.
So for example I could extract a particular piece from an overall
recording (of maybe the first
half of a concert) taking the audio from, say, 12 mins 17.3 secs in
through to 14 mins 52.2 secs
(knowing those times from my notes), then apply fade in & fade out over
the first and last few
seconds of each track... entirely automatically. If a particular item
then didn't sound quite
right - maybe a fade is too aggressive or not in quite the right place
all I do is tweak the
times in a script & rerun the script, and it extracts a slightly
different part of the original
recording and applies the fades in a slightly different place.]
--
Jeremy Nicoll - my opinions are my own
More information about the get_iplayer
mailing list