audio: change values from bytes-per-second to bits-per-second

The i_bps members of the sh_audio and dev_video structs are mostly used
for displaying the average audio and video bitrates. Keeping them in
bits-per-second avoids truncating them to bytes-per-second and changing
them back lateron.
This commit is contained in:
Marcoen Hirschberg
2014-05-26 20:16:40 +02:00
committed by wm4
parent b442b522f6
commit 6e58b20cce
9 changed files with 24 additions and 21 deletions

View File

@@ -803,9 +803,10 @@ static int demux_open_tv(demuxer_t *demuxer, enum demux_check check)
sh_a->format = audio_format;
int samplesize = af_fmt2bits(audio_format) / 8;
int block_align = samplesize * sh_audio->channels.num;
int bytes_per_second = sh_audio->samplerate * block_align;
sh_audio->i_bps =
sh_audio->samplerate * samplesize * sh_audio->channels.num;
sh_audio->i_bps = bytes_per_second * 8;
// emulate WF for win32 codecs:
sh_audio->wf = talloc_zero(sh_audio, MP_WAVEFORMATEX);
@@ -813,8 +814,8 @@ static int demux_open_tv(demuxer_t *demuxer, enum demux_check check)
sh_audio->wf->nChannels = sh_audio->channels.num;
sh_audio->wf->wBitsPerSample = samplesize * 8;
sh_audio->wf->nSamplesPerSec = sh_audio->samplerate;
sh_audio->wf->nBlockAlign = samplesize * sh_audio->channels.num;
sh_audio->wf->nAvgBytesPerSec = sh_audio->i_bps;
sh_audio->wf->nBlockAlign = block_align;
sh_audio->wf->nAvgBytesPerSec = bytes_per_second;
MP_VERBOSE(tvh, " TV audio: %d channels, %d bits, %d Hz\n",
sh_audio->wf->nChannels, sh_audio->wf->wBitsPerSample,