我需要安装 LAME MP3编码器 Libogg + Libvorbis Mencoder和Mplayer FFmpeg的,PHP 对于一个名为PHPmotion的脚本。 我有root访问权限,请所有人都一步一步来。 我对Linux命令相当舒服,但我不是一个专业人士。
我有一个PHP脚本的行: system("ffmpeg -i ……"); 输出文件夹设置为: drwxrwxr-x 5 apache apache 4096 Oct 19 07:40 in_upload 如果我以root身份从提示运行确切的文本“ffmpeg -i ……”,它工作正常。 但是如果脚本运行,只会创build一个零大小的文件。 任何想法可能是错的? 编辑1 我想我已经将问题本地化到了selinux 我尝试了http://www.php.net/manual/en/function.system.php#94929中推荐的解决scheme: <?php function my_exec($cmd, $input='') {$proc=proc_open($cmd, array(0=>array('pipe', 'r'), 1=>array('pipe', 'w'), 2=>a$ fwrite($pipes[0], $input);fclose($pipes[0]); $stdout=stream_get_contents($pipes[1]);fclose($pipes[1]); $stderr=stream_get_contents($pipes[2]);fclose($pipes[2]); $rtn=proc_close($proc); return array('stdout'=>$stdout, 'stderr'=>$stderr, 'return'=>$rtn ); } echo "1 "; echo shell_exec('ls'); echo "\n2 "; my_exec('ls'); echo "\n3 "; […]
我有一台运行CentOS 5.5的虚拟机,我用作stream媒体服务器。 如果我打开4个terminal并执行此操作: 1号航站楼: # mkfifo pipe1.avi # mkfifo pipe2.avi # ffserver & # ffmpeg -probesize 164000 -i pipe1.avi -async 1 -r 25 http://localhost:8090/feed1.ffm terminal2: # ffmpeg -i pipe2.avi -async 1 -r 25 -vcodec flv -f flv somename.flv terminal3: # mplayer -dumpstream rtp://someIp:somePort -dumpfile pipe1.avi terminal4: # mplayer -dumpstream rtp://someIp:somePort -dumpfile pipe2.avi 一切都很好。 没有任何问题。 现在我正在试图制作一个脚本,并从一个cron运行它。 […]
我想从ffmpeg文件中获取信息,如果在PHP中我有这样的代码: exec("ffmpeg -i ffmpeg_directory/4.flv"); 什么都不返回,甚至SSH里面的强大的同样的命令也会打印大量的文件信息(fps,duration等)。 但是这个命令正确地转换文件,所以我认为这是没有权限问题: exec("ffmpeg -i ffmpeg_directory/4.flv ffmpeg_directory/4.avi"); system()函数也是一样的。 任何想法为什么这个-i命令不会返回任何东西?
我试图让ffmpeg在Centos 6机器上运行,并且整个过程都是一帆风顺的。 我以为我已经得到它,但是当我去使用ffmpeg我得到的错误: ffmpeg: error while loading shared libraries: libswresample.so.0: cannot open shared object file: No such file or directory 我查看了/ usr / local / lib,这是所有库存储的地方,我没有那个确切的文件,但是我有“libswresample.a”。 由于各种问题,我放弃了正式的FFMPEG Centos方向,并且使用yum进行安装。 我在哪里可以find缺less的库,并且可以将文件放在我的/ usr / local / lib文件夹中进行修复? 谢谢 – 有一个基本的Linux理解,比Centos更熟悉Ubuntu。
我正在尝试使用ffmpeg启动一个rtmp代码转换器服务器; 接收udp MPEG-TSstream作为input,对其进行转码; 并生成一个rtmp输出到一个URL,可以由用户访问接收和播放rtmpstream。 所有这些预计将在一个局域网中执行,输出被所有用户访问。 1)首先我不知道URL应该指向哪里。 是否足够指定系统的IP和一些可选的端口? 程序是否应该在该端口上进行监听是否有必要? 2)我如何在URL上播放stream? 我使用一个Linux的Ubuntu的机器,IP = 10.1.1.229,我想在这个URL转码组播stream: udp://@224.10.1.1:2001 。 这里是用于转码inputstream并生成rtmp url“rtmp://10.1.1.229:2020”的命令。 ffmpeg -y -f mpegts -i "udp://@224.10.1.1:2001" -re -vcodec libx264 -maxrate 700k -r 25 -s 640×360 -deinterlace -acodec libfaac -ab 64k -ac 1 -ar 44100 -f flv "rtmp://10.1.1.229:2020" 这里是我试图播放rtmpstream的命令: ffplay rtmp://10.1.1.229:2020 任何指导将是有益的。 谢谢。
我的公司有一大堆我们分发的IP摄像机,特别是Grandstream,制造商已经改变了他们的固件。 ffmpeg用于rtspstream(ff_rtsp_send_cmd_async(s,“GET_PARAMETER”,rt-> control_uri,NULL)或ff_rtsp_send_cmd_async(s,“OPTIONS”,“*”,NULL)的常规保持活动;都位于libavformat / rtspdec中.c)不再有效,原因有二: 1)新的Grandstream固件现在正在检查接收器报告,以确定读取stream的程序是否是实时的,而不仅仅是任何事情。 2)新的Grandstream固件要求接收器报告至less每25秒保持一次连接,而audiostream目前只发生约30秒左右的事件(video每7秒钟左右收到一次)。 因此,ffmpeg连接大约一分钟后,摄像机停止发送audiostream,ffmpeg上的audiostream读取文件结束,然后ffmpegclosures所有内容。 由于我无法更改固件,我试图挖掘ffmpeg代码,使它发送适当的接收器报告保持活着…但我没有得到任何地方。 我已经在接收器报告中添加了一小段代码,所以我知道在debugging时调用ffmpeg的时候他们正在运行,但是… …不好。 testing命令:ffmpeg -loglevel debug -i rtsp:// admin:[email protected]:554/0 -acodec libmp3lame -ar 22050 -vcodec copy -y -f flv / dev / null&> test.txt testing输出: `[root@localhost ffmpeg]# cat test.txt ffmpeg version 2.0 Copyright (c) 2000-2013 the FFmpeg developers built on Aug 21 2013 14:24:28 with gcc 4.4.7 (GCC) […]
当我search这个错误时,在CentOS中似乎更常见,但我使用的是Ubuntu 15.10。 我的问题是,我已经在ffmpeg-php的网站上进行了这个安装,在执行这个命令时我遇到了一个错误。 ./configure && make 我收到以下错误是 checking for grep that handles long lines and -e… /bin/grep checking for egrep… /bin/grep -E checking for a sed that does not truncate output… /bin/sed checking for cc… cc checking whether the C compiler works… yes checking for C compiler default output file name… a.out checking for suffix […]
我目前提供给我的用户上传自己的video的选项,并将其转换为我的网站上的FLV和MP4。 这里是物stream: 1)用户上传video到网站上 2)然后将原始video(通过SFTP)传输到另一个托pipe服务提供商,然后使用FFMpeg将video转换为FLV和MP4。 这适用于小video,但是,我发现了一些问题: 1)看来,video并不总是编码正确(这可能是由于我需要改善与FFMpeg) 2)我目前的主机供应商不是一个“stream媒体”解决scheme,因此,video播放起来可能很慢,有点难以处理。 我希望收到一些意见,因为我的网站不断增长,这个解决scheme将更加有利和简化。 我看了嘿!注意作为一个可能的解决scheme,但他们不提供托pipe。 我也看了一下pandas,但我不知道如何(或如果),将与我目前的主机提供商整合。 总的来说,我正在寻找video的3个重要组成部分:1)转换为FLV和M4V(< – iPhone的格式,iPod的权利?) 2)半速度(慢动作)的能力。 3)能够创build缩略图 3)stream媒体服务器 任何build议在不同的提供者是可靠的,可以帮助我将不胜感激。 谢谢!
我无法安装自定义生成ffmpeg 0.9.1 rpm。当我尝试安装,我得到以下内容: 错误:失败的依赖关系: ffmpeg-0.9.1-1.i386需要libfaac.so.0 libmp3lame.so.0是ffmpeg-0.9.1-1.i386所必需的 libopencore-amrnb.so.0是ffmpeg-0.9.1-1.i386所必需的 ffmpeg-0.9.1-1.i386需要libopencore-amrwb.so.0 libtheoradec.so.1是ffmpeg-0.9.1-1.i386所必需的 libtheoradec.so.1(libtheoradec_1.0)需要ffmpeg-0.9.1-1.i386 libtheoraenc.so.1是ffmpeg-0.9.1-1.i386所必需的 libtheoraenc.so.1(libtheoraenc_1.0)需要ffmpeg-0.9.1-1.i386 ffmpeg-0.9.1-1.i386需要libvo-aacenc.so.0 ffmpeg-0.9.1-1.i386需要libvpx.so.0 然而,依赖文件位于/usr/loca/lib.These库编译和安装使用gnu make.Must我安装这些库的rpm版本以满足依赖? 谢谢。