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
c0da938d
Commit
c0da938d
authored
Jul 20, 2010
by
Max Kellermann
Browse files
Options
Browse Files
Download
Plain Diff
Merge release 0.15.12 from branch 'v0.15.x'
Conflicts: NEWS configure.ac
parents
fb19aa35
0fec8e08
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
44 additions
and
13 deletions
+44
-13
NEWS
NEWS
+9
-0
configure.ac
configure.ac
+4
-0
mad_decoder_plugin.c
src/decoder/mad_decoder_plugin.c
+10
-11
wildmidi_decoder_plugin.c
src/decoder/wildmidi_decoder_plugin.c
+4
-0
curl_input_plugin.c
src/input/curl_input_plugin.c
+17
-2
No files found.
NEWS
View file @
c0da938d
...
...
@@ -103,6 +103,15 @@ ver 0.16 (20??/??/??)
* added libwrap support
ver 0.15.12 (2010/07/20)
* input:
- curl: remove assertion after curl_multi_fdset()
* tags:
- rva2: set "gain", not "peak"
* decoders:
- wildmidi: support version 0.2.3
ver 0.15.11 (2010/06/14)
* tags:
- ape: support album artist
...
...
configure.ac
View file @
c0da938d
...
...
@@ -1033,6 +1033,10 @@ if test x$enable_wildmidi = xyes; then
AC_CHECK_LIB(WildMidi, WildMidi_Init,,
AC_MSG_ERROR([libwildmidi not found]))
AC_CHECK_LIB(WildMidi, WildMidi_SampledSeek,
[AC_DEFINE(HAVE_WILDMIDI_SAMPLED_SEEK, 1,
[Defined if WildMidi_SampledSeek() is available (libwildmidi <= 0.2.2)])])
CFLAGS=$oldcflags
LIBS=$oldlibs
CPPFLAGS=$oldcppflags
...
...
src/decoder/mad_decoder_plugin.c
View file @
c0da938d
...
...
@@ -212,14 +212,14 @@ mp3_fill_buffer(struct mp3_data *data)
#ifdef HAVE_ID3TAG
/* Parse mp3 RVA2 frame. Shamelessly stolen from madplay. */
static
int
parse_rva2
(
struct
id3_tag
*
tag
,
struct
replay_gain_info
*
replay_gain_info
)
static
bool
parse_rva2
(
struct
id3_tag
*
tag
,
struct
replay_gain_info
*
replay_gain_info
)
{
struct
id3_frame
const
*
frame
;
id3_latin1_t
const
*
id
;
id3_byte_t
const
*
data
;
id3_length_t
length
;
int
found
;
enum
{
CHANNEL_OTHER
=
0x00
,
...
...
@@ -233,18 +233,18 @@ static int parse_rva2(struct id3_tag * tag, struct replay_gain_info * replay_gai
CHANNEL_SUBWOOFER
=
0x08
};
found
=
0
;
/* relative volume adjustment information */
frame
=
id3_tag_findframe
(
tag
,
"RVA2"
,
0
);
if
(
!
frame
)
return
0
;
if
(
frame
==
NULL
)
return
false
;
id
=
id3_field_getlatin1
(
id3_frame_field
(
frame
,
0
));
data
=
id3_field_getbinarydata
(
id3_frame_field
(
frame
,
1
),
&
length
);
if
(
!
id
||
!
data
)
return
0
;
if
(
id
==
NULL
||
data
==
NULL
)
return
false
;
/*
* "The 'identification' string is used to identify the
...
...
@@ -280,22 +280,21 @@ static int parse_rva2(struct id3_tag * tag, struct replay_gain_info * replay_gai
voladj_float
=
(
double
)
voladj_fixed
/
512
;
replay_gain_info
->
tuples
[
REPLAY_GAIN_TRACK
].
peak
=
voladj_float
;
replay_gain_info
->
tuples
[
REPLAY_GAIN_ALBUM
].
peak
=
voladj_float
;
replay_gain_info
->
tuples
[
REPLAY_GAIN_TRACK
].
gain
=
voladj_float
;
replay_gain_info
->
tuples
[
REPLAY_GAIN_ALBUM
].
gain
=
voladj_float
;
g_debug
(
"parseRVA2: Relative Volume "
"%+.1f dB adjustment (%s)
\n
"
,
voladj_float
,
id
);
found
=
1
;
break
;
return
true
;
}
data
+=
4
+
peak_bytes
;
length
-=
4
+
peak_bytes
;
}
return
f
ound
;
return
f
alse
;
}
#endif
...
...
src/decoder/wildmidi_decoder_plugin.c
View file @
c0da938d
...
...
@@ -97,7 +97,11 @@ wildmidi_file_decode(struct decoder *decoder, const char *path_fs)
unsigned
long
seek_where
=
WILDMIDI_SAMPLE_RATE
*
decoder_seek_where
(
decoder
);
#ifdef HAVE_WILDMIDI_SAMPLED_SEEK
WildMidi_SampledSeek
(
wm
,
&
seek_where
);
#else
WildMidi_FastSeek
(
wm
,
&
seek_where
);
#endif
decoder_command_finished
(
decoder
);
cmd
=
DECODE_COMMAND_NONE
;
}
...
...
src/input/curl_input_plugin.c
View file @
c0da938d
...
...
@@ -245,7 +245,6 @@ input_curl_select(struct input_curl *c, GError **error_r)
fd_set
rfds
,
wfds
,
efds
;
int
max_fd
,
ret
;
CURLMcode
mcode
;
/* XXX hard coded timeout value.. */
struct
timeval
timeout
=
{
.
tv_sec
=
1
,
.
tv_usec
=
0
,
...
...
@@ -265,7 +264,23 @@ input_curl_select(struct input_curl *c, GError **error_r)
return
-
1
;
}
assert
(
max_fd
>=
0
);
#if LIBCURL_VERSION_NUM >= 0x070f00
long
timeout2
;
mcode
=
curl_multi_timeout
(
c
->
multi
,
&
timeout2
);
if
(
mcode
!=
CURLM_OK
)
{
g_warning
(
"curl_multi_timeout() failed: %s
\n
"
,
curl_multi_strerror
(
mcode
));
return
-
1
;
}
if
(
timeout2
>=
0
)
{
if
(
timeout2
>
10000
)
timeout2
=
10000
;
timeout
.
tv_sec
=
timeout2
/
1000
;
timeout
.
tv_usec
=
(
timeout2
%
1000
)
*
1000
;
}
#endif
ret
=
select
(
max_fd
+
1
,
&
rfds
,
&
wfds
,
&
efds
,
&
timeout
);
if
(
ret
<
0
)
...
...
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