ffmpeg命令详解
原文网址:ffmpeg命令详解_IT利刃出鞘的博客-CSDN博客
简介
本文介绍ffmpeg命令的用法。
命令示例
1.mp4和avi的基本互转
ffmpeg -i D:\input.mp4 E:\output.avi
ffmpeg -i D:\input.avi E:\output.mp4
-i 表示input,即输入。后面填一个输入地址和一个输出地址,这种方式没有指定任何参数和解码器,都用默认,会发现转换得到的文件压缩严重,avi文件只有200kbps的码率。
2.mp4和avi的无损互转
mp4转换avi
ffmpeg -i D:\input.mp4 -qscale 0 E:\output.avi
或者
ffmpeg -i D:\input.mp4 -c copy E:\output.avi
这里更推荐第一种方式,-qscale表示质量控制,0表示0损失,现在的ffmpeg已经采用qsacle取代了原来的sameq方式。
第二种方式 -c copy表明会把原视频的所有流一模一样的复制,即不进行解码和重新编码,这种情况下得到的avi文件需要额外的解码器如potplayer才能打开,win10自带的是不行的。
注:-c copy包含了-c:v copy(视频流),-c:a copy(音频流)等所有流。另外其他写法如-vcodec -codec:v与-c:v copy是同义的,其余以此类推。
avi转mp4
ffmpeg -i D:\input.mp4 -c:v copy -c:a copy E:\output.avi -y
-y表示不用确认覆盖文件,如果有重名的文件一般会在命令行向用户确认。
mp4转avi就直接copy就可以了,win10自带也能播。
3.截取视频片段
ffmpeg -i input.avi -c:v copy -c:a copy -ss 00:00:00 -to 00:00:30 cutout.avi -y
这是截取30s的,和前面一样,如果只是截取视频片段就不要重新编码了,一个-c copy搞定。
-ss后面跟的是时间位置,开始时间 -to 结束时间。
4.批量截取视频图片
for /R %v IN (*.avi) do ( ffmpeg -i %v -r 1 -f image2 %v%d.jpeg)
假设一个视频文件夹里有很多avi文件,我想每一个avi文件都间隔一帧截图,就是这条语句了。for…IN…do是命令行的循环格式。%v是文件名,%d是自动递增的数字名。-r定义的是间隔多少帧截图一次。
5.把大量图片组合成视频
ffmpeg -f image2 -framerate 30 -i %d.jpg xxx.avi
-framerate设定帧数,这里设成了30,也就是一秒30张图片,%d表示从1开始的图片,这里推荐大家一个软件renamer,免费版的就足够使用了,可以快速批量重命名文件,不用每次写重命名代码了。
命令详解
用法
ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...
- options 全局参数
- infile options 输入文件参数
- infile 输入文件
- outfile options 输出文件参数
- outfile 输出文件
全局选项
参数 | 说明 |
-loglevel loglevel | 设置日志登记,具体用法可以通过man ffmpeg查看,例如ffmpeg -loglevel verbose -i 1080p.mp4,可选:quiet panic fatal error warning info verbose debug trace |
-v loglevel | 设置日志登记,具体用法可以通过man ffmpeg查看,例如ffmpeg -v verbose -i 1080p.mp4,可选:quiet panic fatal error warning info verbose debug trace |
-report | 生成一个报告,报告的名字是ffmpeg自动生成的,例如ffmpeg -report -i 1080p.mp4,想要自定义文件以及日志等级可以使用宏FFREPORT,例如FFREPORT=file=ffreport.log:level=32 ffmpeg -i 1080p.mp4 |
-max_alloc bytes | 设置通过ffmpeg的malloc函数系列设置在堆上分配块的最大大小限制。嵌入式设备可能会用到这个选项 |
-y | 覆盖输出文件 |
-n | 切勿覆盖输出文件 |
-ignore_unknown | 忽略未知的流类型 |
-filter_threads | 定义用于处理过滤器管道的线程数。每个管道将生成一个线程池,其中包含许多可用于并行处理的线程。默认是可用CPU的数量 |
-filter_complex_threads | 定义用于处理filter_complex图的线程数。类似于filter_threads但仅用于-filter_complex图形。默认值为可用 CPU 的数量 |
-stats | 编码期间打印进度报告 |
-max_error_rate maximum | 在所有输入中设置解码帧失败的比例,当超过时ffmpeg将返回退出代码69。超过此阈值不会终止处理。值的范围是0到1之间的浮点数。默认值为2/3 |
-bits_per_raw_sample number | 设置每个原始样本的位数 |
-vol volume | 改变音量 ,volume默认值是256,也就是它把音量分为256等分,例如要把音量放大为原来的两倍(2562):ffmpeg -vol 512 -y -i bugua.mp3 output.mp3 |
输入输出选项
选项 | 说明 | 例子 |
-f fmt | force format | 设置输入容器是mp4 ffmpeg -i bugua.mp3 -f mp4 output.m4a |
-c codec | codec name | 设置输入编码格式是ac3 ffmpeg -y -i bugua.mp3 -c ac3 output.m4a |
-codec codec | codec name | 设置输入编码格式是ac3 ffmpeg -y -i bugua.mp3 -codec ac3 output.m4a |
-pre preset | preset name | - |
-map_metadata outfile[,metadata]:infile[,metadata] | set metadata information of outfile from infile | - |
-t duration | record or transcode “duration” seconds of audio/video | 设置只录制前50秒 ffmpeg -i bugua.mp3 -t 50 output.mp3 |
-to time_stop | record or transcode stop time | 设置只录制前50秒 ffmpeg -i bugua.mp3 -t 50 output.mp3 |
-fs limit_size | set the limit file size in bytes | 设置输出文件大小限制在0.1MB ffmpeg -y -i bugua.mp3 -fs 0.1MB output.mp3 |
-ss time_off | set the start time offset | 设置从第50秒开始录制 fmpeg -ss 50 -y -i bugua.mp3 output.mp3 |
-sseof time_off | set the start time offset relative to EOF | 设置从倒数第50秒开始录制 ffmpeg -sseof -50 -y -i bugua.mp3 output.mp3 |
-seek_timestamp | 此选项使用-ss选项在输入文件中启用或禁用按时间戳搜索。默认情况下它是禁用的。如果启用,则-ss选项的参数被视为实际时间戳,并且不会被文件的开始时间偏移。这仅适用于不从时间戳 0 开始的文件,例如传输流 | - |
-timestamp time | 在容器中设置录制时间戳 | |
-metadata string=string | 设置修改容器这一层的metadata | 设置标题 ffmpeg -i in.avi -metadata title=“my title” out.flv |
-program title=string:st=number… | 添加或者修改program的Metadata | 设置program标题 ffmpeg -y -i 1080p.mp4 -program title=“XXXXXX”:st=1 -c copy output.mp4 |
-target type | 指定目标文件类型 (“vcd”, “svcd”, “dvd”, “dv” or “dv50” with optional prefixes “pal-”, “ntsc-” or “film-”) | ffmpeg -i myfile.avi -target vcd /tmp/vcd.mpg |
-apad | 音频填充(追加) | 在音频文件的最后追加10秒静音 ffmpeg -y -i bugua.mp3 -af “apad=pad_dur=10” output.mp3 |
-frames number | 设置要输出的帧数 | 只写入200帧 ffmpeg -i 1080p.mp4 -frames 200 -c copy output.mp4 |
-filter filter_graph | 设置简单的filter(不对音视频内容进行任何处理的filter) | 把视频帧的PTS设置为原来的0.5倍 ffmpeg -y -i 1080p.mp4 -filter:v “setpts=0.5PTS” output.mp4 |
-filter_script filename | read stream filtergraph description from a file | - |
-reinit_filter | reinit filtergraph on input parameter changes | - |
-discard | 允许从流中丢弃特定的流或帧。使用值all会丢弃所有的流,在解复用时从流中选择要丢弃的帧,并非所有解复用器都支持 | 去掉视频中的音频 ffmpeg -y -discard:a all -i 1080p.mp4 -c copy output.mp4 |
-disposition | 设定特定的流作为默认流 | 使第二个音频流成为默认流 ffmpeg -i in.mkv -c copy -disposition:a:1 default out.mkv |
视频选项
选项 | 说明 | 例子 |
-vframes number | set the number of video frames to output | 输出200帧 ffmpeg -y -i 1080p.mp4 -vframes 200 output.mp4 |
-r rate | set frame rate (Hz value, fraction or abbreviation) | 设置输出帧率为10帧 ffmpeg -y -i 1080p.mp4 -r 10 -vframes 500 output.mp4 |
-fpsmax rate | set max frame rate (Hz value, fraction or abbreviation) | 设置最大帧率为15帧 ffmpeg -y -i 1080p.mp4 -fpsmax 15 -vframes 500 output.mp4 |
-s size | set frame size (WxH or abbreviation) | 把视频裁剪为640x480 ffmpeg -y -i 1080p.mp4 -s 640x480 -vframes 500 output.mp4 |
-aspect aspect | set aspect ratio (4:3, 16:9 or 1.3333, 1.7777) | 视频比例改为4:3 ffmpeg -y -i 1080p.mp4 -aspect 4:3 -vframes 500 output.mp4 |
-bits_per_raw_sample number | set the number of bits per raw sample | - |
-vn | disable video | 只输出音频 ffmpeg -y -i 1080p.mp4 -vn -c copy output.mp4 |
-vcodec codec | force video codec (‘copy’ to copy stream) | 设置输出编码器为libx265 ffmpeg -y -i 1080p.mp4 -vframes 500 -vcodec libx265 output.mp4 |
-timecode hh:mm:ss[:;.]ff | set initial TimeCode value. | - |
-pass n | select the pass number (1 to 3) | - |
-vf filter_graph | set video filters | 逆时针旋转 ffmpeg -y -i 1080p.mp4 -vframes 300 -vf “transpose=2” output.mp4 |
-ab bitrate | audio bitrate (please use -b:a) | 设置音频输出码率为56k ffmpeg -y -i 1080p.mp4 -ab 56k -vn output.mp4 |
-b bitrate | video bitrate (please use -b:v) | 设置视频输出码率为256k ffmpeg -y -i 1080p.mp4 -b 256k -an output.mp4 |
-dn | disable data | - |
音频选项
选项 | 说明 | 例子 |
-aframes number | set the number of audio frames to output | 只写入1000帧音频数据 ffmpeg -y -i 1080p.mp4 -vn -aframes 1000 output.mp4 |
-aq quality | set audio quality (不同的编码器使用不同的数字表示不同的码率) | 这里以MP3为例,把码率设置为245kbps左右 ffmpeg -y -i bugua.mp3 -aq -0 output.mp3 |
-ar rate | set audio sampling rate (in Hz) | 重采样为16k ffmpeg -y -i 1080p.mp4 -vn -aframes 1000 -ar 16000 output.mp4 |
-ac channels | set number of audio channels | 改为双声道 ffmpeg -y -i 1080p.mp4 -vn -aframes 1000 -ac 2 output.mp4 |
-an | disable audio | 只输出视频 ffmpeg -y -i 1080p.mp4 -an -c copy output.mp4 |
-acodec codec | force audio codec (‘copy’ to copy stream) | 强制使用ac3编码器 ffmpeg -y -i 1080p.mp4 -vn -aframes 1000 -acodec ac3 output.mp4 |
-vol volume | change audio volume (256=normal) | 把声音调为原来的2倍 ffmpeg -y -i 1080p.mp4 -vn -aframes 1000 -vol 512 output.mp4 |
-af filter_graph | set audio filters | 写入音频之前先进行afade处理 ffmpeg -y -i 1080p.mp4 -vn -aframes 1000 -af afade output.mp4 |
副标题选项
选项 | 说明 | 例子 |
-s size | set frame size (WxH or abbreviation) | - |
-sn | disable subtitle | - |
-scodec codec | force subtitle codec (‘copy’ to copy stream) | - |
-stag fourcc/tag | force subtitle tag/fourcc | - |
-fix_sub_duration | fix subtitles duration | - |
-canvas_size size | set canvas size (WxH or abbreviation) | - |
-spre preset | set the subtitle options to the indicated preset | - |
查看帮助文档
简单文档
可以用此命令查看详解:
ffmpeg --help
结果:
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...Getting help:-h -- print basic options-h long -- print more options-h full -- print all options (including all format and codec specific options, very long)-h type=name -- print all options for the named decoder/encoder/demuxer/muxer/filter/bsf/protocolSee man ffmpeg for detailed description of the options.Print help / information / capabilities:
-L show license
-h topic show help
-? topic show help
-help topic show help
--help topic show help
-version show version
-buildconf show build configuration
-formats show available formats
-muxers show available muxers
-demuxers show available demuxers
-devices show available devices
-codecs show available codecs
-decoders show available decoders
-encoders show available encoders
-bsfs show available bit stream filters
-protocols show available protocols
-filters show available filters
-pix_fmts show available pixel formats
-layouts show standard channel layouts
-sample_fmts show available audio sample formats
-dispositions show available stream dispositions
-colors show available color names
-sources device list sources of the input device
-sinks device list sinks of the output device
-hwaccels show available HW acceleration methodsGlobal options (affect whole program instead of just one file):
-loglevel loglevel set logging level
-v loglevel set logging level
-report generate a report
-max_alloc bytes set maximum size of a single allocated block
-y overwrite output files
-n never overwrite output files
-ignore_unknown Ignore unknown stream types
-filter_threads number of non-complex filter threads
-filter_complex_threads number of threads for -filter_complex
-stats print progress report during encoding
-max_error_rate maximum error rate ratio of decoding errors (0.0: no errors, 1.0: 100% errors) above which ffmpeg returns an error instead of success.Per-file main options:
-f fmt force format
-c codec codec name
-codec codec codec name
-pre preset preset name
-map_metadata outfile[,metadata]:infile[,metadata] set metadata information of outfile from infile
-t duration record or transcode "duration" seconds of audio/video
-to time_stop record or transcode stop time
-fs limit_size set the limit file size in bytes
-ss time_off set the start time offset
-sseof time_off set the start time offset relative to EOF
-seek_timestamp enable/disable seeking by timestamp with -ss
-timestamp time set the recording timestamp ('now' to set the current time)
-metadata string=string add metadata
-program title=string:st=number... add program with specified streams
-target type specify target file type ("vcd", "svcd", "dvd", "dv" or "dv50" with optional prefixes "pal-", "ntsc-" or "film-")
-apad audio pad
-frames number set the number of frames to output
-filter filter_graph set stream filtergraph
-filter_script filename read stream filtergraph description from a file
-reinit_filter reinit filtergraph on input parameter changes
-discard discard
-disposition dispositionVideo options:
-vframes number set the number of video frames to output
-r rate set frame rate (Hz value, fraction or abbreviation)
-fpsmax rate set max frame rate (Hz value, fraction or abbreviation)
-s size set frame size (WxH or abbreviation)
-aspect aspect set aspect ratio (4:3, 16:9 or 1.3333, 1.7777)
-display_rotation angle set pure counter-clockwise rotation in degrees for stream(s)
-display_hflip set display horizontal flip for stream(s) (overrides any display rotation if it is not set)
-display_vflip set display vertical flip for stream(s) (overrides any display rotation if it is not set)
-vn disable video
-vcodec codec force video codec ('copy' to copy stream)
-timecode hh:mm:ss[:;.]ff set initial TimeCode value.
-pass n select the pass number (1 to 3)
-vf filter_graph set video filters
-b bitrate video bitrate (please use -b:v)
-dn disable dataAudio options:
-aframes number set the number of audio frames to output
-aq quality set audio quality (codec-specific)
-ar rate set audio sampling rate (in Hz)
-ac channels set number of audio channels
-an disable audio
-acodec codec force audio codec ('copy' to copy stream)
-ab bitrate audio bitrate (please use -b:a)
-af filter_graph set audio filtersSubtitle options:
-s size set frame size (WxH or abbreviation)
-sn disable subtitle
-scodec codec force subtitle codec ('copy' to copy stream)
-stag fourcc/tag force subtitle tag/fourcc
-fix_sub_duration fix subtitles duration
-canvas_size size set canvas size (WxH or abbreviation)
-spre preset set the subtitle options to the indicated preset
细节文档
命令 | 说明 |
ffmpeg -L | 显示License |
ffmpeg -version | 显示当前版本 |
ffmpeg help -buildconf | 显示编译此ffmpeg的configuration |
ffmpeg help -formats | 显示支持的文件格式,同时显示muxers和demuxers |
ffmpeg help -muxers | 显示支持的muxers格式 |
ffmpeg help -demuxers | 显示支持的demuxers格式 |
ffmpeg help -devices | 显示支持的设备,包括音视频设备 |
ffmpeg help -codecs | 显示支持的格式,同时显示视频、音频、字幕、帧内编码、有损压缩和无损压缩的解编码支持情况 |
ffmpeg help -decoders | 显示支持的解码器 |
ffmpeg help -encoders | 显示支持的编码器 |
ffmpeg help -bsfs | 显示支持的二进制流过滤器,例如h264_metadata、h264_mp4toannexb、hevc_mp4toannexb等 |
ffmpeg help -protocols | 显示支持的可用的协议,区分Input和Output,例如file、http、hls、rtmp、rtp、pipe、tee等 |
ffmpeg help -filters | 显示支持的可用的过滤器 |
ffmpeg help -pix_fmts | 显示支持的可用的像素格式 |
ffmpeg help -layouts | 显示支持的声道布局,例如mono、stereo、2.1、2.0、3.0、5.0、5.1等 |
ffmpeg help -sample_fmts | 显示支持的音频采样格式,例如u8、s16、s32、flt等 |
ffmpeg help -colors | 显示支持的颜色 |
ffmpeg help -sources device | 列出输入设备的源 |
ffmpeg help -sinks device | 列出输出设备的槽(节点) |
ffmpeg help -hwaccels | 显示可用的硬件加速方法 |
相关文章:
ffmpeg命令详解
原文网址:ffmpeg命令详解_IT利刃出鞘的博客-CSDN博客 简介 本文介绍ffmpeg命令的用法。 命令示例 1.mp4和avi的基本互转 ffmpeg -i D:\input.mp4 E:\output.avi ffmpeg -i D:\input.avi E:\output.mp4 -i 表示input,即输入。后面填一个输入地址和一…...
asyncio.run() 里面嵌套 asyncio.run() 可以吗?
[TOC](asyncio.run() 里面嵌套 asyncio.run() 可以吗?) 在 Python 的异步编程中,asyncio 是一个非常重要的模块,它提供了编写单线程并发代码的基础设施。asyncio.run() 是一个方便的函数,用于运行一个协程并管理事件循环的生命周…...
flutter in_app_purchase google支付 PG-GEMF-01错误
问题:PG-GEMF-01错误 flutter 使用in_app_purchase插件升降级订阅时报错PG-GEMF-01。 解决方案: 升降级订阅时,确保不调用 MethodCallHandlerImpl.java文件中的 setObfuscatedAccountId()方法、setObfuscatedProfileId()方法 原因…...
Flink 离线计算
文章目录 一、样例一:读 csv 文件生成 csv 文件二、样例二:读 starrocks 写 starrocks三、样例三:DataSet、Table Sql 处理后写入 StarRocks四、遇到的坑 <dependency><groupId>org.apache.flink</groupId><artifactId&…...
排序算法之插入排序篇
插入排序 思路: 就是将没有排序的元素逐步地插入到已经排好序的元素后面,保持元素的有序 视频的实现过程如下: 插入排序全过程 代码实现过程如下: public static void Insertion(int[] arr) { for (int i 1; i < arr.length…...
(11)(2.2) BLHeli32 and BLHeli_S ESCs(二)
文章目录 前言 1 传递支持 前言 BLHeli 固件和配置应用程序的开发是为了允许配置 ESC 并提供额外功能。带有此固件的 ESC 允许配置定时、电机方向、LED、电机驱动频率等。在尝试使用 BLHeli 之前,请按照 DShot 设置说明进行操作(DShot setup instructions)。 1 传…...
Unity之一键创建自定义Package包
内容将会持续更新,有错误的地方欢迎指正,谢谢! Unity之一键创建自定义Package包 TechX 坚持将创新的科技带给世界! 拥有更好的学习体验 —— 不断努力,不断进步,不断探索 TechX —— 心探索、心进取! …...
【AI】JetsonNano启动时报错:soctherm OC ALARM
1、问题描述 将JetsonNano烧写SD卡镜像为Ubuntu20.04后,启动时报错:soctherm OC ALARM,启动失败;然后系统一直重启 2、原因分析 “soctherm OC ALARM”是检测到系统温度超过安全阈值时发出的过热警告。 “soctherm”代表系统…...
道路机器人识别交通灯,马路,左右转,黄线,人行道,机器人等路面导航标志识别-使用YOLO标记
数据集分割 train组66% 268图片 validation集22% 91图片 test集12% 48图片 预处理 没有采用任何预处理步骤。 增强 未应用任何增强。 数据集图片: 交通灯 马路 右转 向右掉头 机器人识别 人行横道 黄线 直行或右转 数据集下载: 道路…...
电子应用设计方案-31:智能AI音响系统方案设计
智能 AI 音响系统方案设计 一、引言 智能 AI 音响作为一种新兴的智能家居设备,通过融合语音识别、自然语言处理、音频播放等技术,为用户提供便捷的语音交互服务和高品质的音乐体验。本方案旨在设计一款功能强大、性能稳定、用户体验良好的智能 AI 音响系…...
SQL优化与性能——数据库设计优化
数据库设计优化是提高数据库性能、确保数据一致性和支持业务增长的关键环节。无论是大型企业应用还是小型项目,合理的数据库设计都能够显著提升系统性能、减少冗余数据、优化查询响应时间,并降低维护成本。本章将深入探讨数据库设计中的几个关键技术要点…...
脑网络组织与心跳动力学之间的耦合测量
摘要 近年来,人们对脑心相互作用的研究兴趣日益浓厚。许多研究提出了新的方法来探究大脑与心脏如何通信,从而对一些神经功能有了新的认识。然而,大多数框架只关注单个脑区域与心跳动态之间的相互作用,忽略了大脑的功能网络会随着…...
图像显示的是矩阵的行和列,修改为坐标范围。
x 3; y 3; f1x x^2 y^2; guance1 f1x; F (x, y) sqrt((x.^2 y.^2 - guance1).^2); % 使用点乘 [x, y] meshgrid(0:1:5, 0:1:5); Z F(x, y); figure; imagesc(Z); % 由于 imagesc 使用矩阵索引作为坐标,我们需要手动添加刻度 % 这里我们假设 x 和 y 的范围…...
一体化数据安全平台uDSP 入选【年度创新安全产品 TOP10】榜单
近日,由 FreeBuf 主办的 FCIS 2024 网络安全创新大会在上海隆重举行。大会现场揭晓了第十届 WitAwards 中国网络安全行业年度评选获奖名单,该评选自 2015 年举办以来一直饱受赞誉,备受关注,评选旨在以最专业的角度和最公正的态度&…...
[免费]SpringBoot+Vue景区订票(购票)系统【论文+源码+SQL脚本】
大家好,我是java1234_小锋老师,看到一个不错的SpringBootVue大景区订票(购票)系统,分享下哈。 项目视频演示 【免费】SpringBootVue景区订票(购票)系统 Java毕业设计_哔哩哔哩_bilibili 项目介绍 现代经济快节奏发展以及不断完善升级的信息…...
力扣215:数组中第K大的元素
给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。 请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 你必须设计并实现时间复杂度为 O(n) 的算法解决此问题。 示例 1: 输入: [3,2,1,5,6,4],k 2 …...
永久停用PostgreSQL 归档功能
文章目录 引言永久停用归档功能归档的优势归档的劣势开启归档的情况关闭归档的情况see also引言 PostgreSQL 是一个开源的关系型数据库系统,支持数据归档(WAL),可以实现数据备份、恢复和灾难恢复等功能。在使用 PostgreSQL 的过程中,如果 PostgreSQL 数据库开启了归档(a…...
23种设计模式-原型(Prototype)设计模式
文章目录 一.什么是原型设计模式?二.原型模式的特点三.原型模式的结构四.原型模式的优缺点五.原型模式的 C 实现六.原型模式的 Java 实现七. 代码解析八.总结 类图: 原型设计模式类图 一.什么是原型设计模式? 原型模式(Prototype…...
【Linux】-学习笔记06
第二章、时间同步服务器 2.1时间同步服务器的使用 2.1.1系统时区时间的管理 timedatectl set-time "2024-02-13 10:41:55" ##设定系统时间 timedatectl list-timezones ##显示系统的所有时区 timedatectl set-timezone "Asia/Shangh…...
李永平:以科技创新为引擎,驱动中国国际未来产业研究院不断前行
作者:李望 在科技创新与产业升级的滚滚洪流中,唯有洞察未来者,方能引领时代浪潮。近日,中国国际未来产业研究院迎来了重量级嘉宾——李永平院士。他的加盟,为研究院注入了全新的活力。作为业界的领军人物,李永平院士将担任研究院常务副院长、资深专家及高级法律顾问,共同规划未…...
netconf 代码架构
NETCONF(Network Configuration Protocol)是一种基于 XML 的网络配置管理协议,主要用于在网络设备之间进行配置管理、状态监控和操作。它被设计为一种可扩展的协议,并且在自动化网络管理中扮演着重要角色。NETCONF 通过安全的通信…...
【查询目录】.NET开源 ORM 框架 SqlSugar 系列
.NET开源 ORM 框架 SqlSugar 系列 【开篇】.NET开源 ORM 框架 SqlSugar 系列【入门必看】.NET开源 ORM 框架 SqlSugar 系列【实体配置】.NET开源 ORM 框架 SqlSugar 系列【Db First】.NET开源 ORM 框架 SqlSugar 系列【Code First】.NET开源 ORM 框架 SqlSugar 系列【数据事务…...
广域网技术
企业需要通过广域网将这些分散在不同地理位置的分支机构连接起来 早期广域网技术概述 广域网:连接不同地区局域网的网络,能够横跨几个洲提供远距离通信,形成国际性的远程网络 广域网设备角色介绍: CE:用户端连接服务…...
基于Java Springboot 求职招聘平台
一、作品包含 源码数据库设计文档万字PPT全套环境和工具资源部署教程 二、项目技术 前端技术:Html、Css、Js、Vue2、Element-ui 数据库:MySQL 后端技术:Java、Spring Boot、MyBatis 三、运行环境 开发工具:IDEA 数据库&…...
C学习:移位幻影之左移一个负数,会发生什么?
C学习:移位幻影之左移一个负数,会发生什么? 问题背景无符号数移位问题有符号数移位操作使低位置零问题 问题背景 C语言中,移位是个简单的问题,但又是个高风险的问题。 简单在于,大部分场景都可以理解为乘或…...
[2024年3月10日]第15届蓝桥杯青少组stema选拔赛C++中高级(第二子卷、编程题(2))
方法一(string): #include <iostream> #include <string> using namespace std;// 检查是否为回文数 bool isPalindrome(int n) {string str to_string(n);int left 0, right str.size() - 1;while (left < right) {if (s…...
加载语言包的方式
推荐方式:使用 JSON 或 XML 文件结合解析库 JSON: 优点:轻量级,结构清晰,解析库(如 nlohmann/json)易用。示例内容: json 复制代码 { "en": { "greeting": &qu…...
深入了解 Adam 优化器对显存的需求:以 LLaMA-2 7B 模型为例 (中英双语)
中文版 深入了解 Adam 优化器对显存的额外需求:模型参数与优化器状态的显存开销分析 在深度学习模型的训练过程中,显存是一个关键的资源,尤其在处理大型语言模型或深度神经网络时。训练时的显存需求不仅包括模型参数本身,还涉及…...
深入理解CSS语法:掌握Web开发的基石
深入理解CSS语法:掌握Web开发的基石 在构建现代网页的过程中,层叠样式表(CSS)扮演着至关重要的角色。它不仅负责定义HTML元素的视觉表现,还极大地增强了Web内容的可访问性和用户体验。本文将深入探讨CSS的语法、书写位…...
基于python爬虫的智慧人才数据分析系统
废话不多说,先看效果图 更多效果图可私信我获取 源码分享 import os import sysdef main():"""Run administrative tasks."""os.environ.setdefault(DJANGO_SETTINGS_MODULE, 智慧人才数据分析系统.settings)try:from django.core.m…...
创建maven私人创库nexus
1.到官网下载nexus-3.74.0-05-unix.tar.gz包,若下载慢可以去这里下载地址 2.上传到liunx的根目录opt文件中,然后解压命令: tar -xzf nexus-3.74.0-05-unix.tar.gz 3.解压后会得到两个文件夹nexus-3.74.0-05 和 sonatype-work ,…...
眼部按摩仪WT2605音频蓝牙语音芯片方案 单芯片实现语音提示及控制/手机无线音频传输功能
随着科技的快速发展,人们的生活方式也在不断改变,智能化、便捷化的产品逐渐成为市场的主流。眼部按摩仪作为一种结合了现代科技与健康生活理念的产品,受到了广大消费者的青睐。而在众多眼部按摩仪中,采用WT2605音频蓝牙芯片的方案…...
【面试题】2025年百度校招Java后端面试题
文章目录 前言一、网络IO1、服务器处理并发请求有哪几种方式?2、说一下select,poll,epoll的区别?3、Java 有一种现代的处理方式,属于异步I/O,是什么?redis,nginx,netty 是…...
Java面向对象. 多态
目录 java多态是什么东西?首先要理解什么是多态 Java多态指同一行为具有多个不同表现形式。如父类引用指向子类对象,调用重写方法时呈现不同结果。 1.多态的概念 一、多态的基本概念 二、多态的实现方式 接口实现 三、多态的好处 提高代码的可扩展…...
Vue 项目中有哪些内存泄漏的场景,以及预防内存泄漏技巧
前言 即便是功能强大的 Vue.js 也无法完全避免内存泄漏的问题,内存泄漏不仅会影响应用的性能,还可能导致浏览器崩溃。因此,识别和解决 Vue 项目中的内存泄漏问题是确保项目稳定性和性能的关键。 本文将通俗易懂地介绍 Vue 项目中常见的内存泄…...
MySQL Inception工具
MySQL Inception是一个强大的数据库变更管理和审计工具,主要用于审核、执行、备份以及回滚数据库操作。它的工作模式和MySQL完全相同,可以直接使用MySQL客户端来连接,但不需要验证权限。Inception相对于应用程序(上层审核流程系统…...
Linux(Centos7)---安装nginx(很简单)
安装 sudo yum install nginx -y开机启动与开启服务 sudo systemctl enable nginx sudo systemctl start nginx...
多数元素
多数元素 给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 示例 1: 输入:nums [3,2,3] 输出ÿ…...
vim编辑器的一些配置和快捷键
记录vim编辑器的一些配置和快捷键,边学边用: yy 复制dd 删除p:粘贴ctrly 取消撤销u:撤销:w 写入:q 退出a/i 插入O: 上方插入一个空行o:下方插入一个空行:e 打开文件编辑 其他配置: 上移一行和下移一行&a…...
SeggisV1.0 遥感影像分割软件【源代码】讲解
在此基础上进行二次开发,开发自己的软件,例如:【1】无人机及个人私有影像识别【2】离线使用【3】变化监测模型集成【4】个人私有分割模型集成等等,不管是您用来个人学习还是公司研发需求,都相当合适,包您满…...
14 —— Webpack解析别名
import {checkPhone, checkCode} from ../src/utils/check.js 这么使用相对路径不安全 —— 在webpack.config.js中配置解析别名来代表src绝对路径...
《C++ Primer Plus》学习笔记|第8章 函数探幽 (24-11-30更新)
文章目录 8.1 内联函数8.2 引用变量8.2.1 创建引用变量8.2.2 将引用用作函数参数8.2.3 引用的属性和特别之处特点1:在计算过程中,传入的形参的值也被改变了。特点2:使用引用的函数参数只接受变量,而不接受变量与数值的运算左值引用…...
vscode的项目给gitlab上传
目录 一.创建gitlab帐号 二.在gitlab创建项目仓库 三.Windows电脑安装Git 四.vscode项目git上传 一.创建gitlab帐号 二.在gitlab创建项目仓库 图来自:Git-Gitlab中如何创建项目、创建Repository、以及如何删除项目_gitlab新建项目-CSDN博客) 三.Windows电脑安…...
【JVM什么时候触发YoungGC和FullGC】
YoungGC 年轻代Eden区满,就会触发YoungGC FullGC 老年代空间不足 经过多次GC后的大年龄对象会被放进老年代,或创建的大对象会直接在老年代分配,此时若老年代空间不足,就会触发FullGC。空间分配担保失败 触发YoungGC的时候会进行…...
Mybatis-批量删除用户
目录 题目: 1、创建Maven项目,在pom.xml中添加相关依赖 2、创建db.properties配置数据库信息 3、在resources下创建mybatis-config.xml核心配置文件 易错点: 4、在java中创建User.java,在java/com/haust/pojo下 5、在java中…...
Python的秘密基地--[章节2]Python核心数据结构
第2章:Python核心数据结构 Python中的数据结构提供了强大的工具来存储和操作数据。理解这些数据结构是Python编程的基础。 2.1 列表(List) 2.1.1 什么是列表 列表是一种有序的可变序列,用于存储一组数据。它支持多种类型的数据…...
TYUT设计模式精华版
七大原则 单一职责原则 职责要单一不能将太多的职责放在一个类中 开闭原则 软件实体对扩展是开放的,但对修改是关闭的 里氏代换原则 一个可以接受基类对象的地方必然可以接受子类 依赖倒转原则 要针对抽象层编程,而不要针对具体类编程 接口隔离原则 …...
责任链模式
07-责任链模式 1 导读 1.1 定义 包含了一些命令对象和一系列处理对象。每个处理对象决定它能处理哪些命令对象,它也知道如何将它不能处理的命令对象传递给该链中的下一个处理对象。 该模式还描述了往该处理链的末尾添加新的处理对象的方法。 精简定义:为…...
2024.11.29(单链表)
思维导图 声明文件 #ifndef __LINKLIST_H__ #define __LINKLIST_H__#include <myhead.h>typedef char datatype; //数据元素类型 //定义节点类型 typedef struct Node {union{int len; //头节点数据域datatype data; //普通节点数据域};struct Node *next; //指针域…...
用Python做数据分析环境搭建及工具使用(Jupyter)
目录 一、Anaconda下载、安装 二、Jupyter 打开 三、Jupyter 常用快捷键 3.1 创建控制台 3.2 命令行模式下的快捷键 3.3 运行模式下快捷键 3.4 代码模式和笔记模式 3.5 编写Python代码 一、Anaconda下载、安装 【最新最全】Anaconda安装python环境_anaconda配置python…...