Mercurial > mplayer.hg
comparison libmpdemux/demux_ts.c @ 20506:9324e1a02a8b
simplified assignment of subtitles stream in ts_parse()
author | nicodvb |
---|---|
date | Sun, 29 Oct 2006 21:29:23 +0000 |
parents | eed38650b528 |
children | f74eb19ac068 |
comparison
equal
deleted
inserted
replaced
20505:543f6e8deeb6 | 20506:9324e1a02a8b |
---|---|
2745 int asgn = 0; | 2745 int asgn = 0; |
2746 uint8_t *lang; | 2746 uint8_t *lang; |
2747 | 2747 |
2748 if(dvdsub_lang) | 2748 if(dvdsub_lang) |
2749 { | 2749 { |
2750 if(!strcmp(dvdsub_lang, "")) | 2750 if(lang = pid_lang_from_pmt(priv, pid)) |
2751 asgn = 1; | 2751 asgn = (strncmp(lang, dvdsub_lang, 3) == 0); |
2752 else | |
2753 { | |
2754 lang = pid_lang_from_pmt(priv, pid); | |
2755 if(lang != NULL) | |
2756 asgn = (strncmp(lang, dvdsub_lang, 3) == 0); | |
2757 else | |
2758 asgn = 0; | |
2759 } | |
2760 } | 2752 } |
2753 else //no language specified with -slang | |
2754 asgn = 1; | |
2761 | 2755 |
2762 if(asgn) | 2756 if(asgn) |
2763 { | 2757 { |
2764 demuxer->sub->id = tss->pid; | 2758 demuxer->sub->id = tss->pid; |
2765 mp_msg(MSGT_DEMUX, MSGL_INFO, "CHOSEN SUBs pid 0x%x (%d) FROM PROG %d\n", tss->pid, tss->pid, priv->prog); | 2759 mp_msg(MSGT_DEMUX, MSGL_INFO, "CHOSEN SUBs pid 0x%x (%d) FROM PROG %d\n", tss->pid, tss->pid, priv->prog); |
2766 } | 2760 } |
2767 } | |
2768 else | |
2769 { | |
2770 mp_msg(MSGT_DEMUX, MSGL_V, "DISCARDED SUBs pid 0x%x (%d) NOT CHOSEN OR NOT IN PROG %d\n", tss->pid, tss->pid, priv->prog); | |
2771 } | 2761 } |
2772 } | 2762 } |
2773 | 2763 |
2774 if(demuxer->sub->id == tss->pid) | 2764 if(demuxer->sub->id == tss->pid) |
2775 { | 2765 { |