There have been quite a number of posts on various forums here and elsewhere concerning intermittent XP connectivity issues with Canon Vixia High-definition video camcorders (HVC). I considered joining one of these to try to help clarify the situation, but most are by now very deep, and it takes the reader much time to create semantic context. So, at the risk of offending the power-that-be at VideoHelp, I've created a new thread, and started it off with what I hope will be a canonical model and description of how XP deals with HDV, which is at the root of the problem, and give explicit instructions to guarantee that, when attached to a 1394 port, will be recognized by the operating system.
Canon's HVC Vixia devices supply video and still image output through five ports:
1. An AV terminal: 3.5 mm. TIP jack for transmitting composite video to standard definition analogue devices;
2. An RGB terminal: proprietary jack for transmitting component video to high definition analogue devices;
3. A HDMI terminal: HDMI 1.2 with Type A connector for transmitting component digital video in high definition;
4. An IEEE 1394 terminal: IEEE 1394a-2000 4 pin (unpowered) high speed serial bus;
5. A USB terminal: USB 2.0 with mini-B connector for transmitting still images.
The serial bus and USB ports are both input/output, the others being strictly one-way outbound. In addition to asynchronous streaming and other minor functional improvements such as power-saving, suspend mode and packet concatenation, the 'a' upgrade on the bus standardized the 4-circuit alpha connector developed by Sony ('i-Link'), by 2000 widely in use in camcorders and laptops. It is fully data compatible with the 6-circuit alpha interfaces, but lacks the power lines, and has since been adopted by most VDC manufacturers.
Like most manufacturers, Canon included the 1394 serial bus since its data transfer rate generally outperforms USB and has become an industry standard. Among its many virtues, because the bus can move data in both directions, it is able to be used for 'pull' operations, such as extracting video from a DVC on demand. The pull agent is typically a video editing application such as HDVSplit, Windows MovieMaker, Adobe Premier Pro, Vegas and the like. Most video editors will recognize a variety of sources from which to transfer video: analogue ports such as S-video, RGB component and NTSC composite video, and digital ports such as 1394 interface, HDMI, DVI, etc. While video can be captured by external devices using any of the three Canon output-only ports, this has to be done on a 'push' basis, and to an analogue port for the AV or RGB ports. Receiving software such as video editors or dumb transfer programs such as ftp streaming variants for these is 'turned on' and waits for a data stream to be supplied by the DVC on playback, i.e. 'pushed' out.
So here we are really only interested in the 1394 bus. Several people in these HDV connectivity threads have made the point that XP is HDV unaware. This is only half true since XP knows something about HDV, as we shall see in a moment, particularly in reference to the IEEE 1394 interface standard. Microsoft made it abundantly clear that"Windows XP has built-in IEEE 1394 support. To use all the capabilities of the IEEE 1394 standard, your computer must have an IEEE 1394 adapter installed."Thus, it would appear, no special drivers are required to use 1394 signalling and electrical interface with XP. XP currently supports the 1394a and 1394b variants. Degraded performance occurred on 1394b ports after installing SP2 as S400 data rates, typical of DVCs, was reduced to S100, since resolved with Hotfix 885222, later incorporated into SP3. This would cause video transfer errors as an affected 1394b port could not match the incoming data rate transmitted from an S400 device. Some 1394 adapter manufacturers replace XP's OHCI (open host controller interface, which contains the host controller driver for the bus) with a custom version, allowing S800-capable devices to run at full 800Mb/s transfer rates.
Suppose, for a moment, your Canon Vixia device is recognized by Windows XP. You open the Device Manager (from Control Panel/System) then open the Imaging Devices category. Among other devices you see 'Canon DV Camcorder'. Right click it then select the Driver tab on which you read:Driver Provider: MicrosoftNow click the Details tab and from the drop-down list select Service. You read MSDV. Referring to the Microsoft Developer's Network, you search for the DV Video Subtypes. You read that for XP Service Pack 2 or later, supported data rates are 12.5, 25, 50 and 100 Mb/s. 50 corresponds to HD-DVCR, 1125 scan lines @ 60 HZ or 1250 @ 50); 100 to any of 1080/60i, 1080/50i or 720/60P. 1080/60i is US high definition television (16:9 aspect ratio, 1920 x 1080 pixels). For XP Service Pack 1 or earlier, supported data rates are 12.5 and 25, both of which correspond to 525 lines @ 60 HZ. So beginning with SP2, XP appears to be high-def enabled.
Driver Date: 7/1/2001
Driver Version: 5.1.2600.0
MSDV is the Microsoft Windows Driver Model (WDM) driver for DV camcorders. It contains the external device control functions - start and stop the tape, rewind, and so forth. When you see the words 'Microsoft DV Camera and VCR' in any Windows documents, the reference is to MSDV. MSDV supports the following generic (tape) transport commands: play, pause, stop, fast-forward, rewind, record, record-pause. In the article Differences in how Windows 2000 and Windows XP handle Serial Digital Interface signals, we are told"In Windows XP, the msdv.sys driver sits on top of the IEC-61883 protocol driver (61883.sys)."In fact, it sits on top of a protocol stack 5 deep. This applies to all patch levels of XP. IEC-61883 client drivers rely on 61883.sys to communicate with their devices using the IEC-61883 protocol, as depicted in the diagram. There, we can see that the actual 1394 bus and port drivers establish link level handshaking and control the hardware through interrupt requests while the 61883 protocol driver manages the data traffic.
Above the 61883 driver sits the AV/C protocol driver, providing support for the IEEE 1394 Audio/Video Control (AV/C) protocol.
To support the AV/C protocol, Microsoft supplies the following two drivers:
Avc.sys is a function driver that provides support to establish and manage subunit/unit plug connections. Specifically, it controls subunits on AV/C-compliant devices as follows: it maps AV/C commands to WDM IRPs, retries requests (for example, if a subunit is busy), handles interim responses as pending IRPs, and routes responses to the correct subunit driver based on type, ID, and operation code. (Loosely, 'subunit' can be taken as a DVC's or VCR's tape subunit. In more recent devices, this can be flash memory or a hard disk file system.)
- Avc.sys
- Avcstrm.sys
Avcstrm.sys is a lower-filter driver that adds support to assist with streaming the following specific data formats:
Finally, at the top of the stack, is the vendor-supplied subunit driver. Generally these are device specific, but in the case of DVCs - and 1394 is used for far more than just DVCs, Microsoft has provided the generic subunit driver msdv.sys. This is what goes in the box at the top labelled 'Vendor-supplied AV/C Subunit Driver (IEC-61883 client driver).
- Standard definition digital video (SDDV, the 61883-2 specification)
- MPEG2-TS (the 61883-4 specification)
It's also clear from the article Desktop HD Capture Solutions that there is no native support in XP for high definition video capture. In the companion article Understanding HD Formats there is a brief description of HDV, the standard used with Canon DVCs. It's a highly compressed MPEG-2 transport stream for use on mini DV tape. This is defined in the IEC 61883-4 standard, and supported by Windows' 61883 protocol driver mentioned above. Armed with this information, we shouldn't have too much difficulty figuring out why XP doesn't understand HDV.
By now I'm sure you're beginning to ask ok, so if avcstrm.sys supports MPEG2-TS, and 61883.sys implements IEC 61883-4, what the hec is msdv.sys doing with it?
I'll conclude the presentation in a subsequent post to this thread...
+ Reply to Thread
Results 1 to 20 of 20
-
Last edited by E_D_George; 16th Feb 2010 at 13:44. Reason: Changed acronym 'DVC' to 'HVC' to maintain consistent usage.
-
Here's the concluding post on issues with Canon Vixia connectivity with Windows XP...
I perhaps should have referenced the Wikipedia article on HDV as it provides a more fulsome description than the reference in the first post. It makes the useful point about bandwidth that "HDV employs MPEG-2 compression scheme with 8-bit chroma and luma encoding, 4:2:0 chroma subsampling and interframe prediction among other techniques to reduce video bandwidth." The original concept was an affordable high definition format, affordable because the significant, visually lossless compression minimized bandwidth/transmission times and storage costs. The 1080i vs 1080p discussion is informative. It might also be worth pointing out that"HDV remains predominantly a tape-based format despite various tapeless recording solutions available on the market. The HDV consortium website states that the HDV trademarks may not be used on any products without a tape drive that can record and play video cassette compliant to the HDV format."
Much else is available on this page, particularly descriptions of the various devices Canon and Sony, the prime perpetrators of HDV, have and now offer.
Backing up a little, we know it is possible to capture HDV on Windows XP. The software for doing so replaces the generic subunit driver msdv.sys with a custom, HDV-aware version. Even as far back as 2001 when the DirectShow application programming interfaces were first used to control DVCs, Microsoft supported MPEG2-TS (see p. 6). Windows MovieMaker 2.1, the version attached to XP (all SPs) queries the Device Manager for a list of video capture devices. The Device Manager has a unit for detecting Imaging devices, and this unit uses msdv.sys to look for devices attached to any active IEEE 1394 ports. (The DM also reports this list to the Control Panel which organizes them under the Scanners and Cameras category.)
From the 2001 document cited in the preceding paragraph we can see that after connecting to the device, transport and timecode reader interfaces, the first task of a video editor, or its AV/C protocol subunit driver surrogate, is to determine the device's capabilities (pp. 5-7). Among the various items is the signalling mode and, sure 'nuf, the mode we're interested in, ED_MODE_SIGNAL_MPEG2TS, is available. But when we examine the AV/C streaming data formats, we discover that only SMPTE 314M (525/60, 625/50) and 370M (720p, 1080i) are supported by msdv.sys. This applies to the Windows Vista, Windows Server 2003 with Service Pack 1 (SP1), and Windows XP with Service Pack 2 (SP2) operating systems, as confirmed in the supported DV Video Subtypes reference. Notice that supported subtypes does include high definition video, but just not MPEG2-TS.
The 314M and 370M formats are built out of 61883-2 and 61883-3 data transmissions, resp., as provided by 61883.sys. The reason that 1394/61883 is used as the protocol stack, instead of some SMPTE signalling method, is simply that all digital video camcorders use the IEEE 1394 standard.
Development of Windows drivers for streaming media device using this approach takes place under the Win32 and COM programming model. With the advent of the Windows Vista and 7 operating systems, which use the Visual Studio family of development suites, this entire development model has been replaced with Windows Media Foundation. Much of the DirectShow, Windows Media SDK and DirectX Media Objects functionality has been transferred to WMF, and much that is new added. Windows 7 now supports 1394 transfer rates of S800, S1600 and S3200.
In sum, Windows XP, including all SPs, will not recognize a device on a 1394 port which advertises itself as HDV. When msdv.sys queries 1394 devices for their capabilities, a Canon Vixia device set to output HDV on the 1394 ports responds with a class the subunit driver doesn't recognize. The driver duly reports to the operating system there is no device present. Thus, nothing appears in Control Panel, Device Manager or your favourite video editor.
We began by assuming your Canon HVC was recognized by Windows. That's how we discovered that it used the MSDV Service. Here are two ways to guarantee any member of the Vixia family will be recognized. Both involve down converting video recorded in HDV to DV on output from the HVC. We'll refer to the Play/Out setup menus Setup1 and Setup2 in Play mode.
- Ensure you have installed either SP3 or SP2 with Hotfix 885222
- Be sure your camera is turned on in Play mode.
- Assume you've recorded some HDV video on miniDV tape (such as Sony DVC), and the recorded tape is in the HVC.
- Connect one end of your 1394 (Apple 'Firewire', Sony i-Link) cable to your computer; do not connect the other end to the camera as this will make the Playback Std and DV Output settings unavailable for adjustment.
- In Control Panel, open the Scanners and Cameras category.
Case 1. On menu Setup 1, parameter Playback STD is set to either 'A' (Auto) or DVD.
On menu Setup2 parameter DV Output must be set to 'DV Locked'. The setting appears as 'DV' on the menu.
Case 2. Parameter DV Output is set to 'DVD/DV'. (DVC switches between the two to match recording standard.)
On menu Setup1, parameter 'Playback STD' must be set to 'DV'
- Adjust settings on the DVC according to either Case 1 or Case 2. Either one delivers HDV down converted to DV.
- Plug the other end of the 1394 cable into the Canon HVC's 1394 port.
- The values for parameters DV Output on menu Setup2 and Plaback STD on menu Setup1 disappear and the parameters rendered inoperable as once a 1394 session has been established, the parameter values cannot be changed. To change them, disconnect one end of the 1394 cable.
- On the Scanners and Cameras panel a new entry appears, 'Canon DV Camcorder' (as a result of the device self-identifying itself to the MSDV Service.)
- Open the Device Manager and expand the 'Imaging devices' category. Right click on 'Canon DV Camcorder' and click on Properties. In the General tab the following information is displayed:
Device type: Imaging devices
... and the status is reported as 'working properly'.
Manufacturer: Canon
Location: AV/C Multifunction Device
- Driver details, mentioned at the beginning of this post, are reported on the Driver tab. These refer to msdv.sys.
- On the Details tab appear a number of fields, the first of which (Device Instance Id) reports the make, model and serial number of your HVC.
- Dismiss the Properties dialogue, close the Device Manager and shut down the Control Panel.
- Open your favourite video editor, for example WMM, and select the 'Capture from video device' function.
- Your Canon HVC will be listed there. You can select it and proceed to upline dump your video.
Last edited by E_D_George; 30th May 2010 at 11:14. Reason: Changed 'download your video' to 'upline dump your video' (standard communication nomenclature). Minor grammar corrections.
-
Lots of info there.
I'll try to test your observations and comment when I get back from MacWorld.Recommends: Kiva.org - Loans that change lives.
http://www.kiva.org/about -
I have little motivation to fix XP problems since IEEE-1394 from HV20 works fine with my XP SP3/Vista/Win7/Mac OSX.
You have a dead camera port or a corrupted OS install.
For the former, try capture on a different computer.Recommends: Kiva.org - Loans that change lives.
http://www.kiva.org/about -
or a bad cable.
--
"a lot of people are better dead" - prisoner KSC2-303 -
no, cable's good
tried it on a friend's mac just now, no luck, must be the camera i guess
..camera thinks its connected (I think it does - the options blank out), but neither computer sees it -
--
"a lot of people are better dead" - prisoner KSC2-303 -
Hi Trish -
Sorry you're having a hard time connecting your Canon camcorder to a computer. I know the frustration which is what motivated the article in the first place. Can you post equipment details: specific make model and serial number of your camcorder, your XP version, whether your 1394 port is provided on the motherboard or by a separate after-market card, manufacturer and model of your 1394 Firewire cable, and finally the output settings you are using on the camcorder (see for details near the end of my article)? I'll try to lead you through a step-by-step process and we'll see if we can't get you connected.
Regards,
Duncan -
Hi again
@aedipuss - I have tried that too - it doesn't get as far as any program, it seems to be the connection.
@ ED George - I have no idea about the cable! I've had it for ages - does this make a difference?!!! If it does, what sort could I try?
the XP version is 2002, service pack 3
settings for camcorder are those suggested in your post - i tried both just in case, no luck
the camera is a hv20 E - if the serial number will help i will send it to you but would rather not post it (call me paranoid)
1394 port is on the motherboard
The camera seems to think its connected - the options grey out. When I do connect, the computer makes a sound to tell me the firewire is connected, but its the "booboo" (lower tone) tone, so there is some communication, I think.
I have been using this computer and this cable to upload numerous hours of tpae from a canon camcorder over five years - that end of it is all good, I believe. I have just bought this HV20 2nd hand, but the fella I bought it from said he was uploading stuff to a PC with no problems ( vista)
I have already tried the two add-ons (drivers?patches?) from microsoft that the various fora recommend, unsuccessfully
If all else fails I do have access to a macbook pro as a last resort (I could use it to upload, then transfer files to my PC by whatever means)
thanks already for your attention everyone, this is the first time I've used one of these fora
BTW I have just added my general computer details to my profileLast edited by trishmob; 14th Oct 2011 at 19:45. Reason: computer details added
-
I understand your frustration but did you try both WinDV (for DV camera setting) and HDVsplit (for camcorder HDV setting)?
For the Nth time
HDV camcorders can be set to record
DV
DV wide
HDV
For Firewire transfer they can be set to
DV/DV wide for DV recorded tape.
DV Wide for DV wide recorded tape.
DV Wide for HDV recorded tape
HDV (16:9) for HDV (16:9) recorded tape
I've shown the screen menu shots before.
Explain more. Help me narrow the issue.
PS: As explained before Win or Mac computers care if the signal sent by the camcorder is set for DV or HDV.
DV can be DV 4:3 (default), DV anamorphic Wide, or downscaled HDV to 16:9 anamorphic wide.
HDV setting is usually 16:9 and 1440x1080i anamorphic (Unless JVC which does 720p). Mac adds confusion trying to force you to 960x540p (30fps) to keep their weak processors from choking. Never ever do that. Go for AIC despite the warnings.
Do I need to use two cams to shoot camcorder menus ....AGAIN?Last edited by edDV; 14th Oct 2011 at 22:17.
Recommends: Kiva.org - Loans that change lives.
http://www.kiva.org/about -
also try having the cam be playing a tape for a minute in the known output format before plugging it into the firewire port on the computer.
--
"a lot of people are better dead" - prisoner KSC2-303 -
@ aedipuss - thanks, good idea, it will hopefully end up being solved by something small like that...but it didn't work this time
@edDV - thanks too, did all that/aware of that already -
if you are using a firewire port on the front of the computer make sure to try the port on the back that is coming directly off the motherboard. assuming it's a built-in device.
--
"a lot of people are better dead" - prisoner KSC2-303 -
ta!
It only has one, at the back... really appreciate your suggestions and time -
Recommends: Kiva.org - Loans that change lives.
http://www.kiva.org/about -
--
"a lot of people are better dead" - prisoner KSC2-303 -
Hi everyone
Just wanted to follow up ... nothing worked, using a Mac
Thanks for your time and thoughts -
I've got a Canon HV20 working with a Mac and XP-SP3/Vista/Win7.
https://forum.videohelp.com/threads/298965-Cannot-capture-HDV-with-Canon-HV30?highlight=iMovie+HV20
https://forum.videohelp.com/threads/313447-Archiving-and-Working-with-AVCHD-on-a-MacRecommends: Kiva.org - Loans that change lives.
http://www.kiva.org/about -
Holy jumping Trish! It's a pity you're still struggling with this. I agree with @edDV and @aedipuss re: computer/cable/camera 1394 port. Reviewing the thread back to October, you appear to have ruled out either the computer and 1394 cable. Have you ever established that your HV 20 1394 port is fully functional? From your initial query the previous owner claimed he used it successfully. If you are able to contact him, why not ask him to demonstrate for you what setup he was using?
The instructions in my article for Canon HVX0 camera settings in order for it to be recognized by XP as a non-high definition device were very carefully researched, tested on several Canon HV products, and verified with my vendor here in Toronto Ontario (Henry's Camera). All I can think to say is carefully check your HV20's settings, perhaps trying both cases that I describe. Post back and let us know.
Similar Threads
-
IEEE 1394 card
By beavereater in forum ComputerReplies: 1Last Post: 21st Jun 2011, 04:28 -
Comcast RNG110 IEEE 1394/Firewire Windows 7 64-bit Drivers/Software
By tgcujo in forum DVB / IPTVReplies: 4Last Post: 2nd Jun 2011, 20:32 -
IEEE 1394/MS DV ERROR
By sampatman in forum Capturing and VCRReplies: 1Last Post: 12th Feb 2010, 10:54 -
Questions about DV transfer and connectivity of Firewire/1394
By Movie-Maker in forum Newbie / General discussionsReplies: 4Last Post: 22nd Aug 2008, 13:46 -
is the IEEE 1394 Adapter port necessary...
By roochie in forum MediaReplies: 15Last Post: 15th May 2007, 19:03