video recording

Hi,

we are trying to design an experiment in which we simultaneously present a stimulus on a screen and record the reaction of the test subject in a videofile.
Initially we used PTB3 for stimulus presentation and ImageJ for videocapture, but we had concerns about the timing of the recording relative to stimulus.

We therefore would like to run both stimulus presentation and videorecording from within PTB3, benefit from the higher timing accuracy.

Stimulus presentation has not been an issue, and we also succesfully controlled the isight camera with the videorecording demo. However we have issues with opening the videofile. We tried the anec_mpeg4 and one other suggested codec, but there clearly is an issue with the correct encoding.

We attempted to open the video with quicktime and with ImageJ, at no avail.

We are trying to get this to work on an iMac 2011 using Mac OS X 10.11.6 El Capitan.

Suggestions?


Thanks,

Tudor
XX---In PSYCHTOOLBOX@yahoogroups.com, <tudorcb@...> wrote :

Hi,

we are trying to design an experiment in which we simultaneously present a stimulus on a screen and record the reaction of the test subject in a videofile.
Initially we used PTB3 for stimulus presentation and ImageJ for videocapture, but we had concerns about the timing of the recording relative to stimulus.

We therefore would like to run both stimulus presentation and videorecording from within PTB3, benefit from the higher timing accuracy.

Stimulus presentation has not been an issue, and we also succesfully controlled the isight camera with the videorecording demo. However we have issues with opening the videofile. We tried the anec_mpeg4 and one other suggested codec, but there clearly is an issue with the correct encoding.

We attempted to open the video with quicktime and with ImageJ, at no avail.

We are trying to get this to work on an iMac 2011 using Mac OS X 10.11.6 El Capitan.

Suggestions?

-> My suggestion would be to use Linux for the most reliable video capture/recording and the most accurate timestamping of recorded video if that is an issue. I wouldn't guarantee anything about timing precision on OSX. After Apple breaking video capture in multiple osx releases and me repairing it a couple of times or working around new bugs i've given up trying to make it reliable. Also the iSight is one of the least controllable cameras in terms of framerate and precision. That's unfortunately due to its firmware, so will also affect precision and control under Linux to some smaller degree if you use an iSight.

For really precise timing you'd need to use a Firewire camera or USB-3 machine vision camera and PTB's libdc1394 capture engine, e.g., as shown in VideoMultiCameraCaptureDemo.m. That allows really pro level control over imaging parameters, timing, etc. and also synchronized multi-camera capture if one needs it. Fully supported on Linux, used to work ok at least with Firewire cameras on OSX, not available on Windows.

The encoding at least of the standard h264 codec should be fine and standards compliant. You will notice that PTB itself can play the movies just fine. A up to date version of, e.g., VLC, and similar free playback software will also not have problems. It's mostly Apples primitive Quicktime player that can't play back anything but the most basic consumer level formats. Maybe ImageJ also uses Apples Quicktime framework and so suffers the same limitations?

One solution if you absolutely wanted to use Quicktime would be to transcode the videos after recording into something primitive that Quicktime can understand. E.g., use VLC for tanscoding, or use PTB's playback code to fetch frames from a movie frame by frame, then PTBs movie writing code with the setup in ImagingStereoDemo to write it out into a new movie file of more primitive format.

-mario


Thanks,

Tudor
 
Hi Mario,

To be honest I'm inches away from plunging into Linux. We are anyhow using Debian unix machines built by a postdoctoral fellow for other purposes.
What FireWire cameras would you recommend?
Thanks, 

Tudor 


Sent from my iPhone

On Aug 12, 2017, at 13:50, mario.kleiner@... [PSYCHTOOLBOX] <PSYCHTOOLBOX@yahoogroups.com> wrote:

 

XX---In PSYCHTOOLBOX@yahoogroups.com, <tudorcb@...> wrote :


Hi,

we are trying to design an experiment in which we simultaneously present a stimulus on a screen and record the reaction of the test subject in a videofile.
Initially we used PTB3 for stimulus presentation and ImageJ for videocapture, but we had concerns about the timing of the recording relative to stimulus.

We therefore would like to run both stimulus presentation and videorecording from within PTB3, benefit from the higher timing accuracy.

Stimulus presentation has not been an issue, and we also succesfully controlled the isight camera with the videorecording demo. However we have issues with opening the videofile. We tried the anec_mpeg4 and one other suggested codec, but there clearly is an issue with the correct encoding.

We attempted to open the video with quicktime and with ImageJ, at no avail.

We are trying to get this to work on an iMac 2011 using Mac OS X 10.11.6 El Capitan.

Suggestions?

-> My suggestion would be to use Linux for the most reliable video capture/recording and the most accurate timestamping of recorded video if that is an issue. I wouldn't guarantee anything about timing precision on OSX. After Apple breaking video capture in multiple osx releases and me repairing it a couple of times or working around new bugs i've given up trying to make it reliable. Also the iSight is one of the least controllable cameras in terms of framerate and precision. That's unfortunately due to its firmware, so will also affect precision and control under Linux to some smaller degree if you use an iSight.

For really precise timing you'd need to use a Firewire camera or USB-3 machine vision camera and PTB's libdc1394 capture engine, e.g., as shown in VideoMultiCameraCaptureDemo.m. That allows really pro level control over imaging parameters, timing, etc. and also synchronized multi-camera capture if one needs it. Fully supported on Linux, used to work ok at least with Firewire cameras on OSX, not available on Windows.

The encoding at least of the standard h264 codec should be fine and standards compliant. You will notice that PTB itself can play the movies just fine. A up to date version of, e.g., VLC, and similar free playback software will also not have problems. It's mostly Apples primitive Quicktime player that can't play back anything but the most basic consumer level formats. Maybe ImageJ also uses Apples Quicktime framework and so suffers the same limitations?

One solution if you absolutely wanted to use Quicktime would be to transcode the videos after recording into something primitive that Quicktime can understand. E.g., use VLC for tanscoding, or use PTB's playback code to fetch frames from a movie frame by frame, then PTBs movie writing code with the setup in ImagingStereoDemo to write it out into a new movie file of more primitive format.

-mario


Thanks,

Tudor
 

Disregard this latest question, I found the relevant documentation. More info then I'll ever need.

--------------------------------------------
On Sat, 8/12/17, tudorcb@... [PSYCHTOOLBOX] <PSYCHTOOLBOX@yahoogroups.com> wrote:

Subject: Re: [PSYCHTOOLBOX] Re: video recording
To: PSYCHTOOLBOX@yahoogroups.com
Date: Saturday, August 12, 2017, 3:23 PM












Hi Mario,
To be honest I'm
inches away from plunging into Linux. We are anyhow using
Debian unix machines built by a postdoctoral fellow for
other purposes.What FireWire cameras
would you recommend?
Thanks,
Tudor

Sent from my
iPhone
On Aug 12,
2017, at 13:50, mario.kleiner@...
[PSYCHTOOLBOX] <PSYCHTOOLBOX@yahoogroups.com>
wrote:























XX---In PSYCHTOOLBOX@yahoogroups.com,
<tudorcb@...> wrote :

Hi,

we are trying to design an
experiment in which we simultaneously present a stimulus on
a screen and record the reaction of the test subject in a
videofile.
Initially we used PTB3 for
stimulus presentation and ImageJ for videocapture, but we
had concerns about the timing of the recording relative to
stimulus.

We therefore
would like to run both stimulus presentation and
videorecording from within PTB3, benefit from the higher
timing accuracy.

Stimulus
presentation has not been an issue, and we also succesfully
controlled the isight camera with the videorecording demo.
However we have issues with opening the videofile. We tried
the anec_mpeg4 and one other suggested codec, but there
clearly is an issue with the correct encoding.

We attempted to open the video
with quicktime and with ImageJ, at no avail.

We are trying to get this to
work on an iMac 2011 using Mac OS X 10.11.6 El Capitan.

Suggestions?

-> My suggestion would be
to use Linux for the most reliable video capture/recording
and the most accurate timestamping of recorded video if that
is an issue. I wouldn't guarantee anything about timing
precision on OSX. After Apple breaking video capture in
multiple osx releases and me repairing it a couple of times
or working around new bugs i've given up trying to make
it reliable. Also the iSight is one of the least
controllable cameras in terms of framerate and precision.
That's unfortunately due to its firmware, so will also
affect precision and control under Linux to some smaller
degree if you use an iSight.

For really precise timing you'd need to use
a Firewire camera or USB-3 machine vision camera and
PTB's libdc1394 capture engine, e.g., as shown in
VideoMultiCameraCaptureDemo.m. That allows really pro level
control over imaging parameters, timing, etc. and also
synchronized multi-camera capture if one needs it. Fully
supported on Linux, used to work ok at least with Firewire
cameras on OSX, not available on Windows.

The encoding at least of the
standard h264 codec should be fine and standards compliant.
You will notice that PTB itself can play the movies just
fine. A up to date version of, e.g., VLC, and similar free
playback software will also not have problems. It's
mostly Apples primitive Quicktime player that can't play
back anything but the most basic consumer level formats.
Maybe ImageJ also uses Apples Quicktime framework and so
suffers the same limitations?

One solution if you absolutely wanted to use
Quicktime would be to transcode the videos after recording
into something primitive that Quicktime can understand.
E.g., use VLC for tanscoding, or use PTB's playback code
to fetch frames from a movie frame by frame, then PTBs movie
writing code with the setup in ImagingStereoDemo to write it
out into a new movie file of more primitive format.

-mario


Thanks,

Tudor






















#yiv8225063189 #yiv8225063189 --
#yiv8225063189ygrp-mkp {
border:1px solid #d8d8d8;font-family:Arial;margin:10px
0;padding:0 10px;}

#yiv8225063189 #yiv8225063189ygrp-mkp hr {
border:1px solid #d8d8d8;}

#yiv8225063189 #yiv8225063189ygrp-mkp #yiv8225063189hd {
color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px
0;}

#yiv8225063189 #yiv8225063189ygrp-mkp #yiv8225063189ads {
margin-bottom:10px;}

#yiv8225063189 #yiv8225063189ygrp-mkp .yiv8225063189ad {
padding:0 0;}

#yiv8225063189 #yiv8225063189ygrp-mkp .yiv8225063189ad p {
margin:0;}

#yiv8225063189 #yiv8225063189ygrp-mkp .yiv8225063189ad a {
color:#0000ff;text-decoration:none;}
#yiv8225063189 #yiv8225063189ygrp-sponsor
#yiv8225063189ygrp-lc {
font-family:Arial;}

#yiv8225063189 #yiv8225063189ygrp-sponsor
#yiv8225063189ygrp-lc #yiv8225063189hd {
margin:10px
0px;font-weight:700;font-size:78%;line-height:122%;}

#yiv8225063189 #yiv8225063189ygrp-sponsor
#yiv8225063189ygrp-lc .yiv8225063189ad {
margin-bottom:10px;padding:0 0;}

#yiv8225063189 #yiv8225063189actions {
font-family:Verdana;font-size:11px;padding:10px 0;}

#yiv8225063189 #yiv8225063189activity {
background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}

#yiv8225063189 #yiv8225063189activity span {
font-weight:700;}

#yiv8225063189 #yiv8225063189activity span:first-child {
text-transform:uppercase;}

#yiv8225063189 #yiv8225063189activity span a {
color:#5085b6;text-decoration:none;}

#yiv8225063189 #yiv8225063189activity span span {
color:#ff7900;}

#yiv8225063189 #yiv8225063189activity span
.yiv8225063189underline {
text-decoration:underline;}

#yiv8225063189 .yiv8225063189attach {
clear:both;display:table;font-family:Arial;font-size:12px;padding:10px
0;width:400px;}

#yiv8225063189 .yiv8225063189attach div a {
text-decoration:none;}

#yiv8225063189 .yiv8225063189attach img {
border:none;padding-right:5px;}

#yiv8225063189 .yiv8225063189attach label {
display:block;margin-bottom:5px;}

#yiv8225063189 .yiv8225063189attach label a {
text-decoration:none;}

#yiv8225063189 blockquote {
margin:0 0 0 4px;}

#yiv8225063189 .yiv8225063189bold {
font-family:Arial;font-size:13px;font-weight:700;}

#yiv8225063189 .yiv8225063189bold a {
text-decoration:none;}

#yiv8225063189 dd.yiv8225063189last p a {
font-family:Verdana;font-weight:700;}

#yiv8225063189 dd.yiv8225063189last p span {
margin-right:10px;font-family:Verdana;font-weight:700;}

#yiv8225063189 dd.yiv8225063189last p
span.yiv8225063189yshortcuts {
margin-right:0;}

#yiv8225063189 div.yiv8225063189attach-table div div a {
text-decoration:none;}

#yiv8225063189 div.yiv8225063189attach-table {
width:400px;}

#yiv8225063189 div.yiv8225063189file-title a, #yiv8225063189
div.yiv8225063189file-title a:active, #yiv8225063189
div.yiv8225063189file-title a:hover, #yiv8225063189
div.yiv8225063189file-title a:visited {
text-decoration:none;}

#yiv8225063189 div.yiv8225063189photo-title a,
#yiv8225063189 div.yiv8225063189photo-title a:active,
#yiv8225063189 div.yiv8225063189photo-title a:hover,
#yiv8225063189 div.yiv8225063189photo-title a:visited {
text-decoration:none;}

#yiv8225063189 div#yiv8225063189ygrp-mlmsg
#yiv8225063189ygrp-msg p a span.yiv8225063189yshortcuts {
font-family:Verdana;font-size:10px;font-weight:normal;}

#yiv8225063189 .yiv8225063189green {
color:#628c2a;}

#yiv8225063189 .yiv8225063189MsoNormal {
margin:0 0 0 0;}

#yiv8225063189 o {
font-size:0;}

#yiv8225063189 #yiv8225063189photos div {
float:left;width:72px;}

#yiv8225063189 #yiv8225063189photos div div {
border:1px solid
#666666;min-height:62px;overflow:hidden;width:62px;}

#yiv8225063189 #yiv8225063189photos div label {
color:#666666;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}

#yiv8225063189 #yiv8225063189reco-category {
font-size:77%;}

#yiv8225063189 #yiv8225063189reco-desc {
font-size:77%;}

#yiv8225063189 .yiv8225063189replbq {
margin:4px;}

#yiv8225063189 #yiv8225063189ygrp-actbar div a:first-child {
margin-right:2px;padding-right:5px;}

#yiv8225063189 #yiv8225063189ygrp-mlmsg {
font-size:13px;font-family:Arial, helvetica, clean,
sans-serif;}

#yiv8225063189 #yiv8225063189ygrp-mlmsg table {
font-size:inherit;font:100%;}

#yiv8225063189 #yiv8225063189ygrp-mlmsg select,
#yiv8225063189 input, #yiv8225063189 textarea {
font:99% Arial, Helvetica, clean, sans-serif;}

#yiv8225063189 #yiv8225063189ygrp-mlmsg pre, #yiv8225063189
code {
font:115% monospace;}

#yiv8225063189 #yiv8225063189ygrp-mlmsg * {
line-height:1.22em;}

#yiv8225063189 #yiv8225063189ygrp-mlmsg #yiv8225063189logo {
padding-bottom:10px;}


#yiv8225063189 #yiv8225063189ygrp-msg p a {
font-family:Verdana;}

#yiv8225063189 #yiv8225063189ygrp-msg
p#yiv8225063189attach-count span {
color:#1E66AE;font-weight:700;}

#yiv8225063189 #yiv8225063189ygrp-reco
#yiv8225063189reco-head {
color:#ff7900;font-weight:700;}

#yiv8225063189 #yiv8225063189ygrp-reco {
margin-bottom:20px;padding:0px;}

#yiv8225063189 #yiv8225063189ygrp-sponsor #yiv8225063189ov
li a {
font-size:130%;text-decoration:none;}

#yiv8225063189 #yiv8225063189ygrp-sponsor #yiv8225063189ov
li {
font-size:77%;list-style-type:square;padding:6px 0;}

#yiv8225063189 #yiv8225063189ygrp-sponsor #yiv8225063189ov
ul {
margin:0;padding:0 0 0 8px;}

#yiv8225063189 #yiv8225063189ygrp-text {
font-family:Georgia;}

#yiv8225063189 #yiv8225063189ygrp-text p {
margin:0 0 1em 0;}

#yiv8225063189 #yiv8225063189ygrp-text tt {
font-size:120%;}

#yiv8225063189 #yiv8225063189ygrp-vital ul li:last-child {
border-right:none !important;
}
#yiv8225063189
XXX-In PSYCHTOOLBOX@yahoogroups.com, <tudorcb@...> wrote :

Hi Mario,

so here's the low tech solution. We just dropped a mirror into the arena, reflecting the screen into the camera, unbeknownst to our rodent subject.
Hence we are simultaneously recording the stimulus and the animal response. (Done with a Webcam plugin of imageJ controlling a Logitech Webcam pro 920). Synchronization was "masterfully" approximated by having the PTBv3 stimulus program listening to the keypresses that start and stop the ImageJ recording. The framerate, retrocalculated from the number of frames and elapsed time is a glorious 12 fps, but even so, the stimulus does start and stops on the recording at the predicted frames.

-> Cool, i love low tech solutions. Straight physics, easy to understand and fix, no horror induced by software upgrades :)

Will have to do until we get a firewire camera ( no, I do not have an external isight). Will have to read into

-> Ok, but you were talking about an iSight before?

infrared capability, focal distance and depth and angle of view before shelling out the 1000 US$ or so they appear to cost, and transforming a laptop into a Unix machine. You guys like Neurodebian, is that right ?

-> Neurodebian is the most simple way to get things set up for typical use. 1. Install Matlab if you think you really need it, instead of Octave. 2. Install PTB from NeuroDebian. 3. One run of PsychLinuxConfiguration after that, a reboot, and you are set.

-> Here's a list of all cameras known to work with libdc1394 and therefore PTB's dc1394 capture engine, including some useful tips on camera selection:


You would want a camera that is 1394A or 1394B capable (aka Firewire), and IIDC standard compliant. While at least the Linux engine also supports some USB-3 cameras with USBVision standard, that support was less precise (in timing) and more fragile/troublesome/unreliable to get working, needing for quite a bit of tweaking, at least with the one model i tested a few years ago. Things may have changed since then, my memory about details is dim.

Are you any happier with Mac OS X 10.12?

-> I'm equally unhappy with any existing OSX version and don't give any guarantees wrt. anything if you use OSX. In general it has become worse with any new osx version. But if you use a AMD graphics card and the Psychtoolboxkerneldriver and PTB doesn't complain about anything, then visual stimulation might be ok. And if not, and your needs for visual stimulus timing precision and integrity are low enough, maybe you are fine, i don't know your specific needs. Wrt. to the firewire capture just try it and see if it works for your purpose or doesn't. It's easy enough to test.

-mario


Tudor


---In PSYCHTOOLBOX@yahoogroups.com,
<tudorcb@...> wrote :

Hi
Mario,



yes we are talking about recording a real live mouse that
runs around in an arena and reacts to Psychtoolbox presented
visual stimuli.

We tried to record him with ImageJ, and that gave about 16 -
20 fps, but more importantly, we did not have a way to
precisely ascertain when the stimulus was presented relative
to the recording (mouse has to be recorded continuously
before, during and after the stimulus presentation).

My thought was that I can design a PTB experiment that will
manage the stimulus as well as the recording and thus
synchronize the animal reaction to the stimulation.

Do you think it can be done with one machine running both
the stimulus presentation on a secondary screen and the
video recording on the main screen? From within the same m
file or separately? I already

-> Yes, one machine will be enough. You
don't need to display the video feed, just to record it,
but if you want to, you can. With a firewire camera (again,
do you already have a firewire based external iSight to test
this out?) you can follow the approach of
VideoMultiCameraCaptureDemo, although that does way more
than what you'd need for recording from only one camera,
and will need removal of lots of code and probably a bit
customization. However the demo is quite close to what
you'd need. E.g, the 'pts' timestamps would
represent capture time quite close to reality (minus a
camera model specific offset between the recorded pts of a
frame and the start of exposure), and the returned
'GetFetchedFramecount' would correspond to the
framecount in the recoded movie file. Iow. you can compare
pts to the presentation timestamp of Screen('Flip')
or log it together with the framecount to find out which
movie frame corresponds to which event in your trial.

E.g., if you edit line 83 to
this
codec = ':CodecType=DEFAULTencoder
UseVFR Videoquality=0.5 Profile=2';
then
it would record video in a format that even Apples toy movie
player can handle. The DC1394 engine can do that, whereas
the standard GStreamer engine currently can't.

know you think I should do it
under Unix but would you gve Mac OS x 10.11.6 or 10.12 a
chance?


In theory the firewire capture engine also
works on OSX, in practice i haven't tried it in years,
so ymmv on current osx versions, depending on if and how
much Apple screwed up their trainwreck in that area.



With regard to the firewire cameras, these are recording an
animal, maybe under infrared, wide angle and reasonable
focal distance so they can capture the entire arena.


-> The engine was tested with a few
models of Basler cameras, one PointGrey FireFly, and a cheap
but charming UniBrain Fire-i. Firewire cameras are at least
in my experience very plug & play, one of the few things
that actuallly worked as advertised by their vendors.

-mario


Thanks,



Tudor







Previous convo:



We played around a little bit with the various

videorecording demos and are indeed able to translate the

saved files encoded with the anec_mpeg4 codec using VLC.

However, it looked like grabbing the isight camera has
some

sort of delay, which was about 5 seconds on a Mac pro and
2

seconds on an iMac. When you run the VideorecordingDemo,

the time elapsed and timestamp differential is indicated
in

the active window. However, if you recover time elapsed
and

various t = Getsec timestamps, the elapsed time is

consistently shorter.



When you open the video in VLC, the initial 5 seconds are

unavailable (you simply cannot move the cursor over to

them).



The maximum frame rate we achieved was about 30 fps, as

expected, but this initial "glitch" is

troublesome.



Tried to record the movie without showing it on screen.

Again, when one analyses the converted movie, the extra
five

seconds are there.







Again Mac OS X 10.11.6 "El Capitan".







Considering getting one of the firewire cameras. Would be

nice to hear what people have used succesfully. This
woudl

be for tracking a (really fast) mouse around an arena, so

forgiving focal depth and wide angle are necessary.





-> Ok, but then you are not talking

about the cheap USB based iSight found in typical Apple

toys, as i assumed, or how would you use that for tracking
a

mouse -- an actual living mouse as your subject, not a

computer mouse? If you talk about one of those old
classic

external iSight's, afaik those are firewire cameras,
no?

So you could give that iSight a try, but with the DC1394

high perf capture and recording engine. Setup
instructions

in "help VideoCaptureDC1394". Use of the DC1394

engine would probably even make it possible to solve the

video transcoding problem in a more elegant way, but
first

things first.



-mario









Thanks,







Tudor























--------------------------------------------



On Sat, 8/12/17, tudor badea tudorcb@...

[PSYCHTOOLBOX] <PSYCHTOOLBOX@yahoogroups.com>

wrote:







Subject: Re: [PSYCHTOOLBOX] Re: video recording



To: PSYCHTOOLBOX@yahoogroups.com



Date: Saturday, August 12, 2017, 9:10 PM











 







































Hi Mario,















My ultimate goal is to pass these videos on to a toolbox

for



image analysis, and that one also doesn't see PTB3



encoded movies.















What do you think of the following solution:







I see there is a script recording the video to a matlab



"image" data structure.



"MyVideoCaptureToMatlabDemo"







I presume that is something I can easily pass on to the



videowriter from matlab.







The movies will typically be less than 4 minutes, i.e.
240

x



30 (fps) with my target logitech cam over GStreamer.















Can I "store" the movie in the grabber object,

run



my stimulus and "dazzle the subject", and then

at



the end save the stimulus timing properties,







and separately the video documenting the reaction? I

would



probably use the skeleton of the Video Offline capture



procedure.















thanks,















Tudor















--------------------------------------------







On Sat, 8/12/17, mario.kleiner@...



[PSYCHTOOLBOX] <PSYCHTOOLBOX@yahoogroups.com>



wrote:















Subject: [PSYCHTOOLBOX] Re: video recording







To: PSYCHTOOLBOX@yahoogroups.com







Date: Saturday, August 12, 2017, 1:50 PM























XX---In PSYCHTOOLBOX@yahoogroups.com,







<tudorcb@...> wrote :















Hi,















we are trying to design an







experiment in which we simultaneously present a stimulus



on







a screen and record the reaction of the test subject in



a







videofile.







Initially we used PTB3 for







stimulus presentation and ImageJ for videocapture, but



we







had concerns about the timing of the recording relative



to







stimulus.















We therefore







would like to run both stimulus presentation and







videorecording from within PTB3, benefit from the higher







timing accuracy.















Stimulus







presentation has not been an issue, and we also



succesfully







controlled the isight camera with the videorecording



demo.







However we have issues with opening the videofile. We



tried







the anec_mpeg4 and one other suggested codec, but there







clearly is an issue with the correct encoding.















We attempted to open the video







with quicktime and with ImageJ, at no avail.















We are trying to get this to







work on an iMac 2011 using Mac OS X 10.11.6 El Capitan.















Suggestions?















-> My suggestion would be







to use Linux for the most reliable video



capture/recording







and the most accurate timestamping of recorded video if



that







is an issue. I wouldn't guarantee anything about



timing







precision on OSX. After Apple breaking video capture in







multiple osx releases and me repairing it a couple of



times







or working around new bugs i've given up trying to



make







it reliable. Also the iSight is one of the least







controllable cameras in terms of framerate and



precision.







That's unfortunately due to its firmware, so will



also







affect precision and control under Linux to some smaller







degree if you use an iSight.















For really precise timing you'd need to use







a Firewire camera or USB-3 machine vision camera and







PTB's libdc1394 capture engine, e.g., as shown in







VideoMultiCameraCaptureDemo.m. That allows really pro



level







control over imaging parameters, timing, etc. and also







synchronized multi-camera capture if one needs it. Fully







supported on Linux, used to work ok at least with



Firewire







cameras on OSX, not available on Windows.















The encoding at least of the







standard h264 codec should be fine and standards



compliant.







You will notice that PTB itself can play the movies just







fine. A up to date version of, e.g., VLC, and similar



free







playback software will also not have problems. It's







mostly Apples primitive Quicktime player that can't



play







back anything but the most basic consumer level formats.







Maybe ImageJ also uses Apples Quicktime framework and so







suffers the same limitations?















One solution if you absolutely wanted to use







Quicktime would be to transcode the videos after



recording







into something primitive that Quicktime can understand.







E.g., use VLC for tanscoding, or use PTB's playback



code







to fetch frames from a movie frame by frame, then PTBs



movie







writing code with the setup in ImagingStereoDemo to write



it







out into a new movie file of more primitive format.















-mario























Thanks,















Tudor 















































































#yiv9468519939 #yiv9468519939 --







#yiv9468519939ygrp-mkp {







border:1px solid #d8d8d8;font-family:Arial;margin:10px







0;padding:0 10px;}















#yiv9468519939 #yiv9468519939ygrp-mkp hr {







border:1px solid #d8d8d8;}















#yiv9468519939 #yiv9468519939ygrp-mkp #yiv9468519939hd {







color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px







0;}















#yiv9468519939 #yiv9468519939ygrp-mkp #yiv9468519939ads



{







margin-bottom:10px;}















#yiv9468519939 #yiv9468519939ygrp-mkp .yiv9468519939ad {







padding:0 0;}















#yiv9468519939 #yiv9468519939ygrp-mkp .yiv9468519939ad p



{







margin:0;}















#yiv9468519939 #yiv9468519939ygrp-mkp .yiv9468519939ad a



{







color:#0000ff;text-decoration:none;}







#yiv9468519939 #yiv9468519939ygrp-sponsor







#yiv9468519939ygrp-lc {







font-family:Arial;}















#yiv9468519939 #yiv9468519939ygrp-sponsor







#yiv9468519939ygrp-lc #yiv9468519939hd {







margin:10px







0px;font-weight:700;font-size:78%;line-height:122%;}















#yiv9468519939 #yiv9468519939ygrp-sponsor







#yiv9468519939ygrp-lc .yiv9468519939ad {







margin-bottom:10px;padding:0 0;}















#yiv9468519939 #yiv9468519939actions {







font-family:Verdana;font-size:11px;padding:10px 0;}















#yiv9468519939 #yiv9468519939activity {







background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}















#yiv9468519939 #yiv9468519939activity span {







font-weight:700;}















#yiv9468519939 #yiv9468519939activity span:first-child {







text-transform:uppercase;}















#yiv9468519939 #yiv9468519939activity span a {







color:#5085b6;text-decoration:none;}















#yiv9468519939 #yiv9468519939activity span span {







color:#ff7900;}















#yiv9468519939 #yiv9468519939activity span







.yiv9468519939underline {







text-decoration:underline;}















#yiv9468519939 .yiv9468519939attach {







clear:both;display:table;font-family:Arial;font-size:12px;padding:10px







0;width:400px;}















#yiv9468519939 .yiv9468519939attach div a {







text-decoration:none;}















#yiv9468519939 .yiv9468519939attach img {







border:none;padding-right:5px;}















#yiv9468519939 .yiv9468519939attach label {







display:block;margin-bottom:5px;}















#yiv9468519939 .yiv9468519939attach label a {







text-decoration:none;}















#yiv9468519939 blockquote {







margin:0 0 0 4px;}















#yiv9468519939 .yiv9468519939bold {







font-family:Arial;font-size:13px;font-weight:700;}















#yiv9468519939 .yiv9468519939bold a {







text-decoration:none;}















#yiv9468519939 dd.yiv9468519939last p a {







font-family:Verdana;font-weight:700;}















#yiv9468519939 dd.yiv9468519939last p span {







margin-right:10px;font-family:Verdana;font-weight:700;}















#yiv9468519939 dd.yiv9468519939last p







span.yiv9468519939yshortcuts {







margin-right:0;}















#yiv9468519939 div.yiv9468519939attach-table div div a {







text-decoration:none;}















#yiv9468519939 div.yiv9468519939attach-table {







width:400px;}















#yiv9468519939 div.yiv9468519939file-title a,



#yiv9468519939







div.yiv9468519939file-title a:active, #yiv9468519939







div.yiv9468519939file-title a:hover, #yiv9468519939







div.yiv9468519939file-title a:visited {







text-decoration:none;}















#yiv9468519939 div.yiv9468519939photo-title a,







#yiv9468519939 div.yiv9468519939photo-title a:active,







#yiv9468519939 div.yiv9468519939photo-title a:hover,







#yiv9468519939 div.yiv9468519939photo-title a:visited {







text-decoration:none;}















#yiv9468519939 div#yiv9468519939ygrp-mlmsg







#yiv9468519939ygrp-msg p a span.yiv9468519939yshortcuts



{







font-family:Verdana;font-size:10px;font-weight:normal;}















#yiv9468519939 .yiv9468519939green {







color:#628c2a;}















#yiv9468519939 .yiv9468519939MsoNormal {







margin:0 0 0 0;}















#yiv9468519939 o {







font-size:0;}















#yiv9468519939 #yiv9468519939photos div {







float:left;width:72px;}















#yiv9468519939 #yiv9468519939photos div div {







border:1px solid







#666666;min-height:62px;overflow:hidden;width:62px;}















#yiv9468519939 #yiv9468519939photos div label {







color:#666666;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}















#yiv9468519939 #yiv9468519939reco-category {







font-size:77%;}















#yiv9468519939 #yiv9468519939reco-desc {







font-size:77%;}















#yiv9468519939 .yiv9468519939replbq {







margin:4px;}















#yiv9468519939 #yiv9468519939ygrp-actbar div

a:first-child



{







margin-right:2px;padding-right:5px;}















#yiv9468519939 #yiv9468519939ygrp-mlmsg {







font-size:13px;font-family:Arial, helvetica, clean,







sans-serif;}















#yiv9468519939 #yiv9468519939ygrp-mlmsg table {







font-size:inherit;font:100%;}















#yiv9468519939 #yiv9468519939ygrp-mlmsg select,







#yiv9468519939 input, #yiv9468519939 textarea {







font:99% Arial, Helvetica, clean, sans-serif;}















#yiv9468519939 #yiv9468519939ygrp-mlmsg pre,



#yiv9468519939







code {







font:115% monospace;}















#yiv9468519939 #yiv9468519939ygrp-mlmsg * {







line-height:1.22em;}















#yiv9468519939 #yiv9468519939ygrp-mlmsg

#yiv9468519939logo



{







padding-bottom:10px;}























#yiv9468519939 #yiv9468519939ygrp-msg p a {







font-family:Verdana;}















#yiv9468519939 #yiv9468519939ygrp-msg







p#yiv9468519939attach-count span {







color:#1E66AE;font-weight:700;}















#yiv9468519939 #yiv9468519939ygrp-reco







#yiv9468519939reco-head {







color:#ff7900;font-weight:700;}















#yiv9468519939 #yiv9468519939ygrp-reco {







margin-bottom:20px;padding:0px;}















#yiv9468519939 #yiv9468519939ygrp-sponsor



#yiv9468519939ov







li a {







font-size:130%;text-decoration:none;}















#yiv9468519939 #yiv9468519939ygrp-sponsor



#yiv9468519939ov







li {







font-size:77%;list-style-type:square;padding:6px 0;}















#yiv9468519939 #yiv9468519939ygrp-sponsor



#yiv9468519939ov







ul {







margin:0;padding:0 0 0 8px;}















#yiv9468519939 #yiv9468519939ygrp-text {







font-family:Georgia;}















#yiv9468519939 #yiv9468519939ygrp-text p {







margin:0 0 1em 0;}















#yiv9468519939 #yiv9468519939ygrp-text tt {







font-size:120%;}















#yiv9468519939 #yiv9468519939ygrp-vital ul li:last-child



{







border-right:none !important;







}







#yiv9468519939























































#yiv2597684411 #yiv2597684411 --



#yiv2597684411ygrp-mkp {



border:1px solid #d8d8d8;font-family:Arial;margin:10px



0;padding:0 10px;}







#yiv2597684411 #yiv2597684411ygrp-mkp hr {



border:1px solid #d8d8d8;}







#yiv2597684411 #yiv2597684411ygrp-mkp #yiv2597684411hd {



color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px



0;}







#yiv2597684411 #yiv2597684411ygrp-mkp #yiv2597684411ads {



margin-bottom:10px;}







#yiv2597684411 #yiv2597684411ygrp-mkp .yiv2597684411ad {



padding:0 0;}







#yiv2597684411 #yiv2597684411ygrp-mkp .yiv2597684411ad p

{



margin:0;}







#yiv2597684411 #yiv2597684411ygrp-mkp .yiv2597684411ad a

{



color:#0000ff;text-decoration:none;}



#yiv2597684411 #yiv2597684411ygrp-sponsor



#yiv2597684411ygrp-lc {



font-family:Arial;}







#yiv2597684411 #yiv2597684411ygrp-sponsor



#yiv2597684411ygrp-lc #yiv2597684411hd {



margin:10px



0px;font-weight:700;font-size:78%;line-height:122%;}







#yiv2597684411 #yiv2597684411ygrp-sponsor



#yiv2597684411ygrp-lc .yiv2597684411ad {



margin-bottom:10px;padding:0 0;}







#yiv2597684411 #yiv2597684411actions {



font-family:Verdana;font-size:11px;padding:10px 0;}







#yiv2597684411 #yiv2597684411activity {



background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}







#yiv2597684411 #yiv2597684411activity span {



font-weight:700;}







#yiv2597684411 #yiv2597684411activity span:first-child {



text-transform:uppercase;}







#yiv2597684411 #yiv2597684411activity span a {



color:#5085b6;text-decoration:none;}







#yiv2597684411 #yiv2597684411activity span span {



color:#ff7900;}







#yiv2597684411 #yiv2597684411activity span



.yiv2597684411underline {



text-decoration:underline;}







#yiv2597684411 .yiv2597684411attach {



clear:both;display:table;font-family:Arial;font-size:12px;padding:10px



0;width:400px;}







#yiv2597684411 .yiv2597684411attach div a {



text-decoration:none;}







#yiv2597684411 .yiv2597684411attach img {



border:none;padding-right:5px;}







#yiv2597684411 .yiv2597684411attach label {



display:block;margin-bottom:5px;}







#yiv2597684411 .yiv2597684411attach label a {



text-decoration:none;}







#yiv2597684411 blockquote {



margin:0 0 0 4px;}







#yiv2597684411 .yiv2597684411bold {



font-family:Arial;font-size:13px;font-weight:700;}







#yiv2597684411 .yiv2597684411bold a {



text-decoration:none;}







#yiv2597684411 dd.yiv2597684411last p a {



font-family:Verdana;font-weight:700;}







#yiv2597684411 dd.yiv2597684411last p span {



margin-right:10px;font-family:Verdana;font-weight:700;}







#yiv2597684411 dd.yiv2597684411last p



span.yiv2597684411yshortcuts {



margin-right:0;}







#yiv2597684411 div.yiv2597684411attach-table div div a {



text-decoration:none;}







#yiv2597684411 div.yiv2597684411attach-table {



width:400px;}







#yiv2597684411 div.yiv2597684411file-title a,

#yiv2597684411



div.yiv2597684411file-title a:active, #yiv2597684411



div.yiv2597684411file-title a:hover, #yiv2597684411



div.yiv2597684411file-title a:visited {



text-decoration:none;}







#yiv2597684411 div.yiv2597684411photo-title a,



#yiv2597684411 div.yiv2597684411photo-title a:active,



#yiv2597684411 div.yiv2597684411photo-title a:hover,



#yiv2597684411 div.yiv2597684411photo-title a:visited {



text-decoration:none;}







#yiv2597684411 div#yiv2597684411ygrp-mlmsg



#yiv2597684411ygrp-msg p a span.yiv2597684411yshortcuts {



font-family:Verdana;font-size:10px;font-weight:normal;}







#yiv2597684411 .yiv2597684411green {



color:#628c2a;}







#yiv2597684411 .yiv2597684411MsoNormal {



margin:0 0 0 0;}







#yiv2597684411 o {



font-size:0;}







#yiv2597684411 #yiv2597684411photos div {



float:left;width:72px;}







#yiv2597684411 #yiv2597684411photos div div {



border:1px solid



#666666;min-height:62px;overflow:hidden;width:62px;}







#yiv2597684411 #yiv2597684411photos div label {



color:#666666;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}







#yiv2597684411 #yiv2597684411reco-category {



font-size:77%;}







#yiv2597684411 #yiv2597684411reco-desc {



font-size:77%;}







#yiv2597684411 .yiv2597684411replbq {



margin:4px;}







#yiv2597684411 #yiv2597684411ygrp-actbar div
a:first-child

{



margin-right:2px;padding-right:5px;}







#yiv2597684411 #yiv2597684411ygrp-mlmsg {



font-size:13px;font-family:Arial, helvetica, clean,



sans-serif;}







#yiv2597684411 #yiv2597684411ygrp-mlmsg table {



font-size:inherit;font:100%;}







#yiv2597684411 #yiv2597684411ygrp-mlmsg select,



#yiv2597684411 input, #yiv2597684411 textarea {



font:99% Arial, Helvetica, clean, sans-serif;}







#yiv2597684411 #yiv2597684411ygrp-mlmsg pre,

#yiv2597684411



code {



font:115% monospace;}







#yiv2597684411 #yiv2597684411ygrp-mlmsg * {



line-height:1.22em;}







#yiv2597684411 #yiv2597684411ygrp-mlmsg
#yiv2597684411logo

{



padding-bottom:10px;}











#yiv2597684411 #yiv2597684411ygrp-msg p a {



font-family:Verdana;}







#yiv2597684411 #yiv2597684411ygrp-msg



p#yiv2597684411attach-count span {



color:#1E66AE;font-weight:700;}







#yiv2597684411 #yiv2597684411ygrp-reco



#yiv2597684411reco-head {



color:#ff7900;font-weight:700;}







#yiv2597684411 #yiv2597684411ygrp-reco {



margin-bottom:20px;padding:0px;}







#yiv2597684411 #yiv2597684411ygrp-sponsor

#yiv2597684411ov



li a {



font-size:130%;text-decoration:none;}







#yiv2597684411 #yiv2597684411ygrp-sponsor

#yiv2597684411ov



li {



font-size:77%;list-style-type:square;padding:6px 0;}







#yiv2597684411 #yiv2597684411ygrp-sponsor

#yiv2597684411ov



ul {



margin:0;padding:0 0 0 8px;}







#yiv2597684411 #yiv2597684411ygrp-text {



font-family:Georgia;}







#yiv2597684411 #yiv2597684411ygrp-text p {



margin:0 0 1em 0;}







#yiv2597684411 #yiv2597684411ygrp-text tt {



font-size:120%;}







#yiv2597684411 #yiv2597684411ygrp-vital ul li:last-child

{



border-right:none !important;



}



#yiv2597684411  



















#yiv2244303111 #yiv2244303111 --

#yiv2244303111ygrp-mkp {

border:1px solid #d8d8d8;font-family:Arial;margin:10px

0;padding:0 10px;}



#yiv2244303111 #yiv2244303111ygrp-mkp hr {

border:1px solid #d8d8d8;}



#yiv2244303111 #yiv2244303111ygrp-mkp #yiv2244303111hd {

color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px

0;}



#yiv2244303111 #yiv2244303111ygrp-mkp #yiv2244303111ads {

margin-bottom:10px;}



#yiv2244303111 #yiv2244303111ygrp-mkp .yiv2244303111ad {

padding:0 0;}



#yiv2244303111 #yiv2244303111ygrp-mkp .yiv2244303111ad p
{

margin:0;}



#yiv2244303111 #yiv2244303111ygrp-mkp .yiv2244303111ad a
{

color:#0000ff;text-decoration:none;}

#yiv2244303111 #yiv2244303111ygrp-sponsor

#yiv2244303111ygrp-lc {

font-family:Arial;}



#yiv2244303111 #yiv2244303111ygrp-sponsor

#yiv2244303111ygrp-lc #yiv2244303111hd {

margin:10px

0px;font-weight:700;font-size:78%;line-height:122%;}



#yiv2244303111 #yiv2244303111ygrp-sponsor

#yiv2244303111ygrp-lc .yiv2244303111ad {

margin-bottom:10px;padding:0 0;}



#yiv2244303111 #yiv2244303111actions {

font-family:Verdana;font-size:11px;padding:10px 0;}



#yiv2244303111 #yiv2244303111activity {

background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}



#yiv2244303111 #yiv2244303111activity span {

font-weight:700;}



#yiv2244303111 #yiv2244303111activity span:first-child {

text-transform:uppercase;}



#yiv2244303111 #yiv2244303111activity span a {

color:#5085b6;text-decoration:none;}



#yiv2244303111 #yiv2244303111activity span span {

color:#ff7900;}



#yiv2244303111 #yiv2244303111activity span

.yiv2244303111underline {

text-decoration:underline;}



#yiv2244303111 .yiv2244303111attach {

clear:both;display:table;font-family:Arial;font-size:12px;padding:10px

0;width:400px;}



#yiv2244303111 .yiv2244303111attach div a {

text-decoration:none;}



#yiv2244303111 .yiv2244303111attach img {

border:none;padding-right:5px;}



#yiv2244303111 .yiv2244303111attach label {

display:block;margin-bottom:5px;}



#yiv2244303111 .yiv2244303111attach label a {

text-decoration:none;}



#yiv2244303111 blockquote {

margin:0 0 0 4px;}



#yiv2244303111 .yiv2244303111bold {

font-family:Arial;font-size:13px;font-weight:700;}



#yiv2244303111 .yiv2244303111bold a {

text-decoration:none;}



#yiv2244303111 dd.yiv2244303111last p a {

font-family:Verdana;font-weight:700;}



#yiv2244303111 dd.yiv2244303111last p span {

margin-right:10px;font-family:Verdana;font-weight:700;}



#yiv2244303111 dd.yiv2244303111last p

span.yiv2244303111yshortcuts {

margin-right:0;}



#yiv2244303111 div.yiv2244303111attach-table div div a {

text-decoration:none;}



#yiv2244303111 div.yiv2244303111attach-table {

width:400px;}



#yiv2244303111 div.yiv2244303111file-title a,
#yiv2244303111

div.yiv2244303111file-title a:active, #yiv2244303111

div.yiv2244303111file-title a:hover, #yiv2244303111

div.yiv2244303111file-title a:visited {

text-decoration:none;}



#yiv2244303111 div.yiv2244303111photo-title a,

#yiv2244303111 div.yiv2244303111photo-title a:active,

#yiv2244303111 div.yiv2244303111photo-title a:hover,

#yiv2244303111 div.yiv2244303111photo-title a:visited {

text-decoration:none;}



#yiv2244303111 div#yiv2244303111ygrp-mlmsg

#yiv2244303111ygrp-msg p a span.yiv2244303111yshortcuts {

font-family:Verdana;font-size:10px;font-weight:normal;}



#yiv2244303111 .yiv2244303111green {

color:#628c2a;}



#yiv2244303111 .yiv2244303111MsoNormal {

margin:0 0 0 0;}



#yiv2244303111 o {

font-size:0;}



#yiv2244303111 #yiv2244303111photos div {

float:left;width:72px;}



#yiv2244303111 #yiv2244303111photos div div {

border:1px solid

#666666;min-height:62px;overflow:hidden;width:62px;}



#yiv2244303111 #yiv2244303111photos div label {

color:#666666;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}



#yiv2244303111 #yiv2244303111reco-category {

font-size:77%;}



#yiv2244303111 #yiv2244303111reco-desc {

font-size:77%;}



#yiv2244303111 .yiv2244303111replbq {

margin:4px;}



#yiv2244303111 #yiv2244303111ygrp-actbar div a:first-child
{

margin-right:2px;padding-right:5px;}



#yiv2244303111 #yiv2244303111ygrp-mlmsg {

font-size:13px;font-family:Arial, helvetica, clean,

sans-serif;}



#yiv2244303111 #yiv2244303111ygrp-mlmsg table {

font-size:inherit;font:100%;}



#yiv2244303111 #yiv2244303111ygrp-mlmsg select,

#yiv2244303111 input, #yiv2244303111 textarea {

font:99% Arial, Helvetica, clean, sans-serif;}



#yiv2244303111 #yiv2244303111ygrp-mlmsg pre,
#yiv2244303111

code {

font:115% monospace;}



#yiv2244303111 #yiv2244303111ygrp-mlmsg * {

line-height:1.22em;}



#yiv2244303111 #yiv2244303111ygrp-mlmsg #yiv2244303111logo
{

padding-bottom:10px;}





#yiv2244303111 #yiv2244303111ygrp-msg p a {

font-family:Verdana;}



#yiv2244303111 #yiv2244303111ygrp-msg

p#yiv2244303111attach-count span {

color:#1E66AE;font-weight:700;}



#yiv2244303111 #yiv2244303111ygrp-reco

#yiv2244303111reco-head {

color:#ff7900;font-weight:700;}



#yiv2244303111 #yiv2244303111ygrp-reco {

margin-bottom:20px;padding:0px;}



#yiv2244303111 #yiv2244303111ygrp-sponsor
#yiv2244303111ov

li a {

font-size:130%;text-decoration:none;}



#yiv2244303111 #yiv2244303111ygrp-sponsor
#yiv2244303111ov

li {

font-size:77%;list-style-type:square;padding:6px 0;}



#yiv2244303111 #yiv2244303111ygrp-sponsor
#yiv2244303111ov

ul {

margin:0;padding:0 0 0 8px;}



#yiv2244303111 #yiv2244303111ygrp-text {

font-family:Georgia;}



#yiv2244303111 #yiv2244303111ygrp-text p {

margin:0 0 1em 0;}



#yiv2244303111 #yiv2244303111ygrp-text tt {

font-size:120%;}



#yiv2244303111 #yiv2244303111ygrp-vital ul li:last-child
{

border-right:none !important;

}

#yiv2244303111 









#yiv4888810479 #yiv4888810479 --
#yiv4888810479ygrp-mkp {
border:1px solid #d8d8d8;font-family:Arial;margin:10px
0;padding:0 10px;}

#yiv4888810479 #yiv4888810479ygrp-mkp hr {
border:1px solid #d8d8d8;}

#yiv4888810479 #yiv4888810479ygrp-mkp #yiv4888810479hd {
color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px
0;}

#yiv4888810479 #yiv4888810479ygrp-mkp #yiv4888810479ads {
margin-bottom:10px;}

#yiv4888810479 #yiv4888810479ygrp-mkp .yiv4888810479ad {
padding:0 0;}

#yiv4888810479 #yiv4888810479ygrp-mkp .yiv4888810479ad p {
margin:0;}

#yiv4888810479 #yiv4888810479ygrp-mkp .yiv4888810479ad a {
color:#0000ff;text-decoration:none;}
#yiv4888810479 #yiv4888810479ygrp-sponsor
#yiv4888810479ygrp-lc {
font-family:Arial;}

#yiv4888810479 #yiv4888810479ygrp-sponsor
#yiv4888810479ygrp-lc #yiv4888810479hd {
margin:10px
0px;font-weight:700;font-size:78%;line-height:122%;}

#yiv4888810479 #yiv4888810479ygrp-sponsor
#yiv4888810479ygrp-lc .yiv4888810479ad {
margin-bottom:10px;padding:0 0;}

#yiv4888810479 #yiv4888810479actions {
font-family:Verdana;font-size:11px;padding:10px 0;}

#yiv4888810479 #yiv4888810479activity {
background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}

#yiv4888810479 #yiv4888810479activity span {
font-weight:700;}

#yiv4888810479 #yiv4888810479activity span:first-child {
text-transform:uppercase;}

#yiv4888810479 #yiv4888810479activity span a {
color:#5085b6;text-decoration:none;}

#yiv4888810479 #yiv4888810479activity span span {
color:#ff7900;}

#yiv4888810479 #yiv4888810479activity span
.yiv4888810479underline {
text-decoration:underline;}

#yiv4888810479 .yiv4888810479attach {
clear:both;display:table;font-family:Arial;font-size:12px;padding:10px
0;width:400px;}

#yiv4888810479 .yiv4888810479attach div a {
text-decoration:none;}

#yiv4888810479 .yiv4888810479attach img {
border:none;padding-right:5px;}

#yiv4888810479 .yiv4888810479attach label {
display:block;margin-bottom:5px;}

#yiv4888810479 .yiv4888810479attach label a {
text-decoration:none;}

#yiv4888810479 blockquote {
margin:0 0 0 4px;}

#yiv4888810479 .yiv4888810479bold {
font-family:Arial;font-size:13px;font-weight:700;}

#yiv4888810479 .yiv4888810479bold a {
text-decoration:none;}

#yiv4888810479 dd.yiv4888810479last p a {
font-family:Verdana;font-weight:700;}

#yiv4888810479 dd.yiv4888810479last p span {
margin-right:10px;font-family:Verdana;font-weight:700;}

#yiv4888810479 dd.yiv4888810479last p
span.yiv4888810479yshortcuts {
margin-right:0;}

#yiv4888810479 div.yiv4888810479attach-table div div a {
text-decoration:none;}

#yiv4888810479 div.yiv4888810479attach-table {
width:400px;}

#yiv4888810479 div.yiv4888810479file-title a, #yiv4888810479
div.yiv4888810479file-title a:active, #yiv4888810479
div.yiv4888810479file-title a:hover, #yiv4888810479
div.yiv4888810479file-title a:visited {
text-decoration:none;}

#yiv4888810479 div.yiv4888810479photo-title a,
#yiv4888810479 div.yiv4888810479photo-title a:active,
#yiv4888810479 div.yiv4888810479photo-title a:hover,
#yiv4888810479 div.yiv4888810479photo-title a:visited {
text-decoration:none;}

#yiv4888810479 div#yiv4888810479ygrp-mlmsg
#yiv4888810479ygrp-msg p a span.yiv4888810479yshortcuts {
font-family:Verdana;font-size:10px;font-weight:normal;}

#yiv4888810479 .yiv4888810479green {
color:#628c2a;}

#yiv4888810479 .yiv4888810479MsoNormal {
margin:0 0 0 0;}

#yiv4888810479 o {
font-size:0;}

#yiv4888810479 #yiv4888810479photos div {
float:left;width:72px;}

#yiv4888810479 #yiv4888810479photos div div {
border:1px solid
#666666;min-height:62px;overflow:hidden;width:62px;}

#yiv4888810479 #yiv4888810479photos div label {
color:#666666;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}

#yiv4888810479 #yiv4888810479reco-category {
font-size:77%;}

#yiv4888810479 #yiv4888810479reco-desc {
font-size:77%;}

#yiv4888810479 .yiv4888810479replbq {
margin:4px;}

#yiv4888810479 #yiv4888810479ygrp-actbar div a:first-child {
margin-right:2px;padding-right:5px;}

#yiv4888810479 #yiv4888810479ygrp-mlmsg {
font-size:13px;font-family:Arial, helvetica, clean,
sans-serif;}

#yiv4888810479 #yiv4888810479ygrp-mlmsg table {
font-size:inherit;font:100%;}

#yiv4888810479 #yiv4888810479ygrp-mlmsg select,
#yiv4888810479 input, #yiv4888810479 textarea {
font:99% Arial, Helvetica, clean, sans-serif;}

#yiv4888810479 #yiv4888810479ygrp-mlmsg pre, #yiv4888810479
code {
font:115% monospace;}

#yiv4888810479 #yiv4888810479ygrp-mlmsg * {
line-height:1.22em;}

#yiv4888810479 #yiv4888810479ygrp-mlmsg #yiv4888810479logo {
padding-bottom:10px;}


#yiv4888810479 #yiv4888810479ygrp-msg p a {
font-family:Verdana;}

#yiv4888810479 #yiv4888810479ygrp-msg
p#yiv4888810479attach-count span {
color:#1E66AE;font-weight:700;}

#yiv4888810479 #yiv4888810479ygrp-reco
#yiv4888810479reco-head {
color:#ff7900;font-weight:700;}

#yiv4888810479 #yiv4888810479ygrp-reco {
margin-bottom:20px;padding:0px;}

#yiv4888810479 #yiv4888810479ygrp-sponsor #yiv4888810479ov
li a {
font-size:130%;text-decoration:none;}

#yiv4888810479 #yiv4888810479ygrp-sponsor #yiv4888810479ov
li {
font-size:77%;list-style-type:square;padding:6px 0;}

#yiv4888810479 #yiv4888810479ygrp-sponsor #yiv4888810479ov
ul {
margin:0;padding:0 0 0 8px;}

#yiv4888810479 #yiv4888810479ygrp-text {
font-family:Georgia;}

#yiv4888810479 #yiv4888810479ygrp-text p {
margin:0 0 1em 0;}

#yiv4888810479 #yiv4888810479ygrp-text tt {
font-size:120%;}

#yiv4888810479 #yiv4888810479ygrp-vital ul li:last-child {
border-right:none !important;
}
#yiv4888810479
So i checked on osx 10.13 beta, and the dc1394 firewire engine of current PTB beta still works at least on a superficial quick check with one camera. No guarantees on Apple the toy operating system, but at least n=1.

-mario
Hi Mario,

thank you for keeping our hopes up that we can still use Mac OS X. :D !!!
Meanwhile we are trying to set up a Unix machine. For conformity reasons, we may need to install Centos 7 rather than Debian.
Do you see any reasons not to do that? Do you foresee any issues?

Thank you,

Tudor


--------------------------------------------
On Thu, 8/17/17, mario.kleiner@... [PSYCHTOOLBOX] <PSYCHTOOLBOX@yahoogroups.com> wrote:

Subject: Re: [PSYCHTOOLBOX] Re: video recording
To: PSYCHTOOLBOX@yahoogroups.com
Date: Thursday, August 17, 2017, 4:08 PM












XXX-In PSYCHTOOLBOX@yahoogroups.com,
<tudorcb@...> wrote :

Hi Mario,



so here's the low tech solution. We just dropped a
mirror into the arena, reflecting the screen into the
camera, unbeknownst to our rodent subject.

Hence we are simultaneously recording the stimulus and the
animal response. (Done with a Webcam plugin of imageJ
controlling a Logitech Webcam pro 920). Synchronization was
"masterfully" approximated by having the PTBv3
stimulus program listening to the keypresses that start and
stop the ImageJ recording. The framerate, retrocalculated
from the number of frames and elapsed time is a glorious 12
fps, but even so, the stimulus does start and stops on the
recording at the predicted frames.


-> Cool, i love
low tech solutions. Straight physics, easy to understand and
fix, no horror induced by software upgrades :)

Will
have to do until we get a firewire camera ( no, I do not
have an external isight). Will have to read into

->
Ok, but you were talking about an iSight before?

infrared
capability, focal distance and depth and angle of view
before shelling out the 1000 US$ or so they appear to cost,
and transforming a laptop into a Unix machine. You guys like
Neurodebian, is that right ?


-> Neurodebian is
the most simple way to get things set up for typical use. 1.
Install Matlab if you think you really need it, instead of
Octave. 2. Install PTB from NeuroDebian. 3. One run of
PsychLinuxConfiguration after that, a reboot, and you are
set.

-> Here's a list of all
cameras known to work with libdc1394 and therefore PTB's
dc1394 capture engine, including some useful tips on camera
selection:
https://damien.douxchamps.net/ieee1394/cameras/

You
would want a camera that is 1394A or 1394B capable (aka
Firewire), and IIDC standard compliant. While at least the
Linux engine also supports some USB-3 cameras with USBVision
standard, that support was less precise (in timing) and more
fragile/troublesome/unreliable to get working, needing for
quite a bit of tweaking, at least with the one model i
tested a few years ago. Things may have changed since then,
my memory about details is dim.


Are you any happier with Mac OS X 10.12?


-> I'm equally
unhappy with any existing OSX version and don't give any
guarantees wrt. anything if you use OSX. In general it has
become worse with any new osx version. But if you use a AMD
graphics card and the Psychtoolboxkerneldriver and PTB
doesn't complain about anything, then visual stimulation
might be ok. And if not, and your needs for visual stimulus
timing precision and integrity are low enough, maybe you are
fine, i don't know your specific needs. Wrt. to the
firewire capture just try it and see if it works for your
purpose or doesn't. It's easy enough to test.

-mario


Tudor





---In PSYCHTOOLBOX@yahoogroups.com,

<tudorcb@...> wrote :



Hi

Mario,







yes we are talking about recording a real live mouse that

runs around in an arena and reacts to Psychtoolbox
presented

visual stimuli.



We tried to record him with ImageJ, and that gave about 16
-

20 fps, but more importantly, we did not have a way to

precisely ascertain when the stimulus was presented
relative

to the recording (mouse has to be recorded continuously

before, during and after the stimulus presentation).



My thought was that I can design a PTB experiment that
will

manage the stimulus as well as the recording and thus

synchronize the animal reaction to the stimulation.



Do you think it can be done with one machine running both

the stimulus presentation on a secondary screen and the

video recording on the main screen? From within the same
m

file or separately? I already



-> Yes, one machine will be enough. You

don't need to display the video feed, just to record
it,

but if you want to, you can. With a firewire camera
(again,

do you already have a firewire based external iSight to
test

this out?) you can follow the approach of

VideoMultiCameraCaptureDemo, although that does way more

than what you'd need for recording from only one
camera,

and will need removal of lots of code and probably a bit

customization. However the demo is quite close to what

you'd need. E.g, the 'pts' timestamps would

represent capture time quite close to reality (minus a

camera model specific offset between the recorded pts of
a

frame and the start of exposure), and the returned

'GetFetchedFramecount' would correspond to the

framecount in the recoded movie file. Iow. you can
compare

pts to the presentation timestamp of
Screen('Flip')

or log it together with the framecount to find out which

movie frame corresponds to which event in your trial.



E.g., if you edit line 83 to

this

codec = ':CodecType=DEFAULTencoder

UseVFR Videoquality=0.5 Profile=2';

then

it would record video in a format that even Apples toy
movie

player can handle. The DC1394 engine can do that, whereas

the standard GStreamer engine currently can't.



know you think I should do it

under Unix but would you gve Mac OS x 10.11.6 or 10.12 a

chance?





In theory the firewire capture engine also

works on OSX, in practice i haven't tried it in
years,

so ymmv on current osx versions, depending on if and how

much Apple screwed up their trainwreck in that area.







With regard to the firewire cameras, these are recording
an

animal, maybe under infrared, wide angle and reasonable

focal distance so they can capture the entire arena.





-> The engine was tested with a few

models of Basler cameras, one PointGrey FireFly, and a
cheap

but charming UniBrain Fire-i. Firewire cameras are at
least

in my experience very plug & play, one of the few
things

that actuallly worked as advertised by their vendors.



-mario





Thanks,







Tudor















Previous convo:







We played around a little bit with the various



videorecording demos and are indeed able to translate the



saved files encoded with the anec_mpeg4 codec using VLC.



However, it looked like grabbing the isight camera has

some



sort of delay, which was about 5 seconds on a Mac pro and

2



seconds on an iMac. When you run the VideorecordingDemo,



the time elapsed and timestamp differential is indicated

in



the active window. However, if you recover time elapsed

and



various t = Getsec timestamps, the elapsed time is



consistently shorter.







When you open the video in VLC, the initial 5 seconds are



unavailable (you simply cannot move the cursor over to



them).







The maximum frame rate we achieved was about 30 fps, as



expected, but this initial "glitch" is



troublesome.







Tried to record the movie without showing it on screen.



Again, when one analyses the converted movie, the extra

five



seconds are there.















Again Mac OS X 10.11.6 "El Capitan".















Considering getting one of the firewire cameras. Would be



nice to hear what people have used succesfully. This

woudl



be for tracking a (really fast) mouse around an arena, so



forgiving focal depth and wide angle are necessary.











-> Ok, but then you are not talking



about the cheap USB based iSight found in typical Apple



toys, as i assumed, or how would you use that for
tracking

a



mouse -- an actual living mouse as your subject, not a



computer mouse? If you talk about one of those old

classic



external iSight's, afaik those are firewire cameras,

no?



So you could give that iSight a try, but with the DC1394



high perf capture and recording engine. Setup

instructions



in "help VideoCaptureDC1394". Use of the DC1394



engine would probably even make it possible to solve the



video transcoding problem in a more elegant way, but

first



things first.







-mario



















Thanks,















Tudor















































--------------------------------------------







On Sat, 8/12/17, tudor badea tudorcb@...



[PSYCHTOOLBOX] <PSYCHTOOLBOX@yahoogroups.com>



wrote:















Subject: Re: [PSYCHTOOLBOX] Re: video recording







To: PSYCHTOOLBOX@yahoogroups.com







Date: Saturday, August 12, 2017, 9:10 PM







































































































Hi Mario,































My ultimate goal is to pass these videos on to a toolbox



for







image analysis, and that one also doesn't see PTB3







encoded movies.































What do you think of the following solution:















I see there is a script recording the video to a matlab







"image" data structure.







"MyVideoCaptureToMatlabDemo"















I presume that is something I can easily pass on to the







videowriter from matlab.















The movies will typically be less than 4 minutes, i.e.

240



x







30 (fps) with my target logitech cam over GStreamer.































Can I "store" the movie in the grabber object,



run







my stimulus and "dazzle the subject", and then



at







the end save the stimulus timing properties,















and separately the video documenting the reaction? I



would







probably use the skeleton of the Video Offline capture







procedure.































thanks,































Tudor































--------------------------------------------















On Sat, 8/12/17, mario.kleiner@...







[PSYCHTOOLBOX] <PSYCHTOOLBOX@yahoogroups.com>







wrote:































Subject: [PSYCHTOOLBOX] Re: video recording















To: PSYCHTOOLBOX@yahoogroups.com















Date: Saturday, August 12, 2017, 1:50 PM















































XX---In PSYCHTOOLBOX@yahoogroups.com,















<tudorcb@...> wrote :































Hi,































we are trying to design an















experiment in which we simultaneously present a stimulus







on















a screen and record the reaction of the test subject in







a















videofile.















Initially we used PTB3 for















stimulus presentation and ImageJ for videocapture, but







we















had concerns about the timing of the recording relative







to















stimulus.































We therefore















would like to run both stimulus presentation and















videorecording from within PTB3, benefit from the higher















timing accuracy.































Stimulus















presentation has not been an issue, and we also







succesfully















controlled the isight camera with the videorecording







demo.















However we have issues with opening the videofile. We







tried















the anec_mpeg4 and one other suggested codec, but there















clearly is an issue with the correct encoding.































We attempted to open the video















with quicktime and with ImageJ, at no avail.































We are trying to get this to















work on an iMac 2011 using Mac OS X 10.11.6 El Capitan.































Suggestions?































-> My suggestion would be















to use Linux for the most reliable video







capture/recording















and the most accurate timestamping of recorded video if







that















is an issue. I wouldn't guarantee anything about







timing















precision on OSX. After Apple breaking video capture in















multiple osx releases and me repairing it a couple of







times















or working around new bugs i've given up trying to







make















it reliable. Also the iSight is one of the least















controllable cameras in terms of framerate and







precision.















That's unfortunately due to its firmware, so will







also















affect precision and control under Linux to some smaller















degree if you use an iSight.































For really precise timing you'd need to use















a Firewire camera or USB-3 machine vision camera and















PTB's libdc1394 capture engine, e.g., as shown in















VideoMultiCameraCaptureDemo.m. That allows really pro







level















control over imaging parameters, timing, etc. and also















synchronized multi-camera capture if one needs it. Fully















supported on Linux, used to work ok at least with







Firewire















cameras on OSX, not available on Windows.































The encoding at least of the















standard h264 codec should be fine and standards







compliant.















You will notice that PTB itself can play the movies just















fine. A up to date version of, e.g., VLC, and similar







free















playback software will also not have problems. It's















mostly Apples primitive Quicktime player that can't







play















back anything but the most basic consumer level formats.















Maybe ImageJ also uses Apples Quicktime framework and so















suffers the same limitations?































One solution if you absolutely wanted to use















Quicktime would be to transcode the videos after







recording















into something primitive that Quicktime can understand.















E.g., use VLC for tanscoding, or use PTB's playback







code















to fetch frames from a movie frame by frame, then PTBs







movie















writing code with the setup in ImagingStereoDemo to write







it















out into a new movie file of more primitive format.































-mario















































Thanks,































Tudor































































































































































#yiv9468519939 #yiv9468519939 --















#yiv9468519939ygrp-mkp {















border:1px solid #d8d8d8;font-family:Arial;margin:10px















0;padding:0 10px;}































#yiv9468519939 #yiv9468519939ygrp-mkp hr {















border:1px solid #d8d8d8;}































#yiv9468519939 #yiv9468519939ygrp-mkp #yiv9468519939hd {















color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px















0;}































#yiv9468519939 #yiv9468519939ygrp-mkp #yiv9468519939ads







{















margin-bottom:10px;}































#yiv9468519939 #yiv9468519939ygrp-mkp .yiv9468519939ad {















padding:0 0;}































#yiv9468519939 #yiv9468519939ygrp-mkp .yiv9468519939ad p







{















margin:0;}































#yiv9468519939 #yiv9468519939ygrp-mkp .yiv9468519939ad a







{















color:#0000ff;text-decoration:none;}















#yiv9468519939 #yiv9468519939ygrp-sponsor















#yiv9468519939ygrp-lc {















font-family:Arial;}































#yiv9468519939 #yiv9468519939ygrp-sponsor















#yiv9468519939ygrp-lc #yiv9468519939hd {















margin:10px















0px;font-weight:700;font-size:78%;line-height:122%;}































#yiv9468519939 #yiv9468519939ygrp-sponsor















#yiv9468519939ygrp-lc .yiv9468519939ad {















margin-bottom:10px;padding:0 0;}































#yiv9468519939 #yiv9468519939actions {















font-family:Verdana;font-size:11px;padding:10px 0;}































#yiv9468519939 #yiv9468519939activity {















background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}































#yiv9468519939 #yiv9468519939activity span {















font-weight:700;}































#yiv9468519939 #yiv9468519939activity span:first-child {















text-transform:uppercase;}































#yiv9468519939 #yiv9468519939activity span a {















color:#5085b6;text-decoration:none;}































#yiv9468519939 #yiv9468519939activity span span {















color:#ff7900;}































#yiv9468519939 #yiv9468519939activity span















.yiv9468519939underline {















text-decoration:underline;}































#yiv9468519939 .yiv9468519939attach {















clear:both;display:table;font-family:Arial;font-size:12px;padding:10px















0;width:400px;}































#yiv9468519939 .yiv9468519939attach div a {















text-decoration:none;}































#yiv9468519939 .yiv9468519939attach img {















border:none;padding-right:5px;}































#yiv9468519939 .yiv9468519939attach label {















display:block;margin-bottom:5px;}































#yiv9468519939 .yiv9468519939attach label a {















text-decoration:none;}































#yiv9468519939 blockquote {















margin:0 0 0 4px;}































#yiv9468519939 .yiv9468519939bold {















font-family:Arial;font-size:13px;font-weight:700;}































#yiv9468519939 .yiv9468519939bold a {















text-decoration:none;}































#yiv9468519939 dd.yiv9468519939last p a {















font-family:Verdana;font-weight:700;}































#yiv9468519939 dd.yiv9468519939last p span {















margin-right:10px;font-family:Verdana;font-weight:700;}































#yiv9468519939 dd.yiv9468519939last p















span.yiv9468519939yshortcuts {















margin-right:0;}































#yiv9468519939 div.yiv9468519939attach-table div div a {















text-decoration:none;}































#yiv9468519939 div.yiv9468519939attach-table {















width:400px;}































#yiv9468519939 div.yiv9468519939file-title a,







#yiv9468519939















div.yiv9468519939file-title a:active, #yiv9468519939















div.yiv9468519939file-title a:hover, #yiv9468519939















div.yiv9468519939file-title a:visited {















text-decoration:none;}































#yiv9468519939 div.yiv9468519939photo-title a,















#yiv9468519939 div.yiv9468519939photo-title a:active,















#yiv9468519939 div.yiv9468519939photo-title a:hover,















#yiv9468519939 div.yiv9468519939photo-title a:visited {















text-decoration:none;}































#yiv9468519939 div#yiv9468519939ygrp-mlmsg















#yiv9468519939ygrp-msg p a span.yiv9468519939yshortcuts







{















font-family:Verdana;font-size:10px;font-weight:normal;}































#yiv9468519939 .yiv9468519939green {















color:#628c2a;}































#yiv9468519939 .yiv9468519939MsoNormal {















margin:0 0 0 0;}































#yiv9468519939 o {















font-size:0;}































#yiv9468519939 #yiv9468519939photos div {















float:left;width:72px;}































#yiv9468519939 #yiv9468519939photos div div {















border:1px solid















#666666;min-height:62px;overflow:hidden;width:62px;}































#yiv9468519939 #yiv9468519939photos div label {















color:#666666;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}































#yiv9468519939 #yiv9468519939reco-category {















font-size:77%;}































#yiv9468519939 #yiv9468519939reco-desc {















font-size:77%;}































#yiv9468519939 .yiv9468519939replbq {















margin:4px;}































#yiv9468519939 #yiv9468519939ygrp-actbar div



a:first-child







{















margin-right:2px;padding-right:5px;}































#yiv9468519939 #yiv9468519939ygrp-mlmsg {















font-size:13px;font-family:Arial, helvetica, clean,















sans-serif;}































#yiv9468519939 #yiv9468519939ygrp-mlmsg table {















font-size:inherit;font:100%;}































#yiv9468519939 #yiv9468519939ygrp-mlmsg select,















#yiv9468519939 input, #yiv9468519939 textarea {















font:99% Arial, Helvetica, clean, sans-serif;}































#yiv9468519939 #yiv9468519939ygrp-mlmsg pre,







#yiv9468519939















code {















font:115% monospace;}































#yiv9468519939 #yiv9468519939ygrp-mlmsg * {















line-height:1.22em;}































#yiv9468519939 #yiv9468519939ygrp-mlmsg



#yiv9468519939logo







{















padding-bottom:10px;}















































#yiv9468519939 #yiv9468519939ygrp-msg p a {















font-family:Verdana;}































#yiv9468519939 #yiv9468519939ygrp-msg















p#yiv9468519939attach-count span {















color:#1E66AE;font-weight:700;}































#yiv9468519939 #yiv9468519939ygrp-reco















#yiv9468519939reco-head {















color:#ff7900;font-weight:700;}































#yiv9468519939 #yiv9468519939ygrp-reco {















margin-bottom:20px;padding:0px;}































#yiv9468519939 #yiv9468519939ygrp-sponsor







#yiv9468519939ov















li a {















font-size:130%;text-decoration:none;}































#yiv9468519939 #yiv9468519939ygrp-sponsor







#yiv9468519939ov















li {















font-size:77%;list-style-type:square;padding:6px 0;}































#yiv9468519939 #yiv9468519939ygrp-sponsor







#yiv9468519939ov















ul {















margin:0;padding:0 0 0 8px;}































#yiv9468519939 #yiv9468519939ygrp-text {















font-family:Georgia;}































#yiv9468519939 #yiv9468519939ygrp-text p {















margin:0 0 1em 0;}































#yiv9468519939 #yiv9468519939ygrp-text tt {















font-size:120%;}































#yiv9468519939 #yiv9468519939ygrp-vital ul li:last-child







{















border-right:none !important;















}















#yiv9468519939















































































































#yiv2597684411 #yiv2597684411 --







#yiv2597684411ygrp-mkp {







border:1px solid #d8d8d8;font-family:Arial;margin:10px







0;padding:0 10px;}















#yiv2597684411 #yiv2597684411ygrp-mkp hr {







border:1px solid #d8d8d8;}















#yiv2597684411 #yiv2597684411ygrp-mkp #yiv2597684411hd {







color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px







0;}















#yiv2597684411 #yiv2597684411ygrp-mkp #yiv2597684411ads {







margin-bottom:10px;}















#yiv2597684411 #yiv2597684411ygrp-mkp .yiv2597684411ad {







padding:0 0;}















#yiv2597684411 #yiv2597684411ygrp-mkp .yiv2597684411ad p



{







margin:0;}















#yiv2597684411 #yiv2597684411ygrp-mkp .yiv2597684411ad a



{







color:#0000ff;text-decoration:none;}







#yiv2597684411 #yiv2597684411ygrp-sponsor







#yiv2597684411ygrp-lc {







font-family:Arial;}















#yiv2597684411 #yiv2597684411ygrp-sponsor







#yiv2597684411ygrp-lc #yiv2597684411hd {







margin:10px







0px;font-weight:700;font-size:78%;line-height:122%;}















#yiv2597684411 #yiv2597684411ygrp-sponsor







#yiv2597684411ygrp-lc .yiv2597684411ad {







margin-bottom:10px;padding:0 0;}















#yiv2597684411 #yiv2597684411actions {







font-family:Verdana;font-size:11px;padding:10px 0;}















#yiv2597684411 #yiv2597684411activity {







background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}















#yiv2597684411 #yiv2597684411activity span {







font-weight:700;}















#yiv2597684411 #yiv2597684411activity span:first-child {







text-transform:uppercase;}















#yiv2597684411 #yiv2597684411activity span a {







color:#5085b6;text-decoration:none;}















#yiv2597684411 #yiv2597684411activity span span {







color:#ff7900;}















#yiv2597684411 #yiv2597684411activity span







.yiv2597684411underline {







text-decoration:underline;}















#yiv2597684411 .yiv2597684411attach {







clear:both;display:table;font-family:Arial;font-size:12px;padding:10px







0;width:400px;}















#yiv2597684411 .yiv2597684411attach div a {







text-decoration:none;}















#yiv2597684411 .yiv2597684411attach img {







border:none;padding-right:5px;}















#yiv2597684411 .yiv2597684411attach label {







display:block;margin-bottom:5px;}















#yiv2597684411 .yiv2597684411attach label a {







text-decoration:none;}















#yiv2597684411 blockquote {







margin:0 0 0 4px;}















#yiv2597684411 .yiv2597684411bold {







font-family:Arial;font-size:13px;font-weight:700;}















#yiv2597684411 .yiv2597684411bold a {







text-decoration:none;}















#yiv2597684411 dd.yiv2597684411last p a {







font-family:Verdana;font-weight:700;}















#yiv2597684411 dd.yiv2597684411last p span {







margin-right:10px;font-family:Verdana;font-weight:700;}















#yiv2597684411 dd.yiv2597684411last p







span.yiv2597684411yshortcuts {







margin-right:0;}















#yiv2597684411 div.yiv2597684411attach-table div div a {







text-decoration:none;}















#yiv2597684411 div.yiv2597684411attach-table {







width:400px;}















#yiv2597684411 div.yiv2597684411file-title a,



#yiv2597684411







div.yiv2597684411file-title a:active, #yiv2597684411







div.yiv2597684411file-title a:hover, #yiv2597684411







div.yiv2597684411file-title a:visited {







text-decoration:none;}















#yiv2597684411 div.yiv2597684411photo-title a,







#yiv2597684411 div.yiv2597684411photo-title a:active,







#yiv2597684411 div.yiv2597684411photo-title a:hover,







#yiv2597684411 div.yiv2597684411photo-title a:visited {







text-decoration:none;}















#yiv2597684411 div#yiv2597684411ygrp-mlmsg







#yiv2597684411ygrp-msg p a span.yiv2597684411yshortcuts {







font-family:Verdana;font-size:10px;font-weight:normal;}















#yiv2597684411 .yiv2597684411green {







color:#628c2a;}















#yiv2597684411 .yiv2597684411MsoNormal {







margin:0 0 0 0;}















#yiv2597684411 o {







font-size:0;}















#yiv2597684411 #yiv2597684411photos div {







float:left;width:72px;}















#yiv2597684411 #yiv2597684411photos div div {







border:1px solid







#666666;min-height:62px;overflow:hidden;width:62px;}















#yiv2597684411 #yiv2597684411photos div label {







color:#666666;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}















#yiv2597684411 #yiv2597684411reco-category {







font-size:77%;}















#yiv2597684411 #yiv2597684411reco-desc {







font-size:77%;}















#yiv2597684411 .yiv2597684411replbq {







margin:4px;}















#yiv2597684411 #yiv2597684411ygrp-actbar div

a:first-child



{







margin-right:2px;padding-right:5px;}















#yiv2597684411 #yiv2597684411ygrp-mlmsg {







font-size:13px;font-family:Arial, helvetica, clean,







sans-serif;}















#yiv2597684411 #yiv2597684411ygrp-mlmsg table {







font-size:inherit;font:100%;}















#yiv2597684411 #yiv2597684411ygrp-mlmsg select,







#yiv2597684411 input, #yiv2597684411 textarea {







font:99% Arial, Helvetica, clean, sans-serif;}















#yiv2597684411 #yiv2597684411ygrp-mlmsg pre,



#yiv2597684411







code {







font:115% monospace;}















#yiv2597684411 #yiv2597684411ygrp-mlmsg * {







line-height:1.22em;}















#yiv2597684411 #yiv2597684411ygrp-mlmsg

#yiv2597684411logo



{







padding-bottom:10px;}























#yiv2597684411 #yiv2597684411ygrp-msg p a {







font-family:Verdana;}















#yiv2597684411 #yiv2597684411ygrp-msg







p#yiv2597684411attach-count span {







color:#1E66AE;font-weight:700;}















#yiv2597684411 #yiv2597684411ygrp-reco







#yiv2597684411reco-head {







color:#ff7900;font-weight:700;}















#yiv2597684411 #yiv2597684411ygrp-reco {







margin-bottom:20px;padding:0px;}















#yiv2597684411 #yiv2597684411ygrp-sponsor



#yiv2597684411ov







li a {







font-size:130%;text-decoration:none;}















#yiv2597684411 #yiv2597684411ygrp-sponsor



#yiv2597684411ov







li {







font-size:77%;list-style-type:square;padding:6px 0;}















#yiv2597684411 #yiv2597684411ygrp-sponsor



#yiv2597684411ov







ul {







margin:0;padding:0 0 0 8px;}















#yiv2597684411 #yiv2597684411ygrp-text {







font-family:Georgia;}















#yiv2597684411 #yiv2597684411ygrp-text p {







margin:0 0 1em 0;}















#yiv2597684411 #yiv2597684411ygrp-text tt {







font-size:120%;}















#yiv2597684411 #yiv2597684411ygrp-vital ul li:last-child



{







border-right:none !important;







}







#yiv2597684411







































#yiv2244303111 #yiv2244303111 --



#yiv2244303111ygrp-mkp {



border:1px solid #d8d8d8;font-family:Arial;margin:10px



0;padding:0 10px;}







#yiv2244303111 #yiv2244303111ygrp-mkp hr {



border:1px solid #d8d8d8;}







#yiv2244303111 #yiv2244303111ygrp-mkp #yiv2244303111hd {



color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px



0;}







#yiv2244303111 #yiv2244303111ygrp-mkp #yiv2244303111ads {



margin-bottom:10px;}







#yiv2244303111 #yiv2244303111ygrp-mkp .yiv2244303111ad {



padding:0 0;}







#yiv2244303111 #yiv2244303111ygrp-mkp .yiv2244303111ad p

{



margin:0;}







#yiv2244303111 #yiv2244303111ygrp-mkp .yiv2244303111ad a

{



color:#0000ff;text-decoration:none;}



#yiv2244303111 #yiv2244303111ygrp-sponsor



#yiv2244303111ygrp-lc {



font-family:Arial;}







#yiv2244303111 #yiv2244303111ygrp-sponsor



#yiv2244303111ygrp-lc #yiv2244303111hd {



margin:10px



0px;font-weight:700;font-size:78%;line-height:122%;}







#yiv2244303111 #yiv2244303111ygrp-sponsor



#yiv2244303111ygrp-lc .yiv2244303111ad {



margin-bottom:10px;padding:0 0;}







#yiv2244303111 #yiv2244303111actions {



font-family:Verdana;font-size:11px;padding:10px 0;}







#yiv2244303111 #yiv2244303111activity {



background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}







#yiv2244303111 #yiv2244303111activity span {



font-weight:700;}







#yiv2244303111 #yiv2244303111activity span:first-child {



text-transform:uppercase;}







#yiv2244303111 #yiv2244303111activity span a {



color:#5085b6;text-decoration:none;}







#yiv2244303111 #yiv2244303111activity span span {



color:#ff7900;}







#yiv2244303111 #yiv2244303111activity span



.yiv2244303111underline {



text-decoration:underline;}







#yiv2244303111 .yiv2244303111attach {



clear:both;display:table;font-family:Arial;font-size:12px;padding:10px



0;width:400px;}







#yiv2244303111 .yiv2244303111attach div a {



text-decoration:none;}







#yiv2244303111 .yiv2244303111attach img {



border:none;padding-right:5px;}







#yiv2244303111 .yiv2244303111attach label {



display:block;margin-bottom:5px;}







#yiv2244303111 .yiv2244303111attach label a {



text-decoration:none;}







#yiv2244303111 blockquote {



margin:0 0 0 4px;}







#yiv2244303111 .yiv2244303111bold {



font-family:Arial;font-size:13px;font-weight:700;}







#yiv2244303111 .yiv2244303111bold a {



text-decoration:none;}







#yiv2244303111 dd.yiv2244303111last p a {



font-family:Verdana;font-weight:700;}







#yiv2244303111 dd.yiv2244303111last p span {



margin-right:10px;font-family:Verdana;font-weight:700;}







#yiv2244303111 dd.yiv2244303111last p



span.yiv2244303111yshortcuts {



margin-right:0;}







#yiv2244303111 div.yiv2244303111attach-table div div a {



text-decoration:none;}







#yiv2244303111 div.yiv2244303111attach-table {



width:400px;}







#yiv2244303111 div.yiv2244303111file-title a,

#yiv2244303111



div.yiv2244303111file-title a:active, #yiv2244303111



div.yiv2244303111file-title a:hover, #yiv2244303111



div.yiv2244303111file-title a:visited {



text-decoration:none;}







#yiv2244303111 div.yiv2244303111photo-title a,



#yiv2244303111 div.yiv2244303111photo-title a:active,



#yiv2244303111 div.yiv2244303111photo-title a:hover,



#yiv2244303111 div.yiv2244303111photo-title a:visited {



text-decoration:none;}







#yiv2244303111 div#yiv2244303111ygrp-mlmsg



#yiv2244303111ygrp-msg p a span.yiv2244303111yshortcuts {



font-family:Verdana;font-size:10px;font-weight:normal;}







#yiv2244303111 .yiv2244303111green {



color:#628c2a;}







#yiv2244303111 .yiv2244303111MsoNormal {



margin:0 0 0 0;}







#yiv2244303111 o {



font-size:0;}







#yiv2244303111 #yiv2244303111photos div {



float:left;width:72px;}







#yiv2244303111 #yiv2244303111photos div div {



border:1px solid



#666666;min-height:62px;overflow:hidden;width:62px;}







#yiv2244303111 #yiv2244303111photos div label {



color:#666666;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}







#yiv2244303111 #yiv2244303111reco-category {



font-size:77%;}







#yiv2244303111 #yiv2244303111reco-desc {



font-size:77%;}







#yiv2244303111 .yiv2244303111replbq {



margin:4px;}







#yiv2244303111 #yiv2244303111ygrp-actbar div
a:first-child

{



margin-right:2px;padding-right:5px;}







#yiv2244303111 #yiv2244303111ygrp-mlmsg {



font-size:13px;font-family:Arial, helvetica, clean,



sans-serif;}







#yiv2244303111 #yiv2244303111ygrp-mlmsg table {



font-size:inherit;font:100%;}







#yiv2244303111 #yiv2244303111ygrp-mlmsg select,



#yiv2244303111 input, #yiv2244303111 textarea {



font:99% Arial, Helvetica, clean, sans-serif;}







#yiv2244303111 #yiv2244303111ygrp-mlmsg pre,

#yiv2244303111



code {



font:115% monospace;}







#yiv2244303111 #yiv2244303111ygrp-mlmsg * {



line-height:1.22em;}







#yiv2244303111 #yiv2244303111ygrp-mlmsg
#yiv2244303111logo

{



padding-bottom:10px;}











#yiv2244303111 #yiv2244303111ygrp-msg p a {



font-family:Verdana;}







#yiv2244303111 #yiv2244303111ygrp-msg



p#yiv2244303111attach-count span {



color:#1E66AE;font-weight:700;}







#yiv2244303111 #yiv2244303111ygrp-reco



#yiv2244303111reco-head {



color:#ff7900;font-weight:700;}







#yiv2244303111 #yiv2244303111ygrp-reco {



margin-bottom:20px;padding:0px;}







#yiv2244303111 #yiv2244303111ygrp-sponsor

#yiv2244303111ov



li a {



font-size:130%;text-decoration:none;}







#yiv2244303111 #yiv2244303111ygrp-sponsor

#yiv2244303111ov



li {



font-size:77%;list-style-type:square;padding:6px 0;}







#yiv2244303111 #yiv2244303111ygrp-sponsor

#yiv2244303111ov



ul {



margin:0;padding:0 0 0 8px;}







#yiv2244303111 #yiv2244303111ygrp-text {



font-family:Georgia;}







#yiv2244303111 #yiv2244303111ygrp-text p {



margin:0 0 1em 0;}







#yiv2244303111 #yiv2244303111ygrp-text tt {



font-size:120%;}







#yiv2244303111 #yiv2244303111ygrp-vital ul li:last-child

{



border-right:none !important;



}



#yiv2244303111



















#yiv4888810479 #yiv4888810479 --

#yiv4888810479ygrp-mkp {

border:1px solid #d8d8d8;font-family:Arial;margin:10px

0;padding:0 10px;}



#yiv4888810479 #yiv4888810479ygrp-mkp hr {

border:1px solid #d8d8d8;}



#yiv4888810479 #yiv4888810479ygrp-mkp #yiv4888810479hd {

color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px

0;}



#yiv4888810479 #yiv4888810479ygrp-mkp #yiv4888810479ads {

margin-bottom:10px;}



#yiv4888810479 #yiv4888810479ygrp-mkp .yiv4888810479ad {

padding:0 0;}



#yiv4888810479 #yiv4888810479ygrp-mkp .yiv4888810479ad p
{

margin:0;}



#yiv4888810479 #yiv4888810479ygrp-mkp .yiv4888810479ad a
{

color:#0000ff;text-decoration:none;}

#yiv4888810479 #yiv4888810479ygrp-sponsor

#yiv4888810479ygrp-lc {

font-family:Arial;}



#yiv4888810479 #yiv4888810479ygrp-sponsor

#yiv4888810479ygrp-lc #yiv4888810479hd {

margin:10px

0px;font-weight:700;font-size:78%;line-height:122%;}



#yiv4888810479 #yiv4888810479ygrp-sponsor

#yiv4888810479ygrp-lc .yiv4888810479ad {

margin-bottom:10px;padding:0 0;}



#yiv4888810479 #yiv4888810479actions {

font-family:Verdana;font-size:11px;padding:10px 0;}



#yiv4888810479 #yiv4888810479activity {

background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}



#yiv4888810479 #yiv4888810479activity span {

font-weight:700;}



#yiv4888810479 #yiv4888810479activity span:first-child {

text-transform:uppercase;}



#yiv4888810479 #yiv4888810479activity span a {

color:#5085b6;text-decoration:none;}



#yiv4888810479 #yiv4888810479activity span span {

color:#ff7900;}



#yiv4888810479 #yiv4888810479activity span

.yiv4888810479underline {

text-decoration:underline;}



#yiv4888810479 .yiv4888810479attach {

clear:both;display:table;font-family:Arial;font-size:12px;padding:10px

0;width:400px;}



#yiv4888810479 .yiv4888810479attach div a {

text-decoration:none;}



#yiv4888810479 .yiv4888810479attach img {

border:none;padding-right:5px;}



#yiv4888810479 .yiv4888810479attach label {

display:block;margin-bottom:5px;}



#yiv4888810479 .yiv4888810479attach label a {

text-decoration:none;}



#yiv4888810479 blockquote {

margin:0 0 0 4px;}



#yiv4888810479 .yiv4888810479bold {

font-family:Arial;font-size:13px;font-weight:700;}



#yiv4888810479 .yiv4888810479bold a {

text-decoration:none;}



#yiv4888810479 dd.yiv4888810479last p a {

font-family:Verdana;font-weight:700;}



#yiv4888810479 dd.yiv4888810479last p span {

margin-right:10px;font-family:Verdana;font-weight:700;}



#yiv4888810479 dd.yiv4888810479last p

span.yiv4888810479yshortcuts {

margin-right:0;}



#yiv4888810479 div.yiv4888810479attach-table div div a {

text-decoration:none;}



#yiv4888810479 div.yiv4888810479attach-table {

width:400px;}



#yiv4888810479 div.yiv4888810479file-title a,
#yiv4888810479

div.yiv4888810479file-title a:active, #yiv4888810479

div.yiv4888810479file-title a:hover, #yiv4888810479

div.yiv4888810479file-title a:visited {

text-decoration:none;}



#yiv4888810479 div.yiv4888810479photo-title a,

#yiv4888810479 div.yiv4888810479photo-title a:active,

#yiv4888810479 div.yiv4888810479photo-title a:hover,

#yiv4888810479 div.yiv4888810479photo-title a:visited {

text-decoration:none;}



#yiv4888810479 div#yiv4888810479ygrp-mlmsg

#yiv4888810479ygrp-msg p a span.yiv4888810479yshortcuts {

font-family:Verdana;font-size:10px;font-weight:normal;}



#yiv4888810479 .yiv4888810479green {

color:#628c2a;}



#yiv4888810479 .yiv4888810479MsoNormal {

margin:0 0 0 0;}



#yiv4888810479 o {

font-size:0;}



#yiv4888810479 #yiv4888810479photos div {

float:left;width:72px;}



#yiv4888810479 #yiv4888810479photos div div {

border:1px solid

#666666;min-height:62px;overflow:hidden;width:62px;}



#yiv4888810479 #yiv4888810479photos div label {

color:#666666;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}



#yiv4888810479 #yiv4888810479reco-category {

font-size:77%;}



#yiv4888810479 #yiv4888810479reco-desc {

font-size:77%;}



#yiv4888810479 .yiv4888810479replbq {

margin:4px;}



#yiv4888810479 #yiv4888810479ygrp-actbar div a:first-child
{

margin-right:2px;padding-right:5px;}



#yiv4888810479 #yiv4888810479ygrp-mlmsg {

font-size:13px;font-family:Arial, helvetica, clean,

sans-serif;}



#yiv4888810479 #yiv4888810479ygrp-mlmsg table {

font-size:inherit;font:100%;}



#yiv4888810479 #yiv4888810479ygrp-mlmsg select,

#yiv4888810479 input, #yiv4888810479 textarea {

font:99% Arial, Helvetica, clean, sans-serif;}



#yiv4888810479 #yiv4888810479ygrp-mlmsg pre,
#yiv4888810479

code {

font:115% monospace;}



#yiv4888810479 #yiv4888810479ygrp-mlmsg * {

line-height:1.22em;}



#yiv4888810479 #yiv4888810479ygrp-mlmsg #yiv4888810479logo
{

padding-bottom:10px;}





#yiv4888810479 #yiv4888810479ygrp-msg p a {

font-family:Verdana;}



#yiv4888810479 #yiv4888810479ygrp-msg

p#yiv4888810479attach-count span {

color:#1E66AE;font-weight:700;}



#yiv4888810479 #yiv4888810479ygrp-reco

#yiv4888810479reco-head {

color:#ff7900;font-weight:700;}



#yiv4888810479 #yiv4888810479ygrp-reco {

margin-bottom:20px;padding:0px;}



#yiv4888810479 #yiv4888810479ygrp-sponsor
#yiv4888810479ov

li a {

font-size:130%;text-decoration:none;}



#yiv4888810479 #yiv4888810479ygrp-sponsor
#yiv4888810479ov

li {

font-size:77%;list-style-type:square;padding:6px 0;}



#yiv4888810479 #yiv4888810479ygrp-sponsor
#yiv4888810479ov

ul {

margin:0;padding:0 0 0 8px;}



#yiv4888810479 #yiv4888810479ygrp-text {

font-family:Georgia;}



#yiv4888810479 #yiv4888810479ygrp-text p {

margin:0 0 1em 0;}



#yiv4888810479 #yiv4888810479ygrp-text tt {

font-size:120%;}



#yiv4888810479 #yiv4888810479ygrp-vital ul li:last-child
{

border-right:none !important;

}

#yiv4888810479









#yiv8777482159 #yiv8777482159 --
#yiv8777482159ygrp-mkp {
border:1px solid #d8d8d8;font-family:Arial;margin:10px
0;padding:0 10px;}

#yiv8777482159 #yiv8777482159ygrp-mkp hr {
border:1px solid #d8d8d8;}

#yiv8777482159 #yiv8777482159ygrp-mkp #yiv8777482159hd {
color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px
0;}

#yiv8777482159 #yiv8777482159ygrp-mkp #yiv8777482159ads {
margin-bottom:10px;}

#yiv8777482159 #yiv8777482159ygrp-mkp .yiv8777482159ad {
padding:0 0;}

#yiv8777482159 #yiv8777482159ygrp-mkp .yiv8777482159ad p {
margin:0;}

#yiv8777482159 #yiv8777482159ygrp-mkp .yiv8777482159ad a {
color:#0000ff;text-decoration:none;}
#yiv8777482159 #yiv8777482159ygrp-sponsor
#yiv8777482159ygrp-lc {
font-family:Arial;}

#yiv8777482159 #yiv8777482159ygrp-sponsor
#yiv8777482159ygrp-lc #yiv8777482159hd {
margin:10px
0px;font-weight:700;font-size:78%;line-height:122%;}

#yiv8777482159 #yiv8777482159ygrp-sponsor
#yiv8777482159ygrp-lc .yiv8777482159ad {
margin-bottom:10px;padding:0 0;}

#yiv8777482159 #yiv8777482159actions {
font-family:Verdana;font-size:11px;padding:10px 0;}

#yiv8777482159 #yiv8777482159activity {
background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}

#yiv8777482159 #yiv8777482159activity span {
font-weight:700;}

#yiv8777482159 #yiv8777482159activity span:first-child {
text-transform:uppercase;}

#yiv8777482159 #yiv8777482159activity span a {
color:#5085b6;text-decoration:none;}

#yiv8777482159 #yiv8777482159activity span span {
color:#ff7900;}

#yiv8777482159 #yiv8777482159activity span
.yiv8777482159underline {
text-decoration:underline;}

#yiv8777482159 .yiv8777482159attach {
clear:both;display:table;font-family:Arial;font-size:12px;padding:10px
0;width:400px;}

#yiv8777482159 .yiv8777482159attach div a {
text-decoration:none;}

#yiv8777482159 .yiv8777482159attach img {
border:none;padding-right:5px;}

#yiv8777482159 .yiv8777482159attach label {
display:block;margin-bottom:5px;}

#yiv8777482159 .yiv8777482159attach label a {
text-decoration:none;}

#yiv8777482159 blockquote {
margin:0 0 0 4px;}

#yiv8777482159 .yiv8777482159bold {
font-family:Arial;font-size:13px;font-weight:700;}

#yiv8777482159 .yiv8777482159bold a {
text-decoration:none;}

#yiv8777482159 dd.yiv8777482159last p a {
font-family:Verdana;font-weight:700;}

#yiv8777482159 dd.yiv8777482159last p span {
margin-right:10px;font-family:Verdana;font-weight:700;}

#yiv8777482159 dd.yiv8777482159last p
span.yiv8777482159yshortcuts {
margin-right:0;}

#yiv8777482159 div.yiv8777482159attach-table div div a {
text-decoration:none;}

#yiv8777482159 div.yiv8777482159attach-table {
width:400px;}

#yiv8777482159 div.yiv8777482159file-title a, #yiv8777482159
div.yiv8777482159file-title a:active, #yiv8777482159
div.yiv8777482159file-title a:hover, #yiv8777482159
div.yiv8777482159file-title a:visited {
text-decoration:none;}

#yiv8777482159 div.yiv8777482159photo-title a,
#yiv8777482159 div.yiv8777482159photo-title a:active,
#yiv8777482159 div.yiv8777482159photo-title a:hover,
#yiv8777482159 div.yiv8777482159photo-title a:visited {
text-decoration:none;}

#yiv8777482159 div#yiv8777482159ygrp-mlmsg
#yiv8777482159ygrp-msg p a span.yiv8777482159yshortcuts {
font-family:Verdana;font-size:10px;font-weight:normal;}

#yiv8777482159 .yiv8777482159green {
color:#628c2a;}

#yiv8777482159 .yiv8777482159MsoNormal {
margin:0 0 0 0;}

#yiv8777482159 o {
font-size:0;}

#yiv8777482159 #yiv8777482159photos div {
float:left;width:72px;}

#yiv8777482159 #yiv8777482159photos div div {
border:1px solid
#666666;min-height:62px;overflow:hidden;width:62px;}

#yiv8777482159 #yiv8777482159photos div label {
color:#666666;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}

#yiv8777482159 #yiv8777482159reco-category {
font-size:77%;}

#yiv8777482159 #yiv8777482159reco-desc {
font-size:77%;}

#yiv8777482159 .yiv8777482159replbq {
margin:4px;}

#yiv8777482159 #yiv8777482159ygrp-actbar div a:first-child {
margin-right:2px;padding-right:5px;}

#yiv8777482159 #yiv8777482159ygrp-mlmsg {
font-size:13px;font-family:Arial, helvetica, clean,
sans-serif;}

#yiv8777482159 #yiv8777482159ygrp-mlmsg table {
font-size:inherit;font:100%;}

#yiv8777482159 #yiv8777482159ygrp-mlmsg select,
#yiv8777482159 input, #yiv8777482159 textarea {
font:99% Arial, Helvetica, clean, sans-serif;}

#yiv8777482159 #yiv8777482159ygrp-mlmsg pre, #yiv8777482159
code {
font:115% monospace;}

#yiv8777482159 #yiv8777482159ygrp-mlmsg * {
line-height:1.22em;}

#yiv8777482159 #yiv8777482159ygrp-mlmsg #yiv8777482159logo {
padding-bottom:10px;}


#yiv8777482159 #yiv8777482159ygrp-msg p a {
font-family:Verdana;}

#yiv8777482159 #yiv8777482159ygrp-msg
p#yiv8777482159attach-count span {
color:#1E66AE;font-weight:700;}

#yiv8777482159 #yiv8777482159ygrp-reco
#yiv8777482159reco-head {
color:#ff7900;font-weight:700;}

#yiv8777482159 #yiv8777482159ygrp-reco {
margin-bottom:20px;padding:0px;}

#yiv8777482159 #yiv8777482159ygrp-sponsor #yiv8777482159ov
li a {
font-size:130%;text-decoration:none;}

#yiv8777482159 #yiv8777482159ygrp-sponsor #yiv8777482159ov
li {
font-size:77%;list-style-type:square;padding:6px 0;}

#yiv8777482159 #yiv8777482159ygrp-sponsor #yiv8777482159ov
ul {
margin:0;padding:0 0 0 8px;}

#yiv8777482159 #yiv8777482159ygrp-text {
font-family:Georgia;}

#yiv8777482159 #yiv8777482159ygrp-text p {
margin:0 0 1em 0;}

#yiv8777482159 #yiv8777482159ygrp-text tt {
font-size:120%;}

#yiv8777482159 #yiv8777482159ygrp-vital ul li:last-child {
border-right:none !important;
}
#yiv8777482159