This forum software has now been archived into static HTML page (i.e. it does not function as a working forum anymore, so you cannot login.)

In due course a new forum will be available to help support newer CamStudio versions.

Sorry for the inconvenience and thank you for your patience.

Beta 2.6 Build

I'm actively working on the beta 2.6 code base and wanted to bring up the issues I've encountered so far.

The toolset I'm using is :

Microsoft Visual Studio 2008
Version 9.0.21022.8 RTM
Microsoft .NET Framework
Version 3.5 SP1

Installed Edition: Enterprise

Microsoft Visual C++ 2008 91904-270-1028055-60061

Build Issues:

1. Project dependencies. In vscap solution, each project should have dependencies for other projects in the solution set.
2. Missing projects. The vscap project is dependent on the static library CxImage; this project, in turn, uses symbols from the various image static libraries, which are all missing from the solution. They should be added.
3. The header file "muldiv32.h" is obsolete. Calls to muldiv32 or MulDiv32 should be replaced with MulDiv.
4. Producer project does not compile. This one is a challenge. The STL includes generate errors in this project only. I haven't determined why yet.
5. For-loop scoping generates undefined symbols. Rather than define a variable at the function level scope,
it is probably simpler to simply derfine separate ones for each loop because the projects use STL classes will require a support compiler.
6. The STL class hash_map (on my version) is int he namespace stdext::, not std. The file FBase.h defines it in the namespace std. Need a compile time way to detect this.

This is a real challenge.

- tim

Comments

  • Update:

    I've had problems with the Producer project failing to compile. I've been able to verify that it fails under both the VS 2005 and VS 2008. it has to do with how the code is using the STL.

    Project dependencies:
    The CxImage library needs all of the subprojects in the cximage folder. Add them all to the solution and then make CxImage dependent upon them. Then make vscap dependent on CxImage and you shoudl be able to build vscap correctly.
  • The CamStudio code is currently in a mainenance cycle. This messge is to try to explain the nature of first set of changes that will be taking place over the next few weeks and what feedback is needed. There are a lot of things to do, both large and small, that will result in significant imrpovemnts of the program. The areas I'm focused on right now are: coding and testing.

    Caveat: Apologies if I sound offensive. I really don't mean to be.

    Coding:
    The 2.6 beta code needs refactoring. Much of the code is linear or procedural that leverages little of MFC or C++. The build needs to be stable for both the 2005 and 2008 of Visual Studio. Producer needs review. I can't get it to compile/build. I'll be making large changes to the code style to make it consistent and then refactor the code into either standard MFC or static libraries, etc. These changes should not add major features and may (hopefully) resolve some bugs. the product should not degrade but the code should be easier to deal with.

    Testing:
    I haven't done and open source project so I can't be sure than any changes I put in run on any computer but mine. It would be nice to verify they build on a different machine with the base toolset. Bugs in the build are deadly to a project. Further testing needs to be worked out.

    I'm sure there is much more to go over (!) but I hope this helps to understand what is happening.

    Tim McCarthy
  • Hey, I just downloaded a copy of the source and made some changes to the 2.6 build. It seemed to be crashing after about 10 minutes of recording. I was able to alleviate the problem a little bit by replacing the use of m_cImage directly with a LPBITMAPINFOHEADER (it seemed like the problem was caused with the m_cImage.CreateFromHBITMAP call). After I fixed that, it started crashing after _20_ minutes, a problem which I narrowed down to a GetDC(0) call in CCamera.CaptureFrame returning NULL. The strange thing was that GetLastError() returned 0, meaning that GetDC should have been successful. Anyway, I finally realized that it was silly to get the screen device context every single frame, so I moved the call into the constructor and stored the result in a member variable, which seems to have solved the problem.

    I'm not sure if either of those were known problems, or if they were even problems that anybody else was experiencing. If they were, then I'd be happy to submit the changes.

    Tim, are you still have problems running Producer? It's been some time since you've created this post, so I'm going to assume that you've fixed it by now, because I'm able to compile and run it with no problems at all.
  • Fixed another bug in 2.6. For some reason, pCompressorInfo was only getting initialized when you opened the Video Settings dialog, despite the fact that it's used in the RecordVideo method. :/
  • edited August 2010
    Nick opened for us a new discussion forum to discuss, to test, to comment and to improve Camstudio v2.6 Beta (Current revision 268)

    CamStudio 2.6 Beta Support

    Please note:
    The discussion forum is opened but we can not write any there yet.

    Janhgm

    (SOLVED ISSUE, July 2010)
  • Just decided to close this discussion.
    Recent changes might have toughed this issue as well.
    If it is also applicable for v26r273 and later just tell us again
This discussion has been closed.