Add support for screen cap in Simple Server?

Home Forums Syphon Syphon Development – Developer Add support for screen cap in Simple Server?

Tagged: 

Viewing 20 posts - 1 through 20 (of 30 total)
  • Author
    Posts
  • #5059
    Glitchard Nixon
    Participant

    I thought that a built in screen cap would be nice for the simple server app. Should be pretty easy to add on since everything is built on IOSurface. This would also be a nice alternative to running the V002 screen cap plugin in quartz to syphon to the client. I would do it myself but have too many other projects that im working on at the moment. anyone else interested?

    #5060
    vade
    Keymaster

    This is definitely something we plan to have.

    #5061
    vade
    Keymaster

    By the way, love the moniker.

    #5062
    Glitchard Nixon
    Participant

    Thanks!

    #5063
    vade
    Keymaster

    There is a Syphon Screen Capture app in SVN now.

    #5064
    sandroid
    Participant

    could you please build a application out of the source code provided in SVN? Trying to built it thru Xcode has been unsuccessful for me so far (I am quite new on going into code like this). I managed to load the source code into Xcode but I get errors and errors…

    sandroid

    #5065
    bangnoise
    Keymaster

    Hi sandroid

    The Xcode project relies on the presence of the Syphon Framework project above it. If you check out the whole project and then do an svn update it is automatically imported as an svn external. In the terminal

    svn checkout http://syphon-implementations.googlecode.com/svn/trunk/ syphon-implementations
    cd syphon-implementations
    svn update

    After that it should build fine.

    #5066
    sandroid
    Participant

    hi bangnoise,

    thanx a lot for the quick answer.
    With your tip, so far I managed to build properly. no errors.
    but… when I double click in the application in the build folder, I only have a window frame.

    correct me if I am wrong: inside Xcode, I ask for building the SyphonScreenCapture.xcodeproj, is that right?
    sorry for so dummy questions here in a developer forum. :))

    sandroid

    #5067
    vade
    Keymaster

    Look in your menu bar. Syphon Screen Capture shows a capture area, and you can select what to capture from the menu bar, or quit the app. This is so it does not take up screen real-estate while capturing, rendering the UI “in the way”.

    Again, menu bar 🙂

    #5068
    sandroid
    Participant

    thanx vade. The menu show the options. I can choose which window to “scan”.
    but…I am using a “build debug” (my release build get the following error:

    literal-pointer@__OBJC@__cls_refs@SyphonServer in SyphonScreenCaptureAppDelegate.o

    ld: symbol(s) not found

    collect2: ld returned 1 exit status

    when using the debug build, I can use the options in menu bar, but when I try to get the scan thru a syphon client (QC or Jitter) I can’t see the screen application as a server. It ought be there, or not?

    sandroid

    #5069
    sandroid
    Participant

    the error message above got trunked. here is the complete one:

    ld: warning: in /Users/sandroid/syphon-implementations/Syphon Framework/build/Release/Syphon.framework/Syphon, missing required architecture ppc in file

    “.objc_class_name_SyphonServer”, referenced from:

    literal-pointer@__OBJC@__cls_refs@SyphonServer in SyphonScreenCaptureAppDelegate.o

    ld: symbol(s) not found

    collect2: ld returned 1 exit status

    #5070
    vade
    Keymaster

    Hrm, thats odd. Are you also building the Jitter and QC Syphon implementations from the SVN? I have only tested it with the latest SVN builds, not the public beta 1 or 2 (1 will 100% not work).

    Are you also sure that Syphon.framework is properly being referenced and copied into the Screen Capture.app Content/Frameworks folder?

    Yea, SVN stuff is fun, no? We ought to polish that up and do new release soon. Hrm.

    #5071
    bangnoise
    Keymaster

    I haven’t looked but at a guess we forgot to disable ppc builds and for some reason Xcode is trying to build them. You can select the active architecture in the menu – choose x86_64.

    I’ll check and update svn in a moment.

    #5072
    bangnoise
    Keymaster

    Release builds should work now. If you run in debug mode from Xcode, what do you see in the console?

    #5073
    sandroid
    Participant

    @ Vade: SVN and Xcode are quite new stuffs for me. I have made some research in internet till I got “something” going. I never thought I would say it one day about coding, but, yes, it’s fun! :))

    @ bangnoise: I am SVNing now from code.google and will try to build it soon. I will give some feedback afterwards.

    sandroid

    #5074
    sandroid
    Participant

    ok, here is what I managed so far:

    when building and running the revision 42 (from within Xcode), I get no errors in the console, neither with the release nor with the debug build (is that proper english ? :))
    I can also choose which window to scan and the window frame is resized and fits the intended window. The preview window is also working.
    when I try to use the Jitter client, I can see the screen.app as a available server but I can’t get the scanned image to be shown in the client window.
    well, when I tried to run both release and debug builds by double clicking in the applications built in the build folder (within Syphon implementations) I can’t see all the open windows and when I try to chose the desktop the app crashes. weird, hein?

    sandroid

    #5075
    bangnoise
    Keymaster

    Can you try with the Simple Client (download)?

    See if running a build from Xcode works with that.

    If you could run a debug build and post everything that gets printed to the Xcode console, that might be helpful.

    #5076
    sandroid
    Participant

    xcode + simple client (working well- I can see the scanned image in the client window):

    2/17/11 7:41:36 AM Syphon Screen Capture[11381] SYPHON DEBUG: SyphonServerConnectionManager: Start Connection
    2/17/11 7:41:36 AM Syphon Screen Capture[11381] SYPHON DEBUG: SyphonServerConnectionManager: Created connection with UUID: info.v002.Syphon.D93FB96A-F1B9-43E7-9B66-24F430554369
    2/17/11 7:42:09 AM Syphon Screen Capture[11381] SYPHON DEBUG: SyphonServer: Got Discovery Request
    2/17/11 7:42:09 AM Syphon Screen Capture[11381] *** Assertion failure in -[NSMenuItem initWithTitle:action:keyEquivalent:], /SourceCache/AppKit/AppKit-1038.35/Menus.subproj/NSMenuItem.m:270
    2/17/11 7:42:09 AM Syphon Screen Capture[11381] Invalid parameter not satisfying: aString != nil
    2/17/11 7:42:09 AM Syphon Screen Capture[11381] *** Assertion failure in -[NSMenuItem initWithTitle:action:keyEquivalent:], /SourceCache/AppKit/AppKit-1038.35/Menus.subproj/NSMenuItem.m:270
    2/17/11 7:42:09 AM Syphon Screen Capture[11381] Invalid parameter not satisfying: aString != nil
    2/17/11 7:42:09 AM Syphon Screen Capture[11381] SYPHON DEBUG: SyphonServerConnectionManager: Add info client: info.v002.Syphon.33E82640-0D7B-4536-BA61-7F27E35D3006
    2/17/11 7:42:09 AM Syphon Screen Capture[11381] SYPHON DEBUG: SyphonServerConnectionManager: Adding frame client: info.v002.Syphon.33E82640-0D7B-4536-BA61-7F27E35D3006

    – – – — – – – – – – – – – – – – – – – – –

    after quitting the xcode, keeping the client open and starting the syphon screen capture:

    2/17/11 7:45:16 AM Syphon Screen Capture[11381] SYPHON DEBUG: SyphonServerConnectionManager: stopping
    2/17/11 7:45:16 AM Syphon Screen Capture[11381] SYPHON DEBUG: SyphonServerConnectionManager: Releasing SyphonServerConnectionManager for server “info.v002.Syphon.D93FB96A-F1B9-43E7-9B66-24F430554369”
    2/17/11 7:45:16 AM Syphon Screen Capture[11381] SYPHON DEBUG: SyphonServer: Server deallocing, name: debug1, UUID: info.v002.Syphon.D93FB96A-F1B9-43E7-9B66-24F430554369
    2/17/11 7:46:24 AM Syphon Screen Capture[11433] *** Assertion failure in -[NSMenuItem initWithTitle:action:keyEquivalent:], /SourceCache/AppKit/AppKit-1038.35/Menus.subproj/NSMenuItem.m:270
    2/17/11 7:46:24 AM Syphon Screen Capture[11433] Invalid parameter not satisfying: aString != nil
    2/17/11 7:46:41 AM com.apple.launchd.peruser.501[215] ([0x0-0xe80e8].info.v002.syphon.Syphon-Screen-Capture[11433]) Job appears to have crashed: Segmentation fault
    2/17/11 7:46:41 AM ReportCrash[11435] Saved crash report for Syphon Screen Capture[11433] version 1.0 (1) to /Users/sandroid/Library/Logs/DiagnosticReports/Syphon Screen Capture_2011-02-17-074641_sandroids-macbook-pro.crash
    – – – – – — – – – – – – – – –

    reestaring the syphonscreencapture:

    2/17/11 7:49:05 AM Syphon Screen Capture[11453] *** Assertion failure in -[NSMenuItem initWithTitle:action:keyEquivalent:], /SourceCache/AppKit/AppKit-1038.35/Menus.subproj/NSMenuItem.m:270
    2/17/11 7:49:05 AM Syphon Screen Capture[11453] Invalid parameter not satisfying: aString != nil
    2/17/11 7:49:26 AM com.apple.launchd.peruser.501[215] ([0x0-0xe90e9].info.v002.syphon.Syphon-Screen-Capture[11453]) Job appears to have crashed: Segmentation fault
    2/17/11 7:49:26 AM ReportCrash[11455] Saved crash report for Syphon Screen Capture[11453] version 1.0 (1) to /Users/sandroid/Library/Logs/DiagnosticReports/Syphon Screen Capture_2011-02-17-074926_sandroids-macbook-pro.crash

    – – – – – – – – – – – – – –

    staring the xcode-screencapture, build+run: (I can choose among all my windows). Open the simple client (everything ok so far: I can see the scanned screen). But when I try to change the window, in the screen capture menu I can only choose among “desktop window” and “finder” :

    2/17/11 7:51:45 AM Syphon Screen Capture[11534] SYPHON DEBUG: SyphonServerConnectionManager: Start Connection
    2/17/11 7:51:45 AM Syphon Screen Capture[11534] SYPHON DEBUG: SyphonServerConnectionManager: Created connection with UUID: info.v002.Syphon.1FEA9D59-C76B-4C03-B1F7-A24F27EDD935
    2/17/11 7:52:15 AM Syphon Screen Capture[11534] SYPHON DEBUG: SyphonServer: Got Discovery Request
    2/17/11 7:52:15 AM Syphon Screen Capture[11534] *** Assertion failure in -[NSMenuItem initWithTitle:action:keyEquivalent:], /SourceCache/AppKit/AppKit-1038.35/Menus.subproj/NSMenuItem.m:270
    2/17/11 7:52:15 AM Syphon Screen Capture[11534] Invalid parameter not satisfying: aString != nil
    2/17/11 7:52:15 AM Syphon Screen Capture[11534] *** Assertion failure in -[NSMenuItem initWithTitle:action:keyEquivalent:], /SourceCache/AppKit/AppKit-1038.35/Menus.subproj/NSMenuItem.m:270
    2/17/11 7:52:15 AM Syphon Screen Capture[11534] Invalid parameter not satisfying: aString != nil
    2/17/11 7:52:16 AM Syphon Screen Capture[11534] SYPHON DEBUG: SyphonServerConnectionManager: Add info client: info.v002.Syphon.B711D2B2-F853-4C39-B73E-AE9E29C3FFB2
    2/17/11 7:52:16 AM Syphon Screen Capture[11534] SYPHON DEBUG: SyphonServerConnectionManager: Adding frame client: info.v002.Syphon.B711D2B2-F853-4C39-B73E-AE9E29C3FFB2

    does it helps?

    #5077
    sandroid
    Participant

    in the Xcode, when building, I get no errors.

    #5078
    sandroid
    Participant

    the posts above I used the console utility.
    now the logs with the xcode console (worked well):

    [Session started at 2011-02-17 08:04:15 -0200.]
    GNU gdb 6.3.50-20050815 (Apple version gdb-1510) (Wed Sep 22 02:45:02 UTC 2010)
    Copyright 2004 Free Software Foundation, Inc.
    GDB is free software, covered by the GNU General Public License, and you are
    welcome to change it and/or distribute copies of it under certain conditions.
    Type “show copying” to see the conditions.
    There is absolutely no warranty for GDB. Type “show warranty” for details.
    This GDB was configured as “x86_64-apple-darwin”.tty /dev/ttys001
    Loading program into debugger