学无先后,达者为师

网站首页 编程语言 正文

ffmpeg开发读取目录列表

作者:reg183 更新时间: 2022-03-14 编程语言

新建文件ffmpeg_dir.c

#include<stdio.h>
#include<libavutil/avutil.h>
#include<libavformat/avformat.h>
int main(int argc,char* argv[]){
        int ret;
        av_register_all();
        AVIODirContext *ctx=NULL;
        AVIODirEntry *entry=NULL;
        av_log_set_level(AV_LOG_INFO);
        ret=avio_open_dir(&ctx,"../",NULL);

        if(ret<0){
                av_log(NULL,AV_LOG_ERROR,"can not open dir:%s\n",av_err2str(ret));
                goto __fail;
        }
        while(1){
                ret = avio_read_dir(ctx,&entry);
                if(ret<0){
                        av_log(NULL,AV_LOG_ERROR,"can not read dir:%s\n",av_err2str(ret));
                        goto __fail;
                }
                if(!entry){
                        break;
                }

                av_log(NULL,AV_LOG_INFO,"%12"PRId64" %s \n",entry->size,entry->name);
                avio_free_directory_entry(&entry);
        }
__fail:
        avio_close_dir(&ctx);
        return 0;
}

编译

[root@localhost c]# gcc -g -o ffmpeg_dir ffmpeg_dir.c `pkg-config --libs --cflags libavutil libavformat`

执行完成没有报错证明编译成功
查看是否生成了可执行文件ffmpeg_dir

执行下面的命令,执行结果如下,表明程序执行成功
在这里插入图片描述
这里列出了我的上一级目录的所有文件

原文链接:https://blog.csdn.net/chendongpu/article/details/123248134

栏目分类
最近更新