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

网站建设公司 校园网站经典网站设计案例

网站建设公司 校园网站,经典网站设计案例,台州品牌设计公司,企业排名优化公司问题背景 问题背景是在#xff0c;由于视频采集端使用的是H264编码采集的裸流#xff0c;而网络流媒体大多是以FLV为主的直播方式进行的#xff0c;为了实现实时直播#xff0c;当前是打算直接使用FFmpeg将H264裸流实时转成FLV视频流。 为什么是使用FLV视频流呢#xff0c…问题背景 问题背景是在由于视频采集端使用的是H264编码采集的裸流而网络流媒体大多是以FLV为主的直播方式进行的为了实现实时直播当前是打算直接使用FFmpeg将H264裸流实时转成FLV视频流。 为什么是使用FLV视频流呢因为相对简单加上FLV Header后将每个NALU打包成Tag并进去大致就行了。但是这块怕有疏忽最终还是想使用成熟的工具FFmpeg。 方法实现 1. 使用FFmpeg-go封装好的方法 FFmpeg-go 上面有具体的Demo但是只有流转文件也只有文件转流的方法对于流转流还是需要自己动手处理一下。 import ffmpeg github.com/u2takey/ffmpeg-goerr : ffmpeg.Input(pipe:, ffmpeg.KwArgs{format: rawvideo,video_size: fmt.Sprintf(%dx%d, 480, 1064)}).WithInput(filein).Output(pipe:,ffmpeg.KwArgs{c:v: libx264, f: flv, crf: 24}).WithOutput(buf, errorbuf).Run() if err ! nil {panic(err) } bufs : make([]byte, 1024) out, _ : os.OpenFile(res2.flv, os.O_CREATE|os.O_RDWR|os.O_APPEND, 0644) for {n, err : buf.Read(bufs)if n 0 || err io.EOF {out.Close()break} else {//此处处理输出流这边简单地写到文件里out.Write(bufs)} } 其中 filein 是输入的H264视频裸流 buf是输出的视频流虽说代码是这么写但是实际上是run不起来的不清楚具体是什么原因因此后续还是打算直接调用ffmpeg可执行程序。 2. 直接调用FFmpeg 首先需要在电脑上下载好ffmpeg并且添加到环境变量保证执行Powshell或者cmd指令的ffmpeg时能够正常运行接下来还是直接上代码。 cmd : exec.Command(ffmpeg, -re, -r, 30, -i, pipe:0, -vcodec, libx264, -f, flv, pipe:1, -y, another.flv)//获取输入流 stdin, err : cmd.StdinPipe() if err ! nil {fmt.Println(Error getting stdout pipe:, err)return }//要写东西进去的时候只需要 stdin.Write(bytes) //获取输出流 stdout, err : cmd.StdoutPipe() if err ! nil {fmt.Println(Error getting stdout pipe:, err)return }// Start the command err cmd.Start() if err ! nil {fmt.Println(Error starting command:, err)return } 这边需要注意到的点是如果不加上-re的话需要等stdin.close()之后整个ffmpeg才会运行才能见到有输出流。 其次这边加了 “-y” another.flv是用来进行对比的这里ffmpeg将会把输出同时放在两个地方一个写入到文件another.flv里-y 是覆盖原有文件另一个通过stdout传出来我将stdout的数据流保存成out.flv后发现同another.flv对比发现并不相同。或许视频流和文件不应该这么处理。 总结 建议直接调用FFmpeg的可执行文件进行操作最好。 但是这样实时的流转流的方式实际上还是有挺大延迟的如果要实时视频流P2P模式建议要么在采集端处理好要么在播放端处理好中间层就不要过多操作影响实时性如果是推流拉流的模式还是建议在中间层处理好。 存在问题 这边还是发现一些问题的尤其是直接使用ffmpeg的时候 1. 直接读取文件和读取文件通过stdin传入byte获取到的结果是不一致的。 2. 直接output成文件和通过stdout获取byte再保存成文件得到的结果也是不一致的。
http://www.dnsts.com.cn/news/87848.html

相关文章:

  • 江西省建设监督网站电子网中国第一作文网
  • 毕设DW做网站的过程wordpress 看不到图
  • 网站服务器维护 价目表成都APP 微网站开发
  • 网站运营招聘dedecms的网站如何添加个引导页
  • 哪个网站可以做行程表wordpress 数学主题
  • 金融类网站模板北京html5网站建设
  • 直播网站 建设WordPress行距太大
  • 绿色食品网站建设论文优秀网站设计欣赏图片
  • 做周边的网站外贸手机网站建设
  • 怎么做打鱼网站wordpress 仿微信评论
  • 关于做教育新闻的网站网站建设外地便宜
  • 合肥网站建设发布影城网站建设
  • 广州网站建设studstu国际知名设计公司排名
  • 招商加盟网站怎么做做网站服务器租一年多少钱
  • 健康养老网站建设网上接手袋做是哪一个网站
  • 国家建设部门三类人员官方网站南平抖音搜索排名seo软件
  • 杭州市富阳区建设局网站无锡网络公司服务
  • 免费网站站长查询校友网站建设
  • 南昌建网站那家好yxcms wordpress
  • 视频网站app怎么做的asp网站开发好怎么预览
  • 省级建设主管部门网站产品展示型网站模板
  • 自己可以做网站服务器吗抖音代运营怎么做
  • 电商设计参考网站做电器哪个网站好
  • 张家界建设局网站电话号码六安城市网官网
  • 陕西省住房和城乡建设厅执业资格注册中心网站图片wordpress博客
  • 网站制作要多少钱医疗网站建设咨询
  • 深圳企业网站制作公司哪家好国外网站的建设
  • 温岭做网站洛阳网站建设优惠公司
  • 海口市公司网站建设dw制作班级网站
  • html5网站制作软件网站建设维护保密协议书