diff options
author | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-11-13 16:15:23 +0000 |
---|---|---|
committer | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-11-13 16:15:23 +0000 |
commit | c5fa0bbf92c98fbfd859885147427cb1600c628c (patch) | |
tree | 99f10096ec2ebfaea7444ba97ea43cab701df8df /libmpdemux/demuxer.c | |
parent | d189145a4aec732670fa8105b4201a6b4c81e7c4 (diff) | |
download | mpv-c5fa0bbf92c98fbfd859885147427cb1600c628c.tar.bz2 mpv-c5fa0bbf92c98fbfd859885147427cb1600c628c.tar.xz |
Make subtitle stream handling more similar to audio and video streams.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20888 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux/demuxer.c')
-rw-r--r-- | libmpdemux/demuxer.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/libmpdemux/demuxer.c b/libmpdemux/demuxer.c index d65456cfd6..2448bf7ab2 100644 --- a/libmpdemux/demuxer.c +++ b/libmpdemux/demuxer.c @@ -201,6 +201,23 @@ demuxer_t* new_demuxer(stream_t *stream,int type,int a_id,int v_id,int s_id,char return d; } +sh_sub_t *new_sh_sub_sid(demuxer_t *demuxer, int id, int sid) { + if (id > MAX_S_STREAMS - 1 || id < 0) { + mp_msg(MSGT_DEMUXER,MSGL_WARN,"Requested sub stream id overflow (%d > %d)\n", + id, MAX_S_STREAMS); + return NULL; + } + if (demuxer->s_streams[id]) + mp_msg(MSGT_DEMUXER, MSGL_WARN, "Sub stream %i redefined\n", id); + else { + sh_sub_t *sh = calloc(1, sizeof(sh_sub_t)); + demuxer->s_streams[id] = sh; + sh->sid = sid; + mp_msg(MSGT_IDENTIFY, MSGL_INFO, "ID_SUBTITLE_ID=%d\n", sid); + } + return demuxer->s_streams[id]; +} + sh_audio_t* new_sh_audio_aid(demuxer_t *demuxer,int id,int aid){ if(id > MAX_A_STREAMS-1 || id < 0) { |