ffmpeg capture decklink

确保decklink设备已经接入

lspci | grep Blackm

02:00.0 Multimedia video controller: Blackmagic Design DeckLink SDI
Micro

确保decklink驱动已经正确安装

lsmod | grep blackmagic

blackmagic_io 2068480 2

确保ffmpeg已经启用decklink,如何配置之前的博文已经提到。

ffmpeg -devices

DE alsa ALSA audio output DE decklink Blackmagic
DeckLink output

查看decklink在ffmpeg中对应的设备名称

ffmpeg -sources

ffmpeg -sources

Auto-detected sources for decklink: 92:a08498c0:00000000 [DeckLink
SDI Micro] (none)

查看ffmpeg支持decklink的各种参数

ffmpeg -h demuxer=decklink

ffmpeg官网上有decklink的参数解释
http://ffmpeg.org/ffmpeg-all.html#decklink-1

以下是伪代码:

  AVDictionary *options = NULL;
    // av_dict_set(&options, "video_size", "640x480", 0);
    // av_dict_set(&options, "framerate", "30", 0);
    // av_dict_set(&options, "pixel_format", "yuyv422,", 0);
    // av_dict_set(&dict, "video_size", "1280*720", AV_DICT_MATCH_CASE);
    // av_dict_set(&dict, "framerate", "10", AV_DICT_MATCH_CASE);
    //以上参数如果不设置的话,就会用默认值,但默认值摄像头不一定支持
    int re = avformat_open_input(&ic, "92:a08498c0:00000000", ifmt, &options);
    if (re != 0)
    {
        printf("无法打开输入流\n");
        ErrorFunc(re);
    }
    re = avformat_find_stream_info(ic, NULL);
    int video_index = -1;
    for (int i = 0; i < ic->nb_streams; i++)
    {
        if (ic->streams[i]->codecpar->codec_type == AVMEDIA_TYPE_VIDEO)
        {
            // ic->streams[i]->codecpar
            video_index = i;
        }
    }
    printf("ic->streams[i]->codecpar-W:%d\n", ic->streams[video_index]->codecpar->width);
    printf("ic->streams[i]->codecpar-H:%d\n", ic->streams[video_index]->codecpar->height);
    printf("ic->streams[i]->codecpar-F:%d\n", ic->streams[video_index]->avg_frame_rate);

程序打印如下:

[decklink @ 0x559c264d8f00] Autodetected the input mode [decklink @
0x559c264d8f00] Found Decklink mode 1280 x 720 with rate 60.00
ic->streams[i]->codecpar-W:1280 ic->streams[i]->codecpar-H:720
ic->streams[i]->codecpar-F:60

ffmpeg当作测试用decklink可以,产品级还是很难。
有以下现象:
第一次接入信号前,用avformat_open_input打不开设备,接入信号后,可以打开,此时中途关闭,av_read_frame依然可以读到彩条和静音。此时接入拔出信号,ffmpeg都有日志提示,但我并没有找到对应的api能够检索到信号是否接入的反馈。
因此有以下问题:
1.不知道什么时候会接入第一次信号,因此需要不停avformat_open_input。
2.第一次接入信号拔掉后是彩条,但第二次接入的信号分辨率可能会变化,因此需要重新open,但ffmpeg并不知道什么时候会第二次接入信号。

ffmpeg是音视频必备,但即使从业数年,它似乎依然有无穷的秘密,感兴趣添加笔者微信:YQW1163720468,加入ffmpeg微信群讨论。但记得备注:ffmpeg爱好者

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/30735.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

岩土工程监测案例:完整链条的振弦传感器、采集仪和在线监测系统

岩土工程监测案例&#xff1a;完整链条的振弦传感器、采集仪和在线监测系统 在岩土工程监测中&#xff0c;振弦传感器被广泛应用于测量土体或岩体的振动情况&#xff0c;以了解地震或其他振动事件对结构物或地基的影响。振弦传感器具有高精度、快速响应、易于安装和低成本等优…

C语言指针初阶+进阶(看这一篇就够了)

目录 本章重点 1. 指针是什么 2. 指针和指针类型 3. 野指针 4. 指针运算 5. 指针和数组 6. 二级指针 7. 指针数组 8. 字符指针 9.数组指针 10. 指针数组 11数组传参和指针传参 12. 函数指针 13. 函数指针数组 14. 指向函数指针数组的指针 15. 回调函数 16 指针和数组面试题的解…

c++lambda函数笔记

1、labmda函数用途&#xff1a; 用于简短功能函数的定义&#xff0c;并传递到std算法中。 2、一般函数与lambda函数比较示例 3、如何定义lambda 如下为lambda通用定义式子&#xff1a; [capture] (params) opt->ret{body;}; capture——捕获列表&#xff0c;[]为不捕获变量…

制造执行系统(MES)的核心功能是什么?

制造执行系统&#xff08;MES&#xff09;的核心功能是什么? 01 什么是MES 制造执行系统&#xff08;MES&#xff09;是一种用于监控、控制和优化制造过程的软件系统。它通过与企业资源计划&#xff08;ERP&#xff09;系统和自动化系统的集成&#xff0c;实现对生产过程的管…

基于MATLAB的无人机遥感数据预处理与农林植被性状估算

在新一轮互联网信息技术大发展的现今&#xff0c;无人机、大数据、人工智能、物联网等新兴技术在各行各业都处于大爆发的前夜。为了将人工智能方法引入农业生产领域。首先在种植、养护等生产作业环节&#xff0c;逐步摆脱人力依赖&#xff1b;在施肥灌溉环节构建智慧节能系统&a…

DBSyncer安装_配置postgresql和mysql_sqlserver_oracel全量增量同步---数据全量增量同步之DBSyncer001

国内做开源的大神做的,用了一下还可以,就是不能和Phoenix这种操作hbase等数据库一起用, https://gitee.com/ghi/dbsyncer#postgresql 这个是官网,下载安装非常简单,官网也有中文详细说明. 直接下载安装包: 然后解压到某个地方,主要要用unzip dbsyncer.zip -d /opt/module这样…

Docker中为RabbitMQ安装rabbitmq_delayed_message_exchange插件

Docker中为RabbitMQ安装rabbitmq_delayed_message_exchange插件 1、前言1、下载插件2、拷贝插件到RabbitMQ容器3、启用插件 1、前言 rabbitmq_delayed_message_exchange是一款向RabbitMQ添加延迟消息传递&#xff08;或计划消息传递&#xff09;的插件。 插件下载地址&#x…

【加强版】SAX解析XML返回对应格式的Map对象(解决元素递归嵌套)

SAX解析XML返回对应格式的Map对象_辛丑年正月十五的博客-CSDN博客 前言 上篇文章实现了xml元素节点的解析并返回了对应格式的Map对象&#xff0c;但是遗留了一个问题&#xff0c;就是当xml中的元素存在递归嵌套时就解析不了&#xff0c;因为qname属性会重复&#xff0c;导致后…

mysql 集群 MGR

mysql安装&#xff08;3台服务&#xff09; 1下载 wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz 2解压mysql wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz tar -zxvf…

三分钟了解Spring Boot 的启动流程

&#x1f44f;作者简介&#xff1a;大家好&#xff0c;我是冰点&#xff0c;从业11年&#xff0c;目前在物流独角兽企业从事技术方面工作&#xff0c;&#x1f342;博主正在努力完成2023计划中&#xff1a;以梦为马&#xff0c;扬帆起航&#xff0c;2023追梦人&#x1f4dd;联系…

【C++篇】初识C++

友情链接&#xff1a;C/C系列系统学习目录 知识点内容正确性以C Primer&#xff08;中文版第五版&#xff09;、C Primer Plus&#xff08;中文版第六版&#xff09;为标准&#xff0c;同时参考其它各类书籍、优质文章等&#xff0c;总结归纳出个人认为较有逻辑的整体框架&…

KMeans+DBSCAN密度聚类+层次聚类的使用(附案例实战)

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…

Flink 学习二 Flink 编程基础API

Flink 学习二 Flink 编程基础API 1. 基础依赖引入 <dependency><groupId>org.apache.flink</groupId><artifactId>flink-java</artifactId><version>1.14.4</version></dependency><dependency><groupId>org.apa…

NLP——Topic Modelling

文章目录 A Brief History of Topic ModelsLatent Dirichlet Allocation &#xff08;LDA&#xff09;潜在狄利克雷分布核心思想LDA inputLDA output LDA 如何学习Sampling-based mothods 基于采样的方法Infer Topics For New Documents超参数 Variational methods 变分方法 Ev…

Linux MySQL 索引 事务 存储引擎 死锁

索引&#xff08;面试问得多&#xff09; 索引是一个排序的列表&#xff0c;包含索引字段的值和其相对应的行数据所在的物理地址 作用 加快表的查询速度&#xff0c;还可以对字段排序 如何实现的搜索加速&#xff1f; 没有索引的情况下&#xff0c;要查询某行数据&#xff0c;需…

【JS】中 ?.、??、??= 的用法和含义

今天分享几个处理空值简单的方法&#xff0c;避免使用三目运算、与或、if else时增加冗余的代&#xff0c;希望对大家有帮助。 可选链(?.) let a; let b a.?age; 含义&#xff1a; 可选链&#xff0c;只有当a存在,同时 a 具有 age 属性的时候,才会把值赋给b,否则就会将 u…

TCP的三次握手与四次挥手

TCP的三次握手与四次挥手 1.网络分层 网络分层代表硬件协议/技术特性应用层HTTP,DNS,FTP,SMTP,Telnet协议等应用程序实现的,规定应用程序的数据格式传输层TCP/UDP协议负责两主机之间的数据正确传输主机系统内核实现的网络层路由器IP协议负责地址管理和路由选择(确定对应主机)…

前端Vue自定义简单实用中国省市区三级联动选择器

前端Vue自定义简单实用中国省市区三级联动选择器&#xff0c; 请访问uni-app插件市场地址&#xff1a;https://ext.dcloud.net.cn/plugin?id13118 效果图如下&#xff1a; #### 使用方法 使用方法 <!-- themeColor:主题颜色 ref:设置唯一ref pickerValueDefault:默认选择…

周大福荣获2023亚洲零售大奖——年度珠宝零售商

由成立于1991年、服务于亚洲充满活力的零售业的行业杂志—《亚洲零售杂志》主办的“2023亚洲零售大奖”评选结果于6月15日揭晓&#xff0c;周大福珠宝集团凭借创新和卓越的表现荣获“2023亚洲零售大奖—年度珠宝零售商&#xff08;中国&#xff09;”&#xff0c;是中国唯一入榜…

【kafka】kafka基础架构

文章目录 1、kafka简介2、kafka的特性3、kafka的应用场景4、kafka架构&#xff08;重点&#xff09;4.1、broker4.2、topic4.3、partition4.4、offset4.5、producer4.6、consumer4.7、consumer group4.8、leader4.9、follower4.10、rebalance 5、对kafka架构的几点解释6、几种M…