summaryrefslogtreecommitdiff
path: root/libavformat/electronicarts.c
diff options
context:
space:
mode:
authorAurelien Jacobs <aurel@gnuage.org>2007-10-18 22:23:30 +0000
committerAurelien Jacobs <aurel@gnuage.org>2007-10-18 22:23:30 +0000
commitaf704ee420b03c65c3d3f8aabb56418722f70179 (patch)
tree38412c16438923f8119110ed49d305d2465aa0b0 /libavformat/electronicarts.c
parent080b1c82388e36687321c86966feace19de41de0 (diff)
add audio and video codec context vars
Originally committed as revision 10791 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat/electronicarts.c')
-rw-r--r--libavformat/electronicarts.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/libavformat/electronicarts.c b/libavformat/electronicarts.c
index 13f7a60e72..dd129f158e 100644
--- a/libavformat/electronicarts.c
+++ b/libavformat/electronicarts.c
@@ -40,9 +40,11 @@
#define EA_PREAMBLE_SIZE 8
typedef struct EaDemuxContext {
+ int video_codec;
AVRational time_base;
int video_stream_index;
+ int audio_codec;
int audio_stream_index;
int audio_frame_counter;
@@ -134,6 +136,8 @@ static int process_audio_header_elements(AVFormatContext *s)
}
}
+ ea->audio_codec = CODEC_ID_ADPCM_EA;
+
return 1;
}
@@ -145,6 +149,7 @@ static int process_video_header_vp6(AVFormatContext *s)
url_fskip(pb, 16);
ea->time_base.den = get_le32(pb);
ea->time_base.num = get_le32(pb);
+ ea->video_codec = CODEC_ID_VP6;
return 1;
}
@@ -212,7 +217,7 @@ static int ea_read_header(AVFormatContext *s,
return AVERROR(ENOMEM);
ea->video_stream_index = st->index;
st->codec->codec_type = CODEC_TYPE_VIDEO;
- st->codec->codec_id = CODEC_ID_VP6;
+ st->codec->codec_id = ea->video_codec;
st->codec->codec_tag = 0; /* no fourcc */
st->codec->time_base = ea->time_base;
}
@@ -223,7 +228,7 @@ static int ea_read_header(AVFormatContext *s,
return AVERROR(ENOMEM);
av_set_pts_info(st, 33, 1, EA_SAMPLE_RATE);
st->codec->codec_type = CODEC_TYPE_AUDIO;
- st->codec->codec_id = CODEC_ID_ADPCM_EA;
+ st->codec->codec_id = ea->audio_codec;
st->codec->codec_tag = 0; /* no tag */
st->codec->channels = ea->num_channels;
st->codec->sample_rate = EA_SAMPLE_RATE;