Export to DV camcorder - no audio

yaroslav

Distinguished
Feb 7, 2005
5
0
18,510
Archived from groups: rec.video.desktop (More info?)

Hello all,

I've spend half a day yesterday to track the problem myself or to find
a solution on the net. I have an audio problem when exporting video to
my miniDV camcorder from my computer via FireWire. I get no sound on
the camcorder.

When I:
- capture from camcorder (WinDV, either type1 or type2);
- export the same video (either type1 or type2) to the camcorder
(WinDV, DVIO) - sound OK.

When I:
- capture from camcorder (WinDV, type1 or type2);
- process the video with VirtualDub, recompress it with VFW Panasonic
DV codec (same video and audio parameters, PCM 48000 16bit stereo,
720x576 etc);
- export the resulting video to the camcorder (WinDV, DVIO) - no
sound.

I tried:
- working with Type1 and Type2 DV AVI files (capturing and exporting);
this includes converting files from Type1 to Type2 and vice versa
before uploading/processing; (I know what Type1 and Type2 is)
- changing the audio interleaving options in VirtualDub (including no
interleaving).

Obviously, the old (captured) and the new (after processing) avi files
are different in the way they store the audio, and my camcorder (Canon
ZR-85) can't parse the new video stream to get the audio. As opposed
to the media player, which plays both files fine. When I use
VirtualDub to process the file without recompressing (simple stuff
like cutting), there's no problem again.

I used Vidtrace to extract the header information from the test files.

Here is the header of the file that comes from WinDV after capturing
(Type2 mode): it can be uploaded back to the camcorder fine.

----------- begin vidtrace -----------
RIFF (30651896) AVI
LIST (65084) hdrl
avih (56)
Microseconds Per Frame: 40000
25.000000 Frames Per Second
Maximum Bytes Per Second: 3831488
Pad to Multiples of This Size: 512
Flags DWORD (hex): 810
FLAG: (AVIF_HASINDEX) AVI File Has 'idx1' chunk
FLAG: (AVIF_TRUSTCKTYPE) Use Chunk Type to Find Key Frames
Total Frames: 200
Initial Frames: 0
Number of Streams: 2
Suggested Buffer Size: 144008
Width in Pixels: 720
Height in Pixels: 576
Scale (MAY BE UNUSED): 0
Rate (MAY BE UNUSED): 0
Samples Per Second (MAY BE UNUSED): 0
Start of AVI File (MAY BE UNUSED): 0
Length of AVI File (MAY BE UNUSED): 0
LIST (32372) strl
strh (56)
Stream Type (Four Character Code): 'vids'
'vids' is Four Character Code for Video Stream
Installable Compressor (Four Character Code): 'dvsd'
'DVSD' is Four Character Code for Unknown Video Codec
Flags (hex): 0
Priority (MAY BE UNUSED) (hex): 0
Language Code (MAY BE UNUSED) (hex): 0
Initial Frames: 0
Scale: 400000
Rate: 10000000
Start: 0
Length: 200
Suggested Buffer Size: 144008
Quality: 0
Sample Size: 0
Frame - 16 bit RECT takes 8 bytes (MAY BE UNUSED): Top: 0 Bottom:
576 Left: 0 Right: 720
Note on Frame: In 16 bit Windows, the RECT structure is
Note on Frame: four (4) 16 bit integers, a total of 8 bytes.
Note on Frame: Some AVI use a 16 bit RECT for Frame.
Note on Frame: Others use a 32 bit RECT, a total of 16 bytes.
strf (40)
Windows Bitmap Header
Number of Bytes Required by Bitmap Structure: 40
Width of Bitmap in Pixels: 720
Height of Bitmap in Pixels: 576
Number of Planes: 1
Number of Bits Per Pixel (1,4,8,16,24, or 32): 24
Compression Mode (hex): 64737664
COMPRESSION: Custom Compression 'dvsd'
Size of Image in Bytes: 144000
Horizontal Resolution in Pixels per Meter: 0
Vertical Resolution in Pixels per Meter: 0
Number of Color Indices Actually Used by the Bitmap: 0
Number of Color Indices Considered Important to Display Bitmap: 0
indx (32248)
LIST (32360) strl
strh (56)
Stream Type (Four Character Code): 'auds'
'auds' is Four Character Code for Audio Stream
Installable Compressor (Four Character Code): ''
'' is Four Character Code for Uncompressed Audio
Flags (hex): 0
Priority (MAY BE UNUSED) (hex): 0
Language Code (MAY BE UNUSED) (hex): 0
Initial Frames: 0
Scale: 4
Rate: 192000
Start: 0
Length: 383996
Suggested Buffer Size: 7688
Quality: 0
Sample Size: 4
Frame - 16 bit RECT takes 8 bytes (MAY BE UNUSED): Top: 0 Bottom:
0 Left: 0 Right: 0
Note on Frame: In 16 bit Windows, the RECT structure is
Note on Frame: four (4) 16 bit integers, a total of 8 bytes.
Note on Frame: Some AVI use a 16 bit RECT for Frame.
Note on Frame: Others use a 32 bit RECT, a total of 16 bytes.
strf (18)
Windows Waveform Audio Header
Waveform Audio Format Type (hex): 1
Audio Format (WAVE_FORMAT_PCM): Microsoft Pulse Code Modulation
Audio
Number of Channels of Audio: 2
Samples Per Second: 48000
Required Data Transfer Rates (Bytes Per Second): 192000
Block Alignment in Bytes: 4
Bits Per Sample: 16
Size of Extra Format Information Appended to End of WAVEFORMATEX
Structure (Bytes): 0
JUNK (2)
indx (32248)
LIST (260) odml
dmlh (248)
JUNK (412)
LIST (30579716) movi
ix00 (32248)
ix01 (32248)
00db (144000)
JUNK (368)

----------- end vidtrace -----------

Here is the header of a recompressed file that VirtualDub produces:

----------- begin vidtrace -----------
RIFF (4561420) AVI
LIST (8824) hdrl
avih (56)
Microseconds Per Frame: 40000
25.000000 Frames Per Second
Maximum Bytes Per Second: 0
Pad to Multiples of This Size: 0
Flags DWORD (hex): 110
FLAG: (AVIF_HASINDEX) AVI File Has 'idx1' chunk
FLAG: (AVIF_ISINTERLEAVED) AVI File is Interleaved
Total Frames: 30
Initial Frames: 0
Number of Streams: 2
Suggested Buffer Size: 0
Width in Pixels: 720
Height in Pixels: 576
Scale (MAY BE UNUSED): 0
Rate (MAY BE UNUSED): 0
Samples Per Second (MAY BE UNUSED): 0
Start of AVI File (MAY BE UNUSED): 0
Length of AVI File (MAY BE UNUSED): 0
LIST (4252) strl
strh (56)
Stream Type (Four Character Code): 'vids'
'vids' is Four Character Code for Video Stream
Installable Compressor (Four Character Code): 'dvsd'
'DVSD' is Four Character Code for Unknown Video Codec
Flags (hex): 0
Priority (MAY BE UNUSED) (hex): 0
Language Code (MAY BE UNUSED) (hex): 0
Initial Frames: 0
Scale: 1
Rate: 25
Start: 0
Length: 30
Suggested Buffer Size: 144000
Quality: 10000
Sample Size: 0
Frame - 16 bit RECT takes 8 bytes (MAY BE UNUSED): Top: 0 Bottom:
576 Left: 0 Right: 720
Note on Frame: In 16 bit Windows, the RECT structure is
Note on Frame: four (4) 16 bit integers, a total of 8 bytes.
Note on Frame: Some AVI use a 16 bit RECT for Frame.
Note on Frame: Others use a 32 bit RECT, a total of 16 bytes.
strf (48)
Windows Bitmap Header
Number of Bytes Required by Bitmap Structure: 40
Width of Bitmap in Pixels: 720
Height of Bitmap in Pixels: 576
Number of Planes: 1
Number of Bits Per Pixel (1,4,8,16,24, or 32): 24
Compression Mode (hex): 64737664
COMPRESSION: Custom Compression 'dvsd'
Size of Image in Bytes: 144000
Horizontal Resolution in Pixels per Meter: 0
Vertical Resolution in Pixels per Meter: 0
Number of Color Indices Actually Used by the Bitmap: 0
Number of Color Indices Considered Important to Display Bitmap: 0
JUNK (4120)
LIST (4220) strl
strh (56)
Stream Type (Four Character Code): 'auds'
'auds' is Four Character Code for Audio Stream
Installable Compressor (Four Character Code): ''
'' is Four Character Code for Uncompressed Audio
Flags (hex): 0
Priority (MAY BE UNUSED) (hex): 0
Language Code (MAY BE UNUSED) (hex): 0
Initial Frames: 0
Scale: 4
Rate: 192000
Start: 0
Length: 57600
Suggested Buffer Size: 115200
Quality: 0
Sample Size: 4
Frame - 16 bit RECT takes 8 bytes (MAY BE UNUSED): Top: 0 Bottom:
0 Left: 0 Right: 0
Note on Frame: In 16 bit Windows, the RECT structure is
Note on Frame: four (4) 16 bit integers, a total of 8 bytes.
Note on Frame: Some AVI use a 16 bit RECT for Frame.
Note on Frame: Others use a 32 bit RECT, a total of 16 bytes.
strf (16)
Windows Waveform Audio Header
Waveform Audio Format Type (hex): 1
Audio Format (WAVE_FORMAT_PCM): Microsoft Pulse Code Modulation
Audio
Number of Channels of Audio: 2
Samples Per Second: 48000
Required Data Transfer Rates (Bytes Per Second): 192000
Block Alignment in Bytes: 4
Bits Per Sample: 16
Size of Extra Format Information Appended to End of WAVEFORMATEX
Structure (Bytes): -14944
JUNK (4120)
LIST (260) odml
dmlh (248)
JUNK (1388)
LIST (4550660) movi
00dc (144000)
01wb (115200)
----------- end vidtrace -----------

If I compare the two headers, I can see the differing items, but so
far I can't tell what's really what, and, most importantly, how I make
the sound go through to the camcorder :)

Thanks everyone for considering,
~Yaroslav
 

yaroslav

Distinguished
Feb 7, 2005
5
0
18,510
Archived from groups: rec.video.desktop (More info?)

Hi all,

It was a codec problem. Panasonic DV codec and Sony Software DV codec
apparently do something to the DV stream that prevents a camcorder
from proper parsing and de-muxing (or the exporting app from muxing?).
MainConcept DV codec, available from the "ace mega codec pack", works
like a charm. After VirtualDub processing, I export the video to a
Type-2 DV AVI, and then export the video to tape via WinDV.

It's worth mentioning that I had upgraded to DirectX9 before trying
the MainConcept codec. It might be important. But even after the
DirectX upgrade, Sony and Panasonic codecs would fail.

This seem a bit strange to me, because the final multiplexing into the
true interleaved DV stream happens at the stage of exporting (WinDV)
or even on the camcorder side (don't know that). So a VfW codec (which
Virtualdub uses) should not impact this process whatsoever. But oh
well, it works now.

~Yaroslav

carpathian81@yahoo.com (Yaroslav) wrote in message news:<76ec5889.0502070253.1d466bf2@posting.google.com>...
> Hello all,
>
> I've spend half a day yesterday to track the problem myself or to find
> a solution on the net. I have an audio problem when exporting video to
> my miniDV camcorder from my computer via FireWire. I get no sound on
> the camcorder.
>
> When I:
> - capture from camcorder (WinDV, either type1 or type2);
> - export the same video (either type1 or type2) to the camcorder
> (WinDV, DVIO) - sound OK.
>
> When I:
> - capture from camcorder (WinDV, type1 or type2);
> - process the video with VirtualDub, recompress it with VFW Panasonic
> DV codec (same video and audio parameters, PCM 48000 16bit stereo,
> 720x576 etc);
> - export the resulting video to the camcorder (WinDV, DVIO) - no
> sound.