--
Brian Schlining
interesting because some colleagues are scrambling for a decks with RS-422 capability, finding them relatively expensive and hard to procure. with a firewire api could we read TC in VARS software using an inexpensive hand-held HDV camera as a tape deck?
would time code read capability be preserved taking ILink out of the HDV camera to Firewire into the CPU?
if so, this something NOAA might actually be interested in pursuing because it would reduce hardware costs.
Is VARS reading the timecode from your deck? If so, then your connection is fine; however, you have to tell your deck to allow remote connections. On your deck there should be a button or switch that says something like "remote" or "enable remote". You need to flips that remote to on. Then VARS should be able to control your deck.
If VARS is NOT reading the timecode then there is a problem with the connection. You'll need to verify that your USB-to-Serial hub is working. I often connect to a GPS or some other device to test connections. The parts to check are: Do you have the correct driver? Is the driver compiled for your platform (Mac 10.6)? Is your cable working? NOAA OCMNS had real troubles connecting to their deck; this issue was resolved when they bought a new USB-to-Serial dongle. You should contact them about which dongle they bought.
If you're certain that your serial port is correctly set up, are you using an RS422-RS232 converter? The USB dongle will be RS232, typically the VCR's are RS422. You'll need a converter to swap the pins around. (The converter runs about 15$)
Hope that helps
Cheers
--
Brian Schlining
On Friday, July 15, 2011 at 9:54 AM, thomas.p...@noaa.gov wrote:
> Hi Brian,
>
>
>
> 2011-07-15 16:51:33,080 [AnnotationQueueVCR-1310748687798] ERROR org.mbari.vcr.rs422.VCR - Failed to send a command to the VCR
> java.io.IOException: Incoming checksum is missing. cmd[] = 0000 data[] = null
> at org.mbari.vcr.rs422.VCR.readResponse(VCR.java:403)
> at org.mbari.vcr.rs422.VCR.sendCommand(VCR.java:656)
> at org.mbari.vcr.rs422.VCR.requestLTimeCode(VCR.java:476)
> at org.mbari.vcr.timer.CommandQueueVCR$10.run(CommandQueueVCR.java:278)
> at java.util.TimerThread.mainLoop(Timer.java:512)
> at java.util.TimerThread.run(Timer.java:462)
>
>
> Thanks!
>
> TJ Patterson
>
> ----- Original Message -----
> From: <thomas.p...@noaa.gov (mailto:thomas.p...@noaa.gov)>
> Date: Wednesday, July 13, 2011 11:57 am
> Subject: Re: Installing VARS at NOAA CCEHBR
> To: Brian Schlining <bschl...@gmail.com (mailto:bschl...@gmail.com)>
> Cc: Peter....@noaa.gov (mailto:Peter....@noaa.gov),mbari...@googlegroups.com (mailto:mbari...@googlegroups.com)
>
> > Hey Brian,
> >
> > I've been working on getting VARS built on the MAC OSX that Peter has
> > mentioned. I'm trying to launch the Knowledgebase and receive the
> > following error. Any help you can provide would be much appreciated!
> >
> > chbrc-w-1535730:bin nosa$ ./knowledgebase
> > 2011-07-13 15:55:41,117 [main] INFO vars.knowledgebase.ui.App - This
> > application was launched at Wed Jul 13 15:55:41 UTC 2011
> > [EL Config]: 2011-07-13 15:55:41.583--ServerSession(1651969326)--The
> > access type for the persistent class [class
> > vars.annotation.jpa.PhysicalDataImpl] is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.625--ServerSession(1651969326)--The
> > access type for the persistent class [class
> > vars.annotation.jpa.VideoArchiveImpl] is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.636--ServerSession(1651969326)--The
> > access type for the persistent class [class
> > vars.annotation.jpa.CameraDeploymentImpl] is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.637--ServerSession(1651969326)--The
> > access type for the persistent class [class
> > vars.annotation.jpa.ObservationImpl] is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.638--ServerSession(1651969326)--The
> > access type for the persistent class [class
> > vars.annotation.jpa.VideoFrameImpl] is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.64--ServerSession(1651969326)--The
> > access type for the persistent class [class
> > vars.annotation.jpa.VideoArchiveSetImpl] is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.641--ServerSession(1651969326)--The
> > access type for the persistent class [class
> > vars.annotation.jpa.AssociationImpl] is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.642--ServerSession(1651969326)--The
> > access type for the persistent class [class
> > vars.annotation.jpa.CameraDataImpl] is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.661--ServerSession(1651969326)--The
> > column name for element [field oxygen] is being defaulted to: OXYGEN.
> > [EL Config]: 2011-07-13 15:55:41.662--ServerSession(1651969326)--The
> > column name for element [field altitude] is being defaulted to: ALTITUDE.
> > [EL Config]: 2011-07-13 15:55:41.663--ServerSession(1651969326)--The
> > column name for element [field longitude] is being defaulted to: LONGITUDE.
> > [EL Config]: 2011-07-13 15:55:41.663--ServerSession(1651969326)--The
> > column name for element [field latitude] is being defaulted to: LATITUDE.
> > [EL Config]: 2011-07-13 15:55:41.663--ServerSession(1651969326)--The
> > column name for element [field salinity] is being defaulted to: SALINITY.
> > [EL Config]: 2011-07-13 15:55:41.663--ServerSession(1651969326)--The
> > column name for element [field light] is being defaulted to: LIGHT.
> > [EL Config]: 2011-07-13 15:55:41.663--ServerSession(1651969326)--The
> > column name for element [field depth] is being defaulted to: DEPTH.
> > [EL Config]: 2011-07-13 15:55:41.665--ServerSession(1651969326)--The
> > column name for element [field temperature] is being defaulted to: TEMPERATURE.
> > [EL Config]: 2011-07-13 15:55:41.668--ServerSession(1651969326)--The
> > column name for element [field y] is being defaulted to: Y.
> > [EL Config]: 2011-07-13 15:55:41.669--ServerSession(1651969326)--The
> > column name for element [field x] is being defaulted to: X.
> > [EL Config]: 2011-07-13 15:55:41.671--ServerSession(1651969326)--The
> > column name for element [field zUnits] is being defaulted to: ZUNITS.
> > [EL Config]: 2011-07-13 15:55:41.671--ServerSession(1651969326)--The
> > column name for element [field viewHeight] is being defaulted to: VIEWHEIGHT.
> > [EL Config]: 2011-07-13 15:55:41.671--ServerSession(1651969326)--The
> > column name for element [field zoom] is being defaulted to: ZOOM.
> > [EL Config]: 2011-07-13 15:55:41.672--ServerSession(1651969326)--The
> > column name for element [field xyUnits] is being defaulted to: XYUNITS.
> > [EL Config]: 2011-07-13 15:55:41.672--ServerSession(1651969326)--The
> > column name for element [field viewWidth] is being defaulted to: VIEWWIDTH.
> > [EL Config]: 2011-07-13 15:55:41.672--ServerSession(1651969326)--The
> > column name for element [field roll] is being defaulted to: ROLL.
> > [EL Config]: 2011-07-13 15:55:41.672--ServerSession(1651969326)--The
> > column name for element [field viewUnits] is being defaulted to: VIEWUNITS.
> > [EL Config]: 2011-07-13 15:55:41.672--ServerSession(1651969326)--The
> > column name for element [field iris] is being defaulted to: IRIS.
> > [EL Config]: 2011-07-13 15:55:41.673--ServerSession(1651969326)--The
> > column name for element [field focus] is being defaulted to: FOCUS.
> > [EL Config]: 2011-07-13 15:55:41.673--ServerSession(1651969326)--The
> > column name for element [field fieldWidth] is being defaulted to: FIELDWIDTH.
> > [EL Config]: 2011-07-13 15:55:41.673--ServerSession(1651969326)--The
> > column name for element [field pitch] is being defaulted to: PITCH.
> > [EL Config]: 2011-07-13 15:55:41.673--ServerSession(1651969326)--The
> > column name for element [field z] is being defaulted to: Z.
> > [EL Config]: 2011-07-13 15:55:41.673--ServerSession(1651969326)--The
> > column name for element [field heading] is being defaulted to: HEADING.
> > [EL Config]: 2011-07-13 15:55:41.673--ServerSession(1651969326)--The
> > column name for element [field y] is being defaulted to: Y.
> > [EL Config]: 2011-07-13 15:55:41.673--ServerSession(1651969326)--The
> > column name for element [field x] is being defaulted to: X.
> > [EL Config]: 2011-07-13 15:55:41.694--ServerSession(1651969326)--The
> > primary key column name for the mapping element [field
> > videoArchiveSet] is being defaulted to: id.
> > [EL Config]: 2011-07-13 15:55:41.694--ServerSession(1651969326)--The
> > primary key column name for the mapping element [field videoFrame] is
> > being defaulted to: id.
> > [EL Config]: 2011-07-13 15:55:41.694--ServerSession(1651969326)--The
> > primary key column name for the mapping element [field videoFrame] is
> > being defaulted to: id.
> > [EL Config]: 2011-07-13 15:55:41.694--ServerSession(1651969326)--The
> > primary key column name for the mapping element [field observation] is
> > being defaulted to: id.
> > [EL Config]: 2011-07-13 15:55:41.695--ServerSession(1651969326)--The
> > primary key column name for the mapping element [field videoArchive]
> > is being defaulted to: id.
> > [EL Config]: 2011-07-13 15:55:41.695--ServerSession(1651969326)--The
> > primary key column name for the mapping element [field videoFrame] is
> > being defaulted to: id.
> > [EL Config]: 2011-07-13 15:55:41.695--ServerSession(1651969326)--The
> > primary key column name for the mapping element [field
> > videoArchiveSet] is being defaulted to: id.
> > [EL Config]: 2011-07-13 15:55:41.765--ServerSession(1173925084)--The
> > access type for the persistent class [class
> > vars.knowledgebase.jpa.ConceptMetadataImpl] is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.767--ServerSession(1173925084)--The
> > access type for the persistent class [class
> > vars.knowledgebase.jpa.UsageImpl] is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.769--ServerSession(1173925084)--The
> > access type for the persistent class [class
> > vars.knowledgebase.jpa.LinkRealizationImpl] is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.769--ServerSession(1173925084)--The
> > access type for the persistent class [class
> > vars.knowledgebase.jpa.ConceptNameImpl] is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.769--ServerSession(1173925084)--The
> > access type for the persistent class [class
> > vars.knowledgebase.jpa.MediaImpl] is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.77--ServerSession(1173925084)--The
> > access type for the persistent class [class
> > vars.knowledgebase.jpa.LinkTemplateImpl] is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.771--ServerSession(1173925084)--The
> > access type for the persistent class [class
> > vars.knowledgebase.jpa.ArtifactImpl] is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.771--ServerSession(1173925084)--The
> > access type for the persistent class [class
> > vars.knowledgebase.jpa.ConceptImpl] is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.772--ServerSession(1173925084)--The
> > access type for the persistent class [class
> > vars.knowledgebase.jpa.HistoryImpl] is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.78--ServerSession(1173925084)--The
> > primary key column name for the mapping element [field
> > conceptMetadata] is being defaulted to: id.
> > [EL Config]: 2011-07-13 15:55:41.78--ServerSession(1173925084)--The
> > primary key column name for the mapping element [field
> > conceptMetadata] is being defaulted to: id.
> > [EL Config]: 2011-07-13 15:55:41.78--ServerSession(1173925084)--The
> > primary key column name for the mapping element [field concept] is
> > being defaulted to: id.
> > [EL Config]: 2011-07-13 15:55:41.78--ServerSession(1173925084)--The
> > primary key column name for the mapping element [field
> > conceptMetadata] is being defaulted to: id.
> > [EL Config]: 2011-07-13 15:55:41.781--ServerSession(1173925084)--The
> > primary key column name for the mapping element [field
> > conceptMetadata] is being defaulted to: id.
> > [EL Config]: 2011-07-13 15:55:41.781--ServerSession(1173925084)--The
> > primary key column name for the mapping element [field
> > conceptMetadata] is being defaulted to: id.
> > [EL Config]: 2011-07-13 15:55:41.781--ServerSession(1173925084)--The
> > primary key column name for the mapping element [field concept] is
> > being defaulted to: id.
> > [EL Config]: 2011-07-13 15:55:41.781--ServerSession(1173925084)--The
> > primary key column name for the mapping element [field parentConcept]
> > is being defaulted to: id.
> > [EL Config]: 2011-07-13 15:55:41.781--ServerSession(1173925084)--The
> > primary key column name for the mapping element [field
> > conceptMetadata] is being defaulted to: id.
> > [EL Config]: 2011-07-13 15:55:41.789--ServerSession(630769395)--The
> > access type for the persistent class [class vars.jpa.UserAccountImpl]
> > is set to [FIELD].
> > [EL Config]: 2011-07-13 15:55:41.79--ServerSession(630769395)--The
> > access type for the persistent class [class vars.jpa.PreferenceNode]
> > is set to [FIELD].
> > [EL Info]: 2011-07-13
> > 15:55:42.945--ServerSession(1173925084)--EclipseLink, version: Eclipse
> > Persistence Services - 2.2.0.v20110202-r8913
> > [EL Config]: 2011-07-13 15:55:43.043--ServerSession(1173925084)--Connection(802278903)--connecting(DatabaseLogin(
> > platform=>JavaDBPlatform
> > user name=> "varsuser"
> > datasource URL=> "jdbc:derby://localhost:1527/VARS;create=true"
> > ))
> > [EL Config]: 2011-07-13
> > 15:55:43.046--ServerSession(1173925084)--Connection(1999186855)--Connected:
> > jdbc:derby://localhost:1527/VARS;create=true
> > User: varsuser
> > Database: Apache Derby Version: 10.8.1.2 - (1095077)
> > Driver: Apache Derby Network Client JDBC Driver Version: 10.8.1.2 -
> > (1095077)
> > [EL Info]: 2011-07-13
> > 15:55:43.261--ServerSession(1173925084)--file:/Users/nosa/Downloads/vars-standalone-6.0.4-SNAPSHOT-scripting/lib/vars-jpa-6.0.4-SNAPSHOT.jar_vars-jpa-knowledgebase
> > login successful
> > 2011-07-13 15:55:43,336 [Foxtrot Single Worker Thread #1] WARN
> > vars.knowledgebase.jpa.ConceptDAOImpl - No root was found in the knowledgebase
> > 2011-07-13 15:55:43,342 [AWT-EventQueue-0] WARN
> > vars.knowledgebase.jpa.ConceptDAOImpl - No root was found in the knowledgebase
> > [EL Warning]: 2011-07-13
> > 15:55:46.119--UnitOfWork(409692872)--Exception [EclipseLink-4011]
> > (Eclipse Persistence Services - 2.2.0.v20110202-r8913): org.eclipse.persistence.exceptions.DatabaseException
> > Exception Description: Error preallocating sequence numbers. The
> > sequence table information is not complete.
> > 2011-07-13 15:55:46,121 [AWT-EventQueue-0] ERROR
> > vars.knowledgebase.ui.App - Failed to load the knowledgebase
> > vars.VARSPersistenceException: Failed to fully initialize knowledgebase
> > at vars.knowledgebase.ui.actions.PopulateDatabaseAction.doAction(PopulateDatabaseAction.java:62)
> > at vars.knowledgebase.ui.App.initialize(App.java:216)
> > at vars.knowledgebase.ui.App.<init>(App.java:109)
> > at vars.knowledgebase.ui.App$4.run(App.java:329)
> > at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
> > at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:677)
> > at java.awt.EventQueue.access$000(EventQueue.java:85)
> > at java.awt.EventQueue$1.run(EventQueue.java:638)
> > at java.awt.EventQueue$1.run(EventQueue.java:636)
> > at java.security.AccessController.doPrivileged(Native Method)
> > at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
> > at java.awt.EventQueue.dispatchEvent(EventQueue.java:647)
> > at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
> > at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
> > at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
> > at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
> > at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
> > at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
> > Caused by: Exception [EclipseLink-4011] (Eclipse Persistence Services
> > - 2.2.0.v20110202-r8913): org.eclipse.persistence.exceptions.DatabaseException
> > Exception Description: Error preallocating sequence numbers. The
> > sequence table information is not complete.
> > at org.eclipse.persistence.exceptions.DatabaseException.errorPreallocatingSequenceNumbers(DatabaseException.java:143)
> > at org.eclipse.persistence.sequencing.StandardSequence.getGeneratedVector(StandardSequence.java:73)
> > at org.eclipse.persistence.sequencing.Sequence.getGeneratedVector(Sequence.java:257)
> > at org.eclipse.persistence.internal.sequencing.SequencingManager$Preallocation_Transaction_NoAccessor_State.getNextValue(SequencingManager.java:538)
> > at org.eclipse.persistence.internal.sequencing.SequencingManager.getNextValue(SequencingManager.java:961)
> > at org.eclipse.persistence.internal.sequencing.ClientSessionSequencing.getNextValue(ClientSessionSequencing.java:70)
> > at org.eclipse.persistence.internal.descriptors.ObjectBuilder.assignSequenceNumber(ObjectBuilder.java:292)
> > at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.assignSequenceNumber(UnitOfWorkImpl.java:454)
> > at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.registerNotRegisteredNewObjectForPersist(UnitOfWorkImpl.java:4190)
> > at org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.registerNotRegisteredNewObjectForPersist(RepeatableWriteUnitOfWork.java:493)
> > at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.registerNewObjectForPersist(UnitOfWorkImpl.java:4135)
> > at org.eclipse.persistence.internal.jpa.EntityManagerImpl.persist(EntityManagerImpl.java:406)
> > at vars.jpa.DAO.persist(DAO.java:277)
> > at vars.knowledgebase.ui.actions.PopulateDatabaseAction.checkRootConcept(PopulateDatabaseAction.java:100)
> > at vars.knowledgebase.ui.actions.PopulateDatabaseAction.doAction(PopulateDatabaseAction.java:59)
> > ... 17 more
> > 2011-07-13 15:55:46,130 [Finalizer] WARN
> > vars.knowledgebase.jpa.ConceptDAOImpl - Disposing of DAO that
> > references an open entitymanager
> > [org.eclipse.persistence.internal.jpa.EntityManagerImpl@11e3c2c6]. Did
> > you forget to call close()?
> > 2011-07-13 15:55:46,133 [Finalizer] WARN
> > vars.knowledgebase.jpa.ConceptDAOImpl - Disposing of DAO that
> > references an open entitymanager
> > [org.eclipse.persistence.internal.jpa.EntityManagerImpl@4c18e99]. Did
> > you forget to call close()?
> >
> >
> > Thanks!
> >
> > TJ Patterson
> > > Cheers
> > > --
> > > ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
> > > Brian Schlining> bschl...@gmail.com (mailto:bschl...@gmail.com)
No worries.
p.s. I thought I'd also mention that many video capture boards have an RS422 dongle built in. Our video lab uses those to talk to the decks. So if you're buying a capture board that's something to keep in mind.
Cheers
Brian
> We have managed to get VARS up and running and today we received our Rs-232 to RS-422 adapter. With this adapter, VARS can now see, and control the JVC BR-HD50 deck. However, we cannot see any video when playback starts,
VARS doesn't display the video signal from the deck. Our video lab runs the video-signal out of the deck into a seperate monitor. They keep the monitor stationed right next to the annotation computers screen.
> nor do the annotation tools appear to be useable.
In order to annotate, you need to open a 'video-archive' (i.e. tape). See the red X on the toolbar? Click on that, fill in the fields in the dialog that pops-up, and click OK. The red X should now be a green check and all the buttons will be enabled. You should change the video-archive values each time you change tapes. (If you forget to do that, there is a way to move annotations from one video-archive to another, just in case)
> I've attached a screenshot for your reference. The video is playing when we took this shot. Any advice you can give would be greatly appreciated.
>
Glad to hear you've gotten this far! As always don't hesitate to contact me if you have more questions.
--
Brian Schlining
Note that the RS-422 is just for VCR control, it does not carry a video signal. Some video capture cards come with an RS-422 connection some don't. If you're using a usb-to-serial dongle and it's working for you, then you don't need to worry about getting a card with RS-422 support.
--
Brian Schlining
>
> We're ready to start using VARS here at CCEHBR. TJ installed and opened the software, I've had some training with OCNMS, and we now have a separate video monitor connected to the MacPro via Blackmagic card.
Great, sounds like you're all set then.
>
> Only problem now is: how to launch? I am looking for a shortcut. Can you help? TJ is swamped and can't help at the moment, but said to look in the vars-redux folder. that folder has a readme on "your first build" and a bunch of other folders each with pom.xml, src, and target folders. where do I click to start building the knowledgebase and then start annotating?
OK, that sounds like someone checked out the VARS code from the Mercurial source code repository and built VARS from source code. The built VARS applications will be found in a zip file in:
vars-redux/vars-standalone/target
Look for a file named something like vars-standalone-6.0.3-scripting.zip. Just unzip that file somewhere, it doesn't matter where. Inside it you fill see a directory named 'bin'; that directory contains the VARS launch scripts named 'annotation', 'knowledgebase', and 'query'. On a Mac you should be able to double click on one of those to launch an app. You should launch the knowledgebase one first; it will prompt you to help get your knowledgebase going. If you double click and a terminal appears a message that says 'Permission denied' you can fix that by doing the following:
1) Open a Terminal (Applications->Utilities->Terminal)
2) cd to the 'bin' directory (for example, in the terminal type: cd ~/Desktop/vars-standalone-6.0.3-scripting/bin)
3) Run the following in the terminal: chmod u+x *
Don't hesitate to contact me if you have any questions or run into any issues.
Cheers
--
Brian Schlining
Once that applications starts it should dump out an error in the Terminal window. Just copy that into an email and send it to me.
Cheers
--
Brian Schlining