As Duke Nukem once observed,
I'm back
.
First, let's get the agony of defeat out of the way -- the ADS Pyro A/V Link appears to be a non-starter. This unit works fine with my G5, by the way, except for the aforementioned lack of a TBC. It has a bad habit of dropping on and off the FireWire bus, particularly when switching it from digital to analogue. The Mac doesn't care, but mlquery loses track, and starting and stopping mldaemon doesn't bring it back. After some devious timing, I managed to bring the whole system up with it in analogue mode connected to the Tomy.
Code:
Select all
bigred:/usr/people/spectre/% 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/people/spectre/% cd /usr/share/src/dmedia
fibigred:/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: 0x50C5004E545301
Vendor: ADS TECHNOLOGIES, INC.
Model: API-550
Proto: 2
01: 00000000
02: 00000000
03: 00000000
04: 00000000
05: 00000000
06: 00000000
Unfortunately, that's about as much victory as I got:
-
-
I! LOVE! TRASH!
... after which avc_vidtogfx just locks up. After killing it, I tried using some other samplings with no joy:
Code:
Select all
bigred:/usr/share/src/dmedia/video/% avc/avc_vidtogfx -s 444 -D
Input Timing Present = ML_TIMING_525
Couldn't set controls on video jack (ignoring)
Param 0x422012 -> ML_STATUS_INVALID_VALUE
ML_VIDEO_TIMING_INT32 = ML_TIMING_525
Timing 2
Couldn't set controls on path
Param 0x422012 -> ML_STATUS_INVALID_VALUE
ML_IMAGE_PACKING_INT32 = ML_PACKING_8
ML_DEVICE_EVENTS_INT32_ARRAY = [ML_EVENT_VIDEO_SEQUENCE_LOST]
bigred:/usr/share/src/dmedia/video/% avc/avc_vidtogfx -s 422 -D
Input Timing Present = ML_TIMING_525
Couldn't set controls on video jack (ignoring)
Param 0x422012 -> ML_STATUS_INVALID_VALUE
ML_VIDEO_TIMING_INT32 = ML_TIMING_525
Timing 2
Couldn't set controls on path
Param 0x422012 -> ML_STATUS_INVALID_VALUE
ML_IMAGE_PACKING_INT32 = ML_PACKING_8
ML_DEVICE_EVENTS_INT32_ARRAY = [ML_EVENT_VIDEO_SEQUENCE_LOST]
I consider the Pyro A/V Link thus a lost cause unless anyone has any other ideas. But it works great with the Mac!
Having thus dispensed with the bad news, here's the good news and the better news. The good news was that Mr. Blue was half-right and I was half-right. He was right about the GL flipping, but I was right that it was already in the source code. In a duh! moment, I just took the glPixelZoom out and reoriented the glDrawPixels:
Code:
Select all
685c685
< glPixelZoom(1.0, -1.0);
---
> /* glPixelZoom(1.0, -1.0); */
853,854c853,854
< /*glRasterPos2i( 0, 0);*/
< glRasterPos2i( 0, imageHeight-1);
---
> glRasterPos2i( 0, 0);
> /*glRasterPos2i( 0, imageHeight-1);*/
Et voila, with the ADVC-300:
-
-
Now what will my Australian countrymen/women do that it is correctly oriented?
And the best news of all. On a brainwave, based on recondas' prior post, I dumped avc_vidtomem to an .mts file. And guess what can play it?
-
-
Yes! My Fuel plays its own MTS files!
Yes, laydeeez, the MTS file is fully playable by Irix itself. There is no audio; I wasn't able to get that to work yet. But the video files it generates appear to be completely compatible. No screen flipping was needed for avc_vidtomem; that's unmodified.
I'm pretty pleased about this! Still can't get hot swapping to work, though even pushing my luck it didn't crash today.