首页 > 系统相关 >VoIP应用在Ubuntu 14.04下编译FFmpeg libX264及PJSIP

VoIP应用在Ubuntu 14.04下编译FFmpeg libX264及PJSIP

时间:2023-05-05 12:12:51浏览次数:51  
标签:toolchain FFmpeg libX264 PJSIP 编译 workspace HOME make

PJSIP是一个开源的SIP协议栈。它支持多种SIP的扩展功能,可说算是最目前流行的SIP协议栈之一了。  它实现了SIP、SDP、RTP、STUN、TURN和ICE。PJSIP作为基于SIP的一个多媒体通信框架提供了非常清晰的API,以及NAT穿越的功能。PJSIP具有非常好的移植性,几乎支持现今所有系统:从桌面系统、嵌入式系统到智能手机。PJSIP同时支持语音、视频、状态呈现和即时通讯。

PJSIP很强大,很多VOIP语音视频通话应用都用它…

下面来说说如何在ubuntu下进行编译

文章目录 [隐藏]

Ubuntu编程环境

 

sudo apt-get install build-essential

如果你要以git的方式checkout源码

sudo apt-get install build-essential git-core

建立工作目录

mkdir -p $HOME/workspace/voip

mkdir -p $HOME/workspace/toolchain

cd $HOME/workspace/voip

编译yasm

下载源码包:

http://yasm.tortall.net/Download.html

./configure –prefix=$HOME/workspace/toolchain/yasm/

make -j4

make install

将yasm加入环境变量

export PATH=$HOME/workspace/toolchain/yasm/bin:$PATH

编译libX264

下载源码包:http://www.videolan.org/developers/x264.html

 

./configure –prefix=$HOME/workspace/toolchain/libx264/ –enable-static –enable-shared

make -j4

make install

编译FFmpeg

 

下载源码包:https://www.ffmpeg.org/download.html#releases

./configure –prefix=$HOME/workspace/toolchain/ffmpeg –enable-shared –disable-static –enable-memalign-hack –extra-cflags=”-I$HOME/workspace/toolchain/libx264/include” –extra-ldflags=”-L$HOME/workspace/toolchain/libx264/lib” –enable-gpl –enable-libx264

make -j4

make install

编译SDL2.0

下载源码包:http://www.libsdl.org/download-2.0.php

./configure –prefix=$HOME/workspace/toolchain/sdl

make -j4

make install

编译PJSIP

下载源码包:http://www.pjsip.org/download.htm

./configure –prefix=$HOME/workspace/toolchain/pjsip –with-sdl=$HOME/workspace/toolchain/sdl/ –with-ffmpeg=$HOME/workspace/toolchain/ffmpeg/

make -j4

make install

标签:toolchain,FFmpeg,libX264,PJSIP,编译,workspace,HOME,make
From: https://www.cnblogs.com/kn-zheng/p/17373743.html

相关文章

  • 2023-05-04:用go语言重写ffmpeg的scaling_video.c示例,用于实现视频缩放(Scaling)功能。
    2023-05-04:用go语言重写ffmpeg的scaling_video.c示例,用于实现视频缩放(Scaling)功能。答案2023-05-04:这段代码实现了使用libswscale库进行视频缩放的功能。下面是程序的主要流程:1.获取命令行参数,包括输出文件名和目标图像大小。2.解析目标图像大小,生成指定大小的输出文件。3.创建缩......
  • ffmpeg下载m3u8视频文件并保存为mp4格式
    ffmpeg-i'http://xx.com/xx.m3u8'-ccopy-bsf:aaac_adtstoascxx.mp4#修改User-Agentffmpeg-i'http://xx.com/xx.m3u8'-ccopy-bsf:aaac_adtstoascxx.mp4-user-agent"Mozilla/5.0(Macintosh;IntelMacOSX10_15_7)AppleWebKit/537......
  • ffmpeg转换视频编码
    下载ffmpeg官网下载压缩包。关键的是三个exe使用ffmpegcmd进入到三个exe的存放路径下,或者把三个exe的存放路径添加到系统路径。输入指令ffmpeg-ioriginal_video.mp4-vfscale=640:360result_video.mp4-hide_banner640*360可以修改成想要的尺寸。python使用ffmpypi......
  • 2023-04-30:用go语言重写ffmpeg的resampling_audio.c示例,它实现了音频重采样的功能。
    2023-04-30:用go语言重写ffmpeg的resampling_audio.c示例,它实现了音频重采样的功能。答案2023-04-30:resampling_audio.c是FFmpeg中的一个源文件,其主要功能是实现音频重采样。音频重采样是指将一段音频数据从一个采样率、声道数或样本格式转换为另一种采样率、声道数或样本格......
  • FFmpeg开发笔记(二)搭建Windows系统的开发环境
    由于Linux系统比较专业,个人电脑很少安装Linux,反而大都安装Windows系统,因此提高了FFmpeg的学习门槛,毕竟在Windows系统搭建FFmpeg的开发环境还是比较麻烦的。不过若有已经编译好的Windows版本FFmpeg开发包,那就免去了繁琐的Windows编译过程,所以直接安装已编译的FFmpeg开发包,还是相对......
  • node.js用ffmpeg切rtsp实时视频流为mp4,并且在网页上播放
    用express.js框架,这部分太简单了,省略npm或者yarn安装fluent-ffmpeg路由部分代码:router.rtspTrackingHandle=function(req,res){logger.info('[tracking]:rtsphandle');leturl=req.query.url||'';//leturl='rtsp://admin:jeewey123@19......
  • C#:使用ffmpeg将图片合并成视频
    最近遇到公司的一个项目,需要将多张图片合并成一个播放的视频,找了很多资料和尝试了工具,遇到很多的坑,这里记下来,希望大家也能顺利解决遇到的问题。合并视频,主要可以借用OpenCV和 ffmpeg,这里是尝试用ffmpeg.exe的工具去实现图片文件合并成视频。输入存储视频文件的路......
  • 2022-04-27:用go语言重写ffmpeg的remuxing.c示例。
    2022-04-27:用go语言重写ffmpeg的remuxing.c示例。答案2022-04-27:ffmpeg的remuxing.c是一个用于将多媒体文件从一种容器格式转换为另一种容器格式的命令行工具。它可以将音频、视频和字幕等元素从源文件中提取出来,并按照用户指定的方式重新封装到目标文件中。在本篇文章中,我将对ffmp......
  • 音视频八股文(6)-- ffmpeg大体介绍和内存模型
    播放器框架常用音视频术语•容器/文件(Conainer/File):即特定格式的多媒体文件,比如mp4、flv、mkv等。•媒体流(Stream):表示时间轴上的一段连续数据,如一段声音数据、一段视频数据或一段字幕数据,可以是压缩的,也可以是非压缩的,压缩的数据需要关联特定的编解码器(有些码流音频他是纯PCM)......
  • ffmpeg 视频 图形叠加
    使用scale视频过滤器将输入缩放(调整大小)为特定大小,然后使用overlay视频过滤器将视频放置在静态图像上。ffmpeg-loop1-ibackground.png-ivideo1.mp4-ivideo2.mp4-filter_complex\\"[1:v]scale=(iw/2)-20:-1[a];\\[2:v]scale=(iw/2)-20:-1[b];\\[0:v][a]overla......