|
DSF2FLAC
|
#include <boost/timer/timer.hpp>#include <boost/filesystem.hpp>#include <dsd_decimator.h>#include <dsf_file_reader.h>#include <dsdiff_file_reader.h>#include <tagConversion.h>#include "FLAC++/metadata.h"#include "FLAC++/encoder.h"#include "math.h"#include "cmdline.h"#include <sstream>#include "dop_packer.h"Defines | |
| #define | flacBlockLen 100 |
Functions | |
| static nanosecond_type | reportInterval (100000000LL) |
| void | setupTimer (dsf2flac_float64 currPos) |
| void | checkTimer (dsf2flac_float64 currPos, dsf2flac_float64 percent) |
| boost::filesystem::path | muti_track_name_helper (boost::filesystem::path outpath, int n) |
| int | pcm_track_helper (boost::filesystem::path outpath, dsdDecimator *dec, int bits, dsf2flac_float64 scale, dsf2flac_float64 tpdfDitherPeakAmplitude, dsf2flac_float64 startPos, dsf2flac_float64 endPos, ID3_Tag id3tag) |
| int | do_pcm_conversion (dsdSampleReader *dsr, int fs, int bits, bool dither, dsf2flac_float64 userScale, boost::filesystem::path inpath, boost::filesystem::path outpath) |
| int | dop_track_helper (boost::filesystem::path outpath, dsdSampleReader *dsr, dsf2flac_int64 startPos, dsf2flac_int64 endPos, ID3_Tag id3tag) |
| int | do_dop_conversion (dsdSampleReader *dsr, boost::filesystem::path inpath, boost::filesystem::path outpath) |
| int | main (int argc, char **argv) |
Variables | |
| static cpu_timer | timer |
| static dsf2flac_float64 | lastPos |
| #define flacBlockLen 100 |
dsf2flac - http://code.google.com/p/dsf2flac/
A file conversion tool for translating dsf dsd audio files into flac pcm audio files.
Copyright (c) 2013 by respective authors.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Acknowledgements
Many thanks to the following authors and projects whose work has greatly helped the development of this tool.
Sebastian Gesemann - dsd2pcm (http://code.google.com/p/dsd2pcm/) SACD Ripper (http://code.google.com/p/sacd-ripper/) Maxim V.Anisiutkin - foo_input_sacd (http://sourceforge.net/projects/sacddecoder/files/) Vladislav Goncharov - foo_input_sacd_hq (http://vladgsound.wordpress.com) Jesus R - www.sonore.us
| void checkTimer | ( | dsf2flac_float64 | currPos, |
| dsf2flac_float64 | percent | ||
| ) |
void checkTimer(dsf2flac_float64 currPos, dsf2flac_float64 percent)
called to report progress to the user.
| int do_dop_conversion | ( | dsdSampleReader * | dsr, |
| boost::filesystem::path | inpath, | ||
| boost::filesystem::path | outpath | ||
| ) |
int do_dop_conversion
this function handles conversion into DoP encoded flac
| int do_pcm_conversion | ( | dsdSampleReader * | dsr, |
| int | fs, | ||
| int | bits, | ||
| bool | dither, | ||
| dsf2flac_float64 | userScale, | ||
| boost::filesystem::path | inpath, | ||
| boost::filesystem::path | outpath | ||
| ) |
| int dop_track_helper | ( | boost::filesystem::path | outpath, |
| dsdSampleReader * | dsr, | ||
| dsf2flac_int64 | startPos, | ||
| dsf2flac_int64 | endPos, | ||
| ID3_Tag | id3tag | ||
| ) |
dop_track_helper
| int main | ( | int | argc, |
| char ** | argv | ||
| ) |
int main(int argc, char **argv)
Main
| boost::filesystem::path muti_track_name_helper | ( | boost::filesystem::path | outpath, |
| int | n | ||
| ) |
muti_track_name_helper
little helper to construct file names for multiple track files.
| int pcm_track_helper | ( | boost::filesystem::path | outpath, |
| dsdDecimator * | dec, | ||
| int | bits, | ||
| dsf2flac_float64 | scale, | ||
| dsf2flac_float64 | tpdfDitherPeakAmplitude, | ||
| dsf2flac_float64 | startPos, | ||
| dsf2flac_float64 | endPos, | ||
| ID3_Tag | id3tag | ||
| ) |
int track_helper()
converts a track at a time to PCM FLAC
| static nanosecond_type reportInterval | ( | 100000000LL | ) | [static] |
| void setupTimer | ( | dsf2flac_float64 | currPos | ) |
void setupTimer(dsf2flac_float64 currPos)
called by main to setup the boost timer for reporting progress to the user
dsf2flac_float64 lastPos [static] |
cpu_timer timer [static] |
1.7.6.1