2012-01-03 39 views
8

Tôi muốn tạo trang web phát video do người dùng tải lên trong video html5.chuyển đổi video sang định dạng tương thích html5 (phía máy chủ)

Làm cách nào để chuyển đổi bất kỳ loại video nào ở phía máy chủ thành WebM, OGG hoặc MP4?

FFmpeg có phải là giải pháp tốt nhất không? Cho đến nay đây là những gì tôi nghĩ, nhưng tôi muốn tìm một cách đơn giản hơn nhiều.

Trả lời

5

Vâng, ffmpeg là giải pháp tốt nhất, nhưng bạn cần phải làm theo các bước tiếp theo để thực hiện video làm việc trong tất cả các trình duyệt:

1- Tải về phiên bản cuối cùng của ffmpeg từ đây ffmpeg download

2- Extract nội dung vào một thư mục;

3 Với PHP gọi file exe để tạo ra mp4 và webm định dạng video, như thế này:

exec(ffmpegdirectory/bin/ffmpeg.exe -i your_video_path -qscale 4 -vcodec libx264 -f mp4 your_new_video_path.mp4); 

exec(ffmpegdirectory/bin/ffmpeg.exe -i your_video_path -b 1500k -vcodec libvpx -acodec libvorbis -ab 160000 -f webm -g 30 -s your_new_video_path.webm); 

4- Cho phép trong IIS (nếu là trường hợp của bạn) các loại Mime mp4 và webm

5- Sử dụng video.js để tạo thẻ video html5 và gọi hai video đã chuyển đổi của bạn (mp4 và webm);

Lưu ý: nếu bạn không sử dụng video.js, có thể video sẽ không hoạt động trong IE.

+0

làm bạn có bất kỳ ví dụ về mã php bạn sử dụng để làm điều này? – Philip

0

Rất tốt nhưng mã hóa của bạn hơi kém so với người dùng RED_ALERT.

 <?php 
     shell_exec("ffmpegdirectory/bin/ffmpeg.exe -i your_video_path -qscale 4 -vcodec    libx264 -f mp4 your_new_video_path.mp4"); 

     shell_exec("ffmpegdirectory/bin/ffmpeg.exe -i your_video_path -b 1500k -vcodec libvpx -acodec libvorbis -ab 160000 -f webm -g 30 -s your_new_video_path.webm"); 

?>

nên về cơ bản thêm ffmpeg của bạn vào một thư mục thư mục riêng trên máy tính của bạn và không có trong wamp nếu bạn sử dụng wamp. Bạn có thể hơn tôi giả định tạo một tài liệu html mà srcs video và không cần video js. Tất nhiên bạn sẽ cần phải biết đường dẫn đến video và tìm ra cách để đặt đường dẫn từ truy vấn msyql vào lệnh php shell_exec ở trên.

Dưới đây là một ví dụ khác chuyển đổi video wmv thành video mp4.

<?php shell_exec("ffmpeg/bin/ffmpeg -i /myvideos/lionseatsham.wmv -s 500x400 -strict -2 /myvideo/lioneatshame.mp4 2>&1"); 

?>

Các vấn đề liên quan