gpt4 book ai didi

php - 如何确定 PHP/FFMPEG/PhoneGap 中的视频旋转/方向?

转载 作者:行者123 更新时间:2023-12-04 22:51:22 25 4
gpt4 key购买 nike

将视频上传到服务器后,我将使用 FFMPEG 创建屏幕截图。问题是,如果用户以纵向模式拍摄视频,则屏幕截图会旋转 90º。可笑的是,PhoneGap 和 FFMEG-php 和 FFMPEG 似乎没有提供读取视频旋转/方向值的机制。

我找到了另一个名为 mediainfo 的库这将提供信息,但不是以易于阅读/消化的方式,我试图避免使用另一个库。

我对 PhoneGap/FFMPEG 有什么误解吗?有没有直接确定视频方向的方法?

这是我作为 PHP 函数的解决方案:

function get_video_orientation($video_path) {
$cmd = FFMPEG_PATH . "ffprobe " . $video_path . " -show_streams 2>/dev/null";
$result = shell_exec($cmd);

$orientation = 0;
if(strpos($result, 'TAG:rotate') !== FALSE) {
$result = explode("\n", $result);
foreach($result as $line) {
if(strpos($line, 'TAG:rotate') !== FALSE) {
$stream_info = explode("=", $line);
$orientation = $stream_info[1];
}
}
}

return $orientation;
}

最佳答案

使用 MediaCodec 查找旋转值。然后使用 FFMPEG 旋转视频。

例如:ffmpeg -i in.avi -vf "transpose=1"out.avi

这会将视频顺时针翻转 90 度。

关于php - 如何确定 PHP/FFMPEG/PhoneGap 中的视频旋转/方向?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13093295/

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