flv 报错 Unsupported codec in video frame: 12

news/2024/5/20 5:35:18/文章来源:https://blog.csdn.net/aibujin/article/details/131245752

视频播放器播放 flv 报错

[TransmuxingController] > DemuxException: type = CodecUnsupported, info = Flv: Unsupported codec in video frame: 12

在这里插入图片描述

原因

主要是因为我们的播放器不支持 H.265 视频编码;

解决办法

方法一:将设备端的视频编码改为 H.264

方法二:更换播放器(eg :EasyPlayer.js)

EasyPlayer.js 集播放 http-flv, hls, websocket 于一身的 H5 视频直播/视频点播播放器, 使用简单, 功能强大;

但是播放 H.265 的视频流需要 EasyPlayer.wasm 文件,该文件只能在 Nginx 服务下才可以使用;

有服务器的小伙伴可以直接在服务器上操作,这里和大家分享:如何在本地搭建一个EasyPlayer 的H5 demo,并播放H.265的视频流

1. 下载一个 Nginx 服务

  • 地址: http://nginx.org/en/download.html

    随便选择一个即可,这里我们选择 nginx-1.18.0

    在这里插入图片描述

  • 下载之后直接解压即可

    在这里插入图片描述

  • 启动 Nginx,可使用下面两种方法

    1. 直接双击nginx.exe,双击后一个黑色的弹窗一闪而过;

    2. 打开 cmd 命令窗口,切换到 nginx 解压目录下,输入命令 nginx.exe 或者 start nginx ,回车即可

    在这里插入图片描述

  • 在浏览器地址栏输入网址 http://localhost:80,回车,出现以下页面说明启动成功

    在这里插入图片描述

  • 关闭 Nginx,如果使用 cmd 命令窗口启动 Nginx,关闭 cmd 窗口是不能结束 Nginx 进程的,可使用下面两种方法关闭 Nginx

    1. 输入nginx 命令 nginx -s stop(快速停止 Nginx) 或 nginx -s quit(完整有序的停止 Nginx)

    2. 使用 taskkill /f /t /im nginx.exe

  • Nginx 默认监听的是本地的 80 端口,如果 80 端口被占用大家可以在 nginx-1.18.0/conf/nginx.conf 修改端口,然后重新启动

    在这里插入图片描述
    在这里插入图片描述

  • 重启命令 nginx -s reload

2. 在 npm上下载最新的 EasyPlayer

  • 地址:https://www.npmjs.com/package/@easydarwin/easyplayer

  • 找一个空文件夹,打开 cmd 直接址行命令即可

    在这里插入图片描述

  • 将 node_modules@easydarwin\easyplayer\dist\element 里的所有文件全部复制到 nginx 里的 html 里,并将之前的 index.html 移除即可

    在这里插入图片描述
    在这里插入图片描述

  • 然后启动 Nginx 服务

  • 将 EasyPlayer 的流地址更换为我们自己的即可

  • 如果流地址没问题,但画面没出来,大家可以刷新一下再试试, 我在播放的时候控制台有时候也有错,画面也是断断续续的,不知道是不是因为网不好或者 nginx 在本地的原因;

在这里插入图片描述

  • EasyPlayer github 地址,上面的 demo 案例比较全面,有兴趣的小伙伴可以看看 :https://github.com/tsingsee/EasyPlayer.js

  • 仅供大家参考,如果大家有好的 H.265 视频流播放器,欢迎各位留言;

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

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

相关文章

瑞萨RA系列mcu学习笔记--RTT-pwm驱动

方案1:Studio 2.2.6和使用了RASC3.5下使用pwm驱动 开发环境必须说一下,本人在在开发环境的问题上栽了一个跟头, 使用最新版的RTT Studio 2.2.6和使用了RASC4.0的版本生成的公共编译ok,但是一下载到mcu就直接不能运行&#xff1a…

记录一下RocketMQ中遇见的 连环大坑!!!差点没把我摔死

目录 环境:Win10 , 不是 linux 首先我遇见的第一个问题是: No route info of this topic 问题原因: PS: 64位系统环境下,如果软件在安装时安装路径默认c:\progarmfiles即为64位,默认c:\pr…

【备战秋招】每日一题:5月13日美团春招第三题:题面+题目思路 + C++/python/js/Go/java带注释

为了更好的阅读体检,为了更好的阅读体检,,可以查看我的算法学习博客第三题-火车调度 在线评测链接:P1288 题目描述 塔子哥是一位火车车厢调度员。 这一天,一列带有 n 个编号车厢的列车进站了,编号为 1\rightarrow …

kafka 报错 - Cannot assign requested address

背景 在华为云服务器上跑了 zookeeper 和 kafka 的 broker,想内外网分流,重点就是做不到从外网去消费,比如用自己的 windows 笔记本去消费。 配置 server.properties 的 listener 为 broker 所在机子的的内网 IP 后,终于能 star…

ECC算法学习(一)算法公式

ECC 一、ECC简介优缺点运用 二、算法理论基础1. 椭圆曲线的加法2. 椭圆曲线的二倍运算3. 同余运算4. 有限域5. 乘法逆元 三、算法公式1、有限域的负元2、有限域的加法, P Q P Q PQ3. 斜率计算(PQ即要计算P点切线,需要求导)4. 椭…

【位图布隆过滤器海量数据面试题】

文章目录 1 位图2 布隆过滤器 1 位图 首先我们来看看一个腾讯的面试题:给40亿个不重复的无符号整数,没排过序。给一个无符号整数,如何快速判断一个数是否在这40亿个数中。 分析: 40亿个不重复整形数据,大概有160亿字节…

Axios和Spring MVC[前端和后端的请求和响应处理]

在前后端交互中,Axios和Spring MVC扮演着不同的角色,分别负责前端和后端的请求和响应处理。它们之间的作用如下: Axios(前端): 发送HTTP请求:前端使用Axios库发送HTTP请求到后端。可以使用Axi…

机器学习实践(1.1)XGBoost分类任务

前言 XGBoost属于Boosting集成学习模型,由华盛顿大学陈天齐博士提出,因在机器学习挑战赛中大放异彩而被业界所熟知。相比越来越流行的深度神经网络,XGBoost能更好的处理表格数据,并具有更强的可解释性,还具有易于调参…

hard fault on thread: mqtt0解决办法

rt thread版本4.1.0 使用paho mqtt软件包 运行一段时间后出现 psr: 0x21000000 r00: 0x5036fc8f r01: 0x5036fc88 r02: 0x00000000 r03: 0x5036fc8f r04: 0x00000007 r05: 0x00000063 r06: 0x00005f70 r07: 0x2001f1d8 r08: 0xdeadbeef r09: 0xdeadbeef r10: 0xdeadbeef r11…

关于Java SSM框架的面试题

一、Spring面试题 1、Spring 在ssm中起什么作用? Spring:轻量级框架作用:Bean工厂,用来管理Bean的生命周期和框架集成。两大核心:1、IOC/DI(控制反转/依赖注入) :把dao依赖注入到service层,se…

28.vite

目录 1 一些概念 1.1 单页面应用程序SPA 1.2 vite 2 初始化vite项目 3 项目中的文件 1 一些概念 1.1 单页面应用程序SPA 单页面应用程序是只有一个页面的前端,切换页面通过前端路由来切换 特点如下 实现了前后端分离,后端仅出接口&#…

动态规划III (买股票-121、122、123、188、309)

CP121 买股票的最佳时机 题目描述: 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利…

YOLOv5-7.0添加解耦头

Decoupled Head Decoupled Head是由YOLOX提出的用来替代YOLO Head,可以用来提升目标检测的精度。那么为什么解耦头可以提升检测效果呢? 在阅读YOLOX论文时,找到了两篇引用的论文,并加以阅读。 第一篇文献是Song等人在CVPR2020发表…

【59天|503.下一个更大元素II ● 42. 接雨水】

503.下一个更大元素II class Solution { public:vector<int> nextGreaterElements(vector<int>& nums) {stack<int> st;int n nums.size();vector<int> res (n, -1);for(int i0; i<2*n;i){while(!st.empty()&&nums[i%n]>nums[st.t…

随机的乐趣和游戏

1、猜数字游戏 #GuessingGame.py import random the_number random.randint(1, 10) print("计算机已经在1到10之间随机生成了一个数字&#xff0c;") guess int(input("请你猜猜是哪一个数字: ")) while guess ! the_number:if guess > the_number:p…

PHP设计模式21-工厂模式的讲解及应用

文章目录 前言基础知识简单工厂模式工厂方法模式抽象工厂模式 详解工厂模式普通的实现更加优雅的实现 总结 前言 本文已收录于PHP全栈系列专栏&#xff1a;PHP快速入门与实战 学会好设计模式&#xff0c;能够对我们的技术水平得到非常大的提升。同时也会让我们的代码写的非常…

淘宝详情页分发推荐算法总结:用户即时兴趣强化

转子&#xff1a;https://juejin.cn/post/6992169847207493639 商品详情页是手淘内流量最大的模块之一&#xff0c;它加载了数十亿级商品的详细信息&#xff0c;是用户整个决策过程必不可少的一环。这个区块不仅要承接用户对当前商品充分感知的诉求&#xff0c;同时也要能肩负起…

Spark大数据处理学习笔记1.5 掌握Scala内建控制结构

文章目录 一、学习目标二、条件表达式&#xff08;一&#xff09;语法格式&#xff08;二&#xff09;执行情况&#xff08;三&#xff09;案例演示任务1、根据输入值的不同进行判断任务2、编写Scala程序&#xff0c;判断奇偶性 三、块表达式&#xff08;一&#xff09;语法格式…

Redis入门 - Lua脚本

原文首更地址&#xff0c;阅读效果更佳&#xff01; Redis入门 - Lua脚本 | CoderMast编程桅杆https://www.codermast.com/database/redis/redis-scription.html Redis 脚本使用 Lua 解释器来执行脚本。 Redis 2.6 版本通过内嵌支持 Lua 环境。执行脚本的常用命令为 EVAL。 …

不要把异常当做业务逻辑,这性能可能你无法承受

一&#xff1a;背景 1. 讲故事 在项目中摸爬滚打几年&#xff0c;应该或多或少的见过有人把异常当做业务逻辑处理的情况(┬&#xff3f;┬)&#xff0c;比如说判断一个数字是否为整数,就想当然的用try catch包起来&#xff0c;再进行 int.Parse&#xff0c;如果抛异常就说明不…