gpt4 book ai didi

c++ - FFMPEG 并将 swf 转换为图像?

转载 作者:太空狗 更新时间:2023-10-29 12:38:01 25 4
gpt4 key购买 nike

我想使用 ffmpeg 将 swf 转换为 png,但我无法从某种 swf 中提取图像,例如:http://rapidshare.com/files/450953994/Movie1.swf

然后我在 bat 文件 (1.bat) 中使用这段代码

cws2fws Movie1.swf 3.swf
ffmpeg -i 3.swf -f image2 -vcodec png tese%d.png

请帮帮我!!我只想将 swf 转换为图像,还建议其他方式听起来有用吗?

最佳答案

Mencoder 不支持压缩[swf @ 0xc230a0]不支持压缩的 SWF 格式。试试http://www.swftools.org/download.html (我在编译 swftools 后尝试过自己但没有成功)。 swfextract返回

$ swfextract test.swf 
Objects in file test.swf:
[-i] 1 Shape: ID(s) 1
[-f] 1 Frame: ID(s) 0

没有视频,没有声音,没有png……

更新-------------

经过几次差事后,swftools 的 swfrender 完成了这项工作。有一个未记录的 pagerange 选项。来自 swfrender.c:

int args_callback_option(char*name,char*val)
{
if(!strcmp(name, "V")) {
printf("swfrender - part of %s %s\n", PACKAGE, VERSION);
exit(0);
} else if(!strcmp(name, "o")) {

[…]

} else if(!strcmp(name, "p")) {
pagerange = val;
return 1;
} else if(!strcmp(name, "s")) {

[…]

return 0;
}

现在知道了,您可以编写一个 shell 脚本(这里使用 bash 快速而肮脏):

#!/bin/bash
let count=1
swfinput=$1
while :
do
output=`basename $swfinput .swf`$count.png
swfrender $swfinput -p $count -o $output
if [ ! -f $output ];
then
break
fi
echo swfrender $swfinput -p $count -o $output
((count++))
done

就是这样......

关于c++ - FFMPEG 并将 swf 转换为图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5198035/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com