perl:打开文件夹,选择视频文件,并播放

在Windows10系统中Perl安装Tk模块

运行 cmd

cpan

install Tk

编写 openvideo.pl 如下

perl 复制代码
#!/usr/bin/perl
use strict;
use warnings;
use File::Basename;
use Tk;

my $mw = MainWindow->new or die 'cannot create Widget';

my $types = [['AVI', '.avi'], ['MP4', '.mp4']];

my $file = $mw->getOpenFile(-initialdir=>'D:/VIDEO', -filetypes=>$types);
#print $file;

if ( -e $file){
    my $fname = basename($file);
    system("D:/FFModules/Encoder/mplayer.exe -title $fname -aspect 4:3 $file");
} else {
    print 'file is not exists.';
}
#MainLoop;

运行 perl openvideo.pl

如果你的PC安装了【 格式工厂】这个应用软件,那么实际安装了Windows版的 FFmpeg

在D:\FormatFactory\FFModules\Encoder\ 能找到 mplayer.exe 和 ffmpeg.exe

这里谈谈 mplayer 简单应用:mplayer -h

  1. 播放比例调整

mplayer -aspect 16:9 <videofile>

mplayer -aspect 4:3 <videofile>

  1. 控制热键

基本播放

→     前进10秒

←     后退10秒

↑     前进60秒

↓     后退60秒

PageUP  前进10分钟

PageDown 后退10分钟

Enter   全屏开关

Space   暂停开关

Esc    退出

q     退出


perldoc Encode

经过测试发现,即使 use Encode qw(decode encode); 也无法处理含中文的文件路径。

python 3 处理含中文的文件路径,没有问题。光凭这一点,python 就比 perl 更先进。

相关推荐
扶尔魔ocy5 小时前
【QT window】multimedia+ffmpeg实现(PCM和MP4)录音功能
qt·ffmpeg·pcm
小曾同学.com1 天前
SRT协议推拉流
ffmpeg·实时音视频·vlc·obs·srt协议·srt推拉流
小曾同学.com1 天前
NetInt 硬件编码实战转码压测
ffmpeg·netint硬件编码
扶尔魔ocy1 天前
【QT window】ffmpeg实现录音功能之AAC格式--mp4
qt·ffmpeg·视频处理
小曾同学.com1 天前
HLS协议中m3u8列表及ts文件的由来
ffmpeg·hls·ts文件·m3u8列表
无限大.1 天前
为什么“云计算“能改变世界?——从本地计算到云端服务
开发语言·云计算·perl
skyjilygao2 天前
n8n整合ffmpeg
ffmpeg·视频编辑·n8n
别动哪条鱼2 天前
SDL 函数对各对象缓冲区的影响
网络·数据结构·ffmpeg
daidaidaiyu3 天前
FFmpeg 关键的结构体
c++·ffmpeg
扶尔魔ocy3 天前
【QT window】ffmpeg实现录音功能之无损格式--PCM
ffmpeg·pcm