[vlc-commits] Revert "Add frequency and video standard options in dshow"

Jean-Baptiste Kempf git at videolan.org
Wed Jul 11 18:04:46 CEST 2018


vlc | branch: master | Jean-Baptiste Kempf <jb at videolan.org> | Wed Jul 11 17:47:47 2018 +0200| [638f442d6ef35bb402c14c8f270034a0ae87cc85] | committer: Jean-Baptiste Kempf

Revert "Add frequency and video standard options in dshow"

This reverts commit 5af94ab9f6696cdf3caa48c5f3aeaa7e12842faf.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=638f442d6ef35bb402c14c8f270034a0ae87cc85
---

 modules/access/dshow/dshow.cpp   | 158 ++-------------------------------------
 modules/access/dshow/vlc_dshow.h |   1 -
 2 files changed, 6 insertions(+), 153 deletions(-)

diff --git a/modules/access/dshow/dshow.cpp b/modules/access/dshow/dshow.cpp
index b61d0507f7..c698ac4db8 100644
--- a/modules/access/dshow/dshow.cpp
+++ b/modules/access/dshow/dshow.cpp
@@ -53,9 +53,6 @@
 
 #include "../src/win32/mta_holder.h"
 
-#define INSTANCEDATA_OF_PROPERTY_PTR(x) ((PKSPROPERTY((x))) + 1)
-#define INSTANCEDATA_OF_PROPERTY_SIZE(x) (sizeof((x)) - sizeof(KSPROPERTY))
-
 namespace dshow {
 
 /*****************************************************************************
@@ -103,31 +100,6 @@ static const char *const ppsz_amtuner_mode_text[] = { N_("Default"),
                                           N_("AM radio"),
                                           N_("DSS") };
 
-static const int i_standards_list[] =
-    {
-        KS_AnalogVideo_None,
-        KS_AnalogVideo_NTSC_M, KS_AnalogVideo_NTSC_M_J, KS_AnalogVideo_NTSC_433,
-        KS_AnalogVideo_PAL_B, KS_AnalogVideo_PAL_D, KS_AnalogVideo_PAL_G,
-        KS_AnalogVideo_PAL_H, KS_AnalogVideo_PAL_I, KS_AnalogVideo_PAL_M,
-        KS_AnalogVideo_PAL_N, KS_AnalogVideo_PAL_60,
-        KS_AnalogVideo_SECAM_B, KS_AnalogVideo_SECAM_D, KS_AnalogVideo_SECAM_G,
-        KS_AnalogVideo_SECAM_H, KS_AnalogVideo_SECAM_K, KS_AnalogVideo_SECAM_K1,
-        KS_AnalogVideo_SECAM_L, KS_AnalogVideo_SECAM_L1,
-        KS_AnalogVideo_PAL_N_COMBO
-    };
-static const char *const ppsz_standards_list_text[] =
-    {
-        N_("Default"),
-        "NTSC_M", "NTSC_M_J", "NTSC_443",
-        "PAL_B", "PAL_D", "PAL_G",
-        "PAL_H", "PAL_I", "PAL_M",
-        "PAL_N", "PAL_60",
-        "SECAM_B", "SECAM_D", "SECAM_G",
-        "SECAM_H", "SECAM_K", "SECAM_K1",
-        "SECAM_L", "SECAM_L1",
-        "PAL_N_COMBO"
-    };
-
 #define VDEV_TEXT N_("Video device name")
 #define VDEV_LONGTEXT N_( \
     "Name of the video device that will be used by the " \
@@ -164,9 +136,6 @@ static const char *const ppsz_standards_list_text[] =
 #define CHANNEL_LONGTEXT N_( \
     "Set the TV channel the tuner will set to " \
     "(0 means default)." )
-#define TVFREQ_TEXT N_("Tuner Frequency")
-#define TVFREQ_LONGTEXT N_(  "This overrides the channel. Measured in Hz." )
-#define STANDARD_TEXT N_( "Video standard" )
 #define COUNTRY_TEXT N_("Tuner country code")
 #define COUNTRY_LONGTEXT N_( \
     "Set the tuner country code that establishes the current " \
@@ -251,18 +220,9 @@ vlc_module_begin ()
                 true )
         change_safe()
 
-    add_integer( "dshow-tuner-frequency", 0, TVFREQ_TEXT, TVFREQ_LONGTEXT,
-                true )
-        change_safe()
-
     add_integer( "dshow-tuner-country", 0, COUNTRY_TEXT, COUNTRY_LONGTEXT,
                 true )
 
-    add_integer( "dshow-tuner-standard", 0, STANDARD_TEXT, STANDARD_TEXT,
-                false )
-        change_integer_list( i_standards_list, ppsz_standards_list_text )
-        change_safe()
-
     add_integer( "dshow-tuner-input", 0, TUNER_INPUT_TEXT,
                  TUNER_INPUT_LONGTEXT, true )
         change_integer_list( pi_tuner_input, ppsz_tuner_input_text )
@@ -488,10 +448,6 @@ static int CommonOpen( vlc_object_t *p_this, access_sys_t *p_sys,
     var_Create( p_this, "dshow-fps", VLC_VAR_FLOAT | VLC_VAR_DOINHERIT );
     var_Create( p_this, "dshow-tuner-channel",
                 VLC_VAR_INTEGER | VLC_VAR_DOINHERIT );
-    var_Create( p_this, "dshow-tuner-frequency",
-                VLC_VAR_INTEGER | VLC_VAR_DOINHERIT );
-    var_Create( p_this, "dshow-tuner-standard",
-                VLC_VAR_INTEGER | VLC_VAR_DOINHERIT );
     var_Create( p_this, "dshow-tuner-country",
                 VLC_VAR_INTEGER | VLC_VAR_DOINHERIT );
     var_Create( p_this, "dshow-tuner-input",
@@ -2239,7 +2195,7 @@ static void ShowTunerProperties( vlc_object_t *p_this,
 static void ConfigTuner( vlc_object_t *p_this, ICaptureGraphBuilder2 *p_graph,
                          IBaseFilter *p_device_filter )
 {
-    int i_channel, i_country, i_input, i_amtuner_mode, i_standard;
+    int i_channel, i_country, i_input, i_amtuner_mode;
     long l_modes = 0;
     unsigned i_frequency;
     ComPtr<IAMTVTuner> p_TV;
@@ -2251,15 +2207,11 @@ static void ConfigTuner( vlc_object_t *p_this, ICaptureGraphBuilder2 *p_graph,
     i_country = var_GetInteger( p_this, "dshow-tuner-country" );
     i_input = var_GetInteger( p_this, "dshow-tuner-input" );
     i_amtuner_mode = var_GetInteger( p_this, "dshow-amtuner-mode" );
-    i_frequency = var_GetInteger( p_this, "dshow-tuner-frequency" );
-    i_standard =
-        i_standards_list[var_CreateGetInteger( p_this, "dshow-tuner-standard" )];
 
-    if( !i_channel && !i_frequency && !i_country && !i_input ) return; /* Nothing to do */
-
-    msg_Dbg( p_this, "tuner config: channel %i, frequency %i, country %i, input type %i, standard %s",
-             i_channel, i_frequency, i_country, i_input, ppsz_standards_list_text[i_standard] );
+    if( !i_channel && !i_country && !i_input ) return; /* Nothing to do */
 
+    msg_Dbg( p_this, "tuner config: channel %i, country %i, input type %i",
+             i_channel, i_country, i_input );
 
     hr = p_graph->FindInterface( &PIN_CATEGORY_CAPTURE, &MEDIATYPE_Interleaved,
                                  p_device_filter, IID_IAMTVTuner,
@@ -2294,107 +2246,9 @@ static void ConfigTuner( vlc_object_t *p_this, ICaptureGraphBuilder2 *p_graph,
     else if( i_input == 2 ) p_TV->put_InputType( 0, TunerInputAntenna );
 
     p_TV->put_CountryCode( i_country );
-
-    if( i_frequency <= 0 ) p_TV->put_Channel( i_channel, AMTUNER_SUBCHAN_NO_TUNE,
+    p_TV->put_Channel( i_channel, AMTUNER_SUBCHAN_NO_TUNE,
                        AMTUNER_SUBCHAN_NO_TUNE );
-
-    if( i_frequency > 0 || i_standard > 0) {
-        ComPtr<IKsPropertySet> pKs;
-        DWORD dw_supported = 0;
-        KSPROPERTY_TUNER_MODE_CAPS_S ModeCaps;
-        KSPROPERTY_TUNER_FREQUENCY_S Frequency;
-        KSPROPERTY_TUNER_STANDARD_S Standard;
-
-        hr = p_TV->QueryInterface(IID_IKsPropertySet,(void **)pKs.GetAddressOf());
-        if (FAILED(hr))
-        {
-            msg_Dbg( p_this, "Couldn't QI for IKsPropertySet" );
-            return;
-        }
-
-        memset(&ModeCaps,0,sizeof(KSPROPERTY_TUNER_MODE_CAPS_S));
-        memset(&Frequency,0,sizeof(KSPROPERTY_TUNER_FREQUENCY_S));
-        memset(&Standard,0,sizeof(KSPROPERTY_TUNER_STANDARD_S));
-        ModeCaps.Mode = AMTUNER_MODE_TV;
-
-        hr = pKs->QuerySupported(PROPSETID_TUNER,
-                KSPROPERTY_TUNER_MODE_CAPS,&dw_supported);
-        if(SUCCEEDED(hr) && dw_supported&KSPROPERTY_SUPPORT_GET)
-        {
-            DWORD cbBytes=0;
-            hr = pKs->Get(PROPSETID_TUNER,KSPROPERTY_TUNER_MODE_CAPS,
-                INSTANCEDATA_OF_PROPERTY_PTR(&ModeCaps),
-                INSTANCEDATA_OF_PROPERTY_SIZE(ModeCaps),
-                &ModeCaps,
-                sizeof(ModeCaps),
-                &cbBytes);
-        }
-        else
-        {
-            msg_Dbg( p_this, "KSPROPERTY_TUNER_MODE_CAPS not supported!" );
-            return;
-        }
-
-        msg_Dbg( p_this, "Frequency range supported from %ld to %ld.",
-                 ModeCaps.MinFrequency, ModeCaps.MaxFrequency);
-        msg_Dbg( p_this, "Video standards supported by the tuner: ");
-        for(size_t i = 0 ; i < ARRAY_SIZE(ppsz_standards_list_text); i++) {
-            if(ModeCaps.StandardsSupported & i_standards_list[i])
-                msg_Dbg( p_this, "%s, ", ppsz_standards_list_text[i]);
-        }
-
-        if(i_frequency > 0) {
-            Frequency.Frequency=i_frequency;
-            if(ModeCaps.Strategy==KS_TUNER_STRATEGY_DRIVER_TUNES)
-                Frequency.TuningFlags=KS_TUNER_TUNING_FINE;
-            else
-                Frequency.TuningFlags=KS_TUNER_TUNING_EXACT;
-
-            if(i_frequency>=ModeCaps.MinFrequency && i_frequency<=ModeCaps.MaxFrequency)
-            {
-
-                hr = pKs->Set(PROPSETID_TUNER,
-                    KSPROPERTY_TUNER_FREQUENCY,
-                    INSTANCEDATA_OF_PROPERTY_PTR(&Frequency),
-                    INSTANCEDATA_OF_PROPERTY_SIZE(Frequency),
-                    &Frequency,
-                    sizeof(Frequency));
-                if(FAILED(hr))
-                {
-                    msg_Dbg( p_this, "Couldn't set KSPROPERTY_TUNER_FREQUENCY!" );
-                    return;
-                }
-            }
-            else
-            {
-                msg_Dbg( p_this, "Requested frequency exceeds the supported range!" );
-                return;
-            }
-        }
-
-        if(i_standard > 0) {
-            if(i_standard & ModeCaps.StandardsSupported )
-            {
-                Standard.Standard = i_standard;
-                hr = pKs->Set(PROPSETID_TUNER,
-                    KSPROPERTY_TUNER_STANDARD,
-                    INSTANCEDATA_OF_PROPERTY_PTR(&Standard),
-                    INSTANCEDATA_OF_PROPERTY_SIZE(Standard),
-                    &Standard,
-                    sizeof(Standard));
-                if(FAILED(hr))
-                {
-                    msg_Dbg( p_this, "Couldn't set KSPROPERTY_TUNER_STANDARD!" );
-                    return;
-                }
-            }
-            else
-            {
-                msg_Dbg( p_this, "Requested video standard is not supported by the tuner!" );
-                return;
-            }
-        }
-    }
+    p_TV->Release();
 }
 
 } // namespace
diff --git a/modules/access/dshow/vlc_dshow.h b/modules/access/dshow/vlc_dshow.h
index 57c84ade3b..eaa6873101 100644
--- a/modules/access/dshow/vlc_dshow.h
+++ b/modules/access/dshow/vlc_dshow.h
@@ -51,7 +51,6 @@ namespace dshow {
  *****************************************************************************/
 
 /* IAM */
-DEFINE_GUID(PROPSETID_TUNER ,0x6a2e0605, 0x28e4, 0x11d0, 0xa1, 0x8c, 0x00, 0xa0, 0xc9, 0x11, 0x89, 0x56);
 DEFINE_GUID(IID_IAMBufferNegotiation ,0x56ed71a0, 0xaf5f, 0x11d0, 0xb3, 0xf0, 0x00, 0xaa, 0x00, 0x37, 0x61, 0xc5);
 DEFINE_GUID(IID_IAMTVAudio      ,0x83EC1C30, 0x23D1, 0x11d1, 0x99, 0xE6, 0x00, 0xA0, 0xC9, 0x56, 0x02, 0x66);
 DEFINE_GUID(IID_IAMCrossbar     ,0xC6E13380, 0x30AC, 0x11d0, 0xA1, 0x8C, 0x00, 0xA0, 0xC9, 0x11, 0x89, 0x56);



More information about the vlc-commits mailing list