summaryrefslogtreecommitdiffstats
path: root/stream
diff options
context:
space:
mode:
authorUoti Urpala <uau@glyph.nonexistent.invalid>2009-05-08 23:50:26 +0300
committerUoti Urpala <uau@glyph.nonexistent.invalid>2009-05-08 23:50:26 +0300
commit1db1773ec27fc4e7c9d44ad02ccfa7eaf364ce07 (patch)
treec5e99bfe0e69cd37fb8ac70fadf00ce54a1cbe3c /stream
parentf2864e9a072f53c38a04dd7c44392521777dc908 (diff)
parent86c9fb2e8930de031807513c9b93d47394d2d2fa (diff)
downloadmpv-1db1773ec27fc4e7c9d44ad02ccfa7eaf364ce07.tar.bz2
mpv-1db1773ec27fc4e7c9d44ad02ccfa7eaf364ce07.tar.xz
Merge svn changes up to r29277
Diffstat (limited to 'stream')
-rw-r--r--stream/stream_dvdnav.c20
-rw-r--r--stream/tvi_v4l2.c1
2 files changed, 16 insertions, 5 deletions
diff --git a/stream/stream_dvdnav.c b/stream/stream_dvdnav.c
index 85d86713c2..adb0fcb54c 100644
--- a/stream/stream_dvdnav.c
+++ b/stream/stream_dvdnav.c
@@ -74,6 +74,7 @@ static const struct m_struct_st stream_opts = {
};
static int seek(stream_t *s, off_t newpos);
+static void show_audio_subs_languages(dvdnav_t *nav);
static dvdnav_priv_t * new_dvdnav_stream(char * filename) {
const char * title_str;
@@ -205,10 +206,13 @@ static int dvdnav_stream_read(dvdnav_priv_t * priv, unsigned char *buf, int *len
if(ev->pgc_length)
priv->duration = ev->pgc_length/90;
- if (dvdnav_is_domain_vts(priv->dvdnav))
+ if (dvdnav_is_domain_vts(priv->dvdnav)) {
+ mp_msg(MSGT_IDENTIFY, MSGL_INFO, "DVDNAV_TITLE_IS_MOVIE\n");
priv->state &= ~NAV_FLAG_VTS_DOMAIN;
- else
+ } else {
+ mp_msg(MSGT_IDENTIFY, MSGL_INFO, "DVDNAV_TITLE_IS_MENU\n");
priv->state |= NAV_FLAG_VTS_DOMAIN;
+ }
nextstill = dvdnav_get_next_still_flag (priv->dvdnav);
if (nextstill) {
@@ -340,6 +344,7 @@ static int fill_buffer(stream_t *s, char *but, int len)
priv->state &= ~NAV_FLAG_WAIT;
s->end_pos = 0;
update_title_len(s);
+ show_audio_subs_languages(priv->dvdnav);
if (priv->state & NAV_FLAG_WAIT_READ_AUTO)
priv->state |= NAV_FLAG_WAIT_READ;
if(dvdnav_current_title_info(priv->dvdnav, &tit, &part) == DVDNAV_STATUS_OK) {
@@ -535,8 +540,12 @@ static void show_audio_subs_languages(dvdnav_t *nav)
if(format == 0xFFFF || format > 6)
format = 1; //unknown
id = i + base[format];
- mp_msg(MSGT_OPEN,MSGL_STATUS,MSGTR_DVDaudioStreamInfo, i,
- dvd_audio_stream_types[format], dvd_audio_stream_channels[channels], tmp, id);
+ if (lang != 0xFFFF) {
+ mp_msg(MSGT_OPEN,MSGL_STATUS,MSGTR_DVDaudioStreamInfo, i,
+ dvd_audio_stream_types[format], dvd_audio_stream_channels[channels], tmp, id);
+ if(lang && tmp[0])
+ mp_msg(MSGT_IDENTIFY, MSGL_INFO, "ID_AID_%d_LANG=%s\n", id, tmp);
+ }
}
for(i=0; i<32; i++)
@@ -552,7 +561,8 @@ static void show_audio_subs_languages(dvdnav_t *nav)
tmp[1] = lang & 0xFF;
}
tmp[2] = 0;
- mp_msg(MSGT_OPEN,MSGL_STATUS,MSGTR_DVDsubtitleLanguage, i+0x20, tmp);
+ if (lang != 0xFFFF)
+ mp_msg(MSGT_OPEN,MSGL_STATUS,MSGTR_DVDsubtitleLanguage, i+0x20, tmp);
}
}
diff --git a/stream/tvi_v4l2.c b/stream/tvi_v4l2.c
index c890d7a51e..5bd654282e 100644
--- a/stream/tvi_v4l2.c
+++ b/stream/tvi_v4l2.c
@@ -1313,6 +1313,7 @@ static int init(priv_t *priv)
}
mp_msg(MSGT_TV, MSGL_INFO, " %d = %s;", i, input.name);
}
+ i = -1;
if (ioctl(priv->video_fd, VIDIOC_G_INPUT, &i) < 0) {
mp_msg(MSGT_TV, MSGL_ERR, "%s: ioctl get input failed: %s\n",
info.short_name, strerror(errno));