|
#---------------------------------
# Clip Yuv file
# Author: Jthou 2007-06-18
#---------------------------------
#!/usr/bin/perl
if(@ARGV < 5)
{
print "usage: clip.pl srcfilename dstfilename width height frameum \n";
exit(0);
}
$srcfile = @ARGV[0];
$dstfile = @ARGV[1];
$width = @ARGV[2];
$height = @ARGV[3];
$frmnum = @ARGV[4];
open (INF, $srcfile) or die"\ncan not open $srcfile\n";
open (OUTF, ">$dstfile") or die "\ncan not open $dstfile\n";
binmode INF;
binmode OUTF;
$readlen = $width*$height*2*$frmnum;
$len = read(INF, $data, $readlen, 0);
syswrite(OUTF, $data, $readlen, 0);
close INF;
close OUTF;
其他几个可用的函数
函数名 seek
调用语法 seek (filevar, distance, relative_to);
在文件中向前/后移动,有三个参数:
1、filevar,文件变量
2、distance,移动的字节数,正数向前移动,负数往回移动
3、reletive_to,值可为0、1或2。为0时,从文件头开始移动,为1时,相对于当前位置(将要读的下一行)移动,为2时,相对于文件末尾移动。
运行成功返回真(非零值),失败则返回零,常与tell函数合用。
tell
调用语法 tell (filevar);
返回从文件头到当前位置的距离。
getc
调用语法 $char = getc (infile);
从文件中读取单个字符。 |
|
|