Re[5]: Как из avi сделать последовательность bmp.
От: SergDegun Россия  
Дата: 27.02.08 10:24
Оценка:
Здравствуйте, SergDegun, Вы писали:

SD>Здравствуйте, GDever, Вы писали:


DH>>>>Здравствуйте, magician_g, Вы писали:

_>>>>>Как из avi сделать последовательность bmp.
SD>>>Как нужно правильно создать проект, чтобы сформировать исполняемый файл?

GD>>Без приведённых ошибок что-либо конкретное сказать сложно, однако есть мнение что не подключены либы от DirectShow — надо DirectX SDK качать.

GD>>Хотя как вариант работы с AVI можно попробовать это (там хоть и на VB но можно легко переделать на C++).

SD>В файле wxdebug.h при определении класса



Те ошибки в wxdebug.h я обошёл, отключив Precompiled Header. Но осталась ошибка в файле ctlutil.h при определении класса

class COARefTime : public CRefTime {
public:

    COARefTime() {
    };

    COARefTime(CRefTime t)
        : CRefTime(t)
    {
    };

    COARefTime(REFERENCE_TIME t)
        : CRefTime(t)
    {
    };

    COARefTime(double d) {
        m_time = (LONGLONG) (d * 10000000);
    };

    operator double() {
        return double(m_time) / 10000000;
    };

    operator REFERENCE_TIME() {
        return m_time;
    };

    COARefTime& operator=(const double& rd)  {
        m_time = (LONGLONG) (rd * 10000000);
        return *this;
    }

    COARefTime& operator=(const REFERENCE_TIME& rt)  {
        m_time = rt;
        return *this;
    }

    inline BOOL operator==(const COARefTime& rt)
    {
        return m_time == rt.m_time;
    };

    inline BOOL operator!=(const COARefTime& rt)
    {
        return m_time != rt.m_time;
    };

    inline BOOL operator < (const COARefTime& rt)
    {
        return m_time < rt.m_time;
    };

    inline BOOL operator > (const COARefTime& rt)
    {
        return m_time > rt.m_time;
    };

    inline BOOL operator >= (const COARefTime& rt)
    {
        return m_time >= rt.m_time;
    };

    inline BOOL operator <= (const COARefTime& rt)
    {
        return m_time <= rt.m_time;
    };

    inline COARefTime operator+(const COARefTime& rt)
    {
        return COARefTime(m_time + rt.m_time);
    };

    inline COARefTime operator-(const COARefTime& rt)
    {
        return COARefTime(m_time - rt.m_time);
    };

    inline COARefTime operator*(LONG l)
    {
        return COARefTime(m_time * l);
    };

    inline COARefTime operator/(LONG l)
    {
        return COARefTime(m_time / l);
    };

private:
    //  Prevent bugs from constructing from LONG (which gets
    //  converted to double and then multiplied by 10000000
    COARefTime(LONG);
    operator=(LONG);
};


на последней строке

    operator=(LONG);


выдаёт ошибку
c:\program files\microsoft platform sdk\samples\multimedia\directshow\baseclasses\ctlutil.h(278) : error C4430: missing type specifier — int assumed. Note: C++ does not support default-int
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.