Page 1 of 1

Bug in dshow.cpp? (unable to set dshow-video-input=0)

Posted: 05 Jun 2006 23:51
by sneeze
I'm playing around with the dshow input for watching TV, and I'm having problems to configure the crossbar pins using VLC.

It works ok if I select 'Advanced options->Device properties' box and configure the crossbar via the drivers "crossbar properties window".

The thing is that I need to set the dshow-video-input paramter to 0 (the drivers default value is 1).

So I browsed through the code in SVN (modules/access/dshow/dshow.cpp, revision 15530), and I found what I think is a small bug.

At line 479 and forward, the code looks like this

Code: Select all

var_Get( p_this, "dshow-video-input", &val ); if( val.i_int > 0 ) p_sys->crossbar_routes[i].VideoInputIndex=val.i_int; var_Get( p_this, "dshow-video-output", &val );
Shouldn't the test be

Code: Select all

if( val.i_int >= 0 )
though?

Since the value for 'default' is -1, and 0 is a valid input pin?

(If so, the other pin configuration parameters has the same problem also)

I'm not so good at expressing myself in English, so I hope this post wasn't too confusing. ;)

Posted: 07 Jun 2006 23:08
by dionoea
Indeed ... were you able to test the change ?

Posted: 08 Jun 2006 21:31
by sneeze
Yes, I got around to build vlc on my own last night, and changing the dshow-video-input 'if'-statement fixed my problem.

I guess the related parameters (dshow-video-output, dshow-audio-input/output) needs the same change.

On a side note, I was not able to checkout VLC from svn though, tried both with cygwin svn and turoiseSVN, and got the same error "Invalid diff stream: insn 932 cannot be decoded". Last file I could checkout was wxwidgets.cpp. Dunno what whats wrong though :/

Posted: 09 Jun 2006 22:45
by dionoea
Ok, i commited the change in VLC trunk (https://trac.videolan.org/vlc/changeset/15856) I also changed the 3 next tests.

About your SVN problem, i don't have a clue about what the problem might be.