![](https://img-blog.csdnimg.cn/00f6c68f5091403084c175767209d03c.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
ffmpeg advance
文章平均质量分 76
ffmpeg api使用,命令使用,源码分析
优惠券已抵扣
余额抵扣
还需支付
¥9.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
、、、、南山小雨、、、、
秋风吹湘水,落叶满南山.
展开
-
ffmpeg日日新
罗上文ffmpeg书籍更新https://ffmpeg.xianwaizhiyin.net/api-ffmpeg/decode.html叶余https://www.cnblogs.com/leisure_chn/p/10290575.html微信读书:音视频开发进阶指南原创 2022-07-05 09:04:59 · 750 阅读 · 0 评论 -
ffmpeg capture decklink
确保ffmpeg已经启用decklink,如何配置之前的博文已经提到。查看decklink在ffmpeg中对应的设备名称。查看ffmpeg支持decklink的各种参数。ffmpeg官网上有decklink的参数解释。确保decklink驱动已经正确安装。确保decklink设备已经接入。原创 2023-06-15 16:26:12 · 1218 阅读 · 0 评论 -
硬件解码example
函数互反,av_hwdevice_get_type_name(type)的返回值是“qsv”,前者的返回值是AV_HWDEVICE_TYPE_QSV。这个函数非常消耗cpu,在i9,28核56线程pc上测试,硬解码总共耗费15%的cpu,它自己就占14%,也就是说硬解码本身才占用1%。上面这个函数,是用来得到av_hwframe_transfer_data转换过来的帧是什么像素格式。如果你填入的参数不对,那么这函数这个函数的作用相当于以下命令,列举支持的硬件加速方式。原创 2023-08-22 13:58:56 · 230 阅读 · 0 评论 -
qsv加速滤镜
与普通的滤镜相比主要多做一下方面1.给硬件帧分配空间,配置硬件帧上下文2.将硬件帧上下文和地址交给滤镜3.当前要处理的视频帧需是在GPU中的,也就是硬件帧4.将数据帧GPU to CPU。原创 2023-09-14 11:15:24 · 429 阅读 · 0 评论 -
极限压缩码率,牺牲画质,量化器QP,CRF
1.量化器QP1.1接口使用QP1.2命令行使用CRF2.CRF2.1接口使用CRF2.2命令行使用CRF。原创 2023-03-23 17:00:08 · 932 阅读 · 0 评论 -
ffmpeg编译配置decklink
sudo ./configure --disable-x86asm --enable-shared --enable-libx264 --enable-swscale --enable-gpl --enable-nonfree --enable-libfdk-aac --enable-decoder=h264 --enable-protocol=rtmp --enable-demuxer=rtsp --enable-parser=h264 --enable-bsf=extract_extradata --e原创 2021-11-02 16:28:03 · 1036 阅读 · 1 评论 -
声音数据在pulse,alsa,声卡,扬声器,麦克风之间的流转顺序
pulseaudio:一个服务器,alsa在采集到音频数据后向它发送音频数据,如果需要pulseaudio可以对声音做一些处理,然后把声音发送给alsa,alsa把数据发送给pulseaudio设置的默认或指定输出设备的声卡,在声卡内完成数模转换后,发送给默认或指定的输出设备。5.PulseAudio服务器将采集到的音频数据从缓冲区读取并进行处理,然后将其发送到Alsa,Alsa是声卡的驱动,然后在声卡里完成数模转换,最后将其发送到默认的输出设备如扬声器或耳机等输出设备。原创 2023-02-27 10:49:03 · 772 阅读 · 0 评论 -
ubuntu的声音控制系统pipewire后pulseaudio
例如,要播放 MP3 文件,可以使用 gst-launch-1.0 playbin uri=file:///path/to/file.mp3 命令。PulseAudio:PulseAudio 是一个通用的音频框架,Ubuntu 默认使用它来管理系统的音频。例如,要设置默认音频设备,可以使用 pacmd set-default-sink 命令。如果您想通过图形用户界面来进行音频设置,可以使用 Ubuntu 20 的系统设置界面,它提供了一个名为“声音”的选项卡,您可。原创 2023-02-16 20:48:19 · 1472 阅读 · 0 评论 -
avformat_close_input函数释放内存不彻底和有延时问题
同时如果报这个错误,avformat_open_input(),关闭/dev/videoX输入设备会滞后,意味着你不能关闭后立马打开,往往需要睡眠1s,不然它会报设备正在占用,busy等错误。如果使用了QSV/VAAPI硬件加速,在释放内存时没有按正确顺序释放就会出现这个问题。按照顺序释放这个错误就会解决,可以在关闭后立马打开/dev/videoX设备。如上对解码器和编码器的释放一定要放到关闭输入流之前。原创 2023-02-18 18:12:21 · 755 阅读 · 0 评论 -
FFmpeg配置编码器以增加ADTS头
5.使用 ffmpeg 库中的 API,在 avcodec_open2() 函数调用前设置 AV_CODEC_ID_AAC 的 AVCodecContext 结构体中的 AV_CODEC_FLAG_GLOBAL_HEADER 标志位。6.通过直接调用 libfdk_aac 库中的 API,在 aacEncOpen() 函数调用前设置 AOT_ER_AAC_LD 或 AOT_ER_AAC_ELD 格式。1.av_opt_set():可以设置编码器选项以启用 ADTS。原创 2023-01-30 10:03:48 · 696 阅读 · 0 评论 -
qsv的像素格式转换
av_hwframe_transfer_data原创 2023-01-05 14:10:24 · 1346 阅读 · 0 评论 -
ffmpeg花屏解决(修改源码,丢弃不完整帧和解码错误帧)
同样的文件里,在ff_h264_check_intra4x4_pred_mode函数中,也有一个花屏常见的错误,leftblockunavailableforrequestedintra4x4mode,例如你想在这里做个标记,添加deviser_1=222222;,这个函数是被av_read_frame函数调用的,可以看出这个函数内循环读取pkt,并对pkt处理。经过实测,不仅这几个,decode_error_flags为12时也是解码出错,正确时decode_error_flags为0。.........原创 2022-07-21 16:21:02 · 4419 阅读 · 0 评论 -
ffmpeg中如何设置不含SEI,如何自定义SEI
AV_CODEC_FLAG_GLOBAL_HEADER可以使得编码后的数据中包含编码器全局头部信息,而AV_CODEC_FLAG_BITEXACT可以使得编码后的数据与输入的数据完全一致,也就是不会包含SEI数据。需要注意的是,如果使用了AV_CODEC_FLAG_GLOBAL_HEADER标志,则在编码后的数据中会包含编码器的全局头部信息,而不是每个帧的头部信息。通常,在编码时向SEI信息中添加所需的信息,在解码时按照SEI信息的指示进行处理。4.如何设置自定义的SEI信息。ffmpeg5.0.2版本。原创 2022-12-29 17:58:20 · 1866 阅读 · 0 评论 -
ffmpeg+qsv / vaapi
Ubuntu18上安装QSV+FFMPEG环境Ubuntu18.04 编译FFmpeg 支持 QSV 硬编解码Download FFmpegFFmpeg githubwiki:WikiStartwiki:Hardware/QuickSyncwiki:HWAccelIntro原创 2022-11-03 14:33:37 · 2210 阅读 · 0 评论