草庐IT

ffmpeg_output

全部标签

php - 安全地使用 exec 和 PHP 来运行 ffmpeg

我想从PHP运行ffmpeg以进行视频编码。我正在考虑使用exec或passthru命令。但是,有人警告我启用这些功能存在安全风险。用我的支持人员的话来说:Thedirective'disable_functions'isusedtodisableanyfunctionsthatallowtheexecutionofsystemcommands.Thisisformoresecurityoftheserver.ThesePHPfunctionscanbeusedtocracktheserverifnotusedproperly.我猜测如果启用了exec,那么有人可以(可能)执行任意un

php - 在PHP中如何使用md5()的raw_output返回值?

我在PHP方面经验不足,所以这对你们中的一些人来说可能很明显,但如果我在PHP中调用md5($mystring,true),它会返回“长度为16的原始二进制格式”。那是什么?它是一个数组吗?什么的数组?如何读取该返回值的各个位和字节?如果不直接进入base64_encode()或其他东西,我可以在网上找到的所有示例都没有使用它。例如,我只想能够检查第五位或第三个字节。 最佳答案 var_dump(md5("string",TRUE));“原始二进制格式”表示字符串(因为字符串在PHP中是二进制安全的):string(16)"�\��

FFmpeg入门详解之70:获取音视频流信息(Metadata)

用FFmpeg获取视频流+音频流的信息(编码格式、分辨率、帧率、播放时长...)简介我们经常需要知道一个媒体文件所包含的媒体流的信息,比如文件格式、播放时长、码率、视音频编码格式,视频分辨率,帧率,音频属性等信息。如何使用FFmpegAPI获取这些信息呢?媒体容器封装格式文件播放时长文件平均码率(视频+音频)视频属性(编码器名称、视频分辨率、帧率、编码码率)音频属性(编码器名称、采样率、声道数、编码码率)avformat_open_inputavformat_find_stream_info伪代码:///数据结构:大管家婆AVFormatContext*m_inputAVFormat

php - 在 PHP 中从没有 ffmpeg 的视频创建缩略图

我需要在不使用ffmpeg的情况下创建缩略图,因为我必须在共享主机上部署网站,而ffmpeg在共享主机上不可用。有人可以提出一些解决方案吗? 最佳答案 如果视频可以在浏览器中播放,您可以尝试使用html5的Canvas功能在Canvas中播放视频,然后使用javascript将视频中的静止图像发布到您的服务器...也许您甚至可以自动化它,或者如果您只有几十个视频,请手动完成...以下是一些jquery风格的javascript,用于上传base64编码的jpg以帮助您入门。(来自几个不同的项目,未经测试,可能是安全噩梦。)varvi

FFmpeg音频的编码流程详解及demo

        本文主要讲解FFmpeg的音频编码具体流程,API使用。最后再以一个非常简单的demo演示将一个音频原始数据pcm文件编码为AAC格式的音频文件。 本文主要基于FFmpeg音频编码新接口。一、FFmpeg音频编码API调用流程图    音频编码的API调用流程图如下:          API接口简单大体讲解如下:av_register_all():注册FFmpeg所有编解码器。avformat_alloc_context():初始化输出码流的AVFormatContext。avio_open():打开输出文件。av_new_stream():创建输出码流的AVStream。a

vue中好用的视频插件推荐,video+canvas实现视频截图第一帧,ffmpeg实现视频截图第一帧

最近做视频功能,看了一些视频相关的插件,发现下面两个还是比较好用,这里推荐一下:videojsMuiPlayervideojs应该很多人都知道,比较成熟的插件了这里是官网地址:https://videojs.com/然后MuiPlayer也是很不错跟videojs差不多都很好用,对比videojs优势应该就是文档更好阅读点对于英语不好的是个好事。https://muiplayer.js.org/zh/guide/我自己用了videojs,然后项目主要是做了视频的一个上传和视频的展示功能看看效果图:使用的话官方文档自己翻最后主要说一下我用了插件后踩的一些坑,特别是上传部分,其它的都还好。我项目需

php - 在 PHP : capture all outputs 中运行 Python 脚本

我有一个Python程序,其中有多个print语句。当我从PHP执行程序时,显示的输出只是最后一个print语句打印的值。有没有办法捕获Python脚本中所有print语句打印的值?PHP代码: 最佳答案 尝试使用shell_exec-通过shell执行命令并将完整的输出作为字符串返回escapeshellcmd()escapesanycharactersinastringthatmightbeusedtotrickashellcommandintoexecutingarbitrarycommands.将您的文件命名为-python

php - Zend 框架 : How can I tap into the final view output before it's sent to the browser?

我正试图在最终的xhtml输出作为字符串发送到浏览器之前访问它。Action和插件的postDispatch()方法似乎还为时过早。当我使用调试器单步执行Zend_Controller_Front::dispatch()方法时,我可以在$this->_response->sendResponse()之前以字符串形式访问所需的输出通过添加监视表达式$this->getResponse()->getBody()在最后调用。但是,似乎没有专门的Hook可以直接进入。我需要将最终响应正文作为字符串发送给PrinceXML以生成pdf。有人知道这样做的优雅方法吗?谢谢阿德里安

php - 如何使用 ffmpeg 和 PHP 创建图像?

我正在使用thisscript,但我无法创建图像。我的文件是here. 最佳答案 它不起作用,因为您从未执行过$cmd。要实际执行$cmd,您需要使用popen()、proc_open()或exec().试试这个功能。只要ffmpeg可访问,它就应该生成图像。要使其可访问,在Linux中将其添加到$path,在Windows中将其放入windows/system32文件夹。或者在Windows的控制面板中将其添加到环境变量中。/***ExtractThumb,extractsathumbnailfromavideo**Thisfun

php - 我应该在生产环境中打开或关闭 output_buffering 吗?

我即将启动一个网站,我正在检查我的php.ini以准备生产环境的所有设置。我正在考虑是将output_buffering保持打开、关闭还是将其设置为缓冲区限制(如4096)。打开或关闭output_buffer有什么优点或缺点吗?我读到关闭缓冲区会给你一些额外的性能,但在做出决定之前我应该​​知道什么吗?为什么要关闭它?为什么要保留它?为什么要保留缓冲区限制? 最佳答案 输出缓冲最常见的用法实际上是允许您的脚本通过打印/回显/等开始“写入”页面内容。但仍允许稍后在脚本中调用header()以正常工作(因为header只能在任何实际页