mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-03-24 11:59:38 +00:00
oma: PCM support
Signed-off-by: David Goldwich <david.goldwich@gmail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
This commit is contained in:
parent
8ae5eb75df
commit
c8b27a0ec4
@ -104,6 +104,7 @@ easier to use. The changes are:
|
|||||||
- OS X Video Decoder Acceleration (VDA) support
|
- OS X Video Decoder Acceleration (VDA) support
|
||||||
- CRI ADX audio format demuxer
|
- CRI ADX audio format demuxer
|
||||||
- Playstation Portable PMP format demuxer
|
- Playstation Portable PMP format demuxer
|
||||||
|
- PCM format support in OMA demuxer
|
||||||
|
|
||||||
|
|
||||||
version 0.7:
|
version 0.7:
|
||||||
|
@ -61,9 +61,10 @@ enum {
|
|||||||
};
|
};
|
||||||
|
|
||||||
static const AVCodecTag codec_oma_tags[] = {
|
static const AVCodecTag codec_oma_tags[] = {
|
||||||
{ CODEC_ID_ATRAC3, OMA_CODECID_ATRAC3 },
|
{ CODEC_ID_ATRAC3, OMA_CODECID_ATRAC3 },
|
||||||
{ CODEC_ID_ATRAC3P, OMA_CODECID_ATRAC3P },
|
{ CODEC_ID_ATRAC3P, OMA_CODECID_ATRAC3P },
|
||||||
{ CODEC_ID_MP3, OMA_CODECID_MP3 },
|
{ CODEC_ID_MP3, OMA_CODECID_MP3 },
|
||||||
|
{ CODEC_ID_PCM_S16BE, OMA_CODECID_LPCM },
|
||||||
};
|
};
|
||||||
|
|
||||||
static const uint64_t leaf_table[] = {
|
static const uint64_t leaf_table[] = {
|
||||||
@ -358,6 +359,16 @@ static int oma_read_header(AVFormatContext *s,
|
|||||||
st->need_parsing = AVSTREAM_PARSE_FULL;
|
st->need_parsing = AVSTREAM_PARSE_FULL;
|
||||||
framesize = 1024;
|
framesize = 1024;
|
||||||
break;
|
break;
|
||||||
|
case OMA_CODECID_LPCM:
|
||||||
|
/* PCM 44.1 kHz 16 bit stereo big-endian */
|
||||||
|
st->codec->channels = 2;
|
||||||
|
st->codec->sample_rate = 44100;
|
||||||
|
framesize = 1024;
|
||||||
|
/* bit rate = sample rate x PCM block align (= 4) x 8 */
|
||||||
|
st->codec->bit_rate = st->codec->sample_rate * 32;
|
||||||
|
st->codec->bits_per_coded_sample = av_get_bits_per_sample(st->codec->codec_id);
|
||||||
|
avpriv_set_pts_info(st, 64, 1, st->codec->sample_rate);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
av_log(s, AV_LOG_ERROR, "Unsupported codec %d!\n",buf[32]);
|
av_log(s, AV_LOG_ERROR, "Unsupported codec %d!\n",buf[32]);
|
||||||
return -1;
|
return -1;
|
||||||
|
Loading…
Reference in New Issue
Block a user