libavcodec 和 php
我在这里看到 libavcodec 的 c 示例 http:// /cekirdek.pardus.org.tr/~ismail/ffmpeg-docs/api-example_8c-source.html 这是对音频和视频进行编码/解码(逐帧)。 我打算做这样的事情,但是在 php 中。
我想在上传的同时转换视频。 例如:用户上传 100mb 的视频。当服务器收到第一个数据时,它会进行转换,然后等待上传继续,依此类推。
有人可以帮助我吗? 谢谢
I see here an c example of libavcodec http://cekirdek.pardus.org.tr/~ismail/ffmpeg-docs/api-example_8c-source.html
This is encoding/decoding audio and video (frame by frame).
I intend to something like this but in php.
I want to convert a video in same time of uploading.
Ex: User upload a 100mb video. When server receive first data, it convert and then wait for upload to go on, and so on.
Can someone help me ?
Thank you
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用php将数据发送到ffmpeg的stdin。
http://www.ffmpeg.org/faq.html#SEC17
但是,您的更大问题是 php 在上传完成之前不会开始执行(至少在典型设置中)。你能做的基本上就是在 php 中实现一个 Web 服务器,使用可以监听端口 80 的套接字函数。
然后你可以从套接字读取数据并写入 ffmpeg 进程。
php 手册的这些部分可能会有所帮助。
http://us.php.net/manual/en/function.proc -open.php
.../en/ref.sockets.php
希望有帮助。
You can use php to send the data to stdin of ffmpeg.
http://www.ffmpeg.org/faq.html#SEC17
However, your bigger issue is that php won't start executing until the upload is done (at least in typical setups). What you can do is basically implement a web server in php, using the socket functions you can listen on port 80.
Then you can read from the socket and write to the ffmpeg process.
These sections of the php manual may be helpful.
http://us.php.net/manual/en/function.proc-open.php
.../en/ref.sockets.php
Hope that helps.