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/

X264简介-Android使用(一)_第1张图片

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

X264简介-Android使用(一)_第2张图片

新建配置文件(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/

X264简介-Android使用(一)_第3张图片

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

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

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

X264简介-Android使用(一)_第4张图片

放置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

X264简介-Android使用(一)_第5张图片
X264简介-Android使用(一)_第6张图片

拉流确认:

VLC官网地址: https://get.videolan.org/vlc/3.0.18/win64/vlc-3.0.18-win64.exe
X264简介-Android使用(一)_第7张图片

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

安装步骤:
X264简介-Android使用(一)_第8张图片
X264简介-Android使用(一)_第9张图片
X264简介-Android使用(一)_第10张图片
X264简介-Android使用(一)_第11张图片
X264简介-Android使用(一)_第12张图片

装Ubuntu:

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

X264简介-Android使用(一)_第13张图片
运行虚拟机后,选择中文并选安装Ubuntu
X264简介-Android使用(一)_第14张图片

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

X264简介-Android使用(一)_第15张图片
X264简介-Android使用(一)_第16张图片
X264简介-Android使用(一)_第17张图片

等待安装:

X264简介-Android使用(一)_第18张图片

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

1>、设置项:
X264简介-Android使用(一)_第19张图片

按照图示勾选:

X264简介-Android使用(一)_第20张图片

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

X264简介-Android使用(一)_第21张图片

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使用(二)

你可能感兴趣的:(Android,Linux,c,c++,ffmpeg,X264,Ubuntu)