public IBaseFilter AddClosedCaptionsFilter(IGraphBuilder graphBuilder)
        {
            FilterFileWrapper ccFilter   = FilterLoader.LoadFilterFromDll(CCFILTER_FILENAME, new Guid(CCFILTER_CLSID), true);
            IBaseFilter       baseFilter = ccFilter.GetFilter();

            if (baseFilter != null)
            {
                graphBuilder.AddFilter(baseFilter, CCFILTER_NAME);
            }
            else
            {
                ccFilter.Dispose();
                ServiceRegistration.Get <ILogger>().Warn("SubtitleRenderer: Failed to add {1} to graph", CCFILTER_FILENAME);
            }
            return(baseFilter);
        }
예제 #2
0
        protected virtual void AddClosedCaptionsFilter()
        {
            VideoSettings settings = ServiceRegistration.Get <ISettingsManager>().Load <VideoSettings>();

            if (settings.EnableClosedCaption)
            {
                // ClosedCaptions filter
                _ccFilter = FilterLoader.LoadFilterFromDll(CCFILTER_FILENAME, new Guid(CCFILTER_CLSID), true);
                var baseFilter = _ccFilter.GetFilter();
                if (baseFilter == null)
                {
                    _ccFilter.Dispose();
                    ServiceRegistration.Get <ILogger>().Warn("{0}: Failed to add {1} to graph", PlayerTitle, CCFILTER_FILENAME);
                    return;
                }
                _graphBuilder.AddFilter(baseFilter, CCFILTER_NAME);
            }
        }
예제 #3
0
        public IBaseFilter AddClosedCaptionsFilter(IGraphBuilder graphBuilder)
        {
            // ClosedCaptions filter
            var platform = IntPtr.Size > 4 ? "x64" : "x86";
            FilterFileWrapper ccFilter   = FilterLoader.LoadFilterFromDll($"{platform}\\{CCFILTER_FILENAME}", new Guid(CCFILTER_CLSID), true);
            IBaseFilter       baseFilter = ccFilter.GetFilter();

            if (baseFilter != null)
            {
                graphBuilder.AddFilter(baseFilter, CCFILTER_NAME);
            }
            else
            {
                ccFilter.Dispose();
                ServiceRegistration.Get <ILogger>().Warn("SubtitleRenderer: Failed to add {1} to graph", CCFILTER_FILENAME);
            }
            return(baseFilter);
        }