Configuring the php.ini file
Copy the Code code as follows:
File_uploads = on;//whether to allow the switch to upload files over HTTP. The default is on, which is open
Upload_tmp_dir;//File upload to the server where temporary files are stored, if not specified, will use the system default temporary folder
Upload_max_filesize = 1024m;//Wang Wen Business, that is, the maximum size allowed to upload files. The default is 2M, we set to 1G
Post_max_size = 1024m;//refers to the maximum value that can be received by the form Post to PHP, and we are also set to 1G
Max_execution_time = 3600;//The Maximum time value (in seconds) for each PHP page to run, the default is 30 seconds, set to one hour, because the subsequent transcoding time is long.
Max_input_time = 36000;//The maximum time required for each PHP page to receive data, default 60 seconds
Memory_limit = 8m;//MAX memory eaten per PHP page, default 8M
File Upload Plugin
Fire rain recommend that you use Uploadify,uploadify is an upload plugin for jquery that implements a progress display. Plug-ins are easy to install and skip over here.
However, there is a problem to note that non-IE browser session will be lost, looked up a lot of information, the final reason is summarized:
Because the flash client, such as Uploadify, produces a useragent that differs from the user-agent of the browser.
Final Solution:
Copy the Code code as follows:
Add the session parameter to the upmodify upload parameter, as follows:
Scriptdata: {"session_id": ""},
Add the following code to the service-side receive page:
if (@$_request[' session_id ') && ($session _id=$_request[' session_id '])!=session_id ()) {
Session_destroy ();
session_id ($session _id);
@session_start ();
}
This solves the FLASH cannot pass the page correctly
Video format Conversion
Now the more popular video format conversion software under Linux is Ffmpeg,ffmpeg is a complete solution for recording, converting and streaming audio and video, a leading audio/video codec class library. In addition to ffmpeg, we need an extension to transcode to H264 format. (At the end of this article, all package download addresses are given)
Installing the source installation h264 extension in CentOS 5.4 environment
Copy the Code code as follows:
TAR-XJVF x264-snapshot-20120718-2245-stable.tar.bz2
#进入解压后的源文件目录
CD x264-snapshot-20120718-2245-stable/
./configure--prefix=/usr/local--enable-shared
Make
Make install
//centos 5.4 Install the source installation ffmpeg with h264 extension
TAR-XJVF ffmpeg-2.1.1.tar.bz2
//Enter the extracted directory
CD ffmpeg-2.1.1
./co nfigure--ENABLE-GPL--enable-libx264
Make
Make install
//Reload configuration
Lcfonfig
//test installation succeeded
FFmpeg
If you see the following to indicate that the installation was successful:
Copy the Code code as follows:
FFmpeg version 2.1.1 Copyright (c) 2000-2013 the FFmpeg developers
Built on Dec 23:32:40 with GCC 4.4.7 (gcc) 20120313 (Red Hat 4.4.7-3)
Configuration:--enable-libx264--ENABLE-GPL
Libavutil 52. 48.101/52. 48.101
Libavcodec 55. 39.101/55. 39.101
Libavformat 55. 19.104/55. 19.104
Libavdevice 55. 5.100/55. 5.100
Libavfilter 3. 90.100/3. 90.100
Libswscale 2. 5.101/2. 5.101
Libswresample 0. 17.104/0. 17.104
Libpostproc 52. 3.100/52. 3.100
Hyper Fast Audio and Video encoder
usage:ffmpeg [Options] [[infile Options]-I infile] ... {[outfile options] outfile} ...
Use-h to get full help or, even better, run ' man ffmpeg '
PHP Call FFmpeg transcoding video
Copy the Code code as follows:
$cmd = ' ffmpeg-i uploadfile/video/test.wmv-c:v libx264-strict-2 uploadfile/mp4/test.mp4 ';
EXEC ($cmd, $status);
Make sure the EXEC function is turned on before running. Otherwise, modify the php.ini file
Finally attach ffmpeg+h264 extension +yasm+apache_mod_h264