FFMpeg压缩处理视频
<?php
$xd_file = '原视频地址路径和名';
$file = dirname(dirname(dirname(__FILE__))) . '/' . $xd_file;
$file_data = pathinfo($file);
// PHP获取视频的所有信息
$info = shell_exec("ffprobe -v quiet -print_format json -show_format -show_streams " . $file);
//$info = shell_exec("ffmpeg -i " . $file . " 2>&1");echo'<pre>';var_dump($info);die;
//# 获取视频时长、开始时间、码率:
//if (preg_match("/Duration: (.*?), start: (.*?), bitrate: (\d*) kb\/s/", $info, $match)) {
// $arr_duration = explode(':', $match[1]);
// $data['seconds'] = $arr_duration[0] * 3600 + $arr_duration[1] * 60 + $arr_duration[2]; // 转换播放时间为秒数
// $data['start'] = $match[2]; // 开始时间
// $data['bitrate'] = $match[3]; // 码率(kb)
//}
//# 获取视频编码、格式、分辨率:
//if (preg_match("/Video: (.*?), (.*?\(.*?\)), (.*?)[, ]/", $info, $match)) {
// $data['vcodec'] = $match[1]; // 视频编码格式
//// $data['vcodec'] = substr($match[1], 0, strrpos($match[1], " (")); // 视频编码格式
// $data['vformat'] = $

该博客介绍了如何在PHP中利用FFmpeg获取视频信息,并进行压缩处理。通过shell_exec执行FFmpeg命令,获取视频的编码格式、分辨率、码率等信息,并根据条件调整视频帧率和分辨率,确保视频质量不超过指定限制。同时,处理视频的元数据,并提供在Linux宝塔面板上安装FFmpeg的步骤。

2654

被折叠的 条评论
为什么被折叠?



