Top test

shell命令查看图片属性信息和视频属性信息

分类:LAMP | 作者:small2 | 发表于2014/04/14 没有评论  

shell命令查看图片属性信息和视频属性信息
之前后台有个需求,上传资源文件并自动识别保存信息,如图片需要获取宽高、视频需要获取分辨率及时长、音频获取时长等信息

上传功能,使用的第三方工具,uploadifyflash方式上传、处理
识别功能,使用PHP调用shell命令获取信息,如下:
图片,使用命令identify(ImageMagick命令组中的一员):

  1. function handleMediaPic($filepath) {
  2.         $cmd = "identify '{$filepath}'  2>&1";
  3.         $picInfo = exec($cmd);
  4.         $pic = explode(' ', $picInfo);
  5.         $result = $pic[2];
  6.         return $result;
  7.     }

视频,使用命令ffmpeg(该命令还可以截屏保存图片的):

  1. function handleMediaVideo($filepath) {
  2.         //时长
  3.         $cmd = "ffmpeg -i '" . $filepath . "' 2>&1 | grep 'Duration' | cut -d ' ' -f 4 | sed s/,//";
  4.         $timeInfo = exec($cmd);
  5.         $time = explode(':', $timeInfo);
  6.         $h = intval($time[0]) * 60 * 60;
  7.         $m = intval($time[1]) * 60;
  8.         $s = ceil($time[2]);
  9.         $result['second'] = $h + $m + $s;
  10.         //分辨率
  11.         $cmd = "ffmpeg -i '" . $filepath . "' 2>&1 | grep 'Video:'";
  12.         if ($streamInfo = exec($cmd)) {
  13.             $stream = explode(',', $streamInfo);
  14.             $stream[2] = trim($stream[2]);
  15.             $result['dpi'] = $stream[2];
  16.         } else {
  17.             $result['dpi'] = '0x0';
  18.         }
  19.  
  20.         return $result;
  21.     }

音频时长同视频处理方式

Tag:

戒酒吧

分类:Life | 作者:small2 | 发表于2014/02/04 没有评论  

都忘了抬头瞧瞧星星了
那么低 清晰明亮

谁家的公鸡吼了两嗓子
又哑火了
又多了几嗓子狗叫

冰箱偶尔嗯嗯响
墙上的表秒针一直走动 响个不停

昨晚吐酒了
醒来后又感叹
戒酒吧

发自 WordPress for Android

Tag:

冬季炕头烧水声

分类:Life | 作者:small2 | 发表于2014/01/27 没有评论  

昨晚整个小区停电,等小半天还没来电就点起蜡烛。
断电断网的状态下,烛光把夜照的很静。
过了半小时才修好。
半夜两点到四点左右失眠,上厕所,躺床上瞎想,口渴,插电水壶烧水。
然后就一直躺着静静听着水壶烧水的响声。。。
很容易怀念起了小时的场景:
冬季,农村,偶尔拉闸限电,点蜡烛,差不多一样安静的夜,火炕头坐一壶水烧着。
先安静然后就是轰轰隆隆水滚的声响,直到最后烧开变为蜂鸣的叫声。

发自 WordPress for Android

GT-I9300 Galaxy SIII 刷机篇

分类:Life | 作者:small2 | 发表于2013/06/27 2条评论 
  • 前言

淘宝上买的港版S3,最近几个月一直自动提醒系统升级,还没法关掉。
忍无可忍无须再忍。我点升级、安装了。
插曲:WIFI下手机上直接更新,即便已经下载好了安装包,但是安装一直失败。只好按网上说的,通过三星的客户端KIES,从电脑上联机下载安装、升级了。顺便吐槽一下这个KIES,光安装就差不多耗时10分钟,难用哟

  • 刷机

4.0.4升级成了4.1.2,各程序打开瞬间明显感觉反映迟钝了那么一下,立马后悔,再刷回来。降级,刷包,使用的是传说中KIES线刷和SD卡卡刷两种方式中的前者(我没另外配SD卡)。于是才有了这篇记录。
大概翻了两篇网上的刷机教程图文,就下载了Odin和各种线刷包,上阵操刀实战了。
首先,要确保电脑上已经安装好了三星的驱动,搜SAMSUNG-USB-Driver-for-Mobile-Phones之类的;如果已经安装了KIES的话,就已经附带安装过驱动了;
其次,准备进入刷机模式。1、关机;2、音量下+Home+关机组合键;3、音量上,进入刷机模式
再次,打开Odin,选择各种文件包。如果包是多合一的,按照你们看教程分别对号入座选择就好了;如果是一个文件,只选择PDA就行了,这个是必选
接着,USB线链接电脑,一链接上,识别出来后Odin上会出现黄色(或蓝色,Odin版本决定的)COM*,表示已识别出手机,硬件状态已准备好
(先打开Odin还是先插USB,这个顺序无所谓)
最后,点击开始Start

  • 问题

人品好的话,5分钟后手机自动重启,刷机完成
运气差的话(比如我),可能也会遇到下面各种情况:
1、刷机时Odin窗口报错,网上查了一下说,刷机前要先关闭USB调试模式!!!就重新启动或三建合一或扣电池,但都遇到屏幕显示
firmware upgrade encountered an issue please select recovery mode in kies & try again
一直卡在这个错误提示界面
搜了各种方法,最后解决方式:
2、Odin,选择PIT,重新分区手机
这时候同事提示说可以试试 刷机精灵的一键刷机,因为此时我手机的USB调试模式应该还是打开模式的,而正好符合刷机精灵的条件
3、电脑安装刷机精灵,下了个小米ROM,下一步下一步,刷机成功了!!!
试用了一会儿小米系统,感觉别扭,还先着不如再刷回4.04系统吧
于是,这次先关了USB调试模式(吃一堑长一智嘛),再用Odin刷
4、傻逼啦,还是出现上面遇到的各种状况
5、各种google,各种方案:换数据线、换USB接口(台式机插机箱后面的)、换刷机包
6、各种实验,心里想如果真成砖头了的话,正好可以换iPhone了(理由:照相清晰)
中间Odin在SYSTEM阶段就多次出现了同一个错误:
Complete(Write) operation failed
按提示,说没写权限,非常郁闷;这时候已经下好了各种准备试试换着刷的ROM包了
7、突然一个包,版本是I9300ZSALG3(4.0.4系统的),刷完的很顺利,这个包就一个文件,直接选择到PDA里了。点击开始,Odin里面显示各种绿色状态,各种正常,RES OK ! Remove!!心里暗爽啊~~
8、拔掉数据线,待手机重启,据说刚刷机后第一次重启会等待较长时间,于是等等等等等
9、麻痹,卡壳了,不,是卡屏啦!显示到SAMSUNG三爽的LOGO界面,一直不往下进行了。白白空欢喜一场
10、搜了一下,最终有效方案:双清!Wipe data,Wipe cache!各个机子方法不一样,S3的方法是音量上+HOME+关机组合键
11、清完,RESTART重启一下
12、hello word!

  • 总结

虽然是第一次刷机,但也要总结一下:
0、手机驱动预先安装
1、备份一下手机里的资料,刷机前先双清!!!后来网上看到的,都建议新手先做这个处理,之后再刷机基本很少遇到状况了!
2、一个完好的ROM包,一定要下载一个好的,出现各种问题,我猜想跟包的关系也很大!
3、淡定,so easy。边刷边查资料的都过来了,呵呵

欧了,过段时间兴致来了再刷刷玩吧

Tag:

SVN服务器IP或URL更改后,客户端(工作副本)修改svn地址

分类:LAMP | 作者:small2 | 发表于2013/04/15 没有评论  

SVN服务器IP或URL更改后,客户端(工作副本)需要修改对应的svn地址
window下
1、使用最新版本的TortoiseSVN,右键在工作复本的根目录上右键->TortoiseSVN->重新定位(Relocate),再按提示操作就可以了..不过最好先备份..因为这个操作有一定的危险性
linux下
2、通过修改.entry里面对应的IP地址,可以搞定,如:
find ./ -name entries -exec sed --in-place 's/svn.aircorp.cn/int.aircorp.cn/g' {} \;
我使用的这个方法
都是网上找的:)还有,
Or:
svn switch –relocate http://旧的地址 http://新的地址
Or:
rm -rf *
svn checkout http://

我使用的修改entry

Tag: