Firewire Video via DM10 and Apple iSight FW

SGI hardware problems, solutions, tips, hacks, etc.
Forum rules
Any posts concerning pirated software or offering to buy/sell/trade commercial software are subject to removal.
User avatar
recondas
Moderator
Moderator
Posts: 5441
Joined: Sun Jun 06, 2004 5:55 pm
Location: NC - USA

Firewire Video via DM10 and Apple iSight FW

Unread postby recondas » Wed May 01, 2013 2:32 pm

Managed to find someone with a no-longer-needed Apple iSight FW camera for sale, so I picked up the iSight for testing under IRIX.

For the record the test platform is a Tezro running IRIX 6.5.30. The 'DM10' is actually a generic PCI firewire board with a Texas Instruments TSB43AB23 chip, the hinv shows "PCI Adapter ID (vendor 0x104c, device 0x8024)". The DM10 software is the later 1.1 revision. While I got away with hot-plugging (and hot-unplugging) the iSight without any adverse effects, there have other mentions of system crashes while attaching or removing firewire devices with IRIX running. The safe bet is to do either with your system shut down.

Connected the iSight to one of the ports on the pseudo-DM10 in my Tezro. Without any additional action on my part the following appeared in the syslog (the Oxford IDE device listed is a pre-existing 2GB CompactFlash card in an MicroTech FW CameraMate CF card reader):

Code: Select all

May  1 12:41:41 6A:tezro unix: Scanning FireWire bus /hw/module/001c01/IXbrick/xtalk/15/pci-x/1/2/ohci/0 (2 nodes)
May  1 12:41:41 6A:tezro unix: FireWire Node [0]: <6>OXFORD SEMICONDUCTOR LTD., OXFORD IDE Device   
May  1 12:41:41 6A:tezro unix: Scanning FireWire bus /hw/module/001c01/IXbrick/xtalk/15/pci-x/1/2/ohci/0 (0 nodes)
May  1 12:41:41 6A:tezro unix: Scanning FireWire bus /hw/module/001c01/IXbrick/xtalk/15/pci-x/1/2/ohci/0 (1 node)
May  1 12:41:41 6A:tezro unix: FireWire Node [0]: <6>OXFORD SEMICONDUCTOR LTD., OXFORD IDE Device   
May  1 12:41:42 6A:tezro unix: Scanning FireWire bus /hw/module/001c01/IXbrick/xtalk/15/pci-x/1/2/ohci/0 (2 nodes)
May  1 12:41:42 6A:tezro unix: FireWire Node [0]: <6>OXFORD SEMICONDUCTOR LTD., OXFORD IDE Device   
May  1 12:41:44 6A:tezro unix: Scanning FireWire bus /hw/module/001c01/IXbrick/xtalk/15/pci-x/1/2/ohci/0 (2 nodes)
May  1 12:41:44 6A:tezro unix: FireWire Node [0]: <6>OXFORD SEMICONDUCTOR LTD., OXFORD IDE Device   
May  1 12:41:44 6A:tezro unix: FireWire Node [1]: <6>APPLE COMPUTER INC., iSight

I ran an hinv -vm and it appeared there...

Code: Select all

DMediaPro DM10 FW option: unit 0, revision 1.1.0
IIDC Video Camera: unit 0, revision 1.30, connected to DM10, unit 0
as well as in the output of fwprobe:

Code: Select all

fwprobe
Probing DM10 cards...
Number of cards: 1
Card Info
=========
Card #: 0
Name  : DM10
ID    : 0x0
Ports : 3
Speed : 400 / 400

3 devices attached
Device 0: 0x0
  Vendor: Silicon Graphics, Inc.
   Model: DMediaPro DM10
   Proto: HBA
Device 1: 0x30E00100001419
  Vendor: OXFORD SEMICONDUCTOR LTD.
   Model: OXFORD IDE Device   
   Proto: SBP2
Device 2: 0xA27000402568E
  Vendor: APPLE COMPUTER INC.
   Model: iSight
   Proto: IIDC

Firewire/DM10 video devices don't use any of the classic IRIX video tools (e.g. Media Recorder, videod, et al), instead they use DM10 specific ML video libraries.

The iSight didn't initially appear in an "mlquery", so after a little rtfm quality time I followed the advice found in the DM10 Release Notes and stopped and restarted the mldaemon:

Code: Select all

IIDC devices using 6.5.21+ and ml 1.1 do not have automatic hotpluggable functionality. 
If a device is removed or added when the system is up, you must restart the mldaemon by running "/etc/init.d/mldaemon stop"
followed by "/etc/init.d mldaemon start" in order to find or remove the device from the system.

Then ran "mlquery" to get the iSight's ML device name:

Code: Select all

mlquery -d all

          DEVICE: iidc-camera
         parent: tezro
          index: 0
        version: 1
       location: /hw/firewire/0/iidc/iidc0
          jacks: SDSerialDigitalInputJack
          paths: SDSerialDigitalInput


So far so good, so I tried the iidc_vidtogfx sample program (additional background and installation instructions are in this post) and got:

Code: Select all

/usr/share/src/dmedia/video/iidc/iidc_vidtogfx -d iidc-camera
Input Timing Present = ML_TIMING_525
[iidc-camera] Image Sampling not supported with this device
Couldn't set controls on video jack (ignoring)
        ML_IMAGE_SAMPLING_INT32 = ML_SAMPLING_444 (length -1)
        ML_VIDEO_TIMING_INT32 = ML_TIMING_525
mlPvToString: ML_STATUS_INVALID_PARAMETER
[iidc-camera] Image Sampling not supported with this device
Couldn't set controls on path
        ML_IMAGE_COMPRESSION_INT32 = ML_COMPRESSION_UNCOMPRESSED
        ML_IMAGE_COLORSPACE_INT32 = ML_COLORSPACE_RGB_601_FULL
        ML_IMAGE_SAMPLING_INT32 = ML_SAMPLING_444 (length -1)
        ML_IMAGE_PACKING_INT32 = ML_PACKING_8
mlPvToString: ML_STATUS_INVALID_VALUE
mlPvToString: ML_STATUS_INVALID_PARAMETER
Not too promising, but since 'sampling' seemed to be the rub, I took a look inside iidc_vidtogfx.c for clues and found:

Code: Select all

available samplings:
         444
         422
         411
Using 411 sampling I was able to successfully display a live video feed from the iSight:

Code: Select all

/usr/share/src/dmedia/video/iidc/iidc_vidtogfx -d iidc-camera -s 411 -D
Input Timing Present = ML_TIMING_525
 Timing 2
        ML_IMAGE_WIDTH_INT32 = 640
        ML_IMAGE_HEIGHT_1_INT32 = 480
        ML_IMAGE_HEIGHT_2_INT32 = 0
............................................................Shutdown
Unless you specify otherwise, the iidc_vidtogfx display window auto-closes after approximately 30 seconds. If you want the iidc window to remain open, there's a note inside iidc_vidtogfx.c that defines the command line switches. Adding "-c 0" (that's a zero) to your command line string will cause the vidtogfx window to remain open indefinitely.

The sample program code for the DM10 also includes iidc_vidtomem. That works in a similar fashion. Using the same 441 sample value (and specifying an output path) I was able to successfully write raw output from the iSight to a file:

Code: Select all

/usr/share/src/dmedia/video/iidc/iidc_vidtomem -d iidc-camera -f /path/of/your/choice/iSight_capture.raw -s 411 -D
Input timing present = ML_TIMING_525
Timing 2
        ML_IMAGE_COMPRESSION_INT32 = ML_COMPRESSION_UNCOMPRESSED
        ML_IMAGE_COLORSPACE_INT32 = ML_COLORSPACE_RGB_601_FULL
        ML_IMAGE_SAMPLING_INT32 = ML_SAMPLING_411
        ML_IMAGE_PACKING_INT32 = ML_PACKING_8
buffer 0 @ 0x10040000
buffer 1 @ 0x100c0000
buffer 2 @ 0x10140000
buffer 3 @ 0x101c0000
buffer 4 @ 0x10240000
buffer 5 @ 0x102c0000
buffer 6 @ 0x10340000
buffer 7 @ 0x103c0000
buffer 8 @ 0x10440000
buffer 9 @ 0x104c0000
send buffer 0x10040000/460800
send buffer 0x100c0000/460800
send buffer 0x10140000/460800
send buffer 0x101c0000/460800
send buffer 0x10240000/460800
send buffer 0x102c0000/460800
send buffer 0x10340000/460800
send buffer 0x103c0000/460800
send buffer 0x10440000/460800
send buffer 0x104c0000/460800
.10 buffers transferred
Shutdown
image 640 x 480
write 460800 bytes to /usr/people/tezro/iSight_capture.raw
If you save the output with a .ppm extension IRIX will open a single frame for viewing. There are a number of input and output options discussed inside iidc_vidtomem.c that might prove useful with a little more investigation.
Attachments
isight.jpg
irix on the left of me, osx on the right
***********************************************************************
Welcome to ARMLand - 0/0x0d00
running...(sherwood-root 0607201829)
* InfiniteReality/Reality Software, IRIX 6.5 Release *
***********************************************************************

User avatar
hamei
Posts: 10433
Joined: Tue Feb 24, 2004 4:10 pm
Location: over the rainbow

Re: Firewire Video via DM10 and Apple iSight FW

Unread postby hamei » Wed May 01, 2013 6:15 pm

recondas wrote:Connected the iSight to one of the ports on the pseudo-DM10 in my Tezro.

Another small step for Man ! Congratulations :D

I remember that neko got almost to that point but his iSight would not work. Maybe this means that the supported Canopus ADVC device could one day be persuaded to function ?

Super news, thank you !
I spent a fortune on booze, birds, and fast cars ... the rest I just squandered

User avatar
guardian452
Donor
Donor
Posts: 3429
Joined: Tue Aug 21, 2007 10:12 pm
Location: United States
Contact:

Re: Firewire Video via DM10 and Apple iSight FW

Unread postby guardian452 » Wed May 01, 2013 6:36 pm

What model and revision isight is it? (IIRC there are 3 revisions, /A, /B, and /C)

User avatar
ClassicHasClass
Donor
Donor
Posts: 2075
Joined: Wed Jul 25, 2012 7:12 pm
Location: Sunny So Cal
Contact:

Re: Firewire Video via DM10 and Apple iSight FW

Unread postby ClassicHasClass » Wed May 01, 2013 9:36 pm

Man, you beat me to it (on a business trip this week).
smit happens.

:Fuel: bigred, 900MHz R16K, 4GB RAM, V12 DCD, 6.5.30
:Indy: indy, 150MHz R4400SC, 256MB RAM, XL24, 6.5.10
:Indigo2IMP: purplehaze, 175MHz R10000, Solid IMPACT
probably posted from Image bruce, Quad 2.5GHz PowerPC 970MP, 16GB RAM, Mac OS X 10.4.11
plus IBM POWER6 p520 * Apple Network Server 500 * RDI PrecisionBook * BeBox * Solbourne S3000 * Commodore 128 * many more...

User avatar
recondas
Moderator
Moderator
Posts: 5441
Joined: Sun Jun 06, 2004 5:55 pm
Location: NC - USA

Re: Firewire Video via DM10 and Apple iSight FW

Unread postby recondas » Thu May 02, 2013 5:26 am

hamei wrote:Super news, thank you !
You're welcome. Be interesting to see what other IIDC or AV/C fw vid devices can be make to work. Having someone with real programming skills take a look at the iidc/avc_vidtogfx and iidc/adc_vidtomem source code samples will be the next hurdle.
guardian452 wrote:What model and revision isight is it? (IIRC there are 3 revisions, /A, /B, and /C)
Good question - but if google got it right it might not make a difference as far as the DM10 is concerned. The MacRumors iSight wiki and this post in Apple's support forums suggest the revision letter only appeared on the packaging to designate which mounts originally shipped with the iSight. An examination of the iSight I have seems to superficially bear that out, no model/revision appears on the iSight (I don't have the original packaging).
ClassicHasClass wrote:Man, you beat me to it (on a business trip this week).
Couldn't have done it without you - the discussion in your Fuel thread moved fw vid to the top of my one-of-these-days list. If you consider similar tests with your Canopus ADVC-300 and Orange Micro iBOT, it would move this thread beyond the single-lucky-combination-of-hardware stage.
***********************************************************************
Welcome to ARMLand - 0/0x0d00
running...(sherwood-root 0607201829)
* InfiniteReality/Reality Software, IRIX 6.5 Release *
***********************************************************************

User avatar
ClassicHasClass
Donor
Donor
Posts: 2075
Joined: Wed Jul 25, 2012 7:12 pm
Location: Sunny So Cal
Contact:

Re: Firewire Video via DM10 and Apple iSight FW

Unread postby ClassicHasClass » Thu May 02, 2013 8:26 am

hamei would have me filleted if I didn't try the Canopus. :)
smit happens.

:Fuel: bigred, 900MHz R16K, 4GB RAM, V12 DCD, 6.5.30
:Indy: indy, 150MHz R4400SC, 256MB RAM, XL24, 6.5.10
:Indigo2IMP: purplehaze, 175MHz R10000, Solid IMPACT
probably posted from Image bruce, Quad 2.5GHz PowerPC 970MP, 16GB RAM, Mac OS X 10.4.11
plus IBM POWER6 p520 * Apple Network Server 500 * RDI PrecisionBook * BeBox * Solbourne S3000 * Commodore 128 * many more...

User avatar
ClassicHasClass
Donor
Donor
Posts: 2075
Joined: Wed Jul 25, 2012 7:12 pm
Location: Sunny So Cal
Contact:

Re: Firewire Video via DM10 and Apple iSight FW

Unread postby ClassicHasClass » Fri May 03, 2013 7:25 pm

Okay, I couldn't let recondas show me up. For the final(?) hinv of my Fuel, see separate thread; this is 6.5.30 using the DM10 1.1 beta driver. To make this simple, I restarted the machine after connecting a new FW device so I didn't have to dork around with mldaemon -- more about hot swapping at the end. First, to establish reproducibility, bog standard FireWire iSight, normally connected to my G5:

Code: Select all

bigred:/usr/share/src/dmedia/% firewire/fwprobe
Testing libfw...
Number of cards: 1
Card Info
=========
Card #: 0
Name  : DM10
ID    : 0x0
Ports : 3
Speed : 400 / 400

2 devices attached
Device 0: 0x0
  Vendor: Silicon Graphics, Inc.
   Model: DMediaPro DM10
   Proto: 4
Device 1: 0xA27000401DAFA
  Vendor: APPLE COMPUTER INC.
   Model: iSight
   Proto: 1
01: 00000000
02: 00000000
03: 00000000
04: 00000000
05: 00000000
06: 00000000

bigred:/usr/share/src/dmedia/% mlquery -d all

         DEVICE: iidc-camera
         parent: bigred.floodgap.com
          index: 0
        version: 1
       location: /hw/firewire/0/iidc/iidc0
          jacks: SDSerialDigitalInputJack
          paths: SDSerialDigitalInput

         DEVICE: nullXcode
         parent: bigred.floodgap.com
          index: 0
        version: 1.0
       location: Software Null Xcode Device
         xcodes: nullXcodeMemoryToMemoryCopy,
                 nullXcodeMemoryClear

bigred:/usr/share/src/dmedia/% video/iidc/iidc_vidtogfx -s 411
Input Timing Present = ML_TIMING_525
............................................................Shutdown



So far so good. Next, the Orange Micro iBOT FireWire camera. This works fine with QuickTime, but TenFourFox's internal support doesn't like it and gives a scrambled image.

Code: Select all

bigred:/usr/share/src/dmedia/% firewire/fwprobe
Testing libfw...
Number of cards: 1
Card Info
=========
Card #: 0
Name  : DM10
ID    : 0x0
Ports : 3
Speed : 400 / 400

2 devices attached
Device 0: 0x0
  Vendor: Silicon Graphics, Inc.
   Model: DMediaPro DM10
   Proto: 4
Device 1: 0xD0F54001001392
  Vendor: ORANGE MICRO, INC.
   Model: ORANGE MICRO
   Proto: 1
01: 31333934
02: 20FF4000
03: 00D0F540
04: 01001392
05: 000446B3
06: 0300D0F5

bigred:/usr/share/src/dmedia/% mlquery -d all

         DEVICE: iidc-camera
         parent: bigred.floodgap.com
          index: 0
        version: 1
       location: /hw/firewire/0/iidc/iidc0
          jacks: SDSerialDigitalInputJack
          paths: SDSerialDigitalInput

         DEVICE: nullXcode
         parent: bigred.floodgap.com
          index: 0
        version: 1.0
       location: Software Null Xcode Device
         xcodes: nullXcodeMemoryToMemoryCopy,
                 nullXcodeMemoryClear

bigred:/usr/share/src/dmedia/% video/iidc/iidc_vidtogfx -s 411 -D
Input Timing Present = ML_TIMING_525
 Timing 2
        ML_IMAGE_WIDTH_INT32 = 640
        ML_IMAGE_HEIGHT_1_INT32 = 480
        ML_IMAGE_HEIGHT_2_INT32 = 0
............................................................Shutdown


But it works fine here, as the image proves:
ibot.jpg
I'm too sexy for this discussion board


Now, for hamei, a Canopus ADVC-300 FireWire video deck, but for this we will need avc_vidtogfx instead:

Code: Select all

bigred:/usr/share/src/dmedia/% firewire/fwprobe
Testing libfw...
Number of cards: 1
Card Info
=========
Card #: 0
Name  : DM10
ID    : 0x0
Ports : 3
Speed : 400 / 400

2 devices attached
Device 0: 0x0
  Vendor: Silicon Graphics, Inc.
   Model: DMediaPro DM10
   Proto: 4
Device 1: 0x2011011300416A
  Vendor: CANOPUS CO., LTD.
   Model: ADVC-300
   Proto: 2
01: 31333934
02: E0648100
03: 00201101
04: 1300416A
05: 0006582C
06: 03002011

bigred:/usr/share/src/dmedia/% mlquery -d all

         DEVICE: dv-deck
         parent: bigred.floodgap.com
          index: 0
        version: 1
       location: /hw/firewire/0/avc/avc0
          jacks: VideoInputJack,
                 VideoOutputJack
          paths: AnalogInput,
                 AnalogOutput

         DEVICE: nullXcode
         parent: bigred.floodgap.com
          index: 0
        version: 1.0
       location: Software Null Xcode Device
         xcodes: nullXcodeMemoryToMemoryCopy,
                 nullXcodeMemoryClear

bigred:/usr/share/src/dmedia/% video/avc/avc_vidtogfx
Input Timing Present = ML_TIMING_525
[dv-deck]: Bad play command status: 12
[avc] Cannot check event loop: Bad file number
timed out waiting buffer
Event Queue Error
Shutdown
[avc] Trouble closing isoch reception: Bad file number
bigred:/usr/share/src/dmedia/% video/avc/avc_vidtogfx
Input Timing Present = ML_TIMING_525
............................................................Shutdown


Notice that periodically avc_vidtogfx and the device get out of sync and you have to do it again. The input basically works otherwise, but ... well ...
advc.jpg
Perhaps it's useable like this in the Southern Hemisphere.


I tried playing around with glOrtho() in the source but I couldn't get it to flip vertically, and I don't know if avc_vidtomem has the same problem. I'm not very good with OpenGL programming though. It just seems to glDrawPixels() right into the window with no intervening texture or anything like that.

I mentioned hot swapping. It doesn't work. In fact, it seemed to hose the FireWire driver so bad that I had to hard-power-down the machine (the console was spammed with tons of FireWire errors about bad or missing targets and the kernel just sat there emitting errors forever until I hit the hard reset). Resetting mldaemon only worked the very first time for me (no devices seen and plugging one in). It wouldn't work for other devices after that.

TAKE THAT, RECONDAS! 8-)

* Incidentally, love and (if you are an attractive person with no Y chromosome) kisses if you can identify the (16-bit!) computer that generated the video signal for the ADVC-300.
smit happens.

:Fuel: bigred, 900MHz R16K, 4GB RAM, V12 DCD, 6.5.30
:Indy: indy, 150MHz R4400SC, 256MB RAM, XL24, 6.5.10
:Indigo2IMP: purplehaze, 175MHz R10000, Solid IMPACT
probably posted from Image bruce, Quad 2.5GHz PowerPC 970MP, 16GB RAM, Mac OS X 10.4.11
plus IBM POWER6 p520 * Apple Network Server 500 * RDI PrecisionBook * BeBox * Solbourne S3000 * Commodore 128 * many more...

User avatar
PymbleSoftware
Posts: 1891
Joined: Tue Jul 15, 2008 5:48 pm
Location: P.O. Box 529, Gordon, Sydney, NSW 2072, Australia.
Contact:

Re: Firewire Video via DM10 and Apple iSight FW

Unread postby PymbleSoftware » Sat May 04, 2013 5:01 am

ClassicHasClass wrote:* Incidentally, love and (if you are an attractive person with no Y chromosome) kisses if you can identify the (16-bit!) computer that generated the video signal for the ADVC-300.


Hands off but some kind of MSX...?

R.
死の神はりんごだけ食べる

開いた括弧は必ず閉じる -- あるプログラマー

:Tezro: :Tezro: :Onyx2R: :Onyx2RE: :Onyx2: :O3x04R: :O3x0: :O200: :Octane: :Octane2: :O2: :O2: :Indigo2IMP: :PI: :PI: :1600SW: :1600SW: :Indy: :Indy: :Indy: :Indy: :Indy:
:hpserv: J5600, 2 x Mac, 3 x SUN, Alpha DS20E, Alpha 800 5/550, 3 x RS/6000, Amiga 4000 VideoToaster, Amiga4000 -030, 733MHz Sam440 AmigaOS 4.1 update 1.

HP C7000 BladeSever with 16 Blades 96Gb to 144Gb RAM per blade
HP C3000 Blade Server with 8 Blades 48Gb to 144Gb RAM per blade

Sold: :Indy: :Indy: :Indy: :Indigo: Tandem Himalaya S-Series Nonstop S72000 ServerNet.

Twitter @PymbleSoftware
Current Apps (iOS) -> https://itunes.apple.com/au/artist/pymb ... d553990081
(Android) https://play.google.com/store/apps/deve ... +Ltd&hl=en
(Onyx2) Cortex ---> http://www.facebook.com/pages/Cortex-th ... 11?sk=info
(0300s) Minnie ---> http://www.facebook.com/pages/Minnie-th ... 02?sk=info
Github ---> https://github.com/pymblesoftware

User avatar
hamei
Posts: 10433
Joined: Tue Feb 24, 2004 4:10 pm
Location: over the rainbow

Re: Firewire Video via DM10 and Apple iSight FW

Unread postby hamei » Sat May 04, 2013 6:15 am

ClassicHasClass wrote:Perhaps it's useable like this in the Southern Hemisphere.

I'll send it to my Mom - right after WW II she and a friend started a little newspaper. Linotype is upside-down and mirror image. She can still read that faster than I can read frontwards ... it used to piss me off when I was little.

Pretty nifty accomplishment, Classic. I was taking notes on how they cooked squid down in Mongkok but looks like we'll have to pass on the fillet session this time :D
I spent a fortune on booze, birds, and fast cars ... the rest I just squandered

User avatar
ClassicHasClass
Donor
Donor
Posts: 2075
Joined: Wed Jul 25, 2012 7:12 pm
Location: Sunny So Cal
Contact:

Re: Firewire Video via DM10 and Apple iSight FW

Unread postby ClassicHasClass » Sat May 04, 2013 9:25 am

PymbleSoftware wrote:Hands off but some kind of MSX...?


Nope, though you're right about the VDP (9918A)! Hint: the CPU is a Texas Instruments 9995.

hamei wrote:I'll send it to my Mom


Word to your Mom!

GL h4xx0r5, is there an easy way to flip glDrawPixels other than by labouriously turning the buffer around in memory? There must be a simple transform I can apply or something rather than expensively doing that in software. (This could really use MDMX. I'd just AltiVec it on PPC.)
smit happens.

:Fuel: bigred, 900MHz R16K, 4GB RAM, V12 DCD, 6.5.30
:Indy: indy, 150MHz R4400SC, 256MB RAM, XL24, 6.5.10
:Indigo2IMP: purplehaze, 175MHz R10000, Solid IMPACT
probably posted from Image bruce, Quad 2.5GHz PowerPC 970MP, 16GB RAM, Mac OS X 10.4.11
plus IBM POWER6 p520 * Apple Network Server 500 * RDI PrecisionBook * BeBox * Solbourne S3000 * Commodore 128 * many more...

robespierre
Posts: 1553
Joined: Mon Sep 12, 2011 2:28 pm
Location: Boston

Re: Firewire Video via DM10 and Apple iSight FW

Unread postby robespierre » Sat May 04, 2013 12:04 pm

it's a Tomy Tutor, although I have never actually seen one.
:PI: :O2: :Indigo2IMP: :Indigo2IMP:

User avatar
ClassicHasClass
Donor
Donor
Posts: 2075
Joined: Wed Jul 25, 2012 7:12 pm
Location: Sunny So Cal
Contact:

Re: Firewire Video via DM10 and Apple iSight FW

Unread postby ClassicHasClass » Sat May 04, 2013 2:18 pm

Close! You are very, very close! It's the Tutor's older brother, the Pyuuta: http://www.floodgap.com/retrobits/tomy/pyuuta/
smit happens.

:Fuel: bigred, 900MHz R16K, 4GB RAM, V12 DCD, 6.5.30
:Indy: indy, 150MHz R4400SC, 256MB RAM, XL24, 6.5.10
:Indigo2IMP: purplehaze, 175MHz R10000, Solid IMPACT
probably posted from Image bruce, Quad 2.5GHz PowerPC 970MP, 16GB RAM, Mac OS X 10.4.11
plus IBM POWER6 p520 * Apple Network Server 500 * RDI PrecisionBook * BeBox * Solbourne S3000 * Commodore 128 * many more...

User avatar
ShadeOfBlue
Moderator
Moderator
Posts: 799
Joined: Tue Nov 25, 2003 12:09 pm
Location: Europe

Re: Firewire Video via DM10 and Apple iSight FW

Unread postby ShadeOfBlue » Sun May 05, 2013 11:58 am

ClassicHasClass wrote:GL h4xx0r5, is there an easy way to flip glDrawPixels other than by labouriously turning the buffer around in memory?

glPixelZoom(1.0f, -1.0f) :)
You will also need to start drawing the image at a different y position, use glRasterPos to do that.

User avatar
recondas
Moderator
Moderator
Posts: 5441
Joined: Sun Jun 06, 2004 5:55 pm
Location: NC - USA

Re: Firewire Video via DM10 and Apple iSight FW

Unread postby recondas » Sun May 05, 2013 3:11 pm

ClassicHasClass wrote:So far so good. Next, the Orange Micro iBOT FireWire camera..... it works fine here, as the image proves... TAKE THAT, RECONDAS! 8-)
Nicely done ClassicHasClass, I'll gladly take it (and add it to the IP35 Hardware Aggregator)
In reference to the avc_vidtogfx producing an inverted display, ClassicHasClass wrote:Perhaps it's useable like this in the Southern Hemisphere.
If we can get to the point of capturing a video stream to a useful format with avc_vidtomem, GMplayer has an option under the 'Video' tab in the Preferences Panel to "Flip image upside down'. ;)
ClassicHasClass wrote:Notice that periodically avc_vidtogfx and the device get out of sync and you have to do it again.
Does the Canopus ADVC-300 output a compressed or uncompressed video stream? Probably unrelated, but if you haven't already seen it/tried it, there's a note in the avc program folder that mentions devices that deliver compressed video to the avc_vidtoxxx programs need 411 sampling, and those that deliver uncompressed video need 422 sampling.
The README file in /usr/share/src/dmedia/video/avc wrote:Note that most AVC devices use DV compression, which limits the sampling to 411 compressed DV. 422 is only available for AVC devices that support uncompressed video.



If you'd like another opportunity to beat me to the firewire punch, about a decade ago the fcc mandated that cable HDTV set top boxes include a firewire video-out port (the set top box here has two 1394-out ports, but it's about 25 feet farther than the FW cable length spec).

Comcast even offers STB Firewire Drivers for Windows, and the AVS Forums have a multi-page topic on the same subject. The Win references obviously aren't useful to us, but there's a brief mention on the Comcast page
Comcast wrote:If you simply want to capture a Firewire stream..... then all you need is the AV/C Tuner device."
Life with IRIX is rarely that simple, but it at least opens the possibility of another test source for the DM10 and the avc versions of the sample programs.
***********************************************************************
Welcome to ARMLand - 0/0x0d00
running...(sherwood-root 0607201829)
* InfiniteReality/Reality Software, IRIX 6.5 Release *
***********************************************************************

User avatar
ClassicHasClass
Donor
Donor
Posts: 2075
Joined: Wed Jul 25, 2012 7:12 pm
Location: Sunny So Cal
Contact:

Re: Firewire Video via DM10 and Apple iSight FW

Unread postby ClassicHasClass » Sun May 05, 2013 9:08 pm

ShadeOfBlue wrote:
ClassicHasClass wrote:GL h4xx0r5, is there an easy way to flip glDrawPixels other than by labouriously turning the buffer around in memory?

glPixelZoom(1.0f, -1.0f) :)
You will also need to start drawing the image at a different y position, use glRasterPos to do that.


It's already there, I think. I played with a few different iterations and all I got was a black screen. When it goes to blit the bits, it starts at the bottom and works back, but setting it to 0.0 didn't fix it, unless I'm totally wrong somewhere. I don't have the Fuel on right now, but I'll check the source code when I'm in front of it again (later this week).

recondas wrote:devices that deliver compressed video to the avc_vidtoxxx programs need 411 sampling, and those that deliver uncompressed video need 422 sampling.


I didn't check to see what it was selecting. I'll also check that and report back.

But, I don't have cable or satellite or even Netflix, just an antenna and a big stack of DVDs, so I'll have to defer the DVR testing to someone else. I am, after all, a big Luddite. 8)
smit happens.

:Fuel: bigred, 900MHz R16K, 4GB RAM, V12 DCD, 6.5.30
:Indy: indy, 150MHz R4400SC, 256MB RAM, XL24, 6.5.10
:Indigo2IMP: purplehaze, 175MHz R10000, Solid IMPACT
probably posted from Image bruce, Quad 2.5GHz PowerPC 970MP, 16GB RAM, Mac OS X 10.4.11
plus IBM POWER6 p520 * Apple Network Server 500 * RDI PrecisionBook * BeBox * Solbourne S3000 * Commodore 128 * many more...


Return to “SGI: Hardware”

Who is online

Users browsing this forum: No registered users and 1 guest