Atitit 直播问题总结ffmpeg 目录 1.1. 屏幕太大,可以使用-s调整分辨率 1 1.2. Full size 1 1.3. 流畅度调整 1 2. 1 2.1. 没有录音 1 2.2.

Atitit 直播问题总结ffmpeg

 

目录

1.1. 屏幕太大,可以使用-s调整分辨率 1

1.2. Full size 1

1.3. 流畅度调整 1

2. 1

2.1. 没有录音 1

2.2. 浏览器不能直接支持lhs 2

2.3. 使用了hlsjs 手机里面不能播放,pc可以 3

 

 

    1. 屏幕太大,可以使用-s调整分辨率
    2. Full size  

调整分辨率变小 then ok

    1. 流畅度调整

注1:考虑到提高libx264的编码速度,添加了-preset:v ultrafast和-tune:v zerolatency两个选项。

注2:高分辨率的情况下,使用UDP可能出现丢包的情况。为了避免这种情况,可以添加–s 参数(例如-s 320x240)调小分辨率。

 

    1. 没有录音

 

外,也可以录声音,声音输入可以分成两种:一种是真人说话的声音,通过话筒输入;一种是虚拟的声音,即录屏的时候电脑耳机里的声音。下面两条命令可以分别录制话筒的声音和电脑耳机里的声音。

录屏,伴随话筒输入的声音

[plain] view plaincopy

  1. ffmpeg -f dshow -i video="screen-capture-recorder" -f dshow -i audio="鍐呰楹﹀厠椋?(Conexant 20672 SmartAudi" -r 5 -vcodec libx264 -preset:v ultrafast -tune:v zerolatency -a
  2. codec libmp3lame MyDesktop.mkv  

上述命令有问题:audio那里有乱码,把乱码ANSI转UTF-8之后,开始测试不行,后来发现是自己疏忽大意,乱码部分转码后为“内装麦克风 ”,然后接可以正常使用了。因此,命令应该如下图所示:

[plain] view plaincopy

  1. ffmpeg -f dshow -i video="screen-capture-recorder" -f dshow -i audio="内装麦克风 (Conexant 20672 SmartAudi" -r 5 -vcodec libx264 -preset:v ultrafast -tune:v zerolatency -acodec libmp3lame MyDesktop.mkv  

注:

ffmpeg -f dshow -i video="screen-capture-recorder" -f dshow -i audio="virtual-audio-capturer" -r 5 -vcodec libx264 -preset:v ultrafast -tune:v zerolatency -acodec libmp3lame MyDesktop.m

 

    1. 浏览器不能直接支持lhs

基于hls.js 视频播放

html5浏览器实现hls视频播放的兼容解决方案hls.js。兼容IE8/IE11/edge/Chrome/火狐。

由于非Safari浏览器不能直接支持hls视频播放,使用Html5的video标签嵌入视频文件进行播放,由于video标签只支持MP4、WebM、Ogg等格式,

 

 

由于HLS是由Apple公司提出的,所以在iOS电脑或手机上,你可以直接使用Safari浏览器的<video>播放m3u8格式视频文件。而其他浏览器则需要借助hls.js来兼容m3u8。

使用hls.js,不需要任何定制的播放器,只需要<video>元素就能播放m3u8。

 

    1. 使用了hlsjs 手机里面不能播放,pc可以

切换编码为mepg4依然不可。。

估计是hlsjs bug。。查看筋斗云直播。他们使用的video.js

 

    1. 不能自动播放

Video cheomre 设置为muted才可

 

    1. 手机里面浏览器不能播放 手动也不行

Hls.js  和video.js 都不行。。。

 

posted @ 2019-10-05 11:39  attilaxAti  阅读(54)  评论(0编辑  收藏  举报