当前位置: 首页 > news >正文

X264简介-Android使用(一)

X264 简介及使用

1、简介

2、环境搭建

3、使用

4、小结

简介

官网连接:https://www.videolan.org/developers/x264.html
官方文档:https://wiki.videolan.org/Category:X264/

x264是用于编码H.264/MPEG-4 AVC视频流的免费软件库。它世界上最流行的视频压缩库之一,在全球范围内用于网络视频、电视广播和蓝光创作等应用程序。它在速度和压缩方面几乎超过了所有商业实现。虽然它实际上不是VLC媒体播放器或FFmpeg的一部分,但它是两者都使用的主要库,使用GPL许可。由于它在商业世界中很受欢迎(例如Youtube和Facebook依赖它),许多公司过去都为他们认为有用的功能和改进提供赏金。
使用到x264的项目:
Avidemux
ELDER
ffdshow
ffmpeg
GordianKnot
Handbrake
LiVES
MeGUI
MEncoder
Bencos (formerly RealAnime)
StaxRip
VLC media player

FFmpeg和x264的关系:

FFMpeg本身并不支持H.264的编码器,而是由FFMpeg的第三方模块对其进行支持,例如x264和OpenH264,二者各有各的优势。由于OpenH264开源比较晚,所以x264还是当前最常用的编码器;使用x264进行h.264编码时,所支持的像素格式主要包括yuy420p,yuvj420p,yuv422p, yuvj422p, yuv444p ,yuvj444p ,nv12 ,nv16, nv21.

环境搭建

1、nginx本地测试服务器搭建

服务器下载地址:http://nginx-win.ecsds.eu/download/

在这里插入图片描述

新建三个文件夹:m3u8File、rec、vod,conf目录放置nginx.conf文件

在这里插入图片描述

新建配置文件(nginx.conf):
worker_processes  1;   #Nginx进程数,建议设置为等于CPU总核数events {worker_connections  1024;  #工作模式与连接数上限
}rtmp_auto_push on;#RTMP服务
rtmp{server{listen 1935;        #服务端口chunk_size 4096;    #数据传输块的大小application vod{play ./vod;   #视频文件存放位置}application live{live on;                     #   hls on;                      #开启hls直播。这个参数把直播服务器改造成实时回放服务器#wait_key on;                #对视频切片进行保护,这样就不会产生马赛克了hls_path ./html/hls;         #切片视频文件存放位置(HLS,m3u8文件存放位置)hls_fragment 2s;             #每个视频切片的时长hls_playlist_length 16s;recorder myRecord{record all manual;record_suffix _.flv;record_path ./rec;}#hls_continuous on;          #连续模式#hls_cleanup on;             #对多余的切片进行删除#hls_nested on;              #嵌套模式}}
}#HTTP服务
http {include       mime.types;default_type  application/octet-stream;sendfile        on;keepalive_timeout  65;server {listen       80;server_name  localhost;location / {root   html;index  index.html index.htm;}location /live_hls{types{#m3u8 type设置application/vnd.apple.mpegurl m3u8;#ts分片文件设置video/mp2t ts;}#指向访问m3u8文件目录alias ./html/hls;add_header Cache-Control no-cache; #禁止缓存}location /control{rtmp_control all;}location /stat{rtmp_stat all;rtmp_stat_stylesheet stat.xsl;}location /stat.xsl{root ./nginx-rtmp-module-master;}# redirect server error pages to the static page /50x.html#error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}
}
nginx的根目录执行
start nginx

在这里插入图片描述

浏览器确认:http://127.0.0.1/

在这里插入图片描述

到这一步说明nginx服务器已搭建完成

2、Windows下的FFmpag下载&使用:

FFmpag下载地址: http://ffmpeg.org/
Windows执行文件地址: https://www.gyan.dev/ffmpeg/builds/#git-master-builds

在这里插入图片描述

放置test.mp4到ffmpeg.exe ,并执行command:
ffmpeg -re -i test.mp4 -c copy -f flv rtmp://127.0.0.1/live  或者 ffmpeg -re -i test.mp4 -c copy -f flv rtmp://127.0.0.1:1935/live/test

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

拉流确认:

VLC官网地址: https://get.videolan.org/vlc/3.0.18/win64/vlc-3.0.18-win64.exe
在这里插入图片描述

3、装虚拟机&Ubuntu:

VMware10 官网:https://customerconnect.vmware.com/downloads/details?downloadGroup=WKST-1007-WIN&productId=362&rPId=8482

需要注册,注册信息需要注意对应信息,不然会地址和邮编无效:

Email address: 填写正确的邮箱,需要用邮箱验证
City: Sacramento
Zip or postal code: 94203
Country/Territory: United States
State or province: California
Business phone: 0013602923672

安装步骤:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

装Ubuntu:

官网: https://www.releases.ubuntu.com/14.04/
版本: ubuntu-14.04.6-desktop-amd64.iso
设置Ubuntu的ISO文件位置:

在这里插入图片描述
运行虚拟机后,选择中文并选安装Ubuntu
在这里插入图片描述

安装类型选择后,一直下一步:

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

等待安装:

在这里插入图片描述

Tips -> 解决Windows上VMware蓝屏的问题:
Windows电脑:

1>、设置项:
在这里插入图片描述

按照图示勾选:

在这里插入图片描述

2>、如截图中管理员选择执行:
bcdedit /set hypervisorlaunchtype off

在这里插入图片描述

Ubuntu使用:

成为super user:super user ->
1>

sudo passwd root

2>

su

安装Copy windows -> ubuntu工具:
tool里面执行:

./vmware-install.pl (错误:ubuntu unable to start services for VMware Tools ,解决:sudo su - )

下一章: X264简介-Android使用(二)

http://www.lryc.cn/news/31508.html

相关文章:

  • DetectGPT:使用概率曲率的零样本机器生成文本检测
  • 【深度学习】BERT变体—BERT-wwm
  • 【华为OD机试真题 java、python、c++】优秀学员统计【2022 Q4 100分】(100%通过)
  • JavaScript里的循环方法:forEach,for-in,for-of
  • 汽车标定知识整理(二):CCP报文基本命令介绍
  • windows系统安装Linux虚拟机教程
  • “基于Spring Cloud Alibaba的微服务架构实战:Nacos配置管理“
  • 【Linux】常见面试题
  • 【数据结构】顺序表:尾部操作我很行,随机访问我超快!!!
  • SQL优化
  • Java ArrayList 和 LinkList 原理对比
  • 【Spring】入门概述(一)
  • 十二、面向切面编程AOP
  • Mybatis 处理 CLOB/BLOB 类型数据
  • 【NLP经典论文阅读】Efficient Estimation of Word Representations in Vector Space(附代码)
  • Spring bean生命周期分为几个阶段?
  • 【基础算法】单链表的OJ练习(4) # 分割链表 # 回文链表 #
  • SpringBoot整合定时任务和邮件发送(邮箱 信息轰炸 整蛊)
  • Arduino添加ESP32开发板
  • Mysql通配符的使用
  • RocketMQ-02
  • 深度学习卷积神经网络CNN之 VGGNet模型主vgg16和vgg19网络模型详解说明(理论篇)
  • 三:BLE协议架构简介
  • 小型双轮差速底盘双灰度循迹功能的实现
  • 电子签名?玩具罢了!
  • 【Spring Boot读取配置文件的方式】
  • java学习路线规划
  • 格密码学习笔记(二):连续极小、覆盖半径和平滑参数
  • ios 通过搜索设备MAC地址绑定
  • Python实现人脸识别,进行视频跟踪打码,羞羞的画面统统打上马赛克