
Recherche avancée
Médias (1)
-
Spitfire Parade - Crisis
15 mai 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
Autres articles (105)
-
MediaSPIP 0.1 Beta version
25 avril 2011, parMediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
The zip file provided here only contains the sources of MediaSPIP in its standalone version.
To get a working installation, you must manually install all-software dependencies on the server.
If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...) -
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 septembre 2013, parCertains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;
-
Websites made with MediaSPIP
2 mai 2011, parThis page lists some websites based on MediaSPIP.
Sur d’autres sites (11800)
-
Store converted video in a buffer to transfer to S3
24 mai 2012, par ChrisI have a system set up to upload an image, take that temporarily uploaded file, convert it to a resized jpeg, read the buffer of that conversion and send the buffer to amazon S3 for storage as an image. It works wonderfully because no permanent file is stored on the my server, everything is on S3.
Now I am attempting to add this same functionality but with video. The process goes through, but the resulting files stored on Amazons S3 servers are 1.5kb a piece, instead of multimb videos.
My code is as follows :
public function transfer($method, $file, $bucketName, $filename, $contentType){
switch($method){
case 'file':
if($this->s3->putObject($this->s3->inputFile($file, false), $bucketName, $filename, S3::ACL_PUBLIC_READ, array(), $contentType))
return true;
else
return false;
break;
case 'string':
if ($this->s3->putObject($file, $bucketName, $filename, S3::ACL_PUBLIC_READ, array(), $contentType))
return true;
else
return false;
break;
case 'resource':
if($this->s3->putObject($this->s3->inputResource(fopen($file, 'rb'), filesize($file)), $bucketName, $filename, S3::ACL_PUBLIC_READ, array(), $contentType))
return true;
else
return false;
break;
}
return false;
}
/**
* AmazonS3Handler - convert()
*/
public function convert($file, $type)
{
$ffmpeg = "/usr/bin/ffmpeg";
$cmd['webm'] = $ffmpeg. " -i ". $file ." -vcodec libvpx -acodec libvorbis -ac 2 -f webm -g 30 2>&1";
$cmd['ogv'] = $ffmpeg. " -i ". $file ." -vcodec libtheora -acodec libvorbis -ac 2 2>&1";
$cmd['mp4'] = $ffmpeg. " -i ". $file ." -vcodec libx264 -acodec libfaac -ac 2 2>&1";
$cmd['jpg'] = $ffmpeg. " -i ". $file ." -vframes 30";
ob_start();
passthru($cmd[$type]);
$fileContents = ob_get_contents();
ob_end_clean();
return $fileContents;
}From my understanding, passthru should return raw output which could be picked up by the output buffer.
Am I doing something wrong ? Is there a better way to convert a video on my servers but keep the data on S3 ?
Thanks !
EDIT : I've boiled it down to the executing of the command. FFMPEG wasn't being located, so I changed the path to "/usr/bin/ffmpeg", no more error 127, now when I run exec() (not passthru) I get error 1
EDIT2 : Here is the output of running the script :
Array
(
[0] => ffmpeg version 0.7.3-4:0.7.3-0ubuntu0.11.10.1, Copyright (c) 2000-2011 the Libav developers
[1] => built on Jan 4 2012 16:08:51 with gcc 4.6.1
[2] => configuration: --extra-version='4:0.7.3-0ubuntu0.11.10.1' --arch=amd64 --prefix=/usr --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --enable-libvpx --enable-runtime-cpudetect --enable-vaapi --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libdc1394 --enable-shared --disable-static
[3] => libavutil 51. 7. 0 / 51. 7. 0
[4] => libavcodec 53. 6. 0 / 53. 6. 0
[5] => libavformat 53. 3. 0 / 53. 3. 0
[6] => libavdevice 53. 0. 0 / 53. 0. 0
[7] => libavfilter 2. 4. 0 / 2. 4. 0
[8] => libswscale 2. 0. 0 / 2. 0. 0
[9] => libpostproc 52. 0. 0 / 52. 0. 0
[10] =>
[11] => Seems stream 1 codec frame rate differs from container frame rate: 2000.00 (2000/1) -> 30.30 (1000/33)
[12] => Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'iv.m4v':
[13] => Metadata:
[14] => major_brand : M4V
[15] => minor_version : 1
[16] => compatible_brands: M4V M4A mp42isom
[17] => creation_time : 2012-01-23 04:00:18
[18] => encoder : Mac OS X v10.7.2 (CMA 889, CM 705.42, x86_64)
[19] => Duration: 00:00:11.70, start: 0.000000, bitrate: 345 kb/s
[20] => Stream #0.0(und): Audio: aac, 44100 Hz, stereo, s16, 125 kb/s
[21] => Metadata:
[22] => creation_time : 2012-01-23 04:00:18
[23] => Stream #0.1(und): Video: h264 (Main), yuv420p, 640x360 [PAR 1:1 DAR 16:9], 206 kb/s, 30.30 fps, 30.30 tbr, 1k tbn, 2k tbc
[24] => Metadata:
[25] => creation_time : 2012-01-23 04:00:18
[26] => iv.webm: Permission denied
)It looks like the permissions aren't set right, however the file has chmod 777 permissions. What other permissions need to get changed ?
-
Create stopmotion video with ffmpeg - error while rendering
30 mai 2012, par NiklasI'm currently creating a stopmotion video with the help of ffmpeg and some scripts I've made. Although in the last clip I attempted to render I had a couple of frames which I've edited. The method I'm using has worked before so I'm certain that it has to do with GIMP changing something with the files. I work with .png-images. This is the command and the output I get :
ffmpeg -sameq -f image2 -r 7 -i "$src_dir/frame-%06d.png" -r 25 "$dest_dir/$file_name.avi"
output :
ffmpeg version 0.8.1-4:0.8.1-0ubuntu1, Copyright (c) 2000-2011 the Libav developers
built on Mar 22 2012 05:09:06 with gcc 4.6.3
This program is not developed anymore and is only provided for compatibility. Use avconv instead (see Changelog for the list of incompatible changes).
Input #0, image2, from '/mnt/storage/selected_frames/005-Middag-Animation/frame-%06d.png':
Duration: 00:00:02.85, start: 0.000000, bitrate: N/A
Stream #0.0: Video: png, bgra, 1280x720, 7 fps, 7 tbr, 7 tbn, 7 tbc
File '/mnt/storage/Videoklipp//005-Middag-Animation.avi' already exists. Overwrite ? [y/N] y
Incompatible pixel format 'bgra' for codec 'mpeg4', auto-selecting format 'yuv420p'
[buffer @ 0x1b88860] w:1280 h:720 pixfmt:bgra
[avsink @ 0x1b8a480] auto-inserting filter 'auto-inserted scaler 0' between the filter 'src' and the filter 'out'
[scale @ 0x1b8ab80] w:1280 h:720 fmt:bgra -> w:1280 h:720 fmt:yuv420p flags:0x4
Output #0, avi, to '/mnt/storage/Videoklipp//005-Middag-Animation.avi':
Metadata:
ISFT : Lavf53.21.0
Stream #0.0: Video: mpeg4, yuv420p, 1280x720, q=2-31, 2 kb/s, 25 tbn, 25 tbc
Stream mapping:
Stream #0.0 -> #0.0
Press ctrl-c to stop encoding
[buffer @ 0x1b88860] Changing frame properties on the fly is not supported.
Last message repeated 6 times
frame= 13 fps= 0 q=0.0 Lsize= 524kB time=2.20 bitrate=1951.2kbits/s
video:517kB audio:0kB global headers:0kB muxing overhead 1.323318%"[buffer @ 0x1b88860] Changing frame properties on the fly is not supported"
What can I do to fix this ? Any help is appreciated :)
-
Segmenting an audio stream or audio only file
15 janvier 2013, par Luuk D. JansenThere is need for an audio only link for HTTP-live streaming. I now use the segmenter in FFMPEG for the video, and that works great. However, when giving an audio-file the segmenter does not seem to work, just creates one segment.
The call to FFMPEG for the segmentation is :
ffmpeg -i data/media/1/2/encoded.mp3 -y -c copy -flags global_header
-map 0 -f segment -segment_time 10 -segment_list data/media/1/2/fileList.txt -segment_format libmp3lame
data/media/1/2/segment_%05d.mp3I did put as the -segment_format 'libmp3lame' in, but it doesn't seem to make a difference.
The first step is the encoding, this is the bedbug output :
20:11:36,158 DEBUG ~ FFMPEG: ffmpeg version 0.10.2.git-d3d5e84 Copyright (c) 2000-2012 the FFmpeg developers
20:11:36,158 DEBUG ~ FFMPEG: built on May 2 2012 19:00:38 with clang 3.0 (tags/Apple/clang-211.10.1)
20:11:36,158 DEBUG ~ FFMPEG: configuration: --prefix=/opt/local --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libdirac --enable-libschroedinger --enable-libopenjpeg --enable-libmodplug --enable-libxvid --enable-libx264 --enable-libvpx --enable-libspeex --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/usr/bin/clang --arch=x86_64 --enable-yasm
20:11:36,158 DEBUG ~ FFMPEG: libavutil 51. 44.100 / 51. 44.100
20:11:36,158 DEBUG ~ FFMPEG: libavcodec 54. 12.100 / 54. 12.100
20:11:36,158 DEBUG ~ FFMPEG: libavformat 54. 3.100 / 54. 3.100
20:11:36,158 DEBUG ~ FFMPEG: libavdevice 53. 4.100 / 53. 4.100
20:11:36,158 DEBUG ~ FFMPEG: libavfilter 2. 66.101 / 2. 66.101
20:11:36,158 DEBUG ~ FFMPEG: libswscale 2. 1.100 / 2. 1.100
20:11:36,158 DEBUG ~ FFMPEG: libswresample 0. 10.100 / 0. 10.100
20:11:36,158 DEBUG ~ FFMPEG: libpostproc 52. 0.100 / 52. 0.100
20:11:36,162 DEBUG ~ FFMPEG: Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'data/media/1/1/test.m4a':
20:11:36,162 DEBUG ~ FFMPEG: Metadata:
20:11:36,162 DEBUG ~ FFMPEG: major_brand : mp42
20:11:36,162 DEBUG ~ FFMPEG: minor_version : 1
20:11:36,163 DEBUG ~ FFMPEG: compatible_brands: mp42mp41
20:11:36,163 DEBUG ~ FFMPEG: creation_time : 2011-12-07 18:53:04
20:11:36,163 DEBUG ~ FFMPEG: Duration: 00:00:24.20, start: 0.000000, bitrate: 40 kb/s
20:11:36,163 DEBUG ~ FFMPEG: Stream #0:0(eng): Audio: aac (mp4a / 0x6134706D), 22050 Hz, stereo, s16, 39 kb/s
20:11:36,163 DEBUG ~ FFMPEG: Metadata:
20:11:36,163 DEBUG ~ FFMPEG: creation_time : 2011-12-07 18:53:04
20:11:36,163 DEBUG ~ FFMPEG: handler_name : Apple Sound Media Handler
20:11:36,170 DEBUG ~ FFMPEG: [mpegts @ 0x7fe4c404d000] muxrate VBR, pcr every 4 pkts, sdt every 200, pat/pmt every 40 pkts
20:11:36,171 DEBUG ~ FFMPEG: Output #0, mpegts, to '/Users/Luuk/Documents/Java/idoms-server/data/media/1/2/encoded.mp3':
20:11:36,171 DEBUG ~ FFMPEG: Metadata:
20:11:36,171 DEBUG ~ FFMPEG: major_brand : mp42
20:11:36,171 DEBUG ~ FFMPEG: minor_version : 1
20:11:36,171 DEBUG ~ FFMPEG: compatible_brands: mp42mp41
20:11:36,171 DEBUG ~ FFMPEG: creation_time : 2011-12-07 18:53:04
20:11:36,171 DEBUG ~ FFMPEG: encoder : Lavf54.3.100
20:11:36,171 DEBUG ~ FFMPEG: Stream #0:0(eng): Audio: mp3, 48000 Hz, stereo, s16, 64 kb/s
20:11:36,171 DEBUG ~ FFMPEG: Metadata:
20:11:36,171 DEBUG ~ FFMPEG: creation_time : 2011-12-07 18:53:04
20:11:36,171 DEBUG ~ FFMPEG: handler_name : Apple Sound Media Handler
20:11:36,171 DEBUG ~ FFMPEG: Stream mapping:
20:11:36,171 DEBUG ~ FFMPEG: Stream #0:0 -> #0:0 (aac -> libmp3lame)
20:11:36,171 DEBUG ~ FFMPEG: Press [q] to stop, [?] for help
20:11:36,673 DEBUG ~ FFMPEG: size= 109kB time=00:00:12.79 bitrate= 69.5kbits/s
20:11:37,156 DEBUG ~ FFMPEG: size= 209kB time=00:00:24.24 bitrate= 70.7kbits/s
20:11:37,156 DEBUG ~ FFMPEG: video:0kB audio:190kB global headers:0kB muxing overhead 10.301383%Then the next is the segmentation (version 0.10.2 cannot do both at the same time yet) :
20:11:37,211 DEBUG ~ FFMPEG: ffmpeg version 0.10.2.git-d3d5e84 Copyright (c) 2000-2012 the FFmpeg developers
20:11:37,212 DEBUG ~ FFMPEG: built on May 2 2012 19:00:38 with clang 3.0 (tags/Apple/clang-211.10.1)
20:11:37,212 DEBUG ~ FFMPEG: configuration: --prefix=/opt/local --enable-gpl --enable-postproc --enable-swscale --enable-avfilter --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libdirac --enable-libschroedinger --enable-libopenjpeg --enable-libmodplug --enable-libxvid --enable-libx264 --enable-libvpx --enable-libspeex --mandir=/opt/local/share/man --enable-shared --enable-pthreads --cc=/usr/bin/clang --arch=x86_64 --enable-yasm
20:11:37,212 DEBUG ~ FFMPEG: libavutil 51. 44.100 / 51. 44.100
20:11:37,212 DEBUG ~ FFMPEG: libavcodec 54. 12.100 / 54. 12.100
20:11:37,212 DEBUG ~ FFMPEG: libavformat 54. 3.100 / 54. 3.100
20:11:37,212 DEBUG ~ FFMPEG: libavdevice 53. 4.100 / 53. 4.100
20:11:37,212 DEBUG ~ FFMPEG: libavfilter 2. 66.101 / 2. 66.101
20:11:37,212 DEBUG ~ FFMPEG: libswscale 2. 1.100 / 2. 1.100
20:11:37,212 DEBUG ~ FFMPEG: libswresample 0. 10.100 / 0. 10.100
20:11:37,212 DEBUG ~ FFMPEG: libpostproc 52. 0.100 / 52. 0.100
20:11:37,226 DEBUG ~ FFMPEG: [mpegts @ 0x7fccc2049800] max_analyze_duration 5000000 reached at 5016000
20:11:37,226 DEBUG ~ FFMPEG: Input #0, mpegts, from '/Users/Luuk/Documents/Java/idoms-server/data/media/1/2/encoded.mp3':
20:11:37,226 DEBUG ~ FFMPEG: Duration: 00:00:24.12, start: 1.376978, bitrate: 71 kb/s
20:11:37,226 DEBUG ~ FFMPEG: Program 1
20:11:37,226 DEBUG ~ FFMPEG: Metadata:
20:11:37,226 DEBUG ~ FFMPEG: service_name : Service01
20:11:37,226 DEBUG ~ FFMPEG: service_provider: FFmpeg
20:11:37,226 DEBUG ~ FFMPEG: Stream #0:0[0x100](eng): Audio: mp3 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16, 64 kb/s
20:11:37,226 DEBUG ~ FFMPEG: Output #0, segment, to '/Users/Luuk/Documents/Java/idoms-server/data/media/1/2/segment_%05d.mp3':
20:11:37,226 DEBUG ~ FFMPEG: Metadata:
20:11:37,226 DEBUG ~ FFMPEG: encoder : Lavf54.3.100
20:11:37,226 DEBUG ~ FFMPEG: Stream #0:0(eng): Audio: mp3 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, 64 kb/s
20:11:37,226 DEBUG ~ FFMPEG: Stream mapping:
20:11:37,226 DEBUG ~ FFMPEG: Stream #0:0 -> #0:0 (copy)
20:11:37,226 DEBUG ~ FFMPEG: Press [q] to stop, [?] for help
20:11:37,238 DEBUG ~ FFMPEG: size= 0kB time=00:00:24.28 bitrate= 0.0kbits/s
20:11:37,238 DEBUG ~ FFMPEG: video:0kB audio:190kB global headers:0kB muxing overhead -100.000000%