Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Xiph.Org
flac
Commits
1106d5f6
Commit
1106d5f6
authored
Dec 17, 2002
by
Josh Coalson
Browse files
add decoding to AIFF, --force-aiff-format
parent
7f06012c
Changes
1
Hide whitespace changes
Inline
Side-by-side
src/flac/main.c
View file @
1106d5f6
...
...
@@ -122,6 +122,7 @@ static struct share__option long_options_[] = {
{
"fast"
,
0
,
0
,
'0'
},
{
"super-secret-totally-impractical-compression-level"
,
0
,
0
,
0
},
{
"verify"
,
0
,
0
,
'V'
},
{
"force-aiff-format"
,
0
,
0
,
0
},
{
"force-raw-format"
,
0
,
0
,
0
},
{
"lax"
,
0
,
0
,
0
},
{
"replay-gain"
,
0
,
0
,
0
},
...
...
@@ -220,6 +221,7 @@ static struct {
FLAC__bool
do_escape_coding
;
FLAC__bool
do_qlp_coeff_prec_search
;
FLAC__bool
force_to_stdout
;
FLAC__bool
force_aiff_format
;
FLAC__bool
force_raw_format
;
FLAC__bool
delete_input
;
FLAC__bool
replay_gain
;
...
...
@@ -357,6 +359,8 @@ int do_it()
if
(
!
FLAC__format_sample_rate_is_valid
(
option_values
.
format_sample_rate
))
return
usage_error
(
"ERROR: invalid sample rate '%u', must be > 0 and <= %u
\n
"
,
option_values
.
format_sample_rate
,
FLAC__MAX_SAMPLE_RATE
);
}
if
(
option_values
.
force_raw_format
&&
option_values
.
force_aiff_format
)
return
usage_error
(
"ERROR: only one of --force-raw-format and --force-aiff-format allowed
\n
"
);
if
(
option_values
.
mode_decode
)
{
if
(
!
option_values
.
force_raw_format
)
{
if
(
option_values
.
format_is_big_endian
>=
0
)
...
...
@@ -530,6 +534,7 @@ FLAC__bool init_options()
option_values
.
do_escape_coding
=
false
;
option_values
.
do_qlp_coeff_prec_search
=
false
;
option_values
.
force_to_stdout
=
false
;
option_values
.
force_aiff_format
=
false
;
option_values
.
force_raw_format
=
false
;
option_values
.
delete_input
=
false
;
option_values
.
replay_gain
=
false
;
...
...
@@ -652,6 +657,9 @@ int parse_option(int short_option, const char *long_option, const char *option_a
option_values
.
rice_parameter_search_dist
=
0
;
option_values
.
max_lpc_order
=
32
;
}
else
if
(
0
==
strcmp
(
long_option
,
"force-aiff-format"
))
{
option_values
.
force_aiff_format
=
true
;
}
else
if
(
0
==
strcmp
(
long_option
,
"force-raw-format"
))
{
option_values
.
force_raw_format
=
true
;
}
...
...
@@ -1145,6 +1153,7 @@ void show_help()
printf
(
" --bps=# Number of bits per sample
\n
"
);
printf
(
" --sample-rate=# Sample rate in Hz
\n
"
);
printf
(
" --sign={signed|unsigned} Sign of samples
\n
"
);
printf
(
" --force-aiff-format Force decoding to AIFF format
\n
"
);
printf
(
" --force-raw-format Treat input or output as raw samples
\n
"
);
printf
(
"negative options:
\n
"
);
printf
(
" --no-adaptive-mid-side
\n
"
);
...
...
@@ -1354,6 +1363,11 @@ void show_explain()
printf
(
" --bps=# Number of bits per sample
\n
"
);
printf
(
" --sample-rate=# Sample rate in Hz
\n
"
);
printf
(
" --sign={signed|unsigned} Sign of samples (the default is signed)
\n
"
);
printf
(
" --force-aiff-format Force the decoder to output AIFF format. This
\n
"
);
printf
(
" option is not needed if the output filename (as
\n
"
);
printf
(
" set by -o) ends with .aiff; this option has no
\n
"
);
printf
(
" effect when encoding since input AIFF is auto-
\n
"
);
printf
(
" detected.
\n
"
);
printf
(
" --force-raw-format Force input (when encoding) or output (when
\n
"
);
printf
(
" decoding) to be treated as raw samples
\n
"
);
printf
(
"negative options:
\n
"
);
...
...
@@ -1586,7 +1600,14 @@ int decode_file(const char *infilename)
options
.
common
=
common_options
;
retval
=
flac__decode_wav
(
infilename
,
option_values
.
test_only
?
0
:
outfilename
,
option_values
.
analyze
,
option_values
.
aopts
,
options
);
if
(
option_values
.
force_aiff_format
||
(
strlen
(
outfilename
)
>
3
&&
0
==
strcasecmp
(
outfilename
+
(
strlen
(
outfilename
)
-
4
),
".aif"
))
||
(
strlen
(
outfilename
)
>
4
&&
0
==
strcasecmp
(
outfilename
+
(
strlen
(
outfilename
)
-
5
),
".aiff"
))
)
retval
=
flac__decode_aiff
(
infilename
,
option_values
.
test_only
?
0
:
outfilename
,
option_values
.
analyze
,
option_values
.
aopts
,
options
);
else
retval
=
flac__decode_wav
(
infilename
,
option_values
.
test_only
?
0
:
outfilename
,
option_values
.
analyze
,
option_values
.
aopts
,
options
);
}
else
{
raw_decode_options_t
options
;
...
...
@@ -1647,8 +1668,13 @@ const char *get_decoded_outfilename(const char *infilename)
strcpy
(
buffer
,
"-"
);
}
else
{
static
const
char
*
suffixes
[]
=
{
".wav"
,
".raw"
,
".ana"
};
const
char
*
suffix
=
suffixes
[
option_values
.
analyze
?
2
:
option_values
.
force_raw_format
?
1
:
0
];
static
const
char
*
suffixes
[]
=
{
".wav"
,
".aiff"
,
".raw"
,
".ana"
};
const
char
*
suffix
=
suffixes
[
option_values
.
analyze
?
3
:
option_values
.
force_raw_format
?
2
:
option_values
.
force_aiff_format
?
1
:
0
];
char
*
p
;
strcpy
(
buffer
,
option_values
.
output_prefix
?
option_values
.
output_prefix
:
""
);
strcat
(
buffer
,
infilename
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment