`
rcfalcon
  • 浏览: 234402 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

让FFMPEG支持实时流“伴随”转码

 
阅读更多

FFMPEG命令行工具目前无法针对视频实时流进行转码,而我们可以用它的新版本提供的支持TCP SERVER的特性来实现这一功能。实现边录边用FFMPEG提供的命令行工具进行转码。(实践证明,FFMPEG 的SDK针对实时流开发比较繁琐,命令行工具相对来说稳定)


我们将实时流录制成正在增长的文件,这样问题就变成了FFMPEG如何针对正在增长的视频文件转码。(首先我们保证视频格式是可以支持正在增长文件解码,这不在本文的讨论范畴)

而我们如果直接使用它对正在增长的文件转码,我们会发现FFMPEG转码到文件末尾(转码速度比录制速度快)就会退出。我们要做的就是在FFMPEG转码到末尾时如何将其挂起。若直接修改FFMPEG的源代码则比较繁琐,我们搭建一个TCP的FILE SERVER,来控制给FFMPEG发送数据的速度,而FFMPEG使用TCP的方式来获取视频流,即可实现这个功能。


以下是代码,我们用python来实现:

FFMPEG version:N-32611-gd55b06b



分享到:
评论

相关推荐

    FFMPEG完美入门资料.pdf

    裁剪通常指的是从视频文件中提取一部分内容,并且裁剪过程可能会伴随转码操作,以确保裁剪后的文件与原始文件在格式上保持一致。 FFmpeg的使用涉及多个领域,如网络流媒体的制作和播放、视频转换和处理、流媒体...

    ffmpeg2.1.1源码下载

    7. **性能优化**:每次版本升级通常都伴随着性能的提升,FFmpeg 2.1.1可能针对CPU和GPU进行了优化,加快了编码、解码和转码的速度。 8. **错误修复**:开源项目的一大优势是快速修复和改进。2.1.1版本可能修复了上...

    ffmpeg7.1-full

    FFmpeg在音视频处理领域中占据着重要地位,被广泛应用于多媒体播放器、视频编辑软件、实时视频处理系统、流媒体服务器以及各种音视频处理库中。 7.1版本的FFmpeg在修复前一版本已知问题的同时,可能还增加了新的...

    ffmpeg dev 最新版

    FFmpeg是一款开源的多媒体处理工具,它包含了音频和视频的编码、解码、转换、流化等功能。在“ffmpeg dev 最新版”中,“dev”通常指的是开发者版本,意味着这个版本包含最新的开发成果,可能含有实验性的特性,适用...

    small-video-record:利用FFmpeg视频录制微信小视频伴随压缩处理

    使用FFmpeg自定义录制具有不同时间,分辨率,比特率,帧速率和转码速度的视频。 Small-video-record2已解耦FFmpeg,您可以根据需要自定义FFmpeg。 曝光FFmpeg命令操作界面,可以自定义更多功能。 Small-video-...

    androidVideoPart教学源码

    6. **视频转码**:使用`FFmpeg`库进行视频格式转换,调整分辨率、比特率等参数,优化视频质量和大小。 7. **直播流处理**:可能涉及RTSP、RTMP等直播协议,以及推流和拉流的相关技术。 8. **音视频同步**:处理...

    汇总Android视频录制中常见问题

    解决这个问题,可以在录制前通过`MediaRecorder.setOrientationHint()`设置旋转角度,或在播放时使用`ffmpeg`等工具进行转码处理。 五、其他常见问题与解决方案 5.1 权限问题:确保在AndroidManifest.xml中添加了...

    gizmo-video-backend

    " Gizmo 视频后端 " 是一个专为视频处理和流媒体服务设计的后端解决方案,主要由 TypeScript 语言编写。TypeScript 是 JavaScript 的超集,提供了静态类型检查、面向对象编程特性以及更强大的工具支持,使得代码更加...

Global site tag (gtag.js) - Google Analytics