mp3dmod: Link to libmpg123.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
0aff95bfa0
commit
328937151e
|
@ -14236,6 +14236,7 @@ This is an error since --with-mpg123 was requested." "$LINENO" 5 ;;
|
|||
esac
|
||||
enable_l3codeca_acm=${enable_l3codeca_acm:-no}
|
||||
fi
|
||||
test "x$ac_cv_lib_mpg123_mpg123_feed" = xyes || enable_mp3dmod=${enable_mp3dmod:-no}
|
||||
|
||||
if test "$ac_cv_header_AL_al_h" = "yes"
|
||||
then
|
||||
|
|
|
@ -1763,6 +1763,7 @@ fi
|
|||
WINE_NOTICE_WITH(mpg123,[test "x$ac_cv_lib_mpg123_mpg123_feed" != xyes -a x"$ac_cv_header_CoreAudio_CoreAudio_h" != xyes],
|
||||
[libmpg123 ${notice_platform}development files not found (or too old), mp3 codec won't be supported.],
|
||||
[enable_l3codeca_acm])
|
||||
test "x$ac_cv_lib_mpg123_mpg123_feed" = xyes || enable_mp3dmod=${enable_mp3dmod:-no}
|
||||
|
||||
dnl **** Check for OpenAL 1.1 ****
|
||||
if test "$ac_cv_header_AL_al_h" = "yes"
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
MODULE = mp3dmod.dll
|
||||
IMPORTS = dmoguids uuid wmcodecdspuuid
|
||||
EXTRAINCL = $(MPG123_CFLAGS)
|
||||
EXTRALIBS = $(MPG123_LIBS)
|
||||
|
||||
C_SRCS = \
|
||||
mp3dmod.c
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
*/
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <mpg123.h>
|
||||
#include "windef.h"
|
||||
#include "winbase.h"
|
||||
#define COBJMACROS
|
||||
|
@ -35,6 +36,7 @@ static HINSTANCE mp3dmod_instance;
|
|||
struct mp3_decoder {
|
||||
IMediaObject IMediaObject_iface;
|
||||
LONG ref;
|
||||
mpg123_handle *mh;
|
||||
};
|
||||
|
||||
static inline struct mp3_decoder *impl_from_IMediaObject(IMediaObject *iface)
|
||||
|
@ -80,6 +82,7 @@ static ULONG WINAPI MediaObject_Release(IMediaObject *iface)
|
|||
|
||||
if (!refcount)
|
||||
{
|
||||
mpg123_delete(This->mh);
|
||||
heap_free(This);
|
||||
}
|
||||
return refcount;
|
||||
|
@ -264,6 +267,7 @@ static const IMediaObjectVtbl IMediaObject_vtbl = {
|
|||
static HRESULT create_mp3_decoder(REFIID iid, void **obj)
|
||||
{
|
||||
struct mp3_decoder *This;
|
||||
int err;
|
||||
|
||||
if (!(This = heap_alloc(sizeof(*This))))
|
||||
return E_OUTOFMEMORY;
|
||||
|
@ -271,6 +275,9 @@ static HRESULT create_mp3_decoder(REFIID iid, void **obj)
|
|||
This->IMediaObject_iface.lpVtbl = &IMediaObject_vtbl;
|
||||
This->ref = 0;
|
||||
|
||||
mpg123_init();
|
||||
This->mh = mpg123_new(NULL, &err);
|
||||
|
||||
return IMediaObject_QueryInterface(&This->IMediaObject_iface, iid, obj);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue