使用二手 gopro 做行车记录仪

背景

自打开了博客以后,一直在写技术说明文,今天打算写点程序以外的东西换换味口。前段时间在某鱼上以 300 元的价格入手了一套完整的 gopro3+ 运动摄像头,带一张 32G SD 卡,两块备用电池,一个无线遥控,以及 N 多配件:

使用二手 gopro 做行车记录仪

相机本身支持 720p~4K 分辨率,不过 4K 的时候帧数已经比较渣了 (12.5 fps),最合适的还是 1080p,能到 24 帧及以上。

使用二手 gopro 做行车记录仪

据说 gopro3+ 虽老 —— 最新的 gopro 版本已经到 10,不过价钱也非常感人,达到了 3000+ —— 画质也能完爆两三百的行车记录仪,于是想将它改造为一个摩托车记录仪,下面是探索的过程。

手机 App 连接

套件中自带 SD 读卡器,拍摄完的照片和视频可以直接在笔记本电脑读取 (要有 SD 卡插口),不过这种方式需要开电脑,使用起来不是特别方便,好在 gopro3+ 已经支持手机 App 连接,在 App 商城中下载一个名为 GoPro Quik 的软件即可。

使用二手 gopro 做行车记录仪

第一次连接稍微费了点功夫,需要将 gopro3 的 wifi 连接设置为 app 模式并启动,手机侧需要开启蓝牙并配对,之后连上 gopro 的 wifi 就可以了 (以后打开 App 就会直接连接相机 wifi,不需要额外设置了)。在 wifi 列表里找了一圈,果然发现一个新增 wifi,但是名字有点奇怪 :luoquanyou,报着试试看的态度连接了一下,果然没有成功:

使用二手 gopro 做行车记录仪

需要输入密码,想想也是,不能随便让别人访问你拍摄的内容是吧。网上搜了下,说默认密码是 goprohero,进不去;试了下 12356,不行;问了下卖家,对方表示时间长了忘记了,并安抚我说没有手机 app 也可以下载数据,最后提醒我快点确认收货,一次无效沟通。不过咱也是搞 IT 出身的,虽然装电脑不是特别在行,破解个 wifi 密码那还不是分分钟的事儿 ?

果然在网路上搜到了重置 gopro wifi 的方法,其实就是直接从官网下载固件+wifi 包,在电脑端通过文件复制覆盖 SD 卡中的内容,达到重置出厂设置的目的,顺便也就把 wifi 重置了。按照操作步骤一步步执行,走到下载文件这步空气凝固了:

使用二手 gopro 做行车记录仪

“下载更新” 按钮一直是灰的,鼠标移上去是禁止标志。一开始以为是自己的网慢,耐心的等待了几分钟,然鹅没有任何变化;怀疑是 firefox 的锅,毕竟只有 4% 的用户在使用了,切换 chrome,然鹅没有改观;怀疑是 linux 笔记本有问题,换 windows 本试,然鹅结果一样…

做工如此精致的官网,你不能坑我啊。切换思路,看看网上有没有 mirror 站点,果然又搜到一篇文章,作者已经把下载好的 gopro3+ 固件上传到了 csdn,可以直接下载,然鹅需要 50 C币,果断放弃,之前被赚 C 币折磨的阴影还在,不能再掉坑里一次了~

就在一愁莫展的时候,无意间看到一篇文章,说 wifi 设置位于 setting.in 的文件,浏览 SD 卡文件,果然在根目录有这么个文件,打开一看:

{"current_password":"","token":"","wifi_ap":{"ssid":"luoquanyou","password":"12345678"},"wifi_networks":[]}

wifi 密码居然明文写在上面,真是踏破铁鞋无觅处,得来全不费功夫~

使用密码 12345678 成功连上了 wifi,话说这和我之前的尝试就差了两个数字嘛,好像明白了暴力破解为什么长盛不衰。

gopro3 的软件开发者留了一个安全漏洞,作为同行很好奇新版本是否修复了这个问题。不过转念一想,即使 wifi 配置加了密,在 SD 卡随时可以被取走的情况下,这种安全性又有什么意义?除非可以物理锁住 SD 卡,如果能做到这一步的话,wifi 密码也是可以保证安全的,逻辑闭环,哈哈,没毛病~

本来想换一个 wifi 名和密码的,但是 SD 卡是只读的,不能手动更改。算了,不折腾了,就这样凑合着用吧。

浏览 SD 卡文件,还发现卖家大爷的几张影像,看起来像是二手贩子,对 gopro 研究的还是不够啊,卖便宜了 :)。

使用二手 gopro 做行车记录仪

这是我离卖家最近的一次,好在分辨率不高,相当于自动打码了…

配置

gopro 作为专业的运动相机,擅长拍摄运动过程中几个精彩的片段,不适合做长时间的记录工作,要将它改造为行车记录仪,还需要做一翻针对性的配置,主要分为供电与存储两个方面。

供电

制约长时间记录的瓶颈首先是供电问题,单使用电池的场景下,一块电池大概只能支持半个小时 (21 min 实测),骑行过程中又不方便换电池,相当于每半个小时要停车一次,这是不能接受的。于是考虑使用车载 USB 供电方案,在这种情况下只要车子有电,gopro 就不会断电,而行驶过程中电瓶会不断充电,因此可以理解为无限续航。不过一旦接上电源线,就给 gopro 带来两个限制:

  • 安装位置
  • 外层防护壳的选择

第一个问题好理解,因为有线,所以不方便装在头盔、手臂等位置,只能安装在车子头部靠充电口近的地方,好在记录仪本身就是要装在这个位置,这个没有多大影响;

第二个问题是因为 gopro 配备的几个壳子中,以防水壳居多,为了达到官方宣称的 60 米深度的防水能力,除了几个防水按钮外就没有其它接口了,导致它只能使用电池供电:

使用二手 gopro 做行车记录仪

还有几个防水壳在后面开了很大的”天窗”来改善散热和麦克音效,但它们在电源接口处都没有预留充电线出口:

使用二手 gopro 做行车记录仪

这样就只剩下面这个壳子可选了:

使用二手 gopro 做行车记录仪

单薄的像个塑料片儿,考虑到摩旅途中遇雨的概率不低,这东西基本没有防水能力。另外为了接充电线,需要打开侧仓盖,时间久了灰尘也会进入机体,真不是一个好的解决方案。于是在某宝上搜索”gopro 充电防水壳”,居然真的有卖:

使用二手 gopro 做行车记录仪

使用二手 gopro 做行车记录仪

不过价格感人,小 100 块一个,果断放弃。先这样凑合用着。

-------------------- 20220909 更新 ---------------------

手里有两个防水壳,决定用其中一个做试验,开个小天窗来通电源线,以下是实操过程。话不多说,直接上图:

使用二手 gopro 做行车记录仪

使用二手 gopro 做行车记录仪

充电线头刚刚好塞进去,虽然不能防水,但是一般小雨已经不惧了。

-------------------- 20220909 更新 ---------------------

如果有人想用它作汽车行车记录仪,就不存在这种烦恼了:车内没有必要使用防水壳,还能增强散热性能,一举两得。另外说到散热,这机器长期开着录影是真的烫手,如果加上防水壳,不清楚会不会过热。

最后补充一点,虽然相机可以通过电源线直接供电,但行驶过程中的颠簸可能导致供电线接触不良,偶发的断电会导致 gopro 直接停机,因此还是保留相机内的电池作为接力电源为好。特别在断电后日期会被重置,而通过 gopro 那几个小按钮设置日期将是一件非常费力的事。

存储

长时间记录的另一个瓶颈是 SD 卡存储空间。gopro 默认的模式是按 start 键开始录影,再次按 start 键或存储写满时停止。循环录影模式可以在存储写满时覆盖最旧的记录文件,从而只记录最近的一段影像。

这个功能的基础是视频文件分片,使用 1080p 24 帧的测试结果是,15 分钟一个文件分片 (6.6 G 左右),32 G 容量最多可以写 1 小时 15 分钟。降低分辨率并不能显著降低记录时长,因为帧数相应的提升了,以 960p 为例,最低帧数提高到了 50,720p 也差不多。

提高 SD 卡容量是一个办法,gopro3+ 最多支持 64G 的存储卡,相对 32G 能提升一倍的记录时长。实地测试不同的分辨率在 32 G 容量下的最长记录时间列表如下:

fps/resolution 720p 720p super 960p 1080p 1080p super 1440p 2.7k 4k WVGA 12 96 (17:9) * 12.5 92 * 24 105 120 120 92 (17:9) * 25 210 120 120 90 * 48 120 120 120 140 * 140 50 200 105 120 135 140 * 100 140 * 140 * 240 240 *

对上面的数据做个简单说明:

  • 单位分钟 (min)
  • 空白表示对应分辨率不支持相应的 fps
  • 设置在 TV 设备上观看视频的模式 (NTSC/PAL) 会影响分辨率对应的 fps,上表列出的是 PAL 模式下的 fps,适合非北美地区的 TV 设备
  • 标星号的 fps 不支持循环录影功能
  • 夜晚纯黑的场景下,录影文件大小并没有明显变化,gopro 显然没有进行视频压缩,因此上面的数据相对还是比较准的

可以看到有些分辨率在提升 fps 的情况下,记录时长还提升了 (1080p 24fps->25fps),经过分析,发现某些 fps 除了生成原始视频本身,还会生成低分辨率预览视频,导致占用空间上升。真是不试不知道,一试吓一跳…

作为行车记录仪,循环录影是硬要求,排除掉不支持的 fps,再按记录时长排序,只有下面两种设置时长能超过 200 min:

  • 720p * 50:200 min
  • 1080p * 25:210 min

如果希望记录更多帧,可以选 720p;如果希望记录画面更清晰,可以选 1080p。WVGA 方式可以达到最长的时长 240 min,如果一次旅程不超 4 小时,选择这个配置就比较香了,同时它也达到了最大的记录帧数 240 fps,据说明书讲,WVGA 格式记录了原始 (RAW) 画面,想发挥后期制作能力的人不妨试试。

杂项

gopro 除了录影功能外,还有以下功能:

  • 拍照
  • 连拍
  • 延时摄影
  • 回放

和车载记录仪没什么关系的就不多说了,重点说一下与录影相关的设置:

  • 一键模式 (one button):开机自动录影
  • 照片像素:12M Wide/7M Wide/7M Medium/5M Wide (M:百万像素) ,一般默认 12M
  • 遥控模式:将相机 wifi 模式设置到遥控器,可以通过单独的遥控按钮控制相机,例如在录影过程中抓拍,注意这种情况下是不能用 App 连接相机的,相机只能在两种 wifi 模式中选择一种工作
  • 高级设置:
  • 相机正反朝向 (Camera Orientation):反着放相机,可以拍出正向的画面,方便某种独特的机位
  • 边拍边录 (Simultaneous Video And Photo):录影的同时以固定间隔拍照,注意只有一些特定的分辨率支持该特性
  • 点测光 (Spot Meter):从一个灯光较暗的空间进入明亮环境时得到更好的画面,例如出隧道时。注意打开这个选项会导致循环录影失效
  • 数字谐调 (Protune):发挥相机全部潜力,录制高质量低压缩的画面,开启这个选项会导致循环录影和边拍边录模式失效,打开这个选项会使能以下选项:
    • 白平衡 (White Balance)
    • 感光度上限 (ISO Limit )
    • 色彩 (Color Profile)
    • 锐度 (Sharpness)
    • 曝光值补偿 (Exposure Compensation)

Protune 的 5 个高级选项常见于单反相机的设置,这里不专业就不多说了。大部分高级设置支持的分辨率有限,特别是影响循环录影的开启,所以我一般不开启它们。其中比较有用的是边拍边录,可以避免为了看一两帧照片而下载巨大的视频文件了,不过这个功能和遥控拍照有些重复。最后说一下为什么不上遥控器,主要是这东西续航有限也需要接电源,安装起来还挺麻烦,不想把车把弄的太乱。

安装

相机就绪后,就可以上车了,刚好车上有装手机支架球头,可以直接安装:

使用二手 gopro 做行车记录仪

将相机放在了紧靠风挡中间的部分,可以获取最佳视野及最好防护,另外也不遮挡仪表显示,perfect!

-------------------- 20220909 更新 ---------------------

更新下带防水壳的上车效果:

使用二手 gopro 做行车记录仪

-------------------- 20220909 更新 ---------------------

最后来一段拍摄效果,看看 1080p 的分辨率效果如何:

使用二手 gopro 做行车记录仪

参考

[1]. gopro hero 3+运动相机更新固件重置wifi密码的实操教程

[2]. GoPro Hero3+ 银狗 最终固件,可重置WiFi

[3]. 你说会有人用GoPro当行车记录仪吗?

[4]. GoPro是怎样让用户wifi密码沦陷的

[5]. gopro 官网

[6]. GoPro HERO 3+ 中文说明书【GoproCN】.pdf

[7]. GoPro使用教程,GoPro玩家初级攻略

[8]. GoPro 如何设置感光度

我的博客即将同步至腾讯云开发者社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=194lmgjyf0a6l

Original: https://www.cnblogs.com/goodcitizen/p/using_the_secondary_gopro_for_driving_recorder.html
Author: goodcitizen
Title: 使用二手 gopro 做行车记录仪

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/577581/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Linux文件属性及权限

    Linux文件属性及权限 首先我们以root用户的身份登录linux,执行ls -al 查看文件: 文件类型: 【d】 代表目录(directory)、【-】代表文件、【l】代表链…

    Linux 2023年6月11日
    057
  • 在 IconFont 上获取图标资源的操作方法与感悟

    如何在 IconFont 上获取图标资源 阿里巴巴矢量图标库网站(https://www.iconfont.cn/)上提供了非常丰富的图标资源,包括 SVG、AI、PNG、字体图标…

    Linux 2023年6月7日
    076
  • LeetCode-26. 删除有序数组中的重复项

    题目来源 题目详情 由于在某些语言中不能改变数组的长度,所以必须将结果放在数组nums的第一部分。更规范地说,如果在删除重复项之后有 k 个元素,那么 nums 的前 k 个元素应…

    Linux 2023年6月7日
    067
  • mysql group by语句流程是怎么样的

    group by流程是怎么样的 注意点: select id%10 as m, count(*) as c from t1 group by m; group by是用于对数据进行…

    Linux 2023年6月8日
    059
  • (原)通过clash在ubuntu下做旁路由

    注入产生的原理: 数据库设置为GBK编码: 宽字节注入源于程序员设置MySQL连接时错误配置为:set character_set_client=gbk,这样配置会引发编码转换从而…

    Linux 2022年8月26日
    0322
  • 解锁!玩转 HelloGitHub 的新姿势

    注入产生的原理: 数据库设置为GBK编码: 宽字节注入源于程序员设置MySQL连接时错误配置为:set character_set_client=gbk,这样配置会引发编码转换从而…

    Linux 2022年8月30日
    0290
  • 模拟重装Kubernetes(k8s)集群:删除k8s集群然后重装

    服务器版本 docker软件版本 CPU架构 CentOS Linux release 7.4.1708 (Core) Docker version 20.10.12 x86_64…

    Linux 2023年6月7日
    069
  • ASP.NET Core 3.0 : 二十四. 配置的Options模式

    上一章有个配置的绑定的例子,可以将配置绑定到一个Theme实例中。也就是在使用对应配置的时候,需要进行一次绑定操作。而Options模式提供了更直接的方式,并且可以通过依赖注入的方…

    Linux 2023年6月7日
    062
  • ElasticSearch elasticsearch-servicewrapper 在linux上的安装部署全程记录

    注入产生的原理: 数据库设置为GBK编码: 宽字节注入源于程序员设置MySQL连接时错误配置为:set character_set_client=gbk,这样配置会引发编码转换从而…

    Linux 2022年8月24日
    0230
  • redis 订阅与发布

    Reference: https://redisbook.readthedocs.io/en/latest/feature/pubsub.html Redis 的 SUBSCRIB…

    Linux 2023年5月28日
    072
  • 【凸优化】3 多面体,单纯形,半正定锥

    1 多面体 Polyhedra 定义:多面体为一系列的(有限个)线性等式和不等式的解集: [\mathcal{P}={x|a_j^T x \leq b_j, j=1,……

    Linux 2023年6月7日
    068
  • 自定义 systemd service

    Red Hat Linux 自 7 版本后 采用systemd 形式取代原先 init ,用户可以参考 系统service 创建自己的service ,以便于日常统一管理,系统se…

    Linux 2023年6月6日
    076
  • Linux知识:/root/.bashrc与/etc/profile的异同

    注入产生的原理: 数据库设置为GBK编码: 宽字节注入源于程序员设置MySQL连接时错误配置为:set character_set_client=gbk,这样配置会引发编码转换从而…

    Linux 2022年8月24日
    0230
  • Linux命令篇-awk 命令

    注入产生的原理: 数据库设置为GBK编码: 宽字节注入源于程序员设置MySQL连接时错误配置为:set character_set_client=gbk,这样配置会引发编码转换从而…

    Linux 2022年11月5日
    0188
  • Git简介

    Git是一个开源的分布式版本控制系统,是目前主流的版本控制系统,很多软件项目都会用它做源代码管理。Git的常用操作想必很多人都会,但是可能了解Git内部原理的人并不多。了解一些底层…

    Linux 2023年6月6日
    057
  • CentOS 文本编辑器

    Linux 终端的文本编辑器中,较著名的有:Nano、Vim、Emacs。其它文本编辑器还有 Gedit、Sublime,Atom 等等。 1.1、基础命令 nano:打开 nan…

    Linux 2023年6月8日
    087
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球