c# - 如何向ffmpeg提供登录用户名和密码?

标签 c# asp.net ffmpeg

如何向 ffmpeg 提供用户名和密码以使其能够将数据写入 ftp 服务器中的某个文件夹?
该文件夹受密码保护,如果可能的话,我不想删除该密码。那么,我可以简单地将密码传递给ffmpeg吗?还是有其他解决方案?

从视频文件创建缩略图的 ffmpeg 进程示例

string thumbpath, thumbname, videofile;
videofile = "Video Source path";
thumbpath = "thumbnail path";
thumbname = thumbpath + "20120910160600.mjpeg";

string thumbargs = "-i \"" + videofile + "\" -vframes 1 -s 60*30 -ss 00:00:00 -f image2 \"" + thumbname + "\"";

Process process = new Process();

process.StartInfo.FileName = Server.MapPath("~\\ffmpeg\\bin\\ffmpeg.exe");
process.StartInfo.Arguments = thumbargs;

process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardInput = false;
process.StartInfo.RedirectStandardError = true;
process.StartInfo.CreateNoWindow = false;
process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;

新学习者,
请指导我......

最佳答案

如果您可以对要让 ffmpeg 写入的文件夹设置权限,则可以设置运行 ASP.NET 进程的帐户以具有写入权限。您可以通过配置应用程序池或 using impersonation 来控制 ASP.NET 在哪个帐户下运行。 .这是最简单的方法。

应用程序级别的模拟是通过将其放入 web.config 来完成的:

<identity impersonate="true" userName="accountname" password="password" />

这将导致 Web 应用程序始终以提供的用户身份运行。

如果要加强安全性,可以只让运行 ffmpeg 的进程在具有写入权限的用户下运行。您可以使用代码级模拟来实现这一点(如上面的模拟链接中所述)。

无论采用何种方法,ffmpeg 都不需要知道它以哪个用户身份运行。

关于c# - 如何向ffmpeg提供登录用户名和密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12363214/

相关文章:

c# - 使用存储过程更新命令

c# - 找不到 RedirectToLocal

c# - 当日志文件在 Log4Net 中翻转时,如何捕获事件以便我可以执行一些进一步的操作?

javascript - 防止 AjaxToolkit Accordion 打开

c# - "new"的不同用途在 C# 中可用

audio - 从中间或特定时间将视频合并到音频文件

opencv - 如何在 Windows 中使用 openCV FFMPEG 视频 I/O 而不是 DirectShow ?

c# - 动态查询 SQL Server

javascript - 使用 asp :button 调用 javascript

python - 无法在 opencv3.2(ubuntu,python3)中读取 mp4