- 浏览: 609897 次
- 性别:
- 来自: 北京
最新评论
-
kangh:
转载的也拿出来 都不试一下 完全错误
Nginx+ffmpeg的HLS开源服务器搭建配置及开发详解 -
wangtxlz:
#cd builders/cmake#cmake .系统提示命 ...
crtmpserver流媒体服务器的介绍与搭建 -
hnraysir:
支持支持支持
手机Android音视频采集与直播推送,实现单兵、移动监控类应用 -
wuent:
把web服务器和php框架绑定到一起?真不建议这样。。。
Swoole(PHP高级Web开发框架) -
wuent:
有更详细的性能比较吗?php,python,java
PHP中的(伪)多线程与多进程
文章列表
1、 前言
首先,确保你的机器安装了apache和php。假设apache的安装目录为/usr/local/apache2,php的安装目录为/usr/local/php
此外你还需要一份php源码(可以从http://www.php.net/downloads.php上获取),假设我们的php源码保存在/home/sunlylorn/php下。
2、 实战
我们要写一个php扩展:myExt
[c-sharp] view plaincopyprint?
cd /home/sunlylorn/php/ext
ext_skel --extname=myExt
cd myE ...
大数据(Big Data)
大数据,官方定义是指那些数据量特别大、数据类别特别复杂的数据集,这种数据集无法用传统的数据库进行存储,管理和处理。大数据的主要特点为数据量大(Volume),数据类别复杂(Variety),数据处理速 ...
理解MySQL——索引与优化
- 博客分类:
- mysql
写在前面:索引对查询的速度有着至关重要的影响,理解索引也是进行数据库性能调优的起点。考虑如下情况,假设数据库中一个表有10^6条记录,DBMS的页面大小为4K,并存储100条记录。如果没有索引,查询将对整个表进行扫描,最坏的情况下,如果所有数据页都不在内存,需要读取10^4个页面,如果这10^4个页面在磁盘上随机分布,需要进行10^4次I/O,假设磁盘每次I/O时间为10ms(忽略数据传输时间),则总共需要100s(但实际上要好很多很多)。如果对之建立B-Tree索引,则只需要进行log100(10^6)=3次页面读取,最坏情况下耗时30ms。这就是索引带来的效果,很多时候,当你的应用程序进行 ...
B树
即二叉搜索树:
1.所有非叶子结点至多拥有两个儿子(Left和Right);
2.所有结点存储一个关键字;
3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树;
1. 在x264的源码目录下创建b1.sh,内容如下:
点击(此处)折叠或打开
export NDK=/opt/google/android/android-ndk-r8e
export VERSION=4.4.3
export PREBUILT=$NDK/toolchains/arm-linux-androideabi-$VERSION/prebuilt
export PLATFORM=$NDK/platforms/android-8/arch-arm
./configure --enable-static \
--enable-shared \
--enabl ...
FFmpeg的Android平台移植—编译篇
Dennis Hu 2014年3月28日
摘要:本文主要介绍将FFmpeg音视频编解码库移植到Android平台上的编译和基本测试过程。
环境准备:
Ubuntu12.04 TLS
android-ndk-r9d-linux-x86_64.tar.bz2
adt-bundle-windows-x86_64-20131030.zip
第一步:源代码下载
到FFmpeg官方网站http://www.ffmpeg.org/上去下载源代码,这里下载的源代码是最权威的。进入官网之后,选择”Download”进入下载页面,截止2014年3 ...
ffmpeg参数说明(转载)
- 博客分类:
- 视频
ffmpeg.exe -i F:\闪客之家\闪客之歌.mp3 -ab 56 -ar 22050 -b 500 -r 15 -s 320x240 f:\11.flv ffmpeg -i F:\01.wmv -ab 56 -ar 22050 -b 500 -r 15 -s 320x240 f:\test.flv 使用-ss参数 作用(time_off set the start time offset),可以从指定时间点开始转换任务。如: 转换文 ...
本文主要介绍的是Android中很重要也最为复杂的媒体播放器(MediaPlayer)部分的架构。对于Android这样一个完整又相对复杂的系统,一个MediaPlayer功能的实现不在其具体的功能,而是具体功能如何适应Android系统Android MediaPlayer的主要具体实现在OpenCore的Player中,这部分不是本文的关注点。本文关注的是MediaPlayer系统的架构,其他的一些Android的应用程序也使用类似的架构。第一部分 MediaPlayer概述 Android的MediaPlayer包含了Audio和video的播放功能,在Android的界面上 ...
vlc-android 非常的强大,目前我们主要是使用vlc来播送组播UDP TS流。类似地址:udp://@239.1.1.0:2860这样的地址。在此之前发现声音会卡顿,效果不太好。今天发现是底层驱动的问题。
但是在进行vlc stop时候不能进行资源释放,很是奇怪。明天解决这个问题。文章后续会继续整理!!!
---------------------------------------------------------------------------
针对此前遇到vlc stop时候不能进行资源释放,后来是参考了VLC-andr ...
基于Flash播放器的P2P直播解决方案
- 博客分类:
- 网站架构
一、方案简介目前视频直播通用的方案有两种,分别是单播模式和多播模式。单播模式虽然有着数据流稳定的特点,但具有地域化问题,且随着客户量的增加,服务器负载也随之增大,需要投入大量的硬件设备以及巨额的带宽费用。多播模式通常体现为现今的P2P技术。P2P模式解决了单播模式的问题,在提高传输速度和缓解服务器带宽压力上有较大优势,一般在直播中应用得较多。使用P2P技术后可节省内容发布商资金,提高数据流通量。Adobe Flash Media Server 4(以下简称FMS4)发布后, 联讯软件立即投入大量人力进行研究与开发。在其发布短短几周内便掌握了Flashplayer P2P API的使用以及服务器 ...
/** * AsyncTask是抽象类, * AsyncTask定义了三种泛型类型 Params,Progress和Result。 * Params 启动任务执行的输入参数,比如HTTP请求的URL。 * Progress 后台任务执行的百分比。 * Result 后台执行任务最终返回的结果,比如String,Integer ...
如何编写一个PHP的C扩展
- 博客分类:
- c/c++
为什么要用C扩展
C是静态编译的,执行效率比PHP代码高很多。同样的运算代码,使用C来开发,性能会比PHP要提升数百倍。IO操作如CURL,因为耗时主要在IOWait上,C扩展没有明显优势。
另外C扩展是在进程启动时加载的,PHP代码只能操作Request生命周期的数据,C扩展可操作的范围更广。
第一步
下载PHP的源代码,如php-5.4.16。解压后进入php-5.4.16\ext目录。输入 ./ext_skel –extname=myext,myext就是扩展的名称,执行后生成myext目录。
ext_skel是PHP官方提供的用于生成php扩展骨架代码的工具。
cd m ...
一个完整的多媒体文件是由音频和视频2部分组成的。H264、Xvid等就是视频编码格式,MP3、AAC等就是音频编码格式。字幕文件只是其中附带部分。
把视频编码和音频编码打包成一个完整的多媒体文件,可以有不同的方式,这种方式便是所谓的封装方式, 不同的封装方式有不同的后缀。由于有些封装方式具有很强的灵活性,它可以把各种不同的音视频文件打包成一个文件,因此会出现这么一种情况,虽然文件的后缀 是相同的,但有些可以正常播放,而有些不能播放,毕竟任何一种播放软件都不是万能的。部分先进的封装方式还可以同时封装多个音频编码文件,甚至同时封装进 字幕文件,如MKV封装方式。MKV文件可以做到一个文件包括多种 ...
flv文件的格式其实网上资料还是不少,但是怎么封装成flv却不多。看了不少资料,找到了一个觉得还比较靠谱的:http://www.cnblogs.com/chef/archive/2012/07/18/2597279.html
其实flv还是挺简单的一个视频格式,下面就来先谈一谈FLV的格式吧。
FLV是一个二进制文件,简单来说,其是由一个文件头(FLV header)和很多tag组成(FLV body)。tag又可以分成三类:audio,video,script,分别代表音频流,视频流,脚本流,而每个tag又由tag header和tag data组成。
文件头由9bytes组成 ...
很多朋友在开发Android JNI的的时候,会遇到findlibrary returned null的错误,因为某种原因,so没有打包到apk中。下面浅析下引起该错误的原因以及平台兼容性问题。
一、没有将so打包到apk中的原因。
当你发现到findlibrary returned null的错误时,其实最直接的解决办法就是解压apk,看看apk中的x86、armeabi、armeabi-v7a文件夹中是否有对应的so,此时你可能在对应的文件夹下发现少了so,然后再去查原因即可。
一般有两方面的原因:
1.apk中有对应平台的文件夹,但是文件夹里却没有对应的so。
举个例 ...