推流过程首先为了将来可以扩展多种协议(TRSP、RTMP)的视频推流功能,我们创建BStreamer基类。/**

1. 基础视频流

*/

public class BStreamer {

private int width = 640;

private int height = 480;

private String url;

public BStreamer(String url) {

this.url = url;

}

public BStreamer(String url, int w, int h) {

this.url = url;

if (w > 0 && h > 0) {

this.width = w;

this.height = h;

}

}

public int getWidth() {

return width;

}

public void setWidth(int width) {

this.width = width;

}

public int getHeight() {

return height;

}

public void setHeight(int height) {

this.height = height;

}

public String getUrl() {

return url;

}

public void setUrl(String url) {

this.url = url;

}}12345678910111213141516171819202122232425262728293031323334353637383940414243根据上面BStreamer基类,我们扩展实现RTSP协议的视频推流器,由于本实例是采用FFMPEG为推流手段,所以我们下面创建FFmpegPusher实体类。public class FFmpegPusher extends BStreamer {

public FFmpegPusher(String url) {

super(url);

}

public FFmpegPusher(String url, int w, int h) {

super(url, w, h);

}

private Process process;

public void push(){

String basePath="F:\\ffmpeg-4.2.1-win64-shared\\bin";

String videoPath=String.format("%s\\test.mp4",basePath);

String ffmpegPath=String.format("%s\\ffmpeg",basePath);

try {

// 视频切换时,先销毁进程,全局变量Process process,方便进程销毁重启,即切换推流视频

if(process != null){

process.destroy();

System.out.println(">>>>>>>>>>推流视频切换<<<<<<<<

public static void main(String[] args) throws Exception {

String url="rtsp://192.168.56.1/test";

FFmpegPusher pusher=new FFmpegPusher(url);

pusher.push();

}}1234567运行以上测试程序得到如下结果

在服务端查看推流结果(服务下载地址:http://www.easydarwin.org/)

客户端测试拉取上面的视频流进行直播显示

java流 视频_java如何对视频文件处理?包括拉流推流视频截取等?相关推荐

  1. java文本压缩算法_java 什么算法压缩文件最小

    展开全部 有三种方式实现java压缩: 1.jdk自带的包java.util.zip.ZipOutputStream,不足之处,文件(夹)名称32313133353236313431303231363 ...

  2. LiveNVR Onvif/RTSP流媒体软件接入监控摄像头后如何获取直播流地址进行大屏展示、播放端拉流、网页播放监控视频等...

    1.LiveNVR介绍 LiveNVR的安防监控的视频直播,可以按标准的Onvif/RTSP协议接入监控设备,也可以通过海康.大华.天地伟业等厂家私有SDK接入监控,实现web页面的播放和录像回放. ...

  3. java 重命名_Java如何重命名文件?

    在java编程中,如何重命名文件? 此示例演示如何使用File类的oldName.rename To(new_Name)方法重命名文件. package com.yiibai; import java ...

  4. html播放mov格式视频,video - ffmpeg将mov文件转换为mp4,用于HTML5视频标签IE9 - 堆栈内存溢出...

    对于ffmpeg : ffmpeg -i {input}.mov -vcodec h264 -acodec aac -strict -2 {output}.mp4 您还可以添加-q:v / -q:a参 ...

  5. java微课比赛视频_Java Web程序设计(第3版)-微课视频版

    第1部分入门 第1章Java Web开发环境配置 1.1B/S结构 1.2服务器的安装 1.2.1服务器的作用 1.2.2获取服务器软件 1.2.3安装服务器 1.2.4测试服务器 1.2.5配置服务 ...

  6. java pdf文件下载_Java后台返回PDF文件预览下载

    Java后台返回PDF文件预览下载 开始的代码的系统代码为: ResponseEntity onePdf = s3Wrapper.download(contractEntity.getContract ...

  7. java filefilter递归_Java中的递归+文件过滤器

    直接递归称为方法自身调用自己 间接递归可以A方法调用B方法,B方法调用方法,C方法调用A方法. 注意事项: 递归一定要有条件限定,保证递归能够停止下来,否则会发生栈内存溢出. 在递归中虽然有限定条件, ...

  8. java 定时删除_Java编写定时删除文件程序

    Java编写定时删除文件程序 /*Java教程:http://www.javaweb.cc*/ import java.io.File; import java.util.Calendar; impo ...

  9. java nginx 例子_Java及nginx实现文件权限控制代码实例

    我们知道,使用nginx作为文件下载服务器,可以极大地降低对后端Java服务器的负载冲击,但是nginx本身并不提供授权控制,因此好的方案是由后端服务器实现权限控制,最好的方式是直接复用应用的认证体系 ...

  10. java代码整合_java合并多个文件的实例代码

    在实际项目中,在处理较大的文件时,常常将文件拆分为多个子文件进行处理,最后再合并这些子文件.下面就为各位介绍下Java中合并多个文件的方法. Java中合并子文件最容易想到的就是利用BufferedS ...

最新文章

  1. 谷歌母公司投资成绩:4大机构各有侧重,投资2个马斯克项目
  2. Win10自动息屏太快解决方法
  3. c语言程序填空打印出1 1000,计算机应用类专业综合复习试题(一)
  4. Android NDK 内存泄露检测
  5. 电信运营商计费模型_商客通:南京电信400电话怎么办理更省心
  6. git提交后的自动化流程构建
  7. 消息队列 应用场景 解析
  8. 在SSP中查询某个用户Profile信息的SQL语句
  9. update mysql php_PHP的MySQL的更新update
  10. 未设置BufferSize导致FTP下载速度过慢的问题
  11. 大数据治理体系如何搭建
  12. Kerberos的工作原理
  13. 【车牌识别】基于matlab GUI汽车出入库收费系统(带面板)【含Matlab源码 735期】
  14. Bookmarks 各种技术 参考
  15. 计算机网络1MB等于多少b,1mb等于多少kb?MB转化KB的算法 - 驱动管家
  16. MySQL - redolog 图文详解
  17. C语言——是否为闰年的判断
  18. IO_FILE——FSOP、house of orange
  19. 字体大宝库:20款超细英文字体免费下载
  20. java 学习网站_Java学习必不可少的十大网站

热门文章

  1. pr警告项目使用计算机上目前不可用字体,pr2018以上新版字幕字体找不到的问题?...
  2. win和linux双系统安装教程
  3. Labview完全卸载工具msiblast NI
  4. 网站在线沟通工具,网站即时聊天工具-TTKEFU在线客服系统功能介绍
  5. 使用JavaScript在页面打印系统当前时间
  6. eve-ng:加载c7200 dynamips镜像
  7. Linux权限管理命令 chmod 详解
  8. 翻译任务中的BPE词表实践总结
  9. 初学者求经典java学习视频
  10. 发字的楷书写法图片_想要不侵权?收下这篇可能是最全面的书法字设计指南!...