Commit e236a562 authored by Ken Self's avatar Ken Self Committed by Rémi Denis-Courmont

BDA allow card selection

Signed-off-by: default avatarRémi Denis-Courmont <rdenis@simphalempin.com>
parent cac27358
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
***************************************************************************** *****************************************************************************
* Copyright (C) 2007 the VideoLAN team * Copyright (C) 2007 the VideoLAN team
* *
* Author: Ken Self <kens@campoz.fslife.co.uk> * Author: Ken Self <kenself(at)optusnet(dot)com(dot)au>
* *
* This program is free software; you can redistribute it and/or modify * This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
...@@ -191,19 +191,20 @@ vlc_module_begin () ...@@ -191,19 +191,20 @@ vlc_module_begin ()
add_integer( "dvb-caching", DEFAULT_PTS_DELAY / 1000, NULL, CACHING_TEXT, add_integer( "dvb-caching", DEFAULT_PTS_DELAY / 1000, NULL, CACHING_TEXT,
CACHING_LONGTEXT, true ); CACHING_LONGTEXT, true );
add_integer( "dvb-frequency", 11954000, NULL, FREQ_TEXT, FREQ_LONGTEXT, add_integer( "dvb-frequency", 0, NULL, FREQ_TEXT, FREQ_LONGTEXT,
false ); false );
# if defined(WIN32) || defined(WINCE) # if defined(WIN32) || defined(WINCE)
add_string( "dvb-network-name", NULL, NULL, NAME_TEXT, NAME_LONGTEXT, add_string( "dvb-network-name", NULL, NULL, NAME_TEXT, NAME_LONGTEXT,
true ); true );
add_string( "dvb-create-name", NULL, NULL, CREATE_TEXT, add_string( "dvb-create-name", NULL, NULL, CREATE_TEXT,
CREATE_LONGTEXT, true ); CREATE_LONGTEXT, true );
add_integer( "dvb-adapter", -1, NULL, ADAPTER_TEXT, ADAPTER_LONGTEXT,
true );
# else # else
add_integer( "dvb-adapter", 0, NULL, ADAPTER_TEXT, ADAPTER_LONGTEXT, /* dvb-device refers to a frontend within an adapter */
false );
add_integer( "dvb-device", 0, NULL, DEVICE_TEXT, DEVICE_LONGTEXT, add_integer( "dvb-device", 0, NULL, DEVICE_TEXT, DEVICE_LONGTEXT,
true ); true );
add_bool( "dvb-probe", 1, NULL, PROBE_TEXT, PROBE_LONGTEXT, true ) add_bool( "dvb-probe", 1, NULL, PROBE_TEXT, PROBE_LONGTEXT, true );
add_bool( "dvb-budget-mode", 0, NULL, BUDGET_TEXT, BUDGET_LONGTEXT, add_bool( "dvb-budget-mode", 0, NULL, BUDGET_TEXT, BUDGET_LONGTEXT,
true ); true );
# endif # endif
...@@ -227,6 +228,8 @@ vlc_module_begin () ...@@ -227,6 +228,8 @@ vlc_module_begin ()
LONGITUDE_LONGTEXT, true ); LONGITUDE_LONGTEXT, true );
add_string( "dvb-range", NULL, NULL, RANGE_TEXT, add_string( "dvb-range", NULL, NULL, RANGE_TEXT,
RANGE_LONGTEXT, true ); RANGE_LONGTEXT, true );
/* dvb-range corresponds to the BDA InputRange parameter which is
* used by some drivers to control the diseqc */
# else # else
add_integer( "dvb-satno", 0, NULL, SATNO_TEXT, SATNO_LONGTEXT, add_integer( "dvb-satno", 0, NULL, SATNO_TEXT, SATNO_LONGTEXT,
true ); true );
...@@ -311,13 +314,14 @@ static int Open( vlc_object_t *p_this ) ...@@ -311,13 +314,14 @@ static int Open( vlc_object_t *p_this )
access_t *p_access = (access_t*)p_this; access_t *p_access = (access_t*)p_this;
access_sys_t *p_sys; access_sys_t *p_sys;
const char* psz_module = "dvb"; const char* psz_module = "dvb";
const int i_param_count = 25; const int i_param_count = 26;
const char* psz_param[] = { "frequency", "bandwidth", const char* psz_param[] = { "frequency", "bandwidth",
"srate", "azimuth", "elevation", "longitude", "polarisation", "srate", "azimuth", "elevation", "longitude", "polarisation",
"modulation", "caching", "lnb-lof1", "lnb-lof2", "lnb-slof", "modulation", "caching", "lnb-lof1", "lnb-lof2", "lnb-slof",
"inversion", "network-id", "code-rate-hp", "code-rate-lp", "inversion", "network-id", "code-rate-hp", "code-rate-lp",
"guard", "transmission", "hierarchy", "range", "network-name", "guard", "transmission", "hierarchy", "range", "network-name",
"create-name", "major-channel", "minor-channel", "physical-channel" }; "create-name", "major-channel", "minor-channel", "physical-channel",
"adapter" };
const int i_type[] = { VLC_VAR_INTEGER, VLC_VAR_INTEGER, const int i_type[] = { VLC_VAR_INTEGER, VLC_VAR_INTEGER,
VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER,
...@@ -325,7 +329,7 @@ static int Open( vlc_object_t *p_this ) ...@@ -325,7 +329,7 @@ static int Open( vlc_object_t *p_this )
VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER,
VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER,
VLC_VAR_INTEGER, VLC_VAR_STRING, VLC_VAR_STRING, VLC_VAR_STRING, VLC_VAR_INTEGER, VLC_VAR_STRING, VLC_VAR_STRING, VLC_VAR_STRING,
VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER }; VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER, VLC_VAR_INTEGER };
char psz_full_name[128]; char psz_full_name[128];
int i_ret; int i_ret;
...@@ -437,7 +441,7 @@ static int ParsePath( access_t *p_access, const char* psz_module, ...@@ -437,7 +441,7 @@ static int ParsePath( access_t *p_access, const char* psz_module,
i_token_len = strcspn( psz_parser, ":" ); i_token_len = strcspn( psz_parser, ":" );
if( i_token_len <= 0 ) if( i_token_len <= 0 )
i_token_len = strcspn( ++psz_parser, ":" ); i_token_len = strcspn( ++psz_parser, ":" );
do do
{ {
psz_token = strndup( psz_parser, i_token_len ); psz_token = strndup( psz_parser, i_token_len );
......
This diff is collapsed.
This diff is collapsed.
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
***************************************************************************** *****************************************************************************
* Copyright ( C ) 2007 the VideoLAN team * Copyright ( C ) 2007 the VideoLAN team
* *
* Author: Ken Self <kens@campoz.fslife.co.uk> * Author: Ken Self <kenself(at)optusnet(dot)com(dot)au>
* *
* This program is free software; you can redistribute it and/or modify * This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
...@@ -48,6 +48,7 @@ using namespace std; ...@@ -48,6 +48,7 @@ using namespace std;
#include <dshow.h> #include <dshow.h>
#include <comcat.h> #include <comcat.h>
#include <ks.h>
#include "bdadefs.h" #include "bdadefs.h"
#include "bda.h" #include "bda.h"
...@@ -67,10 +68,11 @@ public: ...@@ -67,10 +68,11 @@ public:
private: private:
/* ISampleGrabberCB methods */ /* ISampleGrabberCB methods */
STDMETHODIMP_( ULONG ) AddRef( ) { return 1; } ULONG ul_cbrc;
STDMETHODIMP_( ULONG ) Release( ) { return 2; } STDMETHODIMP_( ULONG ) AddRef( ) { return ++ul_cbrc; }
STDMETHODIMP_( ULONG ) Release( ) { return --ul_cbrc; }
STDMETHODIMP QueryInterface( REFIID riid, void** p_p_object ) STDMETHODIMP QueryInterface( REFIID riid, void** p_p_object )
{return E_NOTIMPL; } { return E_NOTIMPL; }
STDMETHODIMP SampleCB( double d_time, IMediaSample* p_sample ); STDMETHODIMP SampleCB( double d_time, IMediaSample* p_sample );
STDMETHODIMP BufferCB( double d_time, BYTE* p_buffer, long l_buffer_len ); STDMETHODIMP BufferCB( double d_time, BYTE* p_buffer, long l_buffer_len );
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment