gpt4 book ai didi

php - 如何在视频上传时创建缩略图? [php/codeigniter]

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

我正在尝试为上传的视频创建缩略图。寻找在视频上传本身时生成缩略图的最简单方法。我认为如果有些人在不使用 ffmpeg 的情况下提供代码将对我来说是救命的。因为我在 windows wamp 或任何其他替代方案上运行我的代码也很受欢迎,谢谢。

我真正的代码在 CodeIgniter 中,不知道该怎么做。

$postname = $this->input->post('post-name');

$configVideo['upload_path'] = './video';
$configVideo['max_size'] = '1000000024';
$configVideo['allowed_types'] = 'avi|flv|wmv|mp4';
$configVideo['overwrite'] = TRUE;
$configVideo['remove_spaces'] = TRUE;
$ext = get_mime_by_extension($_FILES['video']['name']);
$video_name = str_replace(' ', '_', $postname);
$configVideo['file_name'] = $video_name;

$this->load->library('upload', $configVideo);
$this->upload->initialize($configVideo);

if (!$this->upload->do_upload('video')) {

$msg = $this->upload->display_errors();
$this->session->set_flashdata('error', $msg);


} else {
$videoDetails = $this->upload->data();

最佳答案

我认为您会发现很难在开源世界中找到不使用 ffmpeg 的视频处理解决方案。即使您可以找到专门用于缩略图的东西,您将来也可能会发现您想做其他事情,例如压缩、添加音轨等,这些事情 ffpmeg 会很有用。

好消息是在 windows 服务器上使用 PHP 的 ffmpeg 是一种常见的解决方案,并且有一个使用良好且受支持的 PHP ffmpeg 库可供您使用:

  • https://github.com/PHP-FFMpeg/PHP-FFMpeg

  • 这包括指向一组 ffmpeg 构建的链接,您可以将其下载到 Windows 服务器上,因此您不需要自己构建 ffmpeg。

    看一下 'frame' 方法来捕获静止图像以在视频中的特定时间用作缩略图:

    $video
    ->frame(FFMpeg\Coordinate\TimeCode::fromSeconds(10))
    ->save('frame.jpg');

    关于php - 如何在视频上传时创建缩略图? [php/codeigniter],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37290305/

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