使用MSYS2编译Windows平台FFmpeg问题集合

1.安装了speex但找不到

2.configure 配置完以后提示找不到cmp命令

……后续继续补充

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: 使用MSYS2编译Windows平台FFmpeg问题集合

适用于Raspberry Pi的RTMP直播推流器

很早前入了个Raspberry Pi 1代和一个摄像头模组,准备做直播推流设备.

尝试过第一个方案:
raspivid+ffmpeg串流rtmp直播,效果不太好.
ffmpeg对输入流分析太费时,影响直播的时效性.

第二个方案:
后来ffmpeg-3.1好像,更新了OMX实现的H.264编码器,Raspberry Pi通过插入bcm2835-v4l2内核模块,映射出/dev/video0设备,ffmpeg再使用V4L2接口直接进行取摄像头并硬件编码推流.
720分辨率也能行,30帧没有问题,CPU也占用很少,但缺点是分辨率增大后(1080),v4l2取摄像头数据的帧率实在太低,只有6帧左右.
并且不能像raspivid那样方便的设置摄像头参数,比如水平\垂直翻转,角度旋转,亮度,ISO,白平衡这些.
这个方案也被pass.

第三个方案:
参照raspivid,使用OpenMAX IL接口进行摄像头数据捕获->硬件编码->rtmp传输.这个需要进行一点编程开发,由于后来做NodeMediaClient项目,一直耽搁了.
继续阅读“适用于Raspberry Pi的RTMP直播推流器”

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: 适用于Raspberry Pi的RTMP直播推流器

FFmpeg 3.1 发布

上个月第发布的最新版3.1,特性太多,高亮几个做移动多媒体开发的关注点

  • DXVA2-accelerated HEVC Main10 decoding
  • fieldhint filter
  • loop video filter and aloop audio filter
  • Bob Weaver deinterlacing filter
  • firequalizer filter
  • datascope filter
  • bench and abench filters
  • ciescope filter
  • protocol blacklisting API
  • MediaCodec H264 decoding
  • VC-2 HQ RTP payload format (draft v1) depacketizer and packetizer
  • VP9 RTP payload format (draft v2) packetizer
  • AudioToolbox audio decoders
  • AudioToolbox audio encoders
  • coreimage filter (GPU based image filtering on OSX)
  • libdcadec removed
  • bitstream filter for extracting DTS core
  • ADPCM IMA DAT4 decoder
  • musx demuxer
  • aix demuxer
  • remap filter
  • hash and framehash muxers
  • colorspace filter
  • hdcd filter
  • readvitc filter
  • VAAPI-accelerated format conversion and scaling
  • libnpp/CUDA-accelerated format conversion and scaling
  • Duck TrueMotion 2.0 Real Time decoder
  • Wideband Single-bit Data (WSD) demuxer
  • VAAPI-accelerated H.264/HEVC/MJPEG encoding
  • DTS Express (LBR) decoder
  • Generic OpenMAX IL encoder with support for Raspberry Pi
  • IFF ANIM demuxer & decoder
  • Direct Stream Transfer (DST) decoder
  • loudnorm filter
  • MTAF demuxer and decoder
  • MagicYUV decoder
  • OpenExr improvements (tile data and B44/B44A support)
  • BitJazz SheerVideo decoder
  • CUDA CUVID H264/HEVC decoder
  • 10-bit depth support in native utvideo decoder
  • libutvideo wrapper removed
  • YUY2 Lossless Codec decoder
  • VideoToolbox H.264 encoder

包括了iOS平台上的硬件编解码AAC,硬件编码H.264,Android平台的硬件解码,树莓派的OpenMAX IL硬编码器。官方强烈建议各位升级 :D。

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: FFmpeg 3.1 发布

FFmpeg 发布3.0版

http://ffmpeg.org/releases/ffmpeg-3.0.tar.bz2

最值得关注是,本次更新内置的AAC编码器终于成为稳定版。移除了vo-aac 和libaacplus

载录一些更新特性

– Common Encryption (CENC) MP4 encoding and decoding support.

– New filters: extrastereo, OCR, alimiter, stereowiden, stereotools, rubberband, tremolo, agate, chromakey, maskedmerge, displace, selectivecolor, zscale, shuffleframes, vibrato, realtime, compensationdelay, acompressor, apulsator, sidechaingate, aemphasis, virtual binaural acoustics, showspectrumpic, afftfilt, convolution, swaprect, and others.

– New decoding: DXV, Screenpresso SPV1, ADPCM PSX, SDX2 DPCM, innoHeim/Rsupport Screen Capture Codec, ADPCM AICA, XMA1 & XMA2, and Cineform HD.

– New muxing: Chromaprint fingerprinting, WVE demuxer, Interplay ACM, and IVR demuxer.

– Dynamic volume control for ffplay.

– Native AAC encoder improvements.

– Zero-copy Intel QSV transcoding.

– Microsoft DXVA2-accelerated VP9 decoding on Windows.

– VA-API VP9 hardware acceleration.

– Automatic bitstream filtering.

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: FFmpeg 发布3.0版

FFmpeg-2.8 硬件H.264 编码器版 WIN32 编译版

之前FFmpeg-2.7.2编译了带硬件解码的windows版后,不少朋友留言,邮件等联系,需要更多的解码器和编码器,于是趁着2.8发布,编译了新版.
下载地址:https://github.com/illuspas/ffmpeg-hw-win32

ffmpeg 2.8
gcc 5.2.0
–enable-nvenc
–enable-libmfx
–enable-libfdk-aac
–enable-libspeex
–enable-libx264
–enable-libopenh264
–enable-libx265
–enable-libopus
–enable-libmp3lame

ffmpeg 2.8 h.264 codec

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: FFmpeg-2.8 硬件H.264 编码器版 WIN32 编译版

FFmpeg 2.7发布,Intel Quick Sync Video编解码器已正式推出

此版本发布比较关注的Intel Quick Sync Video编解码器正式推出了,之前2.6的时候在master分支测试过。
相比较NVENC,之前也有测试过,就目前NV的显卡驱动,GeForce系列只支持同时两路编码会话,实在是吝啬,空有强大性能。同期测试过QSV,就没有这方面限制。
在做服务端流媒体实时转码的硬编码方面,QSV目前比较成熟。

————————————————–
下载博主编译的ffmpeg.exe:https://github.com/illuspas/ffmpeg-hw-win32

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: FFmpeg 2.7发布,Intel Quick Sync Video编解码器已正式推出

HikToFms v0.1

HikToFms 是一款运行在windows服务器,从海康DVR或IPC取流并转码发布到Flash Media Server的程序.

同时,也支持绝大部分商用或开源RTMP流媒体服务器,如WOWZA,Evostream,Nginx-rtmp,srs等.

本程序对视频流进行了二次编码,在画质不变的情况下,码流可以减小一半以上.

同时优化了X86架构下的性能,实测xeon 8核,10路4CIF@12fps 编码占用CPU 10%~15%.

RTMP协议已被广泛应用于web客户端(只需flash插件),iOS,Android手机客户端,协议更标准,连接速度快,实时性好.

可应用但不限于以下场景.

幼儿园监控,为家长提供手机远程视频,观看宝宝动态,老师有没有打骂小朋友等.

社区监控,可为业主提供手机试试查看小区状况,停车位情况,

道路环境监控:在主要路段铺设摄像头,为车主实时查看路况提供信息,如天翼看交通应用.

厂房监控:厂房生产情况,老板实时远程查看,出差休息也能了解动态.

下载试用版:http://www.nodemedia.cn/zh/server/hiktofms/

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: HikToFms v0.1

一段海康SDK解码回调后缩放并用openh264编码的代码

最近有个海康DVR转rtmp的项目,准备用openh264试试,相比x264性能非常强,但相同码率下画质不如x264

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: 一段海康SDK解码回调后缩放并用openh264编码的代码

如何在windows中编译ffmpeg 2.6.1 以及 NVENC硬编码的尝试

目前我使用的编译链
gcc: TDM-GCC-4.9.2
msys: 从MinGW中拷贝而来

./configure –target-os=win32 –arch=i686

windows下编译ffmpeg 2.6.1
windows下编译ffmpeg 2.6.1

开启NVENC硬件编码H.264
-enable-encoder=nvenc –enable-nvenc –enable-nonfree

ffmpeg 支持 nvenc 硬编码 H264
ffmpeg 支持 nvenc 硬编码 H264

继续阅读“如何在windows中编译ffmpeg 2.6.1 以及 NVENC硬编码的尝试”

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: 如何在windows中编译ffmpeg 2.6.1 以及 NVENC硬编码的尝试

NodeMedia Dev Server

NodeMedia Dev Server是基于nginx-rtmp-module编译的windows版RTMP服务端完整实例。无需配置,一键运行,是您快速开发,测试,验证RTMP流的好帮手。
可以用来开发:视频直播间,音视频聊天,游戏直播,远程视频监控等。
包含以下实用工具:

  1. RTMP流媒体服务端
  2. Flash Rtmp流播放器
  3. Flash HLS直播流播放器
  4. Flash Rtmp摄像头视频发布器
  5. Flash 视频聊天Demo
  6. 批处理版的视频流循环发布器。

前往下载:http://www.nodemedia.cn/zh/nodemedia-dev-server

原创文章,转载请注明: 转载自贝壳博客

本文链接地址: NodeMedia Dev Server