summaryrefslogtreecommitdiffstats
path: root/stream/tvi_dshow.c
diff options
context:
space:
mode:
authorvoroshil <voroshil@b3059339-0415-0410-9bf9-f77b7e298cf2>2007-11-18 05:20:17 +0000
committervoroshil <voroshil@b3059339-0415-0410-9bf9-f77b7e298cf2>2007-11-18 05:20:17 +0000
commit0da22f962fd8ee14d7952b8ffc8fe539dfc3ad63 (patch)
tree2b9d3e5460a1e0dbfb17e6c761fd04f91b63b076 /stream/tvi_dshow.c
parentc8b82b4b804a4fe081574b04f3aca5d99da05969 (diff)
downloadmpv-0da22f962fd8ee14d7952b8ffc8fe539dfc3ad63.tar.bz2
mpv-0da22f962fd8ee14d7952b8ffc8fe539dfc3ad63.tar.xz
Prevent chains from building more than once.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25087 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'stream/tvi_dshow.c')
-rw-r--r--stream/tvi_dshow.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/stream/tvi_dshow.c b/stream/tvi_dshow.c
index 4b82f8a2a6..2d115032d9 100644
--- a/stream/tvi_dshow.c
+++ b/stream/tvi_dshow.c
@@ -2411,6 +2411,9 @@ static HRESULT build_video_chain(priv_t *priv)
{
HRESULT hr;
+ if(priv->v_buf)
+ return S_OK;
+
if (priv->pVideoStreamConfig) {
hr = OLE_CALL_ARGS(priv->pVideoStreamConfig, SetFormat, priv->pmtVideo);
if (FAILED(hr)) {
@@ -2447,6 +2450,9 @@ static HRESULT build_audio_chain(priv_t *priv)
{
HRESULT hr;
+ if(priv->a_buf)
+ return S_OK;
+
if(priv->immediate_mode)
return S_OK;
@@ -2489,6 +2495,9 @@ static HRESULT build_vbi_chain(priv_t *priv)
#ifdef HAVE_TV_TELETEXT
HRESULT hr;
+ if(priv->vbi_buf)
+ return S_OK;
+
if(priv->tv_param->tdevice)
{
priv->vbi_buf=calloc(1,sizeof(grabber_ringbuffer_t));