Как сжать размер видеофайла с помощью php при загрузке на сервер, который поддерживает ffmpeg? - PullRequest
0 голосов
/ 05 января 2019
<?php
error_reporting(1);
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "demo";
$conn = new mysqli($servername, $username, $password, $dbname);
$target_dir = "test_upload/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
if(isset($_POST["upd"]))
    {
        $imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
        if($imageFileType != "mp4" && $imageFileType != "avi" && $imageFileType != "mov" && $imageFileType != "3gp" && $imageFileType != "mpeg")
        {
            echo "File Format Not Suppoted";
        } 
        else
        {
            $video_path=$_FILES['fileToUpload']['name'];
            move_uploaded_file($_FILES["fileToUpload"]["tmp_name"],$target_file);
            $sql = "INSERT INTO video (video_name) VALUES ('$video_path')";
            $result = $conn->query($sql);
            echo "uploaded ";
        }
    }
if(isset($_POST["disp"]))
{
    $sql = "select * from video";
    $result = $conn->query($sql);
    while($row=mysqli_fetch_array($result,MYSQLI_NUM))
    { ?>
        <video width="300" height="200" controls>
        <source src="test_upload/<?php echo $row[1]; ?>" type="video/mp4">
        </video> 
        <?php 
    } 
} ?>


<html>
<body>
    <form method="post" enctype="multipart/form-data">
        <table border="1">
            <tr>
                <td>
                    Upload  Video
                </td>
            </tr>
            <tr>
                <td>
                    <input type="file" name="fileToUpload"/>
                </td>
            </tr>
            <tr>
                <td>
                    <input type="submit" value="Uplaod Video" name="upd"/>
                    <input type="submit" value="Display Video" name="disp"/>
                </td>
            </tr>
        </table>
    </form> 
</body>

Я пытаюсь загрузить видеофайл на сервер, который поддерживает ffmpeg, для небольших видео размером от 4 до 5 МБ он работает нормально, но когда я пытаюсь загрузить видео более 15 МБ, это занимает слишком много времени для загрузки .Как сжать размер видеофайла без потери качества при загрузке на сервер с помощью php?

1 Ответ

0 голосов
/ 05 января 2019

вы не можете. Php исполняется на сервере, а не на клиенте. Это должно было бы быть сжато перед отправкой, иначе это займет точно такую ​​же полосу пропускания.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...