缺陷定位 | 分析推理定位BUG案例(三)

往期关联文章:

缺陷定位 | 测试发现了Bug,还要分析定位Bug?(一)

缺陷定位 | 如何精准效率分析推测BUG定位(二)

运营反馈,生产环境,WEB端管理后台,岗位审核详情,视频无法正常播放

d5a2c211033eb80a471fabd136e1ed30.png

表象:

立即去运营那边看了表象情况,点播放,视频有正常播放进度,有声音,视频画面却一直停留在静态的封面,未正常播放视频

分析推理:

1、抓包对应的岗位id和岗位视频地址,使用视频地址在浏览器播放,视频有正常播放进度,有声音,视频画面是黑屏,说明是存在BUG的

8d296665719ed7de7c945cf9a2fade05.png

2、我们把无法播放的视频下载下来,用视频播放器打开也是可以正常播放的,说明视频存在兼容性问题

6f66f2dffcf36bfc01bdf9a4a0e380bd.png

3、猜测是不是视频格式导致的无法播放,从数据库中找了同类型的视频地址,尝试在管理后台播放是正常的,又在浏览器尝试播放,是可以正常播放的,说明是个别用户存在的问题,且不是视频格式导致的无法播放,可能是这个视频存在问题,在浏览器无法正常播放

90a6660d268d3785e47934502c0ef87f.png

4、我们对比了2个视频的属性,找差异,排除了视频大小导致的问题,发现无法播放的视频编码是HEVC,而可以正常播放的视频编码是H.264

9124491976a96c610d4ec6913dca901d.png

5d86061d0e4839d5ac2dc7f7834b61d1.png

5、去百度查了下https://www.cnblogs.com/lixihuan/p/7691978.html得知,HTML5中并没有指定视频解码器,它留给了浏览器来决定。

MP4有四种编码格式(MPEG4(DivX),MPEG4(Xvid),AVC(H264),HEVC(H265));只有使用AVC(H264) 在各个浏览器上显示才是正常的,H264编码是MP4的标准编码

结论:

所以此问题解决方式可以通过视频上传时或者播放时,进行处理解编码处理,成为浏览器可正常播放的H264标准编码。

b2bcfe221c185146da87d36185774d5e.png

757ab7c5c9f73d3236ba7cce42c6ce0b.png

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据结构-栈1-顺序存储

LinkList.h: #include<stdlib.h> #include<stdio.h> #include<string.h> #define MAX_SIZE 1024 #define TRUE 1 #define FALSE 0typedef struct LINKLIST {void* data[MAX_SIZE];int size;}LinkList;//初始化 LinkList* Init_linkList();//压入元素 void Pu…

构建测试的体系化思维(基础篇)

读完需要22分钟速读仅需 8 分钟之前写过一篇文章《神圣的QA》&#xff0c;是面向想从事 QA 工作的毕业生同学的&#xff0c;文中有讲到 QA 的五个基本职责&#xff1a;理解和澄清业务需求制定策略并设计测试实现和执行测试缺陷管理与分析质量反馈与风险识别最近有朋友希望我能分…

数据结构-栈2-链式存储

LinkList.h #include<stdlib.h> #include<stdio.h> #include<string.h> #define MAX_SIZE 1024 #define TRUE 1 #define FALSE 0//链表结点--存储下一个结点指针 typedef struct LINKNODE {struct LINKNODE *next; }LinkNode;//链表--保存头结点,和链表长度…

构建测试的体系化思维(进阶篇)

读完需要24分钟速读仅需 8 分钟00 引言1. 三个层次聊测试体系测试人员缺乏体系化思维&#xff1f;新建产品团队或者新启项目&#xff0c;如何搭建质量保障体系&#xff1f;大家都接触过不计其数的测试、质量方面的文章或者培训课程&#xff0c;内容不乏测试实践、技术相关&…

opencv源码查看

首先看看cmake后的mybuild文件夹&#xff1a; 一、打开opencv.sln文件。然后找到对应的cpp文件。

2022大厂面试必问要点总结

Hi&#xff0c;大家好&#xff0c;又到了一年一度的“金三银四”&#xff0c;圈子里的朋友都在为跳槽做准备&#xff0c;每个人都想抓住机会跳槽大厂涨薪升职。近段时间来咨询面试、进阶、跳槽问题的朋友也越来越多。↑后台留言仅最近三天&#xff0c;就收到近百条关于进阶和面…

loadRunner安装及使用步骤

一、下载 loadRunner软件下载地址&#xff1a;链接&#xff1a;https://pan.baidu.com/s/1c1NBU5CR8n0MP6pttwYXlA 提取码&#xff1a;eent HP_LoadRunner_12.02_Community_Edition_Additional_Components_T7177-15060 社区版的附加组件 HP_LoadRunner_12.02_Community_Edi…

点工转自动化速成指南

Hi&#xff0c;大家好。“金三银四”已过大半&#xff0c;圈子里涨薪喜讯不断&#xff0c;很多人成功跳槽进大厂&#xff0c;涨薪幅度均不低于200%&#xff01;今天就有朋友将要入职深圳现象级大厂&#xff0c;开启年薪26个W的测试生涯。成功拿到高薪的朋友中&#xff0c;其实大…

数据结构-队列1-顺序存储

队列顺序存储 LinkList.h #include<stdio.h> #include<stdlib.h> #include<string.h> #define MAX_SIZE 1024 #define TRUE 1 #define FALSE 0 typedef struct QUEUELINKLIST {void* data[MAX_SIZE]; //数组左边作为队头&#xff0c;右边作为队尾。int si…

构建测试的体系化思维(高级篇)

读完需要26分钟速读仅需 9 分钟本文首发于个人网站「BY林子」&#xff0c;转载请参考网站版权声明。&#x1f440;00 引言测试人员缺乏体系化思维&#xff1f;新建产品团队或者新启项目&#xff0c;如何系统化地测试&#xff1f;组织级如何构建统一的测试体系&#xff1f;1. 三…

数据结构-队列2-链式存储

队列链式存储方案一 seqList.h #include<stdlib.h> #include<stdio.h>struct SEQLINKNODE {struct SEQLINKNODE* next; }; struct SEQLINKLIST {struct SEQLINKNODE head; //头结点struct SEQLINKNODE* back; //尾结点int size; };typedef void* LinkQueue;//…

分享几个接口自动化的实战练手项目

Hi&#xff0c;大家好。最近一直比较忙&#xff0c;难得昨天有空&#xff0c;特意抽时间打开公众号后台&#xff0c;回复一下朋友们的留言。自进入四月以来&#xff0c;后台收到了近百条 点工转自动化 & 跳槽涨薪面试 方面问题的留言&#xff0c;很多人想趁春招旺季提升技术…

Python中私有变量和私有方法芳

Python中要想定义的方法或者变量只能在类内部使用不被外部使用&#xff0c;可以在方法和变量前面加两个下划线&#xff0c;让其变为私有方法或私有变量。类外部可以通过 ”_类名__私有属性&#xff08;方法&#xff09;名“ 访问私有属性&#xff08;方法&#xff09;。class P…

Python类的继承

类的继承可以看成对类的属性和方法的重用&#xff0c;能够大大的减少代码量&#xff0c;继承是一种创建新类的方式&#xff0c;在python中&#xff0c;新建的类可以继承一个或多个父类&#xff0c;也就是说在python中支持一个儿子继承多个爹。通过继承创建的新类为子类或者派生…

数据结构-树1-概念

一、树的性质 一个普通树经过做左孩子右兄弟表示后变为二叉树 二、二叉树性质 完全二叉树判断准则&#xff1a;一棵深度为k的n个结点的二叉树&#xff0c;对树中的结点按从上到下&#xff0c;从左到右的顺序进行编号。如果编号为i的结点和满二叉树中编号为i的结点在二叉树中的…

精益测试

读完需要9分钟速读仅需 3 分钟“你们的测试开发比是多少&#xff1f;测试全阶段参与&#xff0c;怎么可能忙的过来&#xff1f;”“全阶段都在测&#xff0c;那么都需要哪些测试才能保证质量呢&#xff1f;”“自动化测试覆盖率要求达到 99%&#xff0c;包括功能、性能&#xf…

数据结构-树2-二叉树各种函数实现

一、二叉树的递归遍历 二叉树的递归遍历.c #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #include<string.h>//二叉树的结点 typedef struct BINARYNODE {char ch;struct BINARYNODE *lchild;struct BINARYNODE *rchild; }Binar…

Python反射应用场景(一)

了解了反射中四个函数的基本用法。那么反射到底有什么用呢&#xff1f;它的应用场景是什么呢&#xff1f;答案是&#xff0c;当不确定所需要的属性和函数是否存在时&#xff0c;可以使用反射。另外一个重要作用是&#xff0c;可以提高代码的扩展性和可维护性。假如我们把所有的…

数据结构-树5-二叉搜索树

#include<iostream> #include<string>using namespace std; //构建二叉树的结构体 template< typename T> struct binaryTreeNode {T element; //数据binaryTreeNode<T>* leftChild; //左子树指针binaryTreeNode<T>* rightChild; //右子树指针…

oracle segment undo_71_UNDO扩展学习

UNDO扩展学习UNDO是Oracle在UNDO SEGMENT(回滚段)中记录的信息。下面使用UNDO这名字可能会包含两种意思&#xff0c;一是前面说的回滚段中的记录、二是UNDO整个机制。在这部分内容里&#xff0c;没有涉及闪回技术&#xff0c;要知道不少闪回技术是基于UNDO机制来实现的&#xf…