Skip to content

Commit

Permalink
Cleanup.
Browse files Browse the repository at this point in the history
  • Loading branch information
rtang authored and rtang committed Jan 4, 2014
1 parent d643724 commit c2ff858
Show file tree
Hide file tree
Showing 17 changed files with 379 additions and 336 deletions.
18 changes: 15 additions & 3 deletions audio_sink/src/sx_audio_sink.c
Original file line number Diff line number Diff line change
Expand Up @@ -448,8 +448,8 @@ void sx_audio_sink_init(


// --------------------------------------------------------
// decoder_hw_get_buf
// Get decoder hardware buffer.
// sx_audio_sink_buffer_get
// Get audio buffer.
//
UINT8 * sx_audio_sink_buffer_get(
void
Expand All @@ -463,6 +463,10 @@ UINT8 * sx_audio_sink_buffer_get(
}


// --------------------------------------------------------
// sx_audio_sink_playback_speed_inc
// Speed up playback.
//
void sx_audio_sink_playback_speed_inc(
)
{
Expand All @@ -481,6 +485,10 @@ void sx_audio_sink_playback_speed_inc(
}


// --------------------------------------------------------
// sx_audio_sink_playback_speed_reset
// Normal playback speed.
//
void sx_audio_sink_playback_speed_reset(
)
{
Expand All @@ -499,6 +507,10 @@ void sx_audio_sink_playback_speed_reset(
}


// --------------------------------------------------------
// sx_audio_sink_playback_speed_dec
// Slowdown playback.
//
void sx_audio_sink_playback_speed_dec(
)
{
Expand All @@ -520,7 +532,7 @@ void sx_audio_sink_playback_speed_dec(

// --------------------------------------------------------
// sx_audio_sink_ms_left_get
// Get milliseconds left
// Get milliseconds left in the hardware queue.
//
unsigned int sx_audio_sink_ms_left_get(
void
Expand Down
112 changes: 61 additions & 51 deletions common/inc/sx_pkt.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,58 +3,68 @@

#include "sx_types.h"

#define TRANSPORT_ERROR_INDICATOR 0x80
#define PAYLOAD_UNIT_START_INDICATOR 0x40
#define TRANSPORT_PRIORITY 0x20
#define PID_1 0x1F
#define PID_2 0xFF

#define PID_GET(hdr) ((((hdr).tei_pusi_tp_pid1 & 0x1F) << 8) | (hdr).pid2)
#define CC_GET(hdr) ((hdr).tsc_afc_cc & 0x0F)
#define PUSI_GET(hdr) (((hdr).tei_pusi_tp_pid1 & 0x40) >> 6)
#define PID_GET(hdr) ((((hdr).tei_pusi_tp_pid1 & 0x1F) << 8) | (hdr).pid2)
#define CC_GET(hdr) ((hdr).tsc_afc_cc & 0x0F)
#define PUSI_GET(hdr) (((hdr).tei_pusi_tp_pid1 & 0x40) >> 6)
#define AFC_GET(hdr) (((hdr).tsc_afc_cc & 0x30) >> 4)

#define PI_PORTAL_PKT_HDR_SIZE sizeof(unsigned int)
#define PI_PORTAL_PKT_PAYLOAD_SIZE_MAX (1472-PI_PORTAL_PKT_HDR_SIZE)

typedef struct
{
UINT8 version_p_x_cc;
UINT8 m_pt;
UINT16 sequence_num;
UINT32 timestamp;
UINT32 ssrc_id;

} sRTP_HDR;


typedef struct
{
UINT8 sync_byte; ///< Sync byte
UINT8 tei_pusi_tp_pid1; ///< Transport Error Indicate (1 bit)
///< Payload Unit Start Indicator (1 bit)
///< Transport Priority (1 bit)
///< PID (first half, 5 bit)
UINT8 pid2; ///< PID (second half, 8 bit)
UINT8 tsc_afc_cc; ///< Transport scrambling control (2 bits)
///< Adaption Field Control (2 bits)
///< Continuity Counter (4 bits)

} sMPEG2_TS_HDR;


typedef struct
{
UINT8 payload[184];

} sMPEG2_TS_PAYLOAD;


typedef struct
{
sMPEG2_TS_HDR hdr;
sMPEG2_TS_PAYLOAD payload;

#define PIRACAST_PKT_HDR_SIZE (sizeof(unsigned int))
#define PIRACAST_PKT_PAYLOAD_SIZE_MAX (1472-PIRACAST_PKT_HDR_SIZE)

// --------------------------------------------------------
// sRTP_HDR
// RTP header
//
typedef struct
{
UINT8 version_p_x_cc;
UINT8 m_pt;
UINT16 sequence_num;
UINT32 timestamp;
UINT32 ssrc_id;

} sRTP_HDR;


// --------------------------------------------------------
// sMPEG2_TS_HDR
// MPEG2 Transport Stream header
//
typedef struct
{
UINT8 sync_byte; ///< Sync byte
UINT8 tei_pusi_tp_pid1; ///< Transport Error Indicate (1 bit)
///< Payload Unit Start Indicator (1 bit)
///< Transport Priority (1 bit)
///< PID (first half, 5 bit)
UINT8 pid2; ///< PID (second half, 8 bit)
UINT8 tsc_afc_cc; ///< Transport scrambling control (2 bits)
///< Adaption Field Control (2 bits)
///< Continuity Counter (4 bits)

} sMPEG2_TS_HDR;


// --------------------------------------------------------
// sMPEG2_TS_PAYLOAD
// MPEG2 Transport Stream Payload
//
typedef struct
{
UINT8 payload[184];

} sMPEG2_TS_PAYLOAD;


// --------------------------------------------------------
// sMPEG2_TS
// MPEG2 Transport Stream
//
typedef struct
{
sMPEG2_TS_HDR hdr;
sMPEG2_TS_PAYLOAD payload;

} sMPEG2_TS;


Expand Down Expand Up @@ -87,7 +97,7 @@ typedef struct
typedef struct
{
unsigned int hdr;
unsigned char payload[PI_PORTAL_PKT_PAYLOAD_SIZE_MAX];
unsigned char payload[PIRACAST_PKT_PAYLOAD_SIZE_MAX];

} sPI_PORTAL_PKT;

Expand Down
6 changes: 3 additions & 3 deletions common/inc/sx_system.h
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#if !defined(_SX_SYSTEM_H_)
#define _SX_SYSTEM_H_
#define _SX_SYSTEM_H_

#define SX_SYSTEM_DELAY_MS (100)
#define SX_SYSTEM_AUDIO_SOURCE_DELAY_MS (400)
#define SX_SYSTEM_DELAY_MS (100)
#define SX_SYSTEM_AUDIO_SOURCE_DELAY_MS (400)

#endif
2 changes: 1 addition & 1 deletion common/inc/sx_types.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#if !defined(_SX_TYPES_H_)
#define _SX_TYPES_H_
#define _SX_TYPES_H_

#define UINT8 unsigned char
#define UINT16 unsigned short
Expand Down
8 changes: 4 additions & 4 deletions common/inc/sx_udp.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,18 @@

#define SBOX_UDP_ID void *

extern void * sx_udp_create(
extern void * sx_udp_create(
unsigned short local_port
);

extern void sx_udp_send(
SBOX_UDP_ID id,
SBOX_UDP_ID id,
unsigned char *pkt,
unsigned int pkt_len
);

extern void sx_udp_recv(
SBOX_UDP_ID id,
extern void sx_udp_recv(
SBOX_UDP_ID id,
char *pkt,
unsigned int *pkt_len
);
Expand Down
52 changes: 26 additions & 26 deletions common/src/sx_udp.c
Original file line number Diff line number Diff line change
Expand Up @@ -6,43 +6,43 @@
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <errno.h>
#include <errno.h>

#include "sx_types.h"
#include "sx_udp.h"
#include "sx_types.h"
#include "sx_udp.h"

typedef struct
{
unsigned int peer_ip;
{
unsigned int peer_ip;
unsigned short peer_port;
unsigned int local_ip;
unsigned short local_port;
unsigned short local_port;

int sock;

} sUDP_CBLK;


void * sx_udp_create(
void * sx_udp_create(
UINT16 port
)
{
struct sockaddr_in client_addr;
int rv;
int rv;


sUDP_CBLK *udp_cblk = malloc(sizeof(sUDP_CBLK));
sUDP_CBLK *udp_cblk = malloc(sizeof(sUDP_CBLK));

memset(udp_cblk, 0, sizeof(sUDP_CBLK));
memset(udp_cblk, 0, sizeof(sUDP_CBLK));

// Create socket.
udp_cblk->sock = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
assert(udp_cblk->sock != -1);

#if 0
char *opt;
opt = "wlan0";
rv = setsockopt(udp_cblk->sock, SOL_SOCKET, SO_BINDTODEVICE, opt, 5);
char *opt;
opt = "wlan0";
rv = setsockopt(udp_cblk->sock, SOL_SOCKET, SO_BINDTODEVICE, opt, 5);
assert(rv == 0);
#endif

Expand All @@ -51,7 +51,7 @@ void * sx_udp_create(
client_addr.sin_port = htons(port);
client_addr.sin_addr.s_addr = INADDR_ANY;
bzero(&(client_addr.sin_zero), 8);


// Bind to address.
rv = bind(udp_cblk->sock,
(struct sockaddr *) &client_addr,
Expand All @@ -63,24 +63,24 @@ void * sx_udp_create(
}

return udp_cblk;
}
}


void sx_udp_recv(
SBOX_UDP_ID id,
void sx_udp_recv(
SBOX_UDP_ID id,
char *pkt,
unsigned int *pkt_len
)
{
struct sockaddr_in server_addr;
unsigned int bytes_read;
unsigned int addr_len;
sUDP_CBLK *udp_cblk = id;
unsigned int addr_len;
sUDP_CBLK *udp_cblk = id;


#if 0
printf("(udp): udp_socket_recv(): ID = 0x%x\n", id);
#endif
#endif

addr_len = sizeof(struct sockaddr);
// printf("(udp): pkt = 0x%x, pkt_len = %d\n", pkt, *pkt_len);
Expand All @@ -92,7 +92,7 @@ void sx_udp_recv(
(struct sockaddr *) &server_addr,
&addr_len);
// printf("(udp): after\n");
if(bytes_read <= 0)
if(bytes_read <= 0)
{
#if 0
printf("(udp): udp_socket_recv(): error = %d\n", bytes_read);
Expand All @@ -105,12 +105,12 @@ void sx_udp_recv(
#endif

*pkt_len = bytes_read;
}
}


void sx_udp_destroy(
SBOX_UDP_ID id
)
{
void sx_udp_destroy(
SBOX_UDP_ID id
)
{
// TODO:
}
38 changes: 19 additions & 19 deletions desc/inc/sx_desc.h
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
#if !defined(_SX_DESC_H_)
#define _SX_DESC_H_

#include "sx_types.h"

typedef struct sSX_DESC
{
UINT8 *data;
#define _SX_DESC_H_

#include "sx_types.h"

typedef struct sSX_DESC
{
UINT8 *data;
UINT32 data_len;
struct sSX_DESC *next;

} sSX_DESC;

extern sSX_DESC * sx_desc_get(
void
);

extern void sx_desc_put(
sSX_DESC *desc
);

struct sSX_DESC *next;

} sSX_DESC;

extern sSX_DESC * sx_desc_get(
void
);

extern void sx_desc_put(
sSX_DESC *desc
);

#endif // _SX_DESC_H_
Loading

0 comments on commit c2ff858

Please sign in to comment.