刘博平的博客

一个软件工程师

PHP给多维数组赋值避免notice警告

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 /**
* 给多维数组复制,避免notice警告
* @param $data array
* @param $key_arr array
* @param $value mixed
* @return void
*/
public static function array_multidimensional_set(&$data, $key_arr, $value)
{
$cur_arr = null;
foreach ($key_arr as $key) {
if ($cur_arr === null) {
if (!isset($data[$key])) {
$data[$key] = array();
}
$cur_arr =& $data[$key];
} else {
if (!isset($cur_arr[$key])) {
$cur_arr[$key] = array();
}
$cur_arr = &$cur_arr[$key];
}
}
$cur_arr = $value;
}

php模仿tail实现读取log文件

PHP

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
if (isset($_GET['ajax'])) {
$this->autoRender = false;
if (RunTime === \App\Library\Resources::Development) {
$handle = fopen(LOGS . 'debug.log', 'r');
} else {
$handle = fopen('/tmp/111.log', 'r');
}
if (isset($_SESSION['offset'])) {
$data = stream_get_contents($handle, -1, $_SESSION['offset']);
$_SESSION['offset'] += strlen($data);
echo nl2br($data);
} else {
fseek($handle, 0, SEEK_END);
$_SESSION['offset'] = ftell($handle);
}
exit();
}

HTML

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<script src="http://creativecouple.github.com/jquery-timing/jquery-timing.min.js"></script>
<script>
$(function () {
$.repeat(1000, function () {
$.get('/unit/showlog?ajax', function (data) {
var tail = $('#tail');
if (tail.height() > 768)
tail.text(data);
else
tail.append(data);
});
});
});
</script>
<div id="tail">Starting up...</div>

视频转码速度最快质量最好的方法

NVIDIA英伟达显卡不但能玩游戏,还可以使用它进行高速视频转码,转码速度又快、质量又好。著名开源视频转码软件-视频转换器——ffmpeg提供了支持,但是需要安装显卡驱动,并自己编译。

操作系统 Ubuntu 16.04

  • 系统设置-软件和更新-附加驱动-安装最新NVIDIA显卡驱动
  • 安装cuda(不清楚是否必须)

ffmpeg的编译

下载源码,参考https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu#ffmpeg

编译命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure \
--prefix="$HOME/ffmpeg_build" \
--pkg-config-flags="--static" \
--extra-cflags="-I$HOME/ffmpeg_build/include" \
--extra-ldflags="-L$HOME/ffmpeg_build/lib" \
--bindir="$HOME/bin" \
--enable-gpl \
--enable-libass \
--enable-libfdk-aac \
--enable-libfreetype \
--enable-libmp3lame \
--enable-libopus \
--enable-libtheora \
--enable-libvorbis \
--enable-libvpx \
--enable-libx264 \
--enable-libx265 \
--enable-nonfree \
--enable-nvenc #开启显卡转码
PATH="$HOME/bin:$PATH" make
make install
make distclean
hash -r

支持更多显卡的编译参数

这时,在$HOME/bin就应该看到ffmpeg的三个程序了

开始转码

1
ffmpeg -i xart.13.12.31.misty.and.then.there.was.you.mp4 -c:v h264_nvenc xart.mkv

1080P的视频从800多兆压缩到300多,还是不错的,1080P转码速度是3.3倍速,即1小时的视频转码时间是不到20分钟,720P的可以更快。

搬瓦工VPS洛杉矶电信联通直连套餐看油管轻松1080P

摘要: 搬瓦工,搬瓦工VPS,美国vps,美国vps租用,美国vps评测,美国vps出租,美国vps推荐,美国vps 翻墙 哪个地区比较好,美国vps哪个比较好,vps国内访问速度最快,vps 翻墙,vps 翻墙软件

简介

无如何优化,北京移动节假日上午 YouTube 速度 8000Kb ,晚上也有 2000Kb+的速度。
可以做一个网站。笔者搭建用ninx搭建了一个网站,下载视频文件的速度轻松2~3M每秒,相当给力。美国VPS速度最快也就这样了。
鉴于人民币一直在贬值,应该赶快入手一个。

全球ping测试:

搬瓦工VPS洛杉矶电信联通直连套餐看油管轻松1080P

套餐

  1. SSD: 10 GB RAID-10
    内存: 512 MB
    CPU: 1核
    流量: 每月1000G
    购买链接:https://bwh1.net/aff.php?aff=12296&pid=34

  2. SSD: 10 GB RAID-10
    内存: 1G
    CPU: 1核
    流量: 每月2000G
    购买链接:https://bwh1.net/aff.php?aff=12296&pid=35

搬瓦工VPS洛杉矶电信联通直连套餐看油管轻松1080P