爆款云主机2核4G限时秒杀,88元/年起!
查看详情

活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 618智算钜惠季 爆款云主机2核4G限时秒杀,88元/年起!
  • 免费体验DeepSeek,上天翼云息壤 NEW 新老用户均可免费体验2500万Tokens,限时两周
  • 云上钜惠 HOT 爆款云主机全场特惠,更有万元锦鲤券等你来领!
  • 算力套餐 HOT 让算力触手可及
  • 天翼云脑AOne NEW 连接、保护、办公,All-in-One!
  • 中小企业应用上云专场 产品组合下单即享折上9折起,助力企业快速上云
  • 息壤高校钜惠活动 NEW 天翼云息壤杯高校AI大赛,数款产品享受线上订购超值特惠
  • 天翼云电脑专场 HOT 移动办公新选择,爆款4核8G畅享1年3.5折起,快来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

智算服务

打造统一的产品能力,实现算网调度、训练推理、技术架构、资源管理一体化智算服务
智算云(DeepSeek专区)
科研助手
  • 算力商城
  • 应用商城
  • 开发机
  • 并行计算
算力互联调度平台
  • 应用市场
  • 算力市场
  • 算力调度推荐
一站式智算服务平台
  • 模型广场
  • 体验中心
  • 服务接入
智算一体机
  • 智算一体机
大模型
  • DeepSeek-R1-昇腾版(671B)
  • DeepSeek-R1-英伟达版(671B)
  • DeepSeek-V3-昇腾版(671B)
  • DeepSeek-R1-Distill-Llama-70B
  • DeepSeek-R1-Distill-Qwen-32B
  • Qwen2-72B-Instruct
  • StableDiffusion-V2.1
  • TeleChat-12B

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场创新解决方案
办公协同
  • WPS云文档
  • 安全邮箱
  • EMM手机管家
  • 智能商业平台
财务管理
  • 工资条
  • 税务风控云
企业应用
  • 翼信息化运维服务
  • 翼视频云归档解决方案
工业能源
  • 智慧工厂_生产流程管理解决方案
  • 智慧工地
建站工具
  • SSL证书
  • 新域名服务
网络工具
  • 翼云加速
灾备迁移
  • 云管家2.0
  • 翼备份
资源管理
  • 全栈混合云敏捷版(软件)
  • 全栈混合云敏捷版(一体机)
行业应用
  • 翼电子教室
  • 翼智慧显示一体化解决方案

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
  • 天翼云EasyCoding平台
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼云东升计划
  • 适配中心
  • 东升计划
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
开放能力
  • EasyCoding敏捷开发平台
培训与认证
  • 天翼云学堂
  • 天翼云认证
魔乐社区
  • 魔乐社区

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 建议与反馈
  • 用户体验官
  • 服务保障
  • 客户公告
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 智算服务
  • 产品
  • 解决方案
  • 应用商城
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心

      ffmpeg音视频开发从入门到精通——ffmpeg常用目录及命令

      首页 知识中心 软件开发 文章详情页

      ffmpeg音视频开发从入门到精通——ffmpeg常用目录及命令

      2024-11-27 03:25:22 阅读次数:25

      数据,视频

      FFMPEG 目录及作用目录及作用

      libavcodec: 提供了一系列编码器的实现。
      libavformat: 实现在流协议,容器格式及其本IO访问。
      libavutil: 包括了hash器,解码器和各利工具函数。
      libavfilter: 提供了各种音视频过滤器。
      libavdevice: 提供了访问捕获设备和回放设备的接口。
      libswresample: 实现了混音和重采样。
      libswscale: 实现了色彩转换和缩放功能。

      常用概念解释

      • 音/视频流 在音视频领域,我们把一路音/视频称为一路流。
      • 容器 一般把 MP4、 FLV、MOV等文件格式称之为容器。也就是在这些常用格式文件中,可以存放多路音视频文件。以 MP4 为例,就可以存放一路视频流,多路音频流,多路字幕流。
      • channel channel是音频中的概念,称之为声道。在一路音频流中,可以有单声道,双声道或立体声。

      FFMPEG命令命令

      按使用目的可以将 FFMPEG 命令分成以下几类:

      • 基本信息查询命令
      • 录制
      • 分解/复用
      • 处理原始数据
      • 滤镜
      • 切割与合并
      • 图/视互转
      • 直播相关
        除了 FFMPEG 的基本信息查询命令外,其它命令都按下图所示的流程处理音视频。

        然后将编码的数据包传送给解码器(除非为数据流选择了流拷贝,请参阅进一步描述)。 解码器产生未压缩的帧(原始视频/ PCM音频/ …),可以通过滤波进一步处理(见下
        一节)。 在过滤之后,帧被传递到编码器,编码器并输出编码的数据包。 最后,这些传递给复用器,将编码的数据包写入输出文件。
        默认情况下,ffmpeg只包含输入文件中每种类型(视频,音频,字幕)的一个流,并将其添加到每个输出文件中。 它根据以下标准挑选每一个的“最佳”:对于视频,它是具有最高分辨率的流,对于音频,它是具有最多channel的流,对于字幕,是第一个字幕流。 在相同类型的几个流相等的情况下,选择具有最低索引的流。
        您可以通过使用-vn / -an / -sn / -dn选项来禁用某些默认设置。 要进行全面的手动控制,请使用-map选项,该选项禁用刚描述的默认设置。

      查询命令

      FFMPEG 可以使用下面的参数进行基本信息查询。例如,想查询一下现在使用的 FFMPEG 都支持哪些 filter,就可以用 ffmpeg -filters 来查询。详细参数说明如下:
      -version 显示版本。基本信息查询命令
      FFMPEG 可以使用下面的参数进行基本信息查询。
      例如,想查询一下现在使用的 FFMPEG 都支持哪些 filter,就可以用 ffmpeg -filters 来查询。详细参数说明如下:

      • version 显示版本
      • ffmpeg音视频开发从入门到精通——ffmpeg常用目录及命令

      • formats 显示可用的格式(包括设备)。
      • ffmpeg音视频开发从入门到精通——ffmpeg常用目录及命令

      • 以下是FFmpeg的基本信息查询命令及其参数说明整理成的表格:

      参数

      说明

      -version

      显示版本。

      -formats

      显示可用的格式(包括设备)。

      -demuxers

      显示可用的demuxers。

      -muxers

      显示可用的muxers。

      -devices

      显示可用的设备。

      -codecs

      显示libavcodec已知的所有编解码器。

      -decoders

      显示可用的解码器。

      -encoders

      显示所有可用的编码器。

      -bsfs

      显示可用的比特流filter。

      -protocols

      显示可用的协议。

      -filters

      显示可用的libavfilter过滤器。

      -pix_fmts

      显示可用的像素格式。

      -sample_fmts

      显示可用的采样格式。

      -layouts

      显示channel名称和标准channel布局。

      -colors

      显示识别的颜色名称。

      这些参数可用于查询FFmpeg的各种功能和支持的格式、设备等信息。

      命令基本格式及参数

      fmpeg [global_options] {[input_file_options] -i input_url} …
      {[output_file_options] output_url} …
      ffmpeg 通过 -i 选项读取输任意数量的输入“文件”(可以是常规文件,管道,网络流,抓取设备等,并写入任意数量的输出“文件”。
      原则上,每个输入/输出“文件”都可以包含任意数量的不同类型的视频流(视频/音频/字幕/附件/数据)。 流的数量和/或类型是由容器格式来限制。 选择从哪个输入进入到哪个输
      出将自动完成或使用 -map 选项。
      要引用选项中的输入文件,您必须使用它们的索引(从0开始)。 例如。 第一个输入文件是0,第二个输入文件是1,等等。类似地,文件内的流被它们的索引引用。 例如。
      2:3是指第三个输入文件中的第四个流。
      上面就是 FFMPEG 处理音视频的常用命令,下面是一些常用参数:
      以下是FFmpeg的基本命令格式及常用参数的总结:

      参数

      说明

      -f fmt(输入/输出)

      强制输入或输出文件格式。格式通常是自动检测输入文件,并从输出文件的文件扩展名中猜测出来,所以在大多数情况下这个选项是不需要的。

      -i url(输入)

      输入文件的网址

      -y(全局参数)

      覆盖输出文件而不询问。

      -n(全局参数)

      不要覆盖输出文件,如果指定的输出文件已经存在,请立即退出。

      -c [:stream_specifier] codec(输入/输出,每个流)

      选择一个编码器(当在输出文件之前使用)或解码器(当在输入文件之前使用时)用于一个或多个流。codec 是解码器/编码器的名称或 copy(仅输出)以指示该流不被重新编码。

      -codec [:stream_specifier]编解码器(输入/输出,每个流)

      同 -c

      -t duration(输入/输出)

      当用作输入选项(在-i之前)时,限制从输入文件读取的数据的持续时间。当用作输出选项时(在输出url之前),在持续时间到达持续时间之后停止输出。

      -ss位置(输入/输出)

      当用作输入选项时(在-i之前),在这个输入文件中寻找位置。当转码和-accurate_seek被启用时(默认),搜索点和位置之间的这个额外的分段将被解码和丢弃。

      -frames [:stream_specifier] framecount(output,per-stream)

      停止在帧计数帧之后写入流。

      -filter [:stream_specifier] filtergraph(output,per-stream)

      创建由filtergraph指定的过滤器图,并使用它来过滤流。filtergraph是应用于流的filtergraph的描述,并且必须具有相同类型的流的单个输入和单个输出。

      视频参数

      以下是FFmpeg视频处理相关参数的总结:

      参数

      说明

      -vframes num(输出)

      设置要输出的视频帧的数量。对于-frames:v,这是一个过时的别名,您应该使用它。

      -r [:stream_specifier] fps(输入/输出,每个流)

      设置帧率(Hz值,分数或缩写)。作为输入选项,忽略存储在文件中的任何时间戳,根据速率生成新的时间戳。作为输出选项,复制或丢弃输入帧以实现恒定输出帧频fps。

      -s [:stream_specifier]大小(输入/输出,每个流)

      设置窗口大小。作为输入选项,这是video_size专用选项的快捷方式,由某些分帧器识别,其帧尺寸未被存储在文件中。作为输出选项,这会将缩放视频过滤器插入到相应过滤器图形的末尾。

      -aspect [:stream_specifier] 宽高比(输出,每个流)

      设置方面指定的视频显示宽高比。aspect可以是浮点数字符串,也可以是num:den形式的字符串,其中num和den是宽高比的分子和分母。

      -vn(输出)

      禁用视频录制。

      -vcodec编解码器(输出)

      设置视频编解码器。这是-codec:v的别名。

      -vf filtergraph(输出)

      创建由filtergraph指定的过滤器图,并使用它来过滤流。

      音频参数

      参数

      说明

      -aframes (输出)

      设置要输出的音频帧的数量。这是-frames:a的过时别名。

      -ar [stream_specifier] freq (输入/输出,每个流)

      设置音频采样频率。输出流默认设置为相应输入流的频率。输入流仅适用于音频捕获设备和原始分路器。

      -ac [stream_specifier]通道 (输入/输出,每个流)

      设置音频通道的数量。输出流默认设置为输入音频通道的数量。输入流仅适用于音频捕获设备和原始分路器。

      -an (输出)

      禁用录音。

      -acodec 编解码器 (输入/输出)

      设置音频编解码器。这是-codec:a的别名。

      -sample_fmt [stream_specifier] sample_fmt (输出,每个流)

      设置音频采样格式。使用-sample_fmts获取支持的样本格式列表。

      -af filtergraph (输出)

      创建由filtergraph指定的过滤器图,并使用它来过滤流。

      录制

      首先通过下面的命令查看一下 mac 上都有哪些设备。
      ffmpeg -f avfoundation -list_devices true -i “”

      录屏录屏

      ffmpeg -f avfoundation -i 1 -r 30 out.yuv

      参数

      说明

      -f avfoundation

      指定使用avfoundation采集数据。

      -i 1:0

      指定从哪儿采集数据,1代表屏幕索引号,0代表声音索引号。

      -r 29.97

      指定输出帧率为29.97。

      -c:v libx264

      设置视频编码器为libx264。

      -crf 0

      设置x264的CRF参数为0,表示无损压缩。

      -c:a libfdk_aac

      设置音频编码器为libfdk_aac。

      -profile:a aac_he_v2

      设置libfdk_aac编码器的配置文件为aac_he_v2。

      -b:a 32k

      设置音频码率为32k。

      录视频录视频

      ffmpeg -framerate 30 -f avfoundation -i 0 out.mp4

      以下是使用FFmpeg采集视频和音频的参数命令总结:

      1. -f avfoundation:指定使用avfoundation采集数据。
      2. -framerate:限制视频的采集帧率。根据提示要求进行设置,否则可能会报错。
      3. -i 1:0:指定视频设备的索引号。冒号前面的“1”代表屏幕索引号,冒号后面的“0”代表声音索引号。

      命令示例:

      ffmpeg -f avfoundation -framerate 30 -i 1:0 -c:v libx264 -crf 0 -c:a libfdk_aac -profile:a aac_he_v2 -b:a 32k out.flv

      参数

      说明

      -f avfoundation

      指定使用avfoundation采集数据。

      -framerate 30

      限制视频的采集帧率为30。

      -i 1:0

      指定视频设备和声音设备的索引号,1是屏幕,0是声音。

      -c:v libx264

      设置视频编码器为libx264。

      -crf 0

      设置x264的CRF参数为0,表示无损压缩。

      -c:a libfdk_aac

      设置音频编码器为libfdk_aac。

      -profile:a aac_he_v2

      设置libfdk_aac编码器的配置文件为aac_he_v2。

      -b:a 32k

      设置音频码率为32k。

      通过这些参数,可以使用FFmpeg实现高质量的屏幕录制和音频同步录制。

      • 视频视频+音频音频
      ffmpeg -framerate 30 -f avfoundation -i 0:0 out.mp4
      • 录音录音
      ffmpeg -f avfoundation -i :0 out.wav
      • 录制音频裸数据录制音频裸数据
      ffmpeg -f avfoundation -i :0 -ar 44100 -f s16le out.pcm

      分解与复用

      流拷贝是通过将 copy 参数提供给-codec选项来选择流的模式。它使得ffmpeg省略了指定流的解码和编码步骤,所以它只能进行多路分解和多路复用。 这对于更改容器格式或修

      改容器级元数据很有用。 在这种情况下,上图将简化为:

      ffmpeg音视频开发从入门到精通——ffmpeg常用目录及命令

       

      由于没有解码或编码,速度非常快,没有质量损失。 但是,由于许多因素,在某些情况下可能无法正常工作。 应用过滤器显然也是不可能的,因为过滤器处理未压缩的数据。

      抽取音频流抽取音频流

      ffmpeg -i input.mp4 -acodec copy -vn out.aac

      acodec: 指定音频编码器,copy 指明只拷贝,不做编解码。
      vn: v 代表视频,n 代表 no 也就是无视频的意思。

      抽取视频流抽取视频流

      ffmpeg -i input.mp4 -vcodec copy -an out.h264

      vcodec: 指定视频编码器,copy 指明只拷贝,不做编解码。
      an: a 代表视频,n 代表 no 也就是无音频的意思。

      转格式转格式

      ffmpeg -i out.mp4 -vcodec copy -acodec copy out.flv
      上面的命令表式的是音频、视频都直接 copy,只是将 mp4 的封装格式转成了flv。

      音视频合并

      ffmpeg -i out.h264 -i out.aac -vcodec copy -acodec copy out.mp4

      处理原始数据

      提取提取YUV数据数据

      ffmpeg -i input.mp4 -an -c:v rawvideo -pixel_format yuv420p out.yuv
      ffplay -s wxh out.yuv

      -c:v rawvideo 指定将视频转成原始数据
      -pixel_format yuv420p 指定转换格式为yuv420p

      YUV转转H264

      ffmpeg -f rawvideo -pix_fmt yuv420p -s 320x240 -r 30 -i out.yuv -c:v libx264 -f rawvideo out.h264

      提取提取PCM数据数据

      ffmpeg -i out.mp4 -vn -ar 44100 -ac 2 -f s16le out.pcm
      ffplay -ar 44100 -ac 2 -f s16le -i out.pcm

      PCM转转WAV

      ffmpeg -f s16be -ar 8000 -ac 2 -acodec pcm_s16be -i input.raw output.wav

      在编码之前,ffmpeg可以使用libavfilter库中的过滤器处理原始音频和视频帧。 几个链式过滤器形成一个过滤器图形。 ffmpeg区分两种类型的过滤器图形:简单和复杂。

      简单滤镜

      简单的过滤器图是那些只有一个输入和输出,都是相同的类型。 在上面的图中,它们可以通过在解码和编码之间插入一个额外的步骤来表示:

      ffmpeg音视频开发从入门到精通——ffmpeg常用目录及命令

       

      简单的filtergraphs配置了per-stream-filter选项(分别为视频和音频使用-vf和-af别名)。 一个简单的视频filtergraph可以看起来像这样的例子:

      请注意,某些滤镜会更改帧属性,但不会改变帧内容。 例如。 上例中的fps过滤器会改变帧数,但不会触及帧内容。 另一个例子是setpts过滤器,它只设置时间戳,否则不改变

      帧。

      复杂滤镜

      复杂的过滤器图使用-filter_complex选项进行配置。 请注意,此选项是全局性的,因为复杂的过滤器图形本质上不能与单个流或文件明确关联。
      -lavfi选项等同于-filter_complex。
      一个复杂的过滤器图的一个简单的例子是覆盖过滤器,它有两个视频输入和一个视频输出,包含一个视频叠加在另一个上面。 它的音频对应是amix滤波器。

      添加水印添加水印

      ffmpeg -i out.mp4 -vf "movie=logo.png,scale=64:48[watermask];[in][watermask] overlay=30:10 [out]" water.mp4

      -vf中的 movie 指定logo位置。scale 指定 logo 大小。overlay 指定 logo 摆放的位置。

      删除水印删除水印

      先通过先通过 ffplay 找到要删除找到要删除 LOGO 的位置的位置

      ffplay -i test.flv -vf delogo=x=806:y=20:w=70:h=80:show=1

      使用使用 delogo 滤镜删除滤镜删除 LOGO

      ffmpeg -i test.flv -vf delogo=x=806:y=20:w=70:h=80 output.flv

      视频缩小一倍视频缩小一倍

      ffmpeg -i out.mp4 -vf scale=iw/2:-1 scale.mp4

      -vf scale指定使用简单过滤器 scale,iw/2:-1 中的 iw 指定按整型取视频的宽度。 -1 表示高度随宽度一起变化。

      视频裁剪视频裁剪

      ffmpeg -i VR.mov -vf crop=in_w-200:in_h-200 -c:v libx264 -c:a copy -video_size 1280x720 vr_new.mp4

      crop 格式:crop=out_w:out_hy
      out_w: 输出的宽度。可以使用 in_w 表式输入视频的宽度。
      out_h: 输出的高度。可以使用 in_h 表式输入视频的高度。
      x : X坐标
      y : Y坐标
      如果 x和y 设置为 0,说明从左上角开始裁剪。如果不写是从中心点裁剪。

      倍速播放倍速播放

      ffmpeg -i out.mp4 -filter_complex “[0:v]setpts=0.5PTS[v];[0:a]atempo=2.0[a]" -map “[v]” -map “[a]” speed2.0.mp4

      -filter_complex复杂滤镜,[0:v]
      表示第一个(文件索引号是0
      )文件的视频作为输入。setpts=0.5PTS表示每帧视频的pts时间戳都乘0.5 ,也就是差少一半。[v]表示输出的别名。
      音频同理就不详述了。
      map 可用于处理复杂输出,如可以将指定的多路流输出到一个输出文件,也可以指定输出到多个文件。”[v]" 复杂滤镜输出的别名作为输出文件的一路流。上面 map的用法是将复
      杂滤镜输出的视频和音频输出到指定文件中。

      对称视频

      ffmpeg -i out.mp4 -filter_complex “[0:v]pad=w=2*iw[a];[0:v]hflip[b];[a][b]overlay=x=w” duicheng.mp4

      hflip 水平翻转

      如果要修改为垂直翻转可以用vflip。
      画中画

      ffmpeg -i out.mp4 -i out1.mp4 -filter_complex “[1:v]scale=w=176:h=144:force_original_aspect_ratio=decrease[ckout];[0:v][ckout]overlay=x=W-w-10:y=0[out]” -map “[out]” -movflags faststart
      new.mp4

      录制画中画

      ffmpeg -f avfoundation -i “1” -framerate 30 -f avfoundation -i “0:0”
      -r 30 -c:v libx264 -preset ultrafast
      -c:a libfdk_aac -profile:a aac_he_v2 -ar 44100 -ac 2
      -filter_complex “[1:v]scale=w=176:h=144:force_original_aspect_ratio=decrease[a];[0:v][a]overlay=x=W-w-10:y=0[out]”
      -map “[out]” -movflags faststart -map 1:a b.mp4

      多路视频拼接

      ffmpeg -f avfoundation -i “1” -framerate 30 -f avfoundation -i “0:0” -r 30 -c:v libx264 -preset ultrafast -c:a libfdk_aac -profile:a aac_he_v2 -ar 44100 -ac 2 -filter_complex “[0:v]scale=320:240[a];
      [a]pad=640:240[b];[b][1:v]overlay=320:0[out]” -map “[out]” -movflags faststart -map 1:a c.mp4

      音视频的拼接与裁剪

      裁剪

      ffmpeg -i out.mp4 -ss 00:00:00 -t 10 out1.mp4

      -ss 指定裁剪的开始时间,精确到秒
      -t 被裁剪后的时长。

      合并

      首先创建一个 inputs.txt 文件,文件内容如下:
      file '1.flv’
      file '2.flv’
      file '3.flv’
      然后执行下面的命令:

      ffmpeg -f concat -i inputs.txt -c copy output.flv

      hls切片

      ffmpeg -i out.mp4 -c:v libx264 -c:a libfdk_aac -strict -2 -f hls out.m3u8

      -strict -2 指明音频使有AAC。
      -f hls 转成 m3u8 格式。

      视频图片互转

      视频转JPEG

      ffmpeg -i test.flv -r 1 -f image2 image-%3d.jpeg

      视频转gif

      ffmpeg -i out.mp4 -ss 00:00:00 -t 10 out.gif

      图片转视频

      ffmpeg -f image2 -i image-%3d.jpeg images.mp4

      直播相关

      推流

      ffmpeg -re -i out.mp4 -c copy -f flv rtmp://server/live/streamName

      拉流保存

      ffmpeg -i rtmp://server/live/streamName -c copy dump.flv

      转流

      ffmpeg -i rtmp://server/live/originalStream -c:a copy -c:v copy -f flv rtmp://server/live/h264Stream

      实时推流

      ffmpeg -framerate 15 -f avfoundation -i “1” -s 1280x720 -c:v libx264 -f flv rtmp://localhost:1935/live/room

      ffplay

      播放YUV 数据

      ffplay -pix_fmt nv12 -s 192x144 1.yuv

      播放YUV中的 Y平面

      ffplay -pix_fmt nv21 -s 640x480 -vf extractplanes=‘y’ 1.yuv
      版权声明:本文内容来自第三方投稿或授权转载,原文地址:https://blog.51cto.com/u_13859040/11266011,作者:qq5b42bed9cc7e9,版权归原作者所有。本网站转在其作品的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如因作品内容、版权等问题需要同本网站联系,请发邮件至ctyunbbs@chinatelecom.cn沟通。

      上一篇:Java注解:提升代码可读性与维护性的利器

      下一篇:OpenCV从入门到精通实战(六)——多目标追踪

      相关文章

      2025-05-19 09:04:53

      【NetApp数据恢复】误操作导致NetApp存储的卷丢失,卷内虚拟机无法访问的数据恢复案例

      【NetApp数据恢复】误操作导致NetApp存储的卷丢失,卷内虚拟机无法访问的数据恢复案例

      2025-05-19 09:04:53
      存储 , 数据 , 数据恢复 , 解压
      2025-05-19 09:04:44

      DataGuard GAP 修复1-- 模拟产生GAP

      DataGuard GAP 修复1-- 模拟产生GAP

      2025-05-19 09:04:44
      模拟 , 视频
      2025-05-16 09:15:10

      画图时使用的函数和一些错误处理

      画图时使用的函数和一些错误处理

      2025-05-16 09:15:10
      数据
      2025-05-14 10:33:25

      超级好用的C++实用库之国密sm4算法

      国密SM4算法,全称为国家密码管理局制定的SM4分组密码算法,是中国自主设计的商用密码算法标准之一,用于数据的对称加密。

      2025-05-14 10:33:25
      加密 , 参数 , 数据 , 模式 , 解密
      2025-05-14 10:07:38

      30天拿下Rust之引用

      在Rust语言中,引用机制是其所有权系统的重要组成部分,它为开发者提供了一种既高效又安全的方式来访问和共享数据。引用可以被视为一个指向内存地址的指针,它允许我们间接地访问和操作存储在内存中的数据。

      2025-05-14 10:07:38
      Rust , text , 可变 , 引用 , 数据
      2025-05-14 10:07:38

      30天拿下Rust之所有权

      在编程语言的世界中,Rust凭借其独特的所有权机制脱颖而出,为开发者提供了一种新颖而强大的工具来防止内存错误。这一特性不仅确保了代码的安全性,还极大地提升了程序的性能。

      2025-05-14 10:07:38
      data , Rust , 内存 , 函数 , 变量 , 数据
      2025-05-14 10:03:13

      【MySQL】-数据库优化(索引)

      索引(index)是帮助数据库高效获取数据的数据结构

      2025-05-14 10:03:13
      index , Tree , 二叉 , 搜索 , 数据 , 索引 , 节点
      2025-05-14 10:03:13

      超级好用的C++实用库之Base64编解码

      Base64是一种编码方式,用于将二进制数据转换为可打印的ASCII字符。这种编码方式常用于在HTTP协议等应用中传输二进制数据,比如:图片、音频、视频等。

      2025-05-14 10:03:13
      Base64 , 字符串 , 数据 , 编码 , 长度
      2025-05-14 10:02:58

      java项目多端数据同步解决方案

      多端数据同步是指在多个设备(例如桌面应用、移动应用、Web应用)之间保持数据的一致性。

      2025-05-14 10:02:58
      java , Spring , WebSocket , 同步 , 数据 , 版本号
      2025-05-14 10:02:58

      超级好用的C++实用库之字节流解析器

      字节流解析器是一种软件组件,它负责将接收到的原始二进制数据(字节流)转换为有意义的信息结构或格式。在计算机网络、文件处理和数据通信中,字节流是最基本的数据传输形式,但这些原始字节对于应用程序通常是没有直接意义的,需要通过特定的解析规则来解读。

      2025-05-14 10:02:58
      true , 参数 , 字节 , 数据 , 获取 , 解析器 , 返回值
      查看更多
      推荐标签

      作者介绍

      天翼云小翼
      天翼云用户

      文章

      33561

      阅读量

      5265744

      查看更多

      最新文章

      超级好用的C++实用库之国密sm4算法

      2025-05-14 10:33:25

      超级好用的C++实用库之Base64编解码

      2025-05-14 10:03:13

      超级好用的C++实用库之字节流解析器

      2025-05-14 10:02:58

      java项目多端数据同步解决方案

      2025-05-14 10:02:58

      python 音频和视频合并自动裁剪

      2025-05-13 09:53:23

      变量基础_变量场景

      2025-05-13 09:49:27

      查看更多

      热门文章

      Python|斐波那契数列

      2023-02-27 10:01:21

      游戏编程之十一 图像页CPICPAGE介绍

      2022-11-28 01:25:04

      PHP:将list列表转为tree树形数据

      2023-02-28 08:23:26

      数据结构与算法之七 栈

      2022-11-17 12:37:20

      Python编程:Crypto模块RSA非对称加密

      2023-02-15 10:02:30

      Python编程:利用peewee的model_to_dict进行数据迁移

      2023-02-21 06:21:46

      查看更多

      热门标签

      java Java python 编程开发 代码 开发语言 算法 线程 Python html 数组 C++ 元素 javascript c++
      查看更多

      相关产品

      弹性云主机

      随时自助获取、弹性伸缩的云服务器资源

      天翼云电脑(公众版)

      便捷、安全、高效的云电脑服务

      对象存储

      高品质、低成本的云上存储服务

      云硬盘

      为云上计算资源提供持久性块存储

      查看更多

      随机文章

      【软件工程】数据流图DFD

      Java后端异步编程模式:响应式编程与Reactive Streams

      Java代码编写:CS335 Space Racing Simulator

      简述MySQL中索引类型对数据库的性能的影响--------->缓存雪崩、缓存穿透、缓存击穿

      数据分享|R语言用主成分PCA、 逻辑回归、决策树、随机森林分析心脏病数据并高维可视化|附代码数据

      大数据测试过程、策略及挑战

      • 7*24小时售后
      • 无忧退款
      • 免费备案
      • 专家服务
      售前咨询热线
      400-810-9889转1
      关注天翼云
      • 旗舰店
      • 天翼云APP
      • 天翼云微信公众号
      服务与支持
      • 备案中心
      • 售前咨询
      • 智能客服
      • 自助服务
      • 工单管理
      • 客户公告
      • 涉诈举报
      账户管理
      • 管理中心
      • 订单管理
      • 余额管理
      • 发票管理
      • 充值汇款
      • 续费管理
      快速入口
      • 天翼云旗舰店
      • 文档中心
      • 最新活动
      • 免费试用
      • 信任中心
      • 天翼云学堂
      云网生态
      • 甄选商城
      • 渠道合作
      • 云市场合作
      了解天翼云
      • 关于天翼云
      • 天翼云APP
      • 服务案例
      • 新闻资讯
      • 联系我们
      热门产品
      • 云电脑
      • 弹性云主机
      • 云电脑政企版
      • 天翼云手机
      • 云数据库
      • 对象存储
      • 云硬盘
      • Web应用防火墙
      • 服务器安全卫士
      • CDN加速
      热门推荐
      • 云服务备份
      • 边缘安全加速平台
      • 全站加速
      • 安全加速
      • 云服务器
      • 云主机
      • 智能边缘云
      • 应用编排服务
      • 微服务引擎
      • 共享流量包
      更多推荐
      • web应用防火墙
      • 密钥管理
      • 等保咨询
      • 安全专区
      • 应用运维管理
      • 云日志服务
      • 文档数据库服务
      • 云搜索服务
      • 数据湖探索
      • 数据仓库服务
      友情链接
      • 中国电信集团
      • 189邮箱
      • 天翼企业云盘
      • 天翼云盘
      ©2025 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
      公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
      • 用户协议
      • 隐私政策
      • 个人信息保护
      • 法律声明
      备案 京公网安备11010802043424号 京ICP备 2021034386号