RetroArch
Classes | Macros | Typedefs | Functions | Variables
jack.c File Reference
#include <stdio.h>
#include <stdint.h>
#include <stdlib.h>
#include <string.h>
#include <jack/jack.h>
#include <jack/types.h>
#include <jack/ringbuffer.h>
#include <boolean.h>
#include <rthreads/rthreads.h>
#include "../audio_driver.h"
#include "../../configuration.h"
#include "../../verbosity.h"
Include dependency graph for jack.c:

Classes

struct  jack
 

Macros

#define FRAMES(x)   (x / (sizeof(float) * 2))
 

Typedefs

typedef struct jack jack_t
 

Functions

static int process_cb (jack_nframes_t nframes, void *data)
 
static void shutdown_cb (void *data)
 
static int parse_ports (char **dest_ports, const char **jports)
 
static size_t find_buffersize (jack_t *jd, int latency, unsigned out_rate)
 
static voidja_init (const char *device, unsigned rate, unsigned latency, unsigned block_frames, unsigned *new_rate)
 
static size_t write_buffer (jack_t *jd, const float *buf, size_t size)
 
static ssize_t ja_write (void *data, const void *buf, size_t size)
 
static bool ja_stop (void *data)
 
static bool ja_alive (void *data)
 
static void ja_set_nonblock_state (void *data, bool state)
 
static bool ja_start (void *data, bool is_shutdown)
 
static void ja_free (void *data)
 
static bool ja_use_float (void *data)
 
static size_t ja_write_avail (void *data)
 
static size_t ja_buffer_size (void *data)
 

Variables

audio_driver_t audio_jack
 

Macro Definition Documentation

◆ FRAMES

#define FRAMES (   x)    (x / (sizeof(float) * 2))

Typedef Documentation

◆ jack_t

typedef struct jack jack_t

Function Documentation

◆ find_buffersize()

static size_t find_buffersize ( jack_t jd,
int  latency,
unsigned  out_rate 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ja_alive()

static bool ja_alive ( void data)
static

◆ ja_buffer_size()

static size_t ja_buffer_size ( void data)
static

◆ ja_free()

static void ja_free ( void data)
static
Here is the call graph for this function:

◆ ja_init()

static void* ja_init ( const char *  device,
unsigned  rate,
unsigned  latency,
unsigned  block_frames,
unsigned *  new_rate 
)
static
Here is the call graph for this function:

◆ ja_set_nonblock_state()

static void ja_set_nonblock_state ( void data,
bool  state 
)
static

◆ ja_start()

static bool ja_start ( void data,
bool  is_shutdown 
)
static

◆ ja_stop()

static bool ja_stop ( void data)
static

◆ ja_use_float()

static bool ja_use_float ( void data)
static
Here is the call graph for this function:

◆ ja_write()

static ssize_t ja_write ( void data,
const void buf,
size_t  size 
)
static
Here is the call graph for this function:

◆ ja_write_avail()

static size_t ja_write_avail ( void data)
static

◆ parse_ports()

static int parse_ports ( char **  dest_ports,
const char **  jports 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ process_cb()

static int process_cb ( jack_nframes_t  nframes,
void data 
)
static
Here is the caller graph for this function:

◆ shutdown_cb()

static void shutdown_cb ( void data)
static
Here is the caller graph for this function:

◆ write_buffer()

static size_t write_buffer ( jack_t jd,
const float *  buf,
size_t  size 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ audio_jack

audio_driver_t audio_jack
Initial value:
= {
"jack",
}
static size_t ja_buffer_size(void *data)
Definition: jack.c:368
static bool ja_use_float(void *data)
Definition: jack.c:356
static bool ja_start(void *data, bool is_shutdown)
Definition: jack.c:322
static bool ja_alive(void *data)
Definition: jack.c:307
static void * ja_init(const char *device, unsigned rate, unsigned latency, unsigned block_frames, unsigned *new_rate)
Definition: jack.c:149
#define NULL
Pointer to 0.
Definition: gctypes.h:65
static bool ja_stop(void *data)
Definition: jack.c:299
static size_t ja_write_avail(void *data)
Definition: jack.c:362
static void ja_set_nonblock_state(void *data, bool state)
Definition: jack.c:315
static ssize_t ja_write(void *data, const void *buf, size_t size)
Definition: jack.c:292
static void ja_free(void *data)
Definition: jack.c:330