open(IN, "< TTVIDEO.AVI") or die "can't open $oldfile: $!";
open(OUT, "> VIDEO.AVI") or die "can't open $newfile: $!";
binmode(IN);
binmode(OUT);
my $hexcode = "52 49 46 46 f8 e9 08 00 41 ... ";
for(my $i = 0; $i < length($hexcode); $i += 3)
{
print OUT chr(hex(substr($hexcode, $i, 2)));
}
$blksize = (stat IN)[11] || 16384; # preferred block size?
while ($len = sysread IN, $buf, $blksize) {
if (!defined $len) {
next if $! =~ /^Interrupted/; # ^Z and fg
die "System read error: $!\n";
}
$offset = 0;
while ($len) { # Handle partial writes.
defined($written = syswrite OUT, $buf, $len, $offset)
or die "System write error: $!\n";
$len -= $written;
$offset += $written;
}
}
close(OUT);
close(IN);