Commit 67f8a0be authored by Josh de Kock's avatar Josh de Kock Committed by Michael Niedermayer

configure&avdevice/jack: Fixed issue #43 JACK indev support on OSX

Signed-off-by: 's avatarMichael Niedermayer <michael@niedermayer.cc>
parent cf85a20d
......@@ -1732,6 +1732,7 @@ BUILTIN_LIST="
mm_empty
rdtsc
sarestart
sem_timedwait
sync_val_compare_and_swap
"
HAVE_LIST_CMDLINE="
......@@ -1753,6 +1754,7 @@ HEADERS_LIST="
asm_types_h
cdio_paranoia_h
cdio_paranoia_paranoia_h
dispatch_dispatch_h
dev_bktr_ioctl_bt848_h
dev_bktr_ioctl_meteor_h
dev_ic_bt8xx_h
......@@ -2758,7 +2760,8 @@ gdigrab_indev_deps="CreateDIBSection"
gdigrab_indev_extralibs="-lgdi32"
gdigrab_indev_select="bmp_decoder"
iec61883_indev_deps="libiec61883"
jack_indev_deps="jack_jack_h sem_timedwait"
jack_indev_deps="jack_jack_h"
jack_indev_deps_any="sem_timedwait dispatch_dispatch_h"
lavfi_indev_deps="avfilter"
libcdio_indev_deps="libcdio"
libdc1394_indev_deps="libdc1394"
......@@ -5267,6 +5270,7 @@ check_builtin atomic_compare_exchange "" "int *ptr, *oldval; int newval; __atomi
check_builtin machine_rw_barrier mbarrier.h "__machine_rw_barrier()"
check_builtin MemoryBarrier windows.h "MemoryBarrier()"
check_builtin sarestart signal.h "SA_RESTART"
check_builtin sem_timedwait semaphore.h "sem_t *s; sem_init(s,0,0); sem_timedwait(s,0); sem_destroy(s)" -lpthread
check_builtin sync_val_compare_and_swap "" "int *ptr; int oldval, newval; __sync_val_compare_and_swap(ptr, oldval, newval)"
check_builtin gmtime_r time.h "time_t *time; struct tm *tm; gmtime_r(time, tm)"
check_builtin localtime_r time.h "time_t *time; struct tm *tm; localtime_r(time, tm)"
......@@ -5331,6 +5335,7 @@ check_func_headers glob.h glob
enabled xlib &&
check_func_headers "X11/Xlib.h X11/extensions/Xvlib.h" XvGetPortAttribute -lXv -lX11 -lXext
check_header dispatch/dispatch.h
check_header direct.h
check_header dirent.h
check_header dlfcn.h
......@@ -5703,7 +5708,7 @@ check_header soundcard.h
enabled_any alsa_indev alsa_outdev &&
check_lib2 alsa/asoundlib.h snd_pcm_htimestamp -lasound
enabled jack_indev && check_lib2 jack/jack.h jack_client_open -ljack && check_func sem_timedwait &&
enabled jack_indev && check_lib2 jack/jack.h jack_client_open -ljack &&
check_func jack_port_get_latency_range -ljack
enabled_any sndio_indev sndio_outdev && check_lib2 sndio.h sio_open -lsndio
......
......@@ -35,6 +35,16 @@
#include "timefilter.h"
#include "avdevice.h"
#if HAVE_DISPATCH_DISPATCH_H
#include <dispatch/dispatch.h>
#define sem_t dispatch_semaphore_t
#define sem_init(psem,x,val) *psem = dispatch_semaphore_create(val)
#define sem_post(psem) dispatch_semaphore_signal(*psem)
#define sem_wait(psem) dispatch_semaphore_wait(*psem, DISPATCH_TIME_FOREVER)
#define sem_timedwait(psem, val) dispatch_semaphore_wait(*psem, dispatch_walltime(val, 0))
#define sem_destroy(psem) dispatch_release(*psem)
#endif
/**
* Size of the internal FIFO buffers as a number of audio packets
*/
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment