mirror of
https://github.com/mpv-player/mpv
synced 2025-01-20 21:07:29 +01:00
Support for VobSub-in-Matroska; parts outside of demux_mkv.cpp.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@11154 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
3be6461cb4
commit
ba57485970
@ -44,5 +44,12 @@
|
||||
#define MKV_S_TEXTASCII "S_TEXT/ASCII"
|
||||
#define MKV_S_TEXTUTF8 "S_TEXT/UTF8"
|
||||
#define MKV_S_TEXTSSA "S_TEXT/SSA"
|
||||
#define MKV_S_VOBSUB "S_VOBSUB"
|
||||
|
||||
typedef struct {
|
||||
char type; // t = text, v = VobSub
|
||||
unsigned int palette[16]; // for VobSubs
|
||||
int width, height; // for VobSubs
|
||||
} mkv_sh_sub_t;
|
||||
|
||||
#endif /* __MATROSKA_H */
|
||||
|
13
mplayer.c
13
mplayer.c
@ -104,6 +104,9 @@ static int quiet=0;
|
||||
static int last_dvb_step = 1;
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_MATROSKA
|
||||
#include "libmpdemux/matroska.h"
|
||||
#endif
|
||||
|
||||
//**************************************************************************//
|
||||
// Playtree
|
||||
@ -1602,6 +1605,16 @@ if (vo_spudec==NULL && stream->type==STREAMTYPE_DVD) {
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_MATROSKA
|
||||
if ((vo_spudec == NULL) && (demuxer->type == DEMUXER_TYPE_MATROSKA) &&
|
||||
(d_dvdsub->sh != NULL) && (((mkv_sh_sub_t *)d_dvdsub->sh)->type == 'v')) {
|
||||
current_module = "spudec_init_matroska";
|
||||
vo_spudec = spudec_new_scaled(((mkv_sh_sub_t *)d_dvdsub->sh)->palette,
|
||||
((mkv_sh_sub_t *)d_dvdsub->sh)->width,
|
||||
((mkv_sh_sub_t *)d_dvdsub->sh)->height);
|
||||
}
|
||||
#endif
|
||||
|
||||
if (vo_spudec==NULL) {
|
||||
current_module="spudec_init_normal";
|
||||
vo_spudec=spudec_new_scaled(NULL, sh_video->disp_w, sh_video->disp_h);
|
||||
|
Loading…
Reference in New Issue
Block a user