Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
mpd
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Иван Мажукин
mpd
Commits
ccd7104c
Commit
ccd7104c
authored
Oct 02, 2012
by
Max Kellermann
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
{decoder,encoder}/flac: drop support for libFLAC 1.1
parent
1cf4b5ce
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
13 additions
and
197 deletions
+13
-197
INSTALL
INSTALL
+1
-1
Makefile.am
Makefile.am
+0
-1
NEWS
NEWS
+1
-0
configure.ac
configure.ac
+1
-1
flac_compat.h
src/decoder/flac_compat.h
+0
-114
flac_decoder_plugin.c
src/decoder/flac_decoder_plugin.c
+5
-54
flac_encoder.c
src/encoder/flac_encoder.c
+5
-26
No files found.
INSTALL
View file @
ccd7104c
...
@@ -85,7 +85,7 @@ libopus - http://www.opus-codec.org/
...
@@ -85,7 +85,7 @@ libopus - http://www.opus-codec.org/
Opus codec support
Opus codec support
FLAC - http://flac.sourceforge.net/
FLAC - http://flac.sourceforge.net/
For FLAC support. You will need version 1.
1.0 or higher of libflac
.
For FLAC support. You will need version 1.
2 or higher of libFLAC
.
Audio File - http://www.68k.org/~michael/audiofile/
Audio File - http://www.68k.org/~michael/audiofile/
For WAVE, AIFF, and AU support. You will need libaudiofile.
For WAVE, AIFF, and AU support. You will need libaudiofile.
...
...
Makefile.am
View file @
ccd7104c
...
@@ -98,7 +98,6 @@ mpd_headers = \
...
@@ -98,7 +98,6 @@ mpd_headers = \
src/gcc.h
\
src/gcc.h
\
src/decoder_list.h
\
src/decoder_list.h
\
src/decoder_print.h
\
src/decoder_print.h
\
src/decoder/flac_compat.h
\
src/decoder/flac_metadata.h
\
src/decoder/flac_metadata.h
\
src/decoder/flac_pcm.h
\
src/decoder/flac_pcm.h
\
src/decoder/pcm_decoder_plugin.h
\
src/decoder/pcm_decoder_plugin.h
\
...
...
NEWS
View file @
ccd7104c
ver 0.18 (2012/??/??)
ver 0.18 (2012/??/??)
* decoder:
* decoder:
- adplug: new decoder plugin using libadplug
- adplug: new decoder plugin using libadplug
- flac: require libFLAC 1.2 or newer
- opus: new decoder plugin for the Opus codec
- opus: new decoder plugin for the Opus codec
- vorbis: skip 16 bit quantisation, provide float samples
- vorbis: skip 16 bit quantisation, provide float samples
* encoder:
* encoder:
...
...
configure.ac
View file @
ccd7104c
...
@@ -862,7 +862,7 @@ AM_CONDITIONAL(HAVE_FFMPEG, test x$enable_ffmpeg = xyes)
...
@@ -862,7 +862,7 @@ AM_CONDITIONAL(HAVE_FFMPEG, test x$enable_ffmpeg = xyes)
dnl ----------------------------------- FLAC ----------------------------------
dnl ----------------------------------- FLAC ----------------------------------
MPD_AUTO_PKG(flac, FLAC, [flac >= 1.
1
],
MPD_AUTO_PKG(flac, FLAC, [flac >= 1.
2
],
[FLAC decoder], [libFLAC not found])
[FLAC decoder], [libFLAC not found])
if test x$enable_flac = xyes; then
if test x$enable_flac = xyes; then
...
...
src/decoder/flac_compat.h
deleted
100644 → 0
View file @
1cf4b5ce
/*
* Copyright (C) 2003-2011 The Music Player Daemon Project
* http://www.musicpd.org
*
* 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.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
/*
* Common data structures and functions used by FLAC and OggFLAC
*/
#ifndef MPD_FLAC_COMPAT_H
#define MPD_FLAC_COMPAT_H
#include <FLAC/export.h>
#if !defined(FLAC_API_VERSION_CURRENT) || FLAC_API_VERSION_CURRENT <= 7
# include <FLAC/seekable_stream_decoder.h>
/* starting with libFLAC 1.1.3, the SeekableStreamDecoder has been
merged into the StreamDecoder. The following macros try to emulate
the new API for libFLAC 1.1.2 by mapping MPD's StreamDecoder calls
to the old SeekableStreamDecoder API. */
#define FLAC__StreamDecoder FLAC__SeekableStreamDecoder
#define FLAC__stream_decoder_new FLAC__seekable_stream_decoder_new
#define FLAC__stream_decoder_get_decode_position FLAC__seekable_stream_decoder_get_decode_position
#define FLAC__stream_decoder_get_state FLAC__seekable_stream_decoder_get_state
#define FLAC__stream_decoder_process_single FLAC__seekable_stream_decoder_process_single
#define FLAC__stream_decoder_process_until_end_of_metadata FLAC__seekable_stream_decoder_process_until_end_of_metadata
#define FLAC__stream_decoder_seek_absolute FLAC__seekable_stream_decoder_seek_absolute
#define FLAC__stream_decoder_finish FLAC__seekable_stream_decoder_finish
#define FLAC__stream_decoder_delete FLAC__seekable_stream_decoder_delete
#define FLAC__STREAM_DECODER_END_OF_STREAM FLAC__SEEKABLE_STREAM_DECODER_END_OF_STREAM
typedef
unsigned
flac_read_status_size_t
;
#define FLAC__StreamDecoderReadStatus FLAC__SeekableStreamDecoderReadStatus
#define FLAC__STREAM_DECODER_READ_STATUS_CONTINUE FLAC__SEEKABLE_STREAM_DECODER_READ_STATUS_OK
#define FLAC__STREAM_DECODER_READ_STATUS_END_OF_STREAM FLAC__SEEKABLE_STREAM_DECODER_READ_STATUS_OK
#define FLAC__STREAM_DECODER_READ_STATUS_ABORT FLAC__SEEKABLE_STREAM_DECODER_READ_STATUS_ERROR
#define FLAC__StreamDecoderSeekStatus FLAC__SeekableStreamDecoderSeekStatus
#define FLAC__STREAM_DECODER_SEEK_STATUS_OK FLAC__SEEKABLE_STREAM_DECODER_SEEK_STATUS_OK
#define FLAC__STREAM_DECODER_SEEK_STATUS_ERROR FLAC__SEEKABLE_STREAM_DECODER_SEEK_STATUS_ERROR
#define FLAC__STREAM_DECODER_SEEK_STATUS_UNSUPPORTED FLAC__SEEKABLE_STREAM_DECODER_SEEK_STATUS_ERROR
#define FLAC__StreamDecoderTellStatus FLAC__SeekableStreamDecoderTellStatus
#define FLAC__STREAM_DECODER_TELL_STATUS_OK FLAC__SEEKABLE_STREAM_DECODER_TELL_STATUS_OK
#define FLAC__STREAM_DECODER_TELL_STATUS_ERROR FLAC__SEEKABLE_STREAM_DECODER_TELL_STATUS_ERROR
#define FLAC__STREAM_DECODER_TELL_STATUS_UNSUPPORTED FLAC__SEEKABLE_STREAM_DECODER_TELL_STATUS_ERROR
#define FLAC__StreamDecoderLengthStatus FLAC__SeekableStreamDecoderLengthStatus
#define FLAC__STREAM_DECODER_LENGTH_STATUS_OK FLAC__SEEKABLE_STREAM_DECODER_LENGTH_STATUS_OK
#define FLAC__STREAM_DECODER_LENGTH_STATUS_ERROR FLAC__SEEKABLE_STREAM_DECODER_LENGTH_STATUS_ERROR
#define FLAC__STREAM_DECODER_LENGTH_STATUS_UNSUPPORTED FLAC__SEEKABLE_STREAM_DECODER_LENGTH_STATUS_ERROR
typedef
enum
{
FLAC__STREAM_DECODER_INIT_STATUS_OK
,
FLAC__STREAM_DECODER_INIT_STATUS_ERROR
,
}
FLAC__StreamDecoderInitStatus
;
static
inline
FLAC__StreamDecoderInitStatus
FLAC__stream_decoder_init_stream
(
FLAC__SeekableStreamDecoder
*
decoder
,
FLAC__SeekableStreamDecoderReadCallback
read_cb
,
FLAC__SeekableStreamDecoderSeekCallback
seek_cb
,
FLAC__SeekableStreamDecoderTellCallback
tell_cb
,
FLAC__SeekableStreamDecoderLengthCallback
length_cb
,
FLAC__SeekableStreamDecoderEofCallback
eof_cb
,
FLAC__SeekableStreamDecoderWriteCallback
write_cb
,
FLAC__SeekableStreamDecoderMetadataCallback
metadata_cb
,
FLAC__SeekableStreamDecoderErrorCallback
error_cb
,
void
*
data
)
{
return
FLAC__seekable_stream_decoder_set_read_callback
(
decoder
,
read_cb
)
&&
FLAC__seekable_stream_decoder_set_seek_callback
(
decoder
,
seek_cb
)
&&
FLAC__seekable_stream_decoder_set_tell_callback
(
decoder
,
tell_cb
)
&&
FLAC__seekable_stream_decoder_set_length_callback
(
decoder
,
length_cb
)
&&
FLAC__seekable_stream_decoder_set_eof_callback
(
decoder
,
eof_cb
)
&&
FLAC__seekable_stream_decoder_set_write_callback
(
decoder
,
write_cb
)
&&
FLAC__seekable_stream_decoder_set_metadata_callback
(
decoder
,
metadata_cb
)
&&
FLAC__seekable_stream_decoder_set_metadata_respond
(
decoder
,
FLAC__METADATA_TYPE_VORBIS_COMMENT
)
&&
FLAC__seekable_stream_decoder_set_error_callback
(
decoder
,
error_cb
)
&&
FLAC__seekable_stream_decoder_set_client_data
(
decoder
,
data
)
&&
FLAC__seekable_stream_decoder_init
(
decoder
)
==
FLAC__SEEKABLE_STREAM_DECODER_OK
?
FLAC__STREAM_DECODER_INIT_STATUS_OK
:
FLAC__STREAM_DECODER_INIT_STATUS_ERROR
;
}
#else
/* FLAC_API_VERSION_CURRENT > 7 */
# include <FLAC/stream_decoder.h>
# define flac_init(a,b,c,d,e,f,g,h,i,j) \
(FLAC__stream_decoder_init_stream(a,b,c,d,e,f,g,h,i,j) \
== FLAC__STREAM_DECODER_INIT_STATUS_OK)
typedef
size_t
flac_read_status_size_t
;
#endif
/* FLAC_API_VERSION_CURRENT >= 7 */
#endif
/* _FLAC_COMMON_H */
src/decoder/flac_decoder_plugin.c
View file @
ccd7104c
...
@@ -19,12 +19,8 @@
...
@@ -19,12 +19,8 @@
#include "config.h"
/* must be first for large file support */
#include "config.h"
/* must be first for large file support */
#include "flac_common.h"
#include "flac_common.h"
#include "flac_compat.h"
#include "flac_metadata.h"
#include "flac_metadata.h"
#if defined(FLAC_API_VERSION_CURRENT) && FLAC_API_VERSION_CURRENT > 7
#include "ogg_codec.h"
#include "ogg_codec.h"
#endif
#include <glib.h>
#include <glib.h>
...
@@ -34,11 +30,15 @@
...
@@ -34,11 +30,15 @@
#include <sys/stat.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <sys/types.h>
#if !defined(FLAC_API_VERSION_CURRENT) || FLAC_API_VERSION_CURRENT <= 7
#error libFLAC is too old
#endif
/* this code was based on flac123, from flac-tools */
/* this code was based on flac123, from flac-tools */
static
FLAC__StreamDecoderReadStatus
static
FLAC__StreamDecoderReadStatus
flac_read_cb
(
G_GNUC_UNUSED
const
FLAC__StreamDecoder
*
fd
,
flac_read_cb
(
G_GNUC_UNUSED
const
FLAC__StreamDecoder
*
fd
,
FLAC__byte
buf
[],
flac_read_status_
size_t
*
bytes
,
FLAC__byte
buf
[],
size_t
*
bytes
,
void
*
fdata
)
void
*
fdata
)
{
{
struct
flac_data
*
data
=
fdata
;
struct
flac_data
*
data
=
fdata
;
...
@@ -120,28 +120,6 @@ flac_error_cb(G_GNUC_UNUSED const FLAC__StreamDecoder *fd,
...
@@ -120,28 +120,6 @@ flac_error_cb(G_GNUC_UNUSED const FLAC__StreamDecoder *fd,
flac_error_common_cb
(
status
,
(
struct
flac_data
*
)
fdata
);
flac_error_common_cb
(
status
,
(
struct
flac_data
*
)
fdata
);
}
}
#if !defined(FLAC_API_VERSION_CURRENT) || FLAC_API_VERSION_CURRENT <= 7
static
void
flacPrintErroredState
(
FLAC__SeekableStreamDecoderState
state
)
{
switch
(
state
)
{
case
FLAC__SEEKABLE_STREAM_DECODER_OK
:
case
FLAC__SEEKABLE_STREAM_DECODER_SEEKING
:
case
FLAC__SEEKABLE_STREAM_DECODER_END_OF_STREAM
:
return
;
case
FLAC__SEEKABLE_STREAM_DECODER_MEMORY_ALLOCATION_ERROR
:
case
FLAC__SEEKABLE_STREAM_DECODER_READ_ERROR
:
case
FLAC__SEEKABLE_STREAM_DECODER_SEEK_ERROR
:
case
FLAC__SEEKABLE_STREAM_DECODER_STREAM_DECODER_ERROR
:
case
FLAC__SEEKABLE_STREAM_DECODER_ALREADY_INITIALIZED
:
case
FLAC__SEEKABLE_STREAM_DECODER_INVALID_CALLBACK
:
case
FLAC__SEEKABLE_STREAM_DECODER_UNINITIALIZED
:
break
;
}
g_warning
(
"%s
\n
"
,
FLAC__SeekableStreamDecoderStateString
[
state
]);
}
#else
/* FLAC_API_VERSION_CURRENT >= 7 */
static
void
flacPrintErroredState
(
FLAC__StreamDecoderState
state
)
static
void
flacPrintErroredState
(
FLAC__StreamDecoderState
state
)
{
{
switch
(
state
)
{
switch
(
state
)
{
...
@@ -162,7 +140,6 @@ static void flacPrintErroredState(FLAC__StreamDecoderState state)
...
@@ -162,7 +140,6 @@ static void flacPrintErroredState(FLAC__StreamDecoderState state)
g_warning
(
"%s
\n
"
,
FLAC__StreamDecoderStateString
[
state
]);
g_warning
(
"%s
\n
"
,
FLAC__StreamDecoderStateString
[
state
]);
}
}
#endif
/* FLAC_API_VERSION_CURRENT >= 7 */
static
void
flacMetadata
(
G_GNUC_UNUSED
const
FLAC__StreamDecoder
*
dec
,
static
void
flacMetadata
(
G_GNUC_UNUSED
const
FLAC__StreamDecoder
*
dec
,
const
FLAC__StreamMetadata
*
block
,
void
*
vdata
)
const
FLAC__StreamMetadata
*
block
,
void
*
vdata
)
...
@@ -210,10 +187,8 @@ flac_decoder_new(void)
...
@@ -210,10 +187,8 @@ flac_decoder_new(void)
return
NULL
;
return
NULL
;
}
}
#if defined(FLAC_API_VERSION_CURRENT) && FLAC_API_VERSION_CURRENT > 7
if
(
!
FLAC__stream_decoder_set_metadata_respond
(
sd
,
FLAC__METADATA_TYPE_VORBIS_COMMENT
))
if
(
!
FLAC__stream_decoder_set_metadata_respond
(
sd
,
FLAC__METADATA_TYPE_VORBIS_COMMENT
))
g_debug
(
"FLAC__stream_decoder_set_metadata_respond() has failed"
);
g_debug
(
"FLAC__stream_decoder_set_metadata_respond() has failed"
);
#endif
return
sd
;
return
sd
;
}
}
...
@@ -300,7 +275,6 @@ flac_decoder_loop(struct flac_data *data, FLAC__StreamDecoder *flac_dec,
...
@@ -300,7 +275,6 @@ flac_decoder_loop(struct flac_data *data, FLAC__StreamDecoder *flac_dec,
static
FLAC__StreamDecoderInitStatus
static
FLAC__StreamDecoderInitStatus
stream_init_oggflac
(
FLAC__StreamDecoder
*
flac_dec
,
struct
flac_data
*
data
)
stream_init_oggflac
(
FLAC__StreamDecoder
*
flac_dec
,
struct
flac_data
*
data
)
{
{
#if defined(FLAC_API_VERSION_CURRENT) && FLAC_API_VERSION_CURRENT > 7
return
FLAC__stream_decoder_init_ogg_stream
(
flac_dec
,
return
FLAC__stream_decoder_init_ogg_stream
(
flac_dec
,
flac_read_cb
,
flac_read_cb
,
flac_seek_cb
,
flac_seek_cb
,
...
@@ -311,12 +285,6 @@ stream_init_oggflac(FLAC__StreamDecoder *flac_dec, struct flac_data *data)
...
@@ -311,12 +285,6 @@ stream_init_oggflac(FLAC__StreamDecoder *flac_dec, struct flac_data *data)
flacMetadata
,
flacMetadata
,
flac_error_cb
,
flac_error_cb
,
data
);
data
);
#else
(
void
)
flac_dec
;
(
void
)
data
;
return
FLAC__STREAM_DECODER_INIT_STATUS_ERROR
;
#endif
}
}
static
FLAC__StreamDecoderInitStatus
static
FLAC__StreamDecoderInitStatus
...
@@ -359,9 +327,7 @@ flac_decode_internal(struct decoder * decoder,
...
@@ -359,9 +327,7 @@ flac_decode_internal(struct decoder * decoder,
if
(
status
!=
FLAC__STREAM_DECODER_INIT_STATUS_OK
)
{
if
(
status
!=
FLAC__STREAM_DECODER_INIT_STATUS_OK
)
{
flac_data_deinit
(
&
data
);
flac_data_deinit
(
&
data
);
FLAC__stream_decoder_delete
(
flac_dec
);
FLAC__stream_decoder_delete
(
flac_dec
);
#if defined(FLAC_API_VERSION_CURRENT) && FLAC_API_VERSION_CURRENT > 7
g_warning
(
"%s"
,
FLAC__StreamDecoderInitStatusString
[
status
]);
g_warning
(
"%s"
,
FLAC__StreamDecoderInitStatusString
[
status
]);
#endif
return
;
return
;
}
}
...
@@ -386,21 +352,12 @@ flac_decode(struct decoder * decoder, struct input_stream *input_stream)
...
@@ -386,21 +352,12 @@ flac_decode(struct decoder * decoder, struct input_stream *input_stream)
flac_decode_internal
(
decoder
,
input_stream
,
false
);
flac_decode_internal
(
decoder
,
input_stream
,
false
);
}
}
#ifndef HAVE_OGGFLAC
static
bool
static
bool
oggflac_init
(
G_GNUC_UNUSED
const
struct
config_param
*
param
)
oggflac_init
(
G_GNUC_UNUSED
const
struct
config_param
*
param
)
{
{
#if defined(FLAC_API_VERSION_CURRENT) && FLAC_API_VERSION_CURRENT > 7
return
!!
FLAC_API_SUPPORTS_OGG_FLAC
;
return
!!
FLAC_API_SUPPORTS_OGG_FLAC
;
#else
/* disable oggflac when libflac is too old */
return
false
;
#endif
}
}
#if defined(FLAC_API_VERSION_CURRENT) && FLAC_API_VERSION_CURRENT > 7
static
bool
static
bool
oggflac_scan_file
(
const
char
*
file
,
oggflac_scan_file
(
const
char
*
file
,
const
struct
tag_handler
*
handler
,
void
*
handler_ctx
)
const
struct
tag_handler
*
handler
,
void
*
handler_ctx
)
...
@@ -453,21 +410,15 @@ static const char *const oggflac_mime_types[] = {
...
@@ -453,21 +410,15 @@ static const char *const oggflac_mime_types[] = {
NULL
NULL
};
};
#endif
/* FLAC_API_VERSION_CURRENT >= 7 */
const
struct
decoder_plugin
oggflac_decoder_plugin
=
{
const
struct
decoder_plugin
oggflac_decoder_plugin
=
{
.
name
=
"oggflac"
,
.
name
=
"oggflac"
,
.
init
=
oggflac_init
,
.
init
=
oggflac_init
,
#if defined(FLAC_API_VERSION_CURRENT) && FLAC_API_VERSION_CURRENT > 7
.
stream_decode
=
oggflac_decode
,
.
stream_decode
=
oggflac_decode
,
.
scan_file
=
oggflac_scan_file
,
.
scan_file
=
oggflac_scan_file
,
.
suffixes
=
oggflac_suffixes
,
.
suffixes
=
oggflac_suffixes
,
.
mime_types
=
oggflac_mime_types
.
mime_types
=
oggflac_mime_types
#endif
};
};
#endif
/* HAVE_OGGFLAC */
static
const
char
*
const
flac_suffixes
[]
=
{
"flac"
,
NULL
};
static
const
char
*
const
flac_suffixes
[]
=
{
"flac"
,
NULL
};
static
const
char
*
const
flac_mime_types
[]
=
{
static
const
char
*
const
flac_mime_types
[]
=
{
"application/flac"
,
"application/flac"
,
...
...
src/encoder/flac_encoder.c
View file @
ccd7104c
...
@@ -30,6 +30,10 @@
...
@@ -30,6 +30,10 @@
#include <FLAC/stream_encoder.h>
#include <FLAC/stream_encoder.h>
#if !defined(FLAC_API_VERSION_CURRENT) || FLAC_API_VERSION_CURRENT <= 7
#error libFLAC is too old
#endif
struct
flac_encoder
{
struct
flac_encoder
{
struct
encoder
encoder
;
struct
encoder
encoder
;
...
@@ -98,8 +102,6 @@ static bool
...
@@ -98,8 +102,6 @@ static bool
flac_encoder_setup
(
struct
flac_encoder
*
encoder
,
unsigned
bits_per_sample
,
flac_encoder_setup
(
struct
flac_encoder
*
encoder
,
unsigned
bits_per_sample
,
GError
**
error
)
GError
**
error
)
{
{
#if !defined(FLAC_API_VERSION_CURRENT) || FLAC_API_VERSION_CURRENT <= 7
#else
if
(
!
FLAC__stream_encoder_set_compression_level
(
encoder
->
fse
,
if
(
!
FLAC__stream_encoder_set_compression_level
(
encoder
->
fse
,
encoder
->
compression
))
{
encoder
->
compression
))
{
g_set_error
(
error
,
flac_encoder_quark
(),
0
,
g_set_error
(
error
,
flac_encoder_quark
(),
0
,
...
@@ -107,7 +109,7 @@ flac_encoder_setup(struct flac_encoder *encoder, unsigned bits_per_sample,
...
@@ -107,7 +109,7 @@ flac_encoder_setup(struct flac_encoder *encoder, unsigned bits_per_sample,
encoder
->
compression
);
encoder
->
compression
);
return
false
;
return
false
;
}
}
#endif
if
(
!
FLAC__stream_encoder_set_channels
(
encoder
->
fse
,
if
(
!
FLAC__stream_encoder_set_channels
(
encoder
->
fse
,
encoder
->
audio_format
.
channels
))
{
encoder
->
audio_format
.
channels
))
{
g_set_error
(
error
,
flac_encoder_quark
(),
0
,
g_set_error
(
error
,
flac_encoder_quark
(),
0
,
...
@@ -135,11 +137,7 @@ flac_encoder_setup(struct flac_encoder *encoder, unsigned bits_per_sample,
...
@@ -135,11 +137,7 @@ flac_encoder_setup(struct flac_encoder *encoder, unsigned bits_per_sample,
static
FLAC__StreamEncoderWriteStatus
static
FLAC__StreamEncoderWriteStatus
flac_write_callback
(
G_GNUC_UNUSED
const
FLAC__StreamEncoder
*
fse
,
flac_write_callback
(
G_GNUC_UNUSED
const
FLAC__StreamEncoder
*
fse
,
const
FLAC__byte
data
[],
const
FLAC__byte
data
[],
#if !defined(FLAC_API_VERSION_CURRENT) || FLAC_API_VERSION_CURRENT <= 7
unsigned
bytes
,
#else
size_t
bytes
,
size_t
bytes
,
#endif
G_GNUC_UNUSED
unsigned
samples
,
G_GNUC_UNUSED
unsigned
samples
,
G_GNUC_UNUSED
unsigned
current_frame
,
void
*
client_data
)
G_GNUC_UNUSED
unsigned
current_frame
,
void
*
client_data
)
{
{
...
@@ -209,24 +207,6 @@ flac_encoder_open(struct encoder *_encoder, struct audio_format *audio_format,
...
@@ -209,24 +207,6 @@ flac_encoder_open(struct encoder *_encoder, struct audio_format *audio_format,
/* this immediately outputs data through callback */
/* this immediately outputs data through callback */
#if !defined(FLAC_API_VERSION_CURRENT) || FLAC_API_VERSION_CURRENT <= 7
{
FLAC__StreamEncoderState
init_status
;
FLAC__stream_encoder_set_write_callback
(
encoder
->
fse
,
flac_write_callback
);
init_status
=
FLAC__stream_encoder_init
(
encoder
->
fse
);
if
(
init_status
!=
FLAC__STREAM_ENCODER_OK
)
{
g_set_error
(
error
,
flac_encoder_quark
(),
0
,
"failed to initialize encoder: %s
\n
"
,
FLAC__StreamEncoderStateString
[
init_status
]);
flac_encoder_close
(
_encoder
);
return
false
;
}
}
#else
{
{
FLAC__StreamEncoderInitStatus
init_status
;
FLAC__StreamEncoderInitStatus
init_status
;
...
@@ -242,7 +222,6 @@ flac_encoder_open(struct encoder *_encoder, struct audio_format *audio_format,
...
@@ -242,7 +222,6 @@ flac_encoder_open(struct encoder *_encoder, struct audio_format *audio_format,
return
false
;
return
false
;
}
}
}
}
#endif
return
true
;
return
true
;
}
}
...
...
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