搜索
bottom↓
回复: 25

go语言玩转树莓派之摄像头篇

[复制链接]

出0入0汤圆

发表于 2018-11-4 08:29:37 | 显示全部楼层 |阅读模式
本帖最后由 FireBrain 于 2018-11-4 08:42 编辑

用go语言调用shell命令,每隔10s录一段10分钟的视频,并以时间命名视频文件名。代码如下:
  1. package main

  2. import (
  3.         "fmt"
  4.         "os/exec"
  5.         "strings"
  6.         "time"
  7. )

  8. func main() {
  9.         for {
  10.                 time.Sleep(time.Second * 10)
  11.                 str := time.Now().Format("2006-01-02 15:04:05")
  12.                 str = strings.Replace(str, "-", "", -1)
  13.                 str = strings.Replace(str, ":", "", -1)
  14.                 str = strings.Replace(str, " ", "", -1)

  15.                 cmd := exec.Command("/bin/bash", "-c", "raspivid -o "+str+".h264 -t 600000")
  16.                 err := cmd.Run()
  17.                 if err != nil {
  18.                         fmt.Println(err)
  19.                 }
  20.         }
  21. }
复制代码



每隔10秒拍摄一张照片
  1. package main

  2. import (
  3.         "fmt"
  4.         "os/exec"
  5.         "strings"
  6.         "time"
  7. )

  8. func main() {
  9.         for {
  10.                 time.Sleep(time.Second * 10)
  11.                 str := time.Now().Format("2006-01-02 15:04:05")
  12.                 str = strings.Replace(str, "-", "", -1)
  13.                 str = strings.Replace(str, ":", "", -1)
  14.                 str = strings.Replace(str, " ", "", -1)

  15.                 cmd := exec.Command("/bin/bash", "-c", "raspistill -o "+str+".h264 -t 1")
  16.                 err := cmd.Run()
  17.                 if err != nil {
  18.                         fmt.Println(err)
  19.                 }
  20.         }
  21. }
复制代码

实时更新请关注码云连接https://gitee.com/kekemuyu/raspberry

出0入0汤圆

发表于 2018-11-4 09:17:38 来自手机 | 显示全部楼层
为啥用go,树莓派官方不是有Python库并且可以完成一系列这种操作么

出0入0汤圆

 楼主| 发表于 2018-11-4 09:19:34 | 显示全部楼层
qiqirachel 发表于 2018-11-4 09:17
为啥用go,树莓派官方不是有Python库并且可以完成一系列这种操作么

不用纠结语言,自己熟悉用哪种语言就用哪种,能实现功能就行。

出0入0汤圆

发表于 2018-11-4 09:27:38 | 显示全部楼层
FireBrain 发表于 2018-11-4 09:19
不用纠结语言,自己熟悉用哪种语言就用哪种,能实现功能就行。

主要是shell指令太少啊,不如import Python库来干活快又多

出0入0汤圆

 楼主| 发表于 2018-11-4 09:31:59 | 显示全部楼层
qiqirachel 发表于 2018-11-4 09:27
主要是shell指令太少啊,不如import Python库来干活快又多

我只能说各有所爱,

出0入0汤圆

发表于 2018-11-4 16:12:54 | 显示全部楼层
FireBrain 发表于 2018-11-4 09:19
不用纠结语言,自己熟悉用哪种语言就用哪种,能实现功能就行。

你学go多久了?

出0入0汤圆

 楼主| 发表于 2018-11-4 16:32:38 | 显示全部楼层
本帖最后由 FireBrain 于 2018-11-4 16:36 编辑



2016年下半年开始,断断续续有2年了吧. 入门是从无闻的《go编程基础》视频开始学的,挺好的教程,全是干货,偶尔遇到不会的,还时常看看。强烈推荐入门学习,我花了一周时间看完视频,就开始做小项目了,有c语言基础,go语言入门很快的。

出0入0汤圆

发表于 2018-11-4 16:40:15 | 显示全部楼层
FireBrain 发表于 2018-11-4 16:32
2016年下半年开始,断断续续有2年了吧. 入门是从无闻的《go编程基础》视频开始学的,挺好的教程,全是干 ...

你用go做过什么比较大的项目呢

出0入0汤圆

 楼主| 发表于 2018-11-4 16:45:05 | 显示全部楼层
meerlin 发表于 2018-11-4 16:40
你用go做过什么比较大的项目呢

大项目应该是没有,小项目做过不少。怎么?你也是gopher?

出0入0汤圆

发表于 2018-11-4 23:20:31 | 显示全部楼层
FireBrain 发表于 2018-11-4 16:45
大项目应该是没有,小项目做过不少。怎么?你也是gopher?

gopher什么意思

出0入0汤圆

发表于 2018-11-4 23:21:48 | 显示全部楼层
FireBrain 发表于 2018-11-4 16:45
大项目应该是没有,小项目做过不少。怎么?你也是gopher?

做过啥小项目啊

出0入0汤圆

发表于 2018-11-4 23:22:28 | 显示全部楼层
楼主厉害了哈

出0入0汤圆

 楼主| 发表于 2018-11-5 03:21:51 来自手机 | 显示全部楼层
meerlin 发表于 2018-11-4 23:20
gopher什么意思

Gopher表意是地鼠,go语言的吉祥物。泛指go语言爱好者

出0入0汤圆

 楼主| 发表于 2018-11-5 03:36:58 来自手机 | 显示全部楼层
meerlin 发表于 2018-11-4 23:21
做过啥小项目啊

举个有意思的例子,远程控制(通过服务器中转方式),几台电脑连上服务器后,任何一台可以通过命令控制其他电脑,比如查看文件目录,远程上传下载等。都是通过命令执行的,所以速度很快。

出0入0汤圆

发表于 2018-11-5 08:41:50 | 显示全部楼层
FireBrain 发表于 2018-11-5 03:36
举个有意思的例子,远程控制(通过服务器中转方式),几台电脑连上服务器后,任何一台可以通过命令控制其他 ...

可以共享一下视频嘛

出0入0汤圆

发表于 2018-11-6 11:00:21 | 显示全部楼层
GO有谷歌的加持,前途无限!
链接:https://pan.baidu.com/s/15m4kS0q4kFTTmBu6CHHHfg
密码:wd7a

出0入0汤圆

发表于 2018-11-6 16:33:37 | 显示全部楼层
语言太多了,跟不上了。

出0入0汤圆

发表于 2018-11-6 16:40:11 | 显示全部楼层
是的跟不上节奏

出0入0汤圆

发表于 2018-11-7 07:33:53 | 显示全部楼层
FireBrain 发表于 2018-11-5 03:36
举个有意思的例子,远程控制(通过服务器中转方式),几台电脑连上服务器后,任何一台可以通过命令控制其他 ...

实现了关机功能?

出0入0汤圆

 楼主| 发表于 2018-11-7 22:44:53 来自手机 | 显示全部楼层
meerlin 发表于 2018-11-7 07:33
实现了关机功能?

可以实现所有命令,因为它是从服务器获取命令然后在本机运行

出0入0汤圆

发表于 2018-11-8 14:46:28 | 显示全部楼层
FireBrain 发表于 2018-11-7 22:44
可以实现所有命令,因为它是从服务器获取命令然后在本机运行

是否可能存在安全问题?

出0入0汤圆

发表于 2018-11-8 15:25:12 来自手机 | 显示全部楼层
flystone 发表于 2018-11-6 11:00
GO有谷歌的加持,前途无限!
链接:https://pan.baidu.com/s/15m4kS0q4kFTTmBu6CHHHfg
密码:wd7a ...

留个爪印

出0入0汤圆

发表于 2018-11-14 13:37:36 | 显示全部楼层
我也留一个

出0入0汤圆

发表于 2018-11-16 05:07:09 来自手机 | 显示全部楼层
Go 用起来很爽,特别是跨平台。当然除了目标文件个头大点。

出0入0汤圆

发表于 2019-1-31 10:15:23 | 显示全部楼层
哈哈,第一次在这里发现gopher, 玩树莓派,估计不得不提go-rpio
选go的原因简单粗爆,和c无限接近.
上手仅需一个周

出10入95汤圆

发表于 2020-2-24 18:00:22 | 显示全部楼层
flystone 发表于 2018-11-6 11:00
GO有谷歌的加持,前途无限!
链接:https://pan.baidu.com/s/15m4kS0q4kFTTmBu6CHHHfg
密码:wd7a ...

Go的谷歌加持
多谢分享!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-10 21:07

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表