当前位置: 首页 > news >正文

资讯门户网站网站开发需要什么工具

资讯门户网站,网站开发需要什么工具,苏州免费网站建设,有人有片吗视频免费的Unity3d 实现直播功能 需要插件 :VideoCapture 插件地址(免费的就行) 原理:客户端通过 VideoCapture 插件实现推流nodejs视频流转服务进行转发,播放器实现rtmp拉流 废话不多说,直接上 CaptureSource我选择的是屏幕录制,也可以是其他源 CaptureType选择LIVE–直播形式 LiveSt…Unity3d 实现直播功能 需要插件 :VideoCapture 插件地址(免费的就行) 原理:客户端通过 VideoCapture 插件实现推流nodejs视频流转服务进行转发,播放器实现rtmp拉流 废话不多说,直接上 CaptureSource我选择的是屏幕录制,也可以是其他源 CaptureType选择LIVE–直播形式 LiveStreamUrl选择自己本地服务地址 例如 rtmp://localhost:1935/live/unity //localhost也可以切换外网推流服务器地址 推流服务器 // index.js const NodeMediaServer require(node-media-server);const config {rtmp: {port: 1935,//rtmp服务端口号chunk_size: 60000,gop_cache: true,ping: 30,ping_timeout: 60},http: {port: 8000,//http服务端口号,拉流用的allow_origin: *} };var nms new NodeMediaServer(config) nms.run();一个简单的nodejs服务,需提前安装依赖包 npm install node-media-server --save安装完成后,命令行进入到 index.js所在目录执行 node index.js命令,看到下图即为成功 运行unity项目,点击 StartCapture 打开拉流软件VLC(下载地址) 效果如下: 视频效果如下 unity视频直播效果 unity直接起本地推流拉流服务代码(Editor使用,出包需要改地址和配合拷贝文件) using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using UnityEngine; //Editor完美运行,出包需要另外设置地址杀死nodejs推流程序 public class StartNodeJsServer : MonoBehaviour {private void Start(){StartServer();}public void StartServer(){// create the command-line processvar cmdProcess new Process{StartInfo {FileName cmd.exe,UseShellExecute false,CreateNoWindow true, // this is probably optionalErrorDialog false, // this is probably optionalRedirectStandardOutput true,RedirectStandardInput true}};// register for the output (for reading the output)cmdProcess.OutputDataReceived (object sender, DataReceivedEventArgs e) {string output e.Data;// inspect the output text here ...};// start the cmd processcmdProcess.Start();cmdProcess.BeginOutputReadLine();// execute your command//cmdProcess.StandardInput.WriteLine(npm install node-media-server --save);//服务器文件放到Assets目录下面的server内,出包的时候此处需要修改cmdProcess.StandardInput.WriteLine(node Application.dataPath /server/index.js);UnityEngine.Debug.LogError(node Application.dataPath /server/index.js);GameManager.Instance.nodeServerStarted true;}public dynamic RunCmd(string cmd, bool isReturnStreamReader false){Process pro new Process();pro.StartInfo.FileName cmd.exe;pro.StartInfo.CreateNoWindow true; // 不创建新窗口 pro.StartInfo.UseShellExecute false; //不启用shell启动进程 pro.StartInfo.RedirectStandardInput true; // 重定向输入 pro.StartInfo.RedirectStandardOutput true; // 重定向标准输出 pro.StartInfo.RedirectStandardError true;pro.StartInfo.StandardErrorEncoding System.Text.UTF8Encoding.UTF8;pro.StartInfo.StandardOutputEncoding System.Text.UTF8Encoding.UTF8;// 重定向错误输出 // pro.StartInfo.WorkingDirectory path;pro.Start();//开启cmdpro.StandardInput.WriteLine(cmd);pro.StandardInput.AutoFlush true;pro.StandardInput.WriteLine(exit); //若是运行时间短可加入此命令dynamic output;if (isReturnStreamReader){output pro.StandardOutput;}else{output pro.StandardOutput.ReadToEnd();}pro.WaitForExit();//若运行时间长,使用这个,等待程序执行完退出进程pro.Close();return output;}public Liststring GetPidOfAddress(string address){//用来保存所有对应地址的端口号数据Liststring valueList new Liststring();//获取返回的StreamReader数据StreamReader sr RunCmd($netstat -aon|findstr {address}, true);//读取StreamReader的每一行数据while (!sr.EndOfStream){string value sr.ReadLine();//查看当前读取的行中内容是否包含TCP字符if (!string.IsNullOrEmpty(value) value.Contains(TCP)){//只获取状态为 LISTENING 的数据string[] ss value.Split(LISTENING);//获取端口号数据信息if (ss.Length 2){string port ss[ss.Length - 1].Trim();//重复的端口号不加入结果列表中if (valueList.FirstOrDefault(a a port) null)valueList.Add(port);}}}return valueList;}/// summary/// 根据PID杀死对应进程/// /summary/// param namepid/param/// returns/returnspublic string KillTask(string pid){return RunCmd($taskkill /F /pid {pid});}private void OnApplicationQuit()//退出程序杀死直播服务{Liststring address GetPidOfAddress(1935);address.ForEach((s) {KillTask(s);});} } 网页查看视频效果 !DOCTYPE html htmlheadmeta charsetUTF-8title/title/headbodyscript srchttps://cdn.bootcss.com/flv.js/1.4.0/flv.min.js/scriptvideo idvideoElement stylewidth: 100%; controlscontrols/videoscriptif (flvjs.isSupported()) {var videoElement document.getElementById(videoElement);var flvPlayer flvjs.createPlayer({type: flv,url:http://localhost:8000/live/unity.flv //这里走的http拉视频,所以用端口号8000});flvPlayer.attachMediaElement(videoElement);flvPlayer.load();flvPlayer.play();}/script/body /html遇到过的问题: http://192.168.101.178:8000/live/unity/aaa.flv //地址太长HTTP请求播放的时候播放失败,rtmp没问题 参考链接(感谢大神铺路) node.js简易版直播功能局域网内 Unity3d C#实现将场景中摄像头画面进行采集、录制并上传视频流(推流rtmp)直播的功能含源码
http://www.w-s-a.com/news/180143/

相关文章:

  • 做网站一单能挣多少wordpress主题文件夹在哪
  • 视频社区app源码台州优化网站
  • 保定高端网站建设做微商好还是开网站好
  • 有什么方法在淘宝发布网站建设设计wordpress评分
  • 自己做的网站怎么爬数据库酷播wordpress
  • 广州哪家做网站还可以黑龙江省建设厅网站的电话
  • 青海省高等级公路建设管局网站国内做led灯网站有
  • 做网站成功建设银行网站网址
  • 自动生成网站上海十大活动策划公司
  • 企业网站建设源码HTML论述市场营销对网站设计的影响
  • 网站设计常见问题建设工程网上质检备案网站
  • 网站怎样优化文章关键词建设网站需要钱吗
  • 加强网站建设和管理的通知重庆网站推广产品
  • 网站建设术语解释百度发布信息的免费平台
  • 情公司做的网站seo与网站优化 pdf
  • 做一个购物网站多少钱江阴市住房和城乡建设局网站
  • 网站建设都包括哪些ps怎么做网站首页和超链接
  • 怎样低成本做网站推广编辑网站教程
  • 邯郸网站建设信息网站开发报价人天
  • 王店镇建设中心小学网站酷玛网站建设
  • 网站需求方案wordpress博客主题推荐
  • 网站安全证书过期怎么办那个视频网站最好最全网址
  • 外贸上哪个网站开发客户建行个人网上银行登录入口
  • 空间除了可以做网站还能干什么qq钓鱼网站
  • 网站 技术企业网站用免费程序
  • 做网站的中文名字汕尾网站开发
  • 网站推广效果推广网站推荐
  • 腾讯企业网站建设网络推广比较经典和常用的方法有
  • 四川成都网站网页设计上海外贸网站制作公司
  • wordpress模板首页图片锦州网站做优化