Infognition forum
June 23, 2018, 01:21:02 AM *
Welcome, Guest. Please login or register.

Login with username, password and session length
News: Last Video Enhancer version: 2.2
 
  Home Help Search Login Register  
  Show Posts
Pages: [1] 2 3 ... 51
1  DirectShow programming / GraphEditPlus / Re: GEP VC++ Visual Studio 2017 hdmi 1920x1080 on: December 27, 2017, 09:31:53 AM
Hi, sorry for the delay.
When you open some filter's property page, like when you set resolution for your input device, the dialog you see is created and processed by the filter itself, GraphEditPlus has no idea what's happening there when you use that UI. So there is no way to do the same actions in code automatically. Any filter can present any options in its property page UI and there is no common way to change them in code, no common interface. That's why by default the generated code does not set any of those options.
However there is a workaround: after you set the options in UI you can right click the filter and select "Save state to code". It will show a snippet in C++ where current state of the filter in binary form is serialized into text and the code loads this state. You can add this snippet to proper place in your main generated code to set filter's state during graph building.

As for the latter "bug", code generation only works for the graph you build in GraphEditPlus, not when you load it from file. As you build the graph manually GEP records the sequence of actions and then expresses this sequence in code. When you just load some .grf file there is no history of building, no record of how it was created, so there is no proper history to express in code. Thanks for pointing out this case, I think we'll either try supporting generating code for loaded .grf files or, if not possible, at least warning the user against it.
2  Video Processing / Video Enhancer / Re: Processes either fail or contain no data on: December 26, 2017, 06:19:51 PM
Cannot reproduce, sorry.
Try watching in Task Manager how much memory veworker.exe takes during processing. If it goes more than 1400 MB that's clearly an indication of a problem. In our tests Video Enhancer is able to upconvert HD to 4K without problems and takes less than 800 MB usually.
3  Video Processing / Video Enhancer / Re: Video Enhancer Destroys Audio Sync on: December 26, 2017, 06:05:14 PM
Video codecs and any video filters (including SR) have nothing to do with audio sync.
It's all about container formats: what container (AVI/MKV/MP4/ etc.) on input and which one on output.
AVI container uses fixed framerate. Your videos may have variable frame rate. When writing to AVI Video Enhancer tries to guess the framerate but sometimes this doesn't work well. Try writing MP4 instead.
4  DirectShow programming / GraphEditPlus / Re: "Accessing raw video data in DirectShow" example compile issue on: December 01, 2017, 02:32:18 PM
When you run the graph in GraphEditPlus do all filters display their state as running? (their icons should change)
I suspect your graph does not run fully, that's probably why the callback is not called.
When you Run() the graph does it return S_OK?
5  DirectShow programming / GraphEditPlus / Re: "Accessing raw video data in DirectShow" example compile issue on: November 30, 2017, 02:16:21 PM
Remember that in C++ the order of definitions is important. If you placed CallbackObject class definition after the code that uses it, the compiler will emit errors about not recognizing CallbackObject. Make sure the class is defined before it's first used.
6  Video Processing / Video Enhancer / Re: Lost License on: November 27, 2017, 10:49:41 AM
Sent a PM on the forum.
7  Video Processing / Video Enhancer / Re: Video Enhancer offline installation and purchase offer on: October 29, 2017, 01:44:24 PM
Hi,
Video Enhancer can be installed and used offline, no problem here.
It only uses Internet connection when tries to check for updates and when the user tells it to download some plugin (filter).
So if you install all necessary plugins and codecs beforehand, there is no need to be online.
Registration code is checked offline and the code does not depend on the machine, so you can obtain a license online on one PC and then use it offline on another PC.
While you're online you can install the trial version, then go offline and play with it for a while to ensure it works ok.
Regarding plugins, you can install the trial on a PC which is online, then inside Video Enhancer install all the filters you're interested in, then just copy its plugins directory (usually it's C:\Users\your_user_name\AppData\Local\Video Enhancer\plugins\ ) to your Flash drive and copy those files to your offline PC.

PS. Recently we've got similar questions from two Israeli software resellers, I'm not sure whether they got our replies. I wonder if they asked it for you. Wink
8  Video Processing / Video Enhancer / Re: Am very confused about versions on: October 27, 2017, 03:16:23 PM
As you understand there is the SR engine itself, and there is everything else: user interface, reading and decoding video, dealing with other VDub filters, compressing and writing video and audio in different formats.. In case of our SR plugins for VirtualDub and AviSynth, the plugins basically contain just the SR engine while everything else it taken care of by the host application (VDub or AviSynth).

I think all the recent changes were in the GUI part of Video Enhancer, not the SR engine itself. With version 2 of VE the user-facing app itself was rewritten from scratch in another language, the way it works with different filters has changed, processing was separated into another process, some fixes and enhancements were about dealing with different codecs and formats. SR engine itself remained basically the same.
9  Video Processing / Video Enhancer / Re: Am very confused about versions on: October 26, 2017, 02:23:15 PM
I think that's right. VirtualDub and AviSynth filters have not been updated for quite some time. And last Video Enhancer version was released this spring.
10  DirectShow programming / GraphEditPlus / Re: GRF File will not play on: October 26, 2017, 02:20:41 PM
As usual, the issue with generated code is the way camera device is created. Instead of CoCreateInstance you need something like this:
Code:
CComPtr<IBaseFilter> CreateFilterByName(const WCHAR* filterName, const GUID& category)
{
    HRESULT hr = S_OK;
    CComPtr<ICreateDevEnum> pSysDevEnum;
    hr = pSysDevEnum.CoCreateInstance(CLSID_SystemDeviceEnum);
    if (hrcheck(hr, _T("Can't create System Device Enumerator")))
        return NULL;

    CComPtr<IEnumMoniker> pEnumCat;
    hr = pSysDevEnum->CreateClassEnumerator(category, &pEnumCat, 0);

    if (hr == S_OK)
    {
        CComPtr<IMoniker> pMoniker;
        ULONG cFetched;
        while(pEnumCat->Next(1, &pMoniker, &cFetched) == S_OK)
        {
            CComPtr<IPropertyBag> pPropBag;
            hr = pMoniker->BindToStorage(0, 0, IID_IPropertyBag, (void **)&pPropBag);
            if (SUCCEEDED(hr))
            {
                VARIANT varName;
                VariantInit(&varName);
                hr = pPropBag->Read(L"FriendlyName", &varName, 0);
                if (SUCCEEDED(hr))
                {
                    if (wcscmp(filterName, varName.bstrVal)==0) {
                        CComPtr<IBaseFilter> pFilter;
                        hr = pMoniker->BindToObject(NULL, NULL, IID_IBaseFilter, (void**)&pFilter);
                        if (hrcheck(hr, _T("Can't bind moniker to filter object")))
                            return NULL;
                        return pFilter;
                    }
                }
                VariantClear(&varName);
            }
            pMoniker.Release();
        }
    }
    return NULL;
}

and then in your graph building code something like
Code:
  CComPtr<IBaseFilter> pUSB20VGAUVCWebCam = CreateFilterByName(L"USB2.0 VGA UVC WebCam", CLSID_VideoCaptureSources);
    hr = pGraph->AddFilter(pUSB20VGAUVCWebCam, L"USB2.0 VGA UVC WebCam");
    CHECK_HR(hr, _T("Can't add USB2.0 VGA UVC WebCam to graph"));

The code above is generated by GraphEditPlus for a camera selected from capture sources category. But sometimes it doesn't recognize that some filter is a capture device and generates filter creation code for ordinary filters, not devices.
11  Video Processing / Video Enhancer / Re: where is the wizard on: September 20, 2017, 12:51:17 PM
Version 2 does not have the wizard anymore.
12  Video Processing / Video Enhancer / Re: Lost License on: August 04, 2017, 12:58:38 PM
Please check your personal messages here.
13  Video Processing / Video Enhancer / Re: Video Enhancer Licence for AVISynth on: July 29, 2017, 02:26:37 PM
Sorry for the delays, please check your personal messages here.

tina89, please let us know when you got your VE license, can't find your email in our records.
14  Video Processing / Video Enhancer / Re: Video Enhancer Licence for AVISynth on: June 27, 2017, 07:03:18 PM
Sent a personal message here.
15  DirectShow programming / GraphEditPlus / Re: Audio without audio file on: June 27, 2017, 06:44:50 PM
Different devices are represented in DirectShow as filters, each filter belongs to some category. In the left window you can select a category (drop list above) and see the filters from that category. There is a category usually called "Audio Capture Sources", and audio input devices are usually found there. Find your filter (you can find it by entering part of its name in search field under the drop list) and insert it instead of an audio file. Like this:

Pages: [1] 2 3 ... 51
Powered by MySQL Powered by PHP Powered by SMF 1.1.13 | SMF © 2006-2011, Simple Machines LLC Valid XHTML 1.0! Valid CSS!