Am new to php. With some of the reference to the posts on Stackoverflow, i've tried out the method to convert an mp3 audio file to ogg simultaneously while uploading to the server, initially i checked on my localhost, i always got an output int(1) in response for var_dump($output), but i cant see the ogg converted file saved anywhere in folder. Can any please guilde, its urgent. My questions are:
1) Do i need to provide path for both input and output files, if yes then, did i mention properly in code here.
2) where exactly i need to save/place the entire ffmpeg folder / ffmpeg.exe
3) Are all the path mentioned w.r.t the input and output file proper in code here ?
passthru("/admin/ffmpeg32/bin/ffmpeg.exe -i audioUpload/".$_FILES['audio_file']['name']." -vcodec libtheora -acodec libvorbis -target ./ffmpeg32/ogg/$file_name".".ogg",$output);
var_dump($output);
Related
I host a site on a Linux server that I built with php where I am able to upload audio files in one section and video files to another.
Each section uses php to upload a single audio file and a single video file. Each upload is assigned a unique filename so they can be viewed separately on an individual page where the uploader can post comments about their audio or video.
I want to be able to allow musicians and performers in the local area display their work. The site works, but large video files do not upload and my audio player only plays a few formats, and I like to convert them all to mp3's.
I installed ffmpeg on my linux server to help me with this and am able to connect to it with my terminal. My question is how do I get ffmpeg to interface with my uploaded php files.
For example, as the user uploads an audio file, can I have ffmpeg convert it while it's uploading, or do I need to set up a temporary folder for uploads, store it there, then have ffmpeg compress the file, convert it to a specific format and save it in another folder?
I would prefer to have it compress and change the format while it's uploading so as not to use server space, but if this is not the way ffmpeg works, then I don't have a choice. Any help would be appreciated.
It is NOT possible to transcode while uploading. But, it is possible to transcode all your videos to mp4 files and all your audio files to mp3 files using ffmpeg command which you can call from your PHP code using exec statements.
H264 BP is the video codec which is almost universal and supports most of the platforms devices, browsers, players etc. AAC is the best audio codec to use for online streaming.
So, convert all your videos with following exec statementin PHP.
exec("ffmpeg -i INPUT.avi -r 25 -b:v 1M -pass 1 -c:v libx264 -profile:v baseline -c:a aac -strict experimental -b:a 192k OUTPUT.mp4");
And convert all your audios with following exec statement in PHP.
exec("ffmpeg -i INPUT.wav -c:a aac -strict experimental -b:a 192k OUTPUT.mp3");
I once had the opportunity to work on such task around 4 years back. I still remember how I did this.
I installed ffmpeg and it should work using commands as well on shell. I used exec library of php to execute ffmpeg commands which converted video files into desired format i.e mp4. You better check out exec and learn ffmpeg command to convert file into desired format. Hope it helps
Just started using PHPVideoToolkit and I'm looking to take an MP3 and convert it to a video. I want to have a single image as the video with the audio playing.
On the Google Code page https://code.google.com/p/phpvideotoolkit/ it says it can assemble a video stream from a set of separate video images so I know it's possible but I cannot figure out how from the GitHub documentation.
The documentation found in the documentation directory of the repository appear to be empty.
Help is much appreciated
You can use ffmpeg
Turning Images into Video
ffmpeg -f image2 -i image%d.jpg video.mpg
This command will transform all the images from the current directory (named image1.jpg, image2.jpg) to a video file named video.mpg.
Playing music in the video
ffmpeg -i song.wav -i video.avi video_finale.mpg
This command will add a song.wav in video.avi and give a final video_final.mpg
I have a php upload script that converts MP3 files after they have been uploaded. I am keeping the mp3 file which is why I am doing it afterwards. A copy is created and then that is converted to ogg. The problem i am having is with FFMPEG as it is just not doing anything. I have never used FFMPEG or a tool like it before, nor have I used PHP's exec() function so I really have no idea how to use it but I have had a thorough look around for my answer before I came here.
exec("ffmpeg -i ".$target_path."".$hash_filename.".".$path_extension." ".$hash_filename.".ogg");
What the function could look like with data instead of variables:
ffmpeg -i ../uploads/ee78d5deb564901626067cc0008456ed.mp3 ee78d5deb564901626067cc0008456ed.ogg
I have checked with SSH and FFMPEG is located under the usual usr/bin/ffmpeg. I wondered if I should be targeting the file from where FFMPEG is or where the phpscript is but I have had no luck with either. Perhaps I am still targeting it from the wrong place?
I have checked and the codecs required for mp3 to ogg conversion are installed. I did also try adding those codecs into the command but the same thing happened. I understand FFMPEG automatically chooses which codecs to use so I ommited them.
I am trying to generate first frame of a swf as a thumbnail image so the user can see it before they open the swf file.
1.Using FFMpeg
ffmpeg -i movie.swf -f image2 -vcodec png movie%d.png
using command line with ffmpeg to generate images. the above command will
give me errors saying
[swf # 0x17937a0] Compressed SWF format not supported
2.Using swftools
Their website provide a tar file to download however, I only have the command line access in the server so I won't be able to install the tools.
I need to use server side technology because I have hundreds of swf files.
p7zip e movie.swf
ffmpeg -i movie~.swf movie.png
Most SWF files are compressed to save space, similar to a .tar.gz or .zip. So before you can use it with FFmpeg, you need to extract or decompress the file.
p7zip is a
command line program
that can extract SWF.
I'm setting up a podcast. For cross-browser support, I currently need to upload a mp3 file and an ogg file. I'd like to simplify that process to uploading one of many audio files, that converts on the server into one mp3 and one ogg, then drops it into a folder. Is this possible?
Thanks!
For your purpose you need to use ffmpeg for the conversion and eventually ffmpeg-php.
Like:
<?php
system ('ffmpeg -i /tmp/a.wav -ar 22050 /tmp/a.mp2', $retval); // took from the ffmpeg documentation. it's just an example
// add " > /dev/null &" if you want to execute in background
?>