📌 置頂: 請把任何比你弱勢的用路人當作你的至親對待。跟前車保持安全車距 (2秒以上)。

在 Linux 上處理 GoPro Hero 6 影片 GPS 資料

In

Tags:



by

TL; DR: 一團糟。

買這種運動攝影機,規格什麼的都不是重點,記得先去看軟體支援度跟後製的問題比較重要。尤其一到了 Linux 上什麼都跟沒有差不多。

GoPro 沒有 GPX

從  GoPro 的資料夾裡面我們可以發現沒有任何的 GPX 檔,只有影片本身而已。沒有 GPX 檔就很難處理 GPS 的資料。

網路上搜尋後,看到 stilldavid/gopro-utils,原來是把資料放在影片裡面。透過 ffprobe 可以看到這個 datastream:

Stream #0:2(eng), handler_name GoPro MET 的 datastream 就是我們要的東西。

上面提到的 gopro-utils 已經幫你做好 parsing 的部份,只要照著內文的說明就可以……失敗了!

從影片擷取 GoPro 資料流

總之,GoPro Hero 6 沒有辦法透過 handler_name 來指定,需要用這個方式才可以:

-map 直接用 id 來指定就可以了。

自行處理的部份

  • stilldavid/gopro-utils
    提供從影片中分離出 GPS data 的方式。可是秒數精度不夠 (樓下 gpxgo 的問題),還算錯,需要處理。
  • tkrajina/gpxgo
    處理資料轉成 gpx 的套件,但是時間精度只有到秒。原來是 timelayouts 的問題
  • gpsbabel
    萬能的 gps 處理工具。可是很難用。speed 只有支援到 second,又要自己處理

總結

以上處理完之後,就能夠以 .srt 的方式來為影片加上 GPS 資料囉。不過跟直接加上 gauges 比起來還是……很糟。

 

UPDATE

完整處理的方式,請參考 mlouielu/gopro-gpx-utils,目前可以很方便的在 Linux 上處理 GoPro 的影片,並且用來檢舉交通違規了。


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.