Skip to content

Commit

Permalink
simplify sf_bigendian
Browse files Browse the repository at this point in the history
  • Loading branch information
mahkoh committed May 12, 2016
1 parent a2c2055 commit 566af1b
Show file tree
Hide file tree
Showing 11 changed files with 16 additions and 31 deletions.
4 changes: 1 addition & 3 deletions aac.c
Original file line number Diff line number Diff line change
Expand Up @@ -274,9 +274,7 @@ static int aac_open(struct input_plugin_data *ip_data)
/*NeAACDecInitDRM(priv->decoder, priv->sample_rate, priv->channels);*/

ip_data->sf = sf_rate(priv->sample_rate) | sf_channels(priv->channels) | sf_bits(16) | sf_signed(1);
#if defined(WORDS_BIGENDIAN)
ip_data->sf |= sf_bigendian(1);
#endif
ip_data->sf |= sf_host_endian();
aac_get_channel_map(ip_data);

return 0;
Expand Down
4 changes: 1 addition & 3 deletions cdio.c
Original file line number Diff line number Diff line change
Expand Up @@ -186,9 +186,7 @@ static int libcdio_open(struct input_plugin_data *ip_data)

ip_data->private = priv;
ip_data->sf = sf_bits(16) | sf_rate(44100) | sf_channels(2) | sf_signed(1);
#ifdef WORDS_BIGENDIAN
ip_data->sf |= sf_bigendian(1);
#endif
ip_data->sf |= sf_host_endian();

end:
free(disc_id);
Expand Down
4 changes: 1 addition & 3 deletions ffmpeg.c
Original file line number Diff line number Diff line change
Expand Up @@ -327,9 +327,7 @@ static int ffmpeg_open(struct input_plugin_data *ip_data)
break;
}
swr_init(swr);
#ifdef WORDS_BIGENDIAN
ip_data->sf |= sf_bigendian(1);
#endif
ip_data->sf |= sf_host_endian();
#if (LIBAVCODEC_VERSION_INT > ((52<<16)+(1<<8)+0))
channel_layout = cc->channel_layout;
#endif
Expand Down
4 changes: 1 addition & 3 deletions mikmod.c
Original file line number Diff line number Diff line change
Expand Up @@ -73,9 +73,7 @@ static int mik_open(struct input_plugin_data *ip_data)

ip_data->private = priv;
ip_data->sf = sf_bits(16) | sf_rate(44100) | sf_channels(2) | sf_signed(1);
#ifdef WORDS_BIGENDIAN
ip_data->sf |= sf_bigendian(1);
#endif
ip_data->sf |= sf_host_endian();
channel_map_init_stereo(ip_data->channel_map);
return 0;
}
Expand Down
4 changes: 1 addition & 3 deletions modplug.c
Original file line number Diff line number Diff line change
Expand Up @@ -93,9 +93,7 @@ static int mod_open(struct input_plugin_data *ip_data)

ip_data->private = priv;
ip_data->sf = sf_bits(16) | sf_rate(44100) | sf_channels(2) | sf_signed(1);
#ifdef WORDS_BIGENDIAN
ip_data->sf |= sf_bigendian(1);
#endif
ip_data->sf |= sf_host_endian();
channel_map_init_stereo(ip_data->channel_map);
return 0;
}
Expand Down
4 changes: 1 addition & 3 deletions mp4.c
Original file line number Diff line number Diff line change
Expand Up @@ -215,9 +215,7 @@ static int mp4_open(struct input_plugin_data *ip_data)
d_print("sample rate %luhz, channels %u\n", priv->sample_rate, priv->channels);

ip_data->sf = sf_rate(priv->sample_rate) | sf_channels(priv->channels) | sf_bits(16) | sf_signed(1);
#if defined(WORDS_BIGENDIAN)
ip_data->sf |= sf_bigendian(1);
#endif
ip_data->sf |= sf_host_endian();
mp4_get_channel_map(ip_data);

return 0;
Expand Down
4 changes: 1 addition & 3 deletions opus.c
Original file line number Diff line number Diff line change
Expand Up @@ -103,9 +103,7 @@ static int opus_open(struct input_plugin_data *ip_data)
| sf_channels(CHANNELS)
| sf_bits(16)
| sf_signed(1);
#ifdef WORDS_BIGENDIAN
ip_data->sf |= sf_bigendian(1);
#endif
ip_data->sf |= sf_host_endian();
return 0;
}

Expand Down
4 changes: 1 addition & 3 deletions player.c
Original file line number Diff line number Diff line change
Expand Up @@ -146,9 +146,7 @@ static void set_buffer_sf(void)
if (sf_get_channels(buffer_sf) <= 2 && sf_get_bits(buffer_sf) <= 16) {
buffer_sf &= SF_RATE_MASK;
buffer_sf |= sf_channels(2) | sf_bits(16) | sf_signed(1);
#ifdef WORDS_BIGENDIAN
buffer_sf |= sf_bigendian(1);
#endif
buffer_sf |= sf_host_endian();
channel_map_init_stereo(buffer_channel_map);
}
}
Expand Down
7 changes: 6 additions & 1 deletion sf.h
Original file line number Diff line number Diff line change
Expand Up @@ -47,11 +47,16 @@ typedef unsigned int sample_format_t;
#define sf_get_rate(sf) (((sf) & SF_RATE_MASK ) >> SF_RATE_SHIFT)
#define sf_get_channels(sf) (((sf) & SF_CHANNELS_MASK ) >> SF_CHANNELS_SHIFT)

#define sf_bigendian(val) (((val) << SF_BIGENDIAN_SHIFT) & SF_BIGENDIAN_MASK)
#define sf_signed(val) (((val) << SF_SIGNED_SHIFT ) & SF_SIGNED_MASK)
#define sf_bits(val) (((val) << SF_BITS_SHIFT ) & SF_BITS_MASK)
#define sf_rate(val) (((val) << SF_RATE_SHIFT ) & SF_RATE_MASK)
#define sf_channels(val) (((val) << SF_CHANNELS_SHIFT ) & SF_CHANNELS_MASK)
#define sf_bigendian(val) (((val) << SF_BIGENDIAN_SHIFT) & SF_BIGENDIAN_MASK)
#ifdef WORDS_BIGENDIAN
# define sf_host_endian() sf_bigendian(1)
#else
# define sf_host_endian() sf_bigendian(0)
#endif

#define sf_get_sample_size(sf) (sf_get_bits((sf)) >> 3)
#define sf_get_frame_size(sf) (sf_get_sample_size((sf)) * sf_get_channels((sf)))
Expand Down
4 changes: 1 addition & 3 deletions vorbis.c
Original file line number Diff line number Diff line change
Expand Up @@ -172,9 +172,7 @@ static int vorbis_open(struct input_plugin_data *ip_data)

vi = ov_info(&priv->vf, -1);
ip_data->sf = sf_rate(vi->rate) | sf_channels(vi->channels) | sf_bits(16) | sf_signed(1);
#ifdef WORDS_BIGENDIAN
ip_data->sf |= sf_bigendian(1);
#endif
ip_data->sf |= sf_host_endian();
channel_map_init_vorbis(vi->channels, ip_data->channel_map);
return 0;
}
Expand Down
4 changes: 1 addition & 3 deletions vtx.c
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,7 @@ static int vtx_open(struct input_plugin_data *ip_data)
ayemu_set_stereo(&priv->ay, priv->vtx->stereo, NULL);

ip_data->sf = sf_bits(bits) | sf_rate(sample_rate) | sf_channels(channels) | sf_signed(1);
#ifdef WORDS_BIGENDIAN
ip_data->sf |= sf_bigendian(1);
#endif
ip_data->sf |= sf_host_endian();
channel_map_init_stereo(ip_data->channel_map);

priv->pos = 0;
Expand Down

0 comments on commit 566af1b

Please sign in to comment.