Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ffmpeg中的av_log函数,用于输出到文件_Ffmpeg - Fatal编程技术网

ffmpeg中的av_log函数,用于输出到文件

ffmpeg中的av_log函数,用于输出到文件,ffmpeg,Ffmpeg,我正在使用av_log()将时间戳和帧记录到控制台。不幸的是,控制台没有管道到文件 我想知道是否有一种方法可以添加函数或其他选项来直接登录到文件,而不是控制台 感谢您的帮助 谢谢 Tilak您可能希望通过执行2>&1重定向 例如: 注意:重定向&>将所有stdout和stderr输出重定向到一个文件。 参考: 编辑:命令已更新。看起来您必须使用设置日志回调函数。在回调中,您可以根据需要格式化日志消息,然后将其写入文件。回调函数是您自己的函数,它与默认回调函数的签名相匹配: void av_log

我正在使用av_log()将时间戳和帧记录到控制台。不幸的是,控制台没有管道到文件

我想知道是否有一种方法可以添加函数或其他选项来直接登录到文件,而不是控制台

感谢您的帮助

谢谢


Tilak

您可能希望通过执行2>&1重定向

例如:

注意:重定向&>将所有stdout和stderr输出重定向到一个文件。 参考:


编辑:命令已更新。

看起来您必须使用设置日志回调函数。在回调中,您可以根据需要格式化日志消息,然后将其写入文件。回调函数是您自己的函数,它与默认回调函数的签名相匹配:

void av_log_default_callback    (   void *      avcl,
        int     level,
        const char *    fmt,
        va_list     vl 
    )

他问的是如何通过C API实现这一点,而不是使用bash。@Timothy_G,不完全是这样。他已经使用C API获取日志,但在编写文件时面临问题。而且,他的问题是,“是一种添加函数或其他选项直接登录到文件的方法”。如果你仍然认为我的答案不合适,那么就留下它,否则你可以删除-1。感谢Timothy和Balamurugan的评论。我最初的目标是使用C API,但我正在使用从控制台到文件的stderr。。我想检查日志,但是从API打印到一个文件会很整洁。@TilakVarisetty,所以,目前你能通过管道到一个文件吗?因为,我在你的问题中看到,“控制台没有管道到文件”,在这种情况下,我的回答本可以帮助你。@Balamurugan:是的,我现在可以管道到标准输出文件了。。我以前做这件事有困难。谢谢你的回答:)
void av_log_default_callback    (   void *      avcl,
        int     level,
        const char *    fmt,
        va_list     vl 
    )