首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ffmpeg -当我的两个输入的高度都是偶数时,为什么hstack失败并显示“宽度不能被2整除”的错误?

ffmpeg是一个开源的音视频处理工具,可以用于处理音视频文件,包括转码、剪辑、合并等操作。在使用ffmpeg进行视频合并时,如果两个输入的高度都是偶数,而宽度不能被2整除,就会导致hstack操作失败并显示“宽度不能被2整除”的错误。

这个错误的原因是hstack操作要求输入的宽度必须能够被2整除,以便正确地进行视频合并。如果两个输入的高度都是偶数,但宽度不能被2整除,就会导致无法进行合并操作。

解决这个问题的方法是调整输入视频的宽度,使其能够被2整除。可以通过裁剪视频的方式,将宽度调整为能够被2整除的值,然后再进行合并操作。

腾讯云提供了一系列的音视频处理服务,包括转码、剪辑、合并等功能,可以满足用户对音视频处理的需求。具体产品和介绍链接如下:

  1. 腾讯云音视频处理(MPS):提供了丰富的音视频处理功能,包括转码、剪辑、合并等,支持多种音视频格式和编码方式。详情请参考:腾讯云音视频处理(MPS)

总结:当使用ffmpeg进行视频合并时,如果两个输入的高度都是偶数,而宽度不能被2整除,就会导致hstack操作失败并显示“宽度不能被2整除”的错误。解决方法是调整输入视频的宽度,使其能够被2整除。腾讯云提供了音视频处理服务,可以满足用户对音视频处理的需求。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

编程小短文:FFmpeg视频画面尺寸调整,必知必会

ffmpeg -i input.avi -filter:v scale=720:-1 -c:a copy output.mkv -1将告诉ffmpeg自动选择与提供宽度相关正确高度,以保持宽高比。...如果用户给定了高度,那么-1则可以用于指定保持宽高比中宽度。 使用libx264,Scale一个缺点是此编码器需要偶数值,Scale可能会自动选择奇数值,从而导致错误宽度高度不能2整除。...你可以告诉Scale为给定高度选择偶数值(在本例中为720): scale="trunc(oh*a/2)*2:720" 或者指定高度, scale="1280:trunc(ow/a/2)*2" 引申讨论...ffmpeg -i input.avi -vf scale="iw/1:ih/2" output.avi 你应该会注意到我们使用了两个变量。...iw:输入文件画面宽度 ih:输入文件画面高度两个是系统常量,可以拿来直接使用。 写在最后 其实 ffmpeg 所提供过滤器功能十分复杂,而且功能十分强大。

1.5K20

在 SwiftUI 中实现视图居中若干种方法

即使文本宽度超出了 HStack 给出建议宽度,但 HStack 在布局,仍会保留其最小厚度,导致下图上方文本无法充分利用矩形视图宽度。解决方法为:Spacer(minLength: 0)。...因此,当我们将合成后 hello world 视图放置在 VStack 顶部( 通过 Spacer ),矩形 background 会连同顶部安全区域一渲染。...world 视图并不能充满 Row 提供高度。...另外,由于 Color、Rectangle 会在两个维度进行填充( Spacer 会根据容器选择填充维度 ),因此,使用它们作为填充物,将会自动使用全部可用空间( 包括高度 ),无需通过 .frame...Color 宽度因此会出现两种可能错误状态:当文本较长,Text 会超过 Color 宽度由于合成视图具备可变尺寸特性,VStack、HStack 在为其添加 spacing 将可能出现异常

6.6K40

使用 SwiftUI 创建一个灵活选择器

所有符合该协议对象必须实现两个属性:displayedName(在选择器中显示名称)和 isSelected(一个布尔值,指示特定选项是否已选择)。...接下来,创建了用于计算特定字符串值宽度高度字符串扩展。由于我实现允许更改字体大小和权重,因此先前提到两个扩展都以由灵活选择器使用 UIFont 作为参数。...首先,我需要一个函数来计算返回输入数据所有宽度。我通过将所有输入值映射到元组中,其中包含输入值和自身宽度来完成。...(不能适应上一行元素),通过减去当前项宽度来更新 HStack 行宽。...VStack 高度是根据两个值计算输入数据中任何项目的高度(类似于宽度计算,通过使用 reduce 函数,总结与项目相关所有高度) 将显示在 VStack 中行数 private func

24720

详解Assertion desc failed at srclibswscaleswscale_internal.h:668

当一个断言失败,说明程序某些假设不为真,这可能会导致错误或异常情况。 在FFmpegswscale库中,一些断言用于检查输入参数是否满足特定要求。...例如,可能需要检查图像尺寸是否符合预期,或者输入数据是否有效等。当这些检查失败,断言就会触发,抛出该错误。解决方案为了解决这个问题,可以考虑以下几个方面:1....2. 升级FFmpeg版本有时候,这个错误可能会因为FFmpeg版本中bug而发生。尝试将FFmpeg升级到最新稳定版本,以获取最新修复和改进。3....、输出文件路径以及期望输出视频宽度高度作为参数。...当我们调用transcode_video函数,它将会尝试从输入文件中读取视频,并将其转码为指定大小输出文件。如果转码成功,将打印"视频转码成功!"消息;如果转码失败,将打印错误消息。

19310

Python流程控制语句详细解读 含代码

else : print('你输入有误,请重新输入!') 运行结果: ? ? ? If 语句练习: 练习1:编写一个程序,获取一个用户输入整数。然后通过程序显示这个数是奇数还是偶数。...#获取用户输入整数 num = int(input('请输入一个任意整数:')) #判断显示num是奇数还是偶数 if num % == : print(num , "是偶数") #判断是否可以整除...#如果一个年份可以4整除不能100整除,或者可以400整除,这个年份就是闰年 year = int(input('请输入一个任意年份:')) #检查这个年份是否是闰年 if year % ==...# 判断number是否是质数,只能1和它自身整除数就是质数 number = int(input('输入一个任意大于1整数:')) # 判断number是否是质数,只能1和它自身整除数就是质数...*** ********** ********** 创建一个循环来控制图形高度 i = 0 while i < 5: #创建一个内层循环来控制图形宽度 j = 0 while

98520

音视频八股文(4)--ffmpeg常见命令(3)

2/3 crop=2/3in_w:2/3in_h (4)裁剪中心区域正方形,高度输入视频高 crop=out_w=in_h crop=in_h (5)裁剪偏移左上角100像素 crop=in_w-...in_h/2 17.3 FFmpeg滤镜Filter内置变量 在使用Filter,经常会用到根据时间轴进行操作需求,在使用FFmpegFilter可以使用Filter时间相关内置变量,下面先来了解一下这些相关变量...,占据整个屏幕高度 70%。...在上面的命令基础上,我们添加了 eof_action=1 参数:当叠加层结束,将停止处理,保持静止画面。可以使用这种方式避免出现不必要错误提示。...17.4.5 FFmpeg视频多宫格处理 视频除了画中画显示,还有一种场景为以多宫格方式呈现出来,除了可以输入视频文件,还可以输入视频流、采集设备等。

44630

ffplay文档

如果使用 additional_stream_specifier,则它匹配两个都是程序一部分并与additional_stream_specifier匹配流。...-colors 显示已识别的颜色名称 -sources device [,opt1 = val1 [,opt2 = val2 ] …] 显示输入设备自动检测源。...‘panic, 0’ 仅显示可能导致进程崩溃致命错误,例如断言失败。目前还没有用于任何目的。 ‘fatal, 8’ 只显示致命错误。这些是错误,在此之后该过程绝对无法继续。...:level = 32 ffmpeg -i输入输出 解析环境变量错误不是致命,并且不会出现在报告中。...注意:通过将v / a / s添加到选项名称之前指定每个流AVOptions未记录方式现在已过时,将很快删除。 3.4主要选择 -x 宽度 强制显示宽度。 -y 高度 强制显示高度

2.5K10

细说网页设计6大规范

1920x1080px来设计,通常设计网站网站宽度为1920px,每个屏幕高度约为900px。...另外,字号大小也非常重要。网页显示区域决定了文字不可以过大,在网站设计中文字大小一般来说是12-20像素。为什么不能比12px更小?因为如果比12像素更小中文无法放得下复杂笔画了。...五、表单设计 在网站设计中经常需要使用一些输入框、下拉菜单、弹窗、单选框、复选框、编辑器等。这些都是系统级控件,一般是直接调用系统设计。...比如一个网站内容有5个区块和4个间距,那么如果宽度缩小成900需要如何变化,这就是自适应布局。 2、响应式网站 响应式网站则需要设计不同版本设计稿,然后根据不同设备提供不同 CSS 样式。...对于设计师来说,自适应需要考虑网站在不同设备宽度整除与排版;响应式则需要设计电脑、平板、手机等至少三套设计稿(但这三套设计稿内容是一致)。

2.5K60

FFmpeg推流命令总结

今天考虑一个mcu混合实现,也就是接收多路过来rtp流,然后转发出去一路rtmp流,使用ffmpeg测试做记录,刚开始一直通过ffmpeg推送文件流不能满足要求,还是对参数配置不熟悉; 0、ffmpeg...(要设置成两倍音量输入512,依此类推。)... -i input2.mp4 -lavfi hstack output.mp4 上面的命令虽然可以合并视频,两个视频可以正常播放,但是只保留了前面一个音频。...bottom];[top][bottom]vstack" -shortest 3_videos_2x2_grid.mp4   4、怎么合并两个视频保留两个视频中音频,注意视频分辨率和格式必须一样。...[0:0] [0:1] [1:0] [1:1] [2:0] [2:1] 分别表示第一个输入文件视频、音频、第二个输入文件视频、音频、第三个输入文件视频、音频。

5.5K40

Python练习:哥德巴赫猜想

哥德巴赫猜想 哥德巴赫 1742 年给欧拉信中哥德巴赫提出了以下猜想:任一大于 2 偶数都可写成两个质数之和。...功能拆解成几个小程序: 用户输入判断:当值为数字是返回True,否则返回False 奇数、偶数判断:当值为偶数返回True,否则返回False 质数判断:质数是数学上定义,指的是只能1和它本身整除数字...,组合这些函数完成编程目标:输入任意一个大于5偶数,证明这个偶数符合哥德巴赫猜想,显示是哪两个质数。...1 respone = input('请输入一个大于5偶数:') 2 if isNum(respone): #判断输入是否为整数 3 respone = int(respone) #判断是否是大于...17 else: 18 print('输入错误!') View Code 显示结果: ? ? ?

3.3K30

FFmpeg 入门

ffmpeg 从任意数量/形式输入文件中进行读取(可以是普通文件,管道,网络流,设备源等等),通过输入文件选项对输入文件进行设定,通过 -i 进行标记,写入到任意数量/形式输出文件中,任何在命令行中不能解释为选项字符串信息...# 按比例缩放视频输入 ffmpeg -i input.mpg -vf scale=iw/2:ih/2 output.mp4 # 扩展到预定义宽度高度: 等比缩放 ffmpeg -i input.avi...输入高度 out_w, ow: 输出(裁剪)宽度,默认值= iw; out_h, oh: 输出(裁剪)高度,默认值= ih a: 纵横比,与iw/ih相同; sar: 输入样本比例; dar: 输入显示宽比...主要输入高度 # overlay_w or w overlay输入宽度; overlay_h or h overlay输入高度 # 下面这个命令会把 overlay 放在右上角 ffmpeg -i pair.mp4...视频帧水平划分为规则线,然后划分为2个场,其中第一个场包含奇数行,第二个场包含偶数行。

4.4K281

SwiftUI中水平条形图

Y轴标签Swift代码与垂直条形图X轴代码相似,宽度设置与高度设置互换。两种图表类型y轴线代码都是一样。...更新X轴 同样,创建了一个XaxisHView视图来显示水平条形图X轴,使用与垂直条形图Y轴类似的代码来布置刻度线和刻度值。...柱状图多数据功能用来比较男孩和女孩死亡率。 2018年最高5岁以下儿童死亡率显示在垂直和水平条形图中 水平条形图重用了垂直条形图很多代码,所以显示或隐藏标题、键和轴效果是有效。...在水平条形图中,显示条形图上数值隐藏X轴可以使图表更简洁。 显示和隐藏水平条形图上元素 结论 创建水平条形图SwiftUI代码与创建垂直条形图代码不同。...在创建垂直条形图学到技术可以重复使用,但最好将水平条形图视为与垂直条形图不同图表。当我们深入到轴等组件,可以看到两个图表中轴线都是一样,但是它们标签和定位在x和y之间是换位

4.7K20

SwiftUI 布局协议 - Part 1

这类型常常被作为视图容器,虽然布局协议是今年新推出(至少公开来说),但是我们在第一天使用 SwiftUI 时候就在使用了,当每次使用 HStack 或者 VStack 放置视图都是如此。...,当我们写这个方法我们应该认为我们既是父视图又是子视图:当作为父视图需要询问子视图尺寸,当我们是子视图,要基于我们子视图回复告诉父视图需要尺寸, 这个方法将会收到建议尺寸,一个子视图代理合集和一个缓存...当 sizeThatFits 方法在给定维度中(即宽度高度)收到建议尺寸为 nil ,我们应该返回容器理想尺寸。当收到建议尺寸为0.0,我们应该返回容器最小尺寸。...HStack ,我们知道所有视图都在平等竞争宽度,除非它们有不同布局优先级。...当我们使用一个类型实例,这些方法会像一个函数一样调用。在这种情况下,我们可能会感到困惑,因为我们似乎只是在初始化类型,而实际上,我们做更多。

3.2K10

从零开始学习PYTHON3讲义(七)条件分支和哥德巴赫猜想

1742年,哥德巴赫在教学中发现,每个不小于 6 偶数都是两个素数(只能 1 和它本身整除数)之和。如 6=3+3,12=5+7 等。...编写程序,输入任意一个大于5偶数,证明这个偶数符合哥德巴赫猜想,显示是哪两个质数。 我们前面就讲过,如果一个问题太复杂,我们难以实现。...只有当用户输入了满足条件数字时候,才会退出循环,并由函数返回值返回用户符合条件输入。 质数判断 质数是数学上定义,指的是只能1和它本身整除数字。...来看程序代码: #接受一个正整数输入,判断该数字是否为质数 def isPrime(n): #从2开始循环到n-1 for i in range(2,n): #如果有可以整除...这个主流程大致工作应当是: 输入数字,判断数字是否合规,否则重新输入 假设输入数字是n,我们用i变量循环从3到n-1 如果存在i和n-i两个数字都是质数情况,则猜想成立 猜想成立把i和n-i都显示出来就好了

85920

JavaScript第二节

流程控制 为什么要学习流程控制 实际项目中, 不可能都是简单顺序结构(从上往下执行), 会出现不同条件, 就要根据条件不同做出相应处理 程序三种基本结构 顺序结构 从上到下执行代码就是顺序结构...n1 : n2; //思考1:求两个最小值 //思考2:判断成年还是未成年, 返回字符串 //思考3:求三个数最小值 第3个分支语句 :switch语句 if..else适用于范围判断,switch...##断点调试 (超级重要) 断点调试是指自己在程序某一行设置一个断点,调试,程序运行到这一行就会停住,然后你可以一步一步往下调试,调试过程中可以看各个变量当前值,出错的话,调试到出错代码行即显示错误...打印1-10之间所有数和 思考1: //1 求1-100之间所有数和、平均值 //2 求1-100之间所有数乘积 //3 计算1-100之间能3整除和 思考2: //1 计算1-100之间不能...求1-100之间不能7整除整数和(用continue) //2. 求200-300之间所有的奇数和(用continue) //3.

55520

bmp图像大小biSizeImage算法公式由来

所以(dwRowBit + 31)/32 * 4; 其实我们也可以换个思维考虑: 如下dwRowBit分成2个部分: dwRowBit1为正好能32整除部分,dwRowBit2不能32整除部分...2.由图像高度宽度来计算图像数据字节数。要注意是并不是图像高度乘以图像宽度乘以表示每象 素字节数就行了,因为在BMP文件格式中规定每行字节数必须是4整数倍,不是4整数倍要补 零。...(不能直接除以8,想想为什么?加31有什么作用?)...所以补齐需要加上4个字节数即32位 =================================== 1:biWidth = 241 是位图宽度而不是字节数目 2:(bits)其实需要输入...,就得出位数据实际字节数目,估计你是理解错误了. 4:那估计是乱写,正确是不能把 (xx)/32*4写成(xx)/8,在计算机那是不相等,举例: width = 2,bpp = 8那么行字节数应该是

2.3K50

谈谈状态机

这个问题合法输入有:11,110,1001,1100,1111,... 不合法输入一大堆,光看输入似乎看不出什么规律。所以你不可能用两个状态(可以整除/不可以整除)来描述。...你能依赖,只有当前所处状态,以及当前输入。 光说不练假把式,我们来搞点输入试一试。 如果第一个输入是 1,那么它不能 3 整除。商 0 余 1。一个数能不能整除,关键看余数是否为 0。...所以第二个输入是 0 ,余数 (1 * 2) % 3 = 2,状态从 1 迁移到 2。...要是判断能不能 16 整除,这么做下来,一页 A4 纸恐怕都不够画状态变迁。 还有没有其他方法?肯定有。...比如 1000 和 1001 这两个输入: ? 前者成功,后者失败。 当然,这样处理效率上并非最优,decision tree 上路径会随着带有不确定性状态数量指数增长。

1.4K70

FFmpeg 滤镜相关

n 输入顺序编号,从0开始 pos 输入位置,如果位置则是NAN w 输入视频帧宽度 h 输入视频帧高度 文字水印 在视频中增加文字水印需要准备条件比较多,需要有文字字库处理相关文件...,另外一种方式是通filter读取输入文件指定为水印, 这里重点介绍如何读取movie图片文件作为水印 图片就会出现在视频左上角 ffmpeg -i out2.mp4 -vf "movie=water_pic.png...,默认值rgb = 1…输入颜色空间设置为RGB main_w 或者 W 主输入(背景窗口)宽度 main_h 或者 H 主输入(背景窗口)高度 overlay_w 或者 w overlay输入(前景窗口...)宽度 overlay_h或者h overlay输入(前景窗口)高度 eof_action 遇到eof标志处理方式。...Complex filtergraphs(复杂滤镜) 复杂filtergraphs是那些不能描述为简单线性处理链滤镜组。

2.6K30

设计细节提升开发效率与质量

基于西文字体结构转换为中文,我们可以理解为,字高指就是我们肉眼所能看到字体实际高度,而行高指的是字高+上边距和下边距,反过来说,行高减去字高除以 2 就能得到我们上下边距,行宽指就是整个文本宽度...当我们处理无序列表,四个短句文本,长短不一,同样我们需要限制一行文本宽度,定义一行能承载最多字数,以及跟产品确认可能出现最多字数情况,确认模块设计可行性,保证后续运营人员在替换文案时候不会出错...UI 设计中通常以“向右箭头”来表示当前链接可跳转,使用箭头作图当我们把箭头和文字右对齐,箭头其实会更加往外突出,这时候我们会人为往里边推 1 至 2 像素,最后实际给到开发也应该是红框尺寸...“按钮”也是 UI 设计中常用组件,当我们在按钮里使用图标加文字,由于文字体量更大,整体重心会往右偏,所以我们通常会认为让图标和文字整体往左偏移,使整体视觉更加平衡,实际给到开发,也是两个不同等边距...8 倍数是因为市场上主流屏幕都能 8 整除,使用 8 点栅格能够最大程度让我们所设计内容样式在屏幕上保持高清显示,而在日常网页设计中,我其实更加倾向使用 4 点栅格系统。

95451

FFmpeg开发笔记(二十二)FFmpeg中SAR与DAR显示宽高比

比如该书第10章源码playsync.c在播放meg.vob视频画面如下图所示:可见按照现有方式展示的话,视频画面拉长了。...2、像素宽高比,指的是视频画面保存到文件宽度高度各占据多少像素。像素宽高比英文叫做“Pixel Aspect Ratio”,简称PAR。...3、显示宽高比,指的是视频画面渲染到屏幕显示出来宽度高度比例。显示宽高比英文叫做“Display Aspect Ratio”,简称DAR。...像素宽高比对应AVCodecContext结构width与height两个字段,比例值等于width/height。显示宽高比对应最终要显示画面尺寸,该值需要额外计算。...只有sample_aspect_rationum不等于den,表示像素点是个长方形,才需要另外计算显示宽高比,根据视频高度计算视频实际宽度

13110
领券