Answers.Body: <p>add the tag operator and read the file in as text format.</p>
  <pre><code>ffmpeg \
      -y -f concat -i test.txt -c copy \
      -map 0:v -map 0:a -map 0:3 \
      -copy_unknown -tag:2 gpmd \
      test2.mp4
  </code></pre>
  <p>otherwise something like this might do the trick: <a href="http://www.dashware.net/how-it-works/" rel="nofollow noreferrer">http://www.dashware.net/how-it-works/</a></p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-07-29T09:10:40.207Z
Answers.LastActivityDate: 2021-07-29T09:10:40.207Z
Answers.UserDisplayName: AutoBaker
Body: <p>I have a Garmin 66W dashcam for my work (street mapping surveyor) which produces several 1min. MP4 videos of my journey (60 min. = 60 videos).
  All these videos have telemetry data on it as metadata (GPS location, speed, etc...).</p>
  <p>I want to concatenate every 5 files excluding the audio but preserving the video and the telemetry in the metadata.</p>
  <p>What I have tried:</p>
  <ul>
  <li>Export GPS information as GPX file (result: successful)</li>
  </ul>
  <p><code>exiftool -p gpx.fmt -ee X:\video_place\videos_1m\GRMN0005.mp4 &gt; GRMN0005.gpx</code></p>
  <ul>
  <li>Merge MP4 videos as a single MP4 video (result: partially successful)</li>
  </ul>
  <p><code>ffmpeg -f concat -safe 0 -i X:\video_place\videos_1m\mylist.txt -c copy X:\video_place\videos_1m\GRMN0005to0011.mp4</code></p>
  <p>When I use above command on ffmpeg I loose all my telemetry data.</p>
  <p>I tried in several different ways for days, searching on several forums, I even tried to export all GPS data from each single 1min. file merge them, and them merge the videos and put the telemetry back.</p>
  <p>The ffprobe output of my 1min. video is as following:</p>
  <pre><code>  Metadata:
      major_brand     : avc1
      minor_version   : 0
      compatible_brands: avc1isom
      creation_time   : 2021-07-26T17:08:23.000000Z
    Duration: 00:01:00.06, start: 0.000000, bitrate: 19553 kb/s
    Stream #0:0(eng): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080, 19182 kb/s, 29.97 fps, 29.97 tbr, 30k tbn (default)
      Metadata:
        creation_time   : 2021-07-26T17:08:23.000000Z
        handler_name    :  Ambarella AVC
        vendor_id       : [0][0][0][0]
        encoder         : Ambarella AVC encoder
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 128 kb/s (default)
      Metadata:
        creation_time   : 2021-07-26T17:08:23.000000Z
        handler_name    :  Ambarella AAC
        vendor_id       : [0][0][0][0]
    Stream #0:2(eng): Subtitle: mov_text (text / 0x74786574), 0 kb/s (default)
      Metadata:
        creation_time   : 2021-07-26T17:08:23.000000Z
        handler_name    :  Ambarella EXT
  </code></pre>
  <p>When I use the ffmpeg code above to concatenate the videos, I get the following ffprobe without the telemetry:</p>
  <pre><code>Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'X:\video_place\videos_1m\GRMN0005to0011.mp4':
    Metadata:
      major_brand     : isom
      minor_version   : 512
      compatible_brands: isomiso2avc1mp41
      encoder         : Lavf59.4.100
    Duration: 00:07:00.42, start: 0.000000, bitrate: 19313 kb/s
    Stream #0:0(eng): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080, 19178 kb/s, 29.97 fps, 29.97 tbr, 30k tbn (default)
      Metadata:
        handler_name    :  Ambarella AVC
        vendor_id       : [0][0][0][0]
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 127 kb/s (default)
      Metadata:
        handler_name    :  Ambarella AAC
        vendor_id       : [0][0][0][0]
  </code></pre>
  <p>I have tried as well with following code, but none of them seems to work:</p>
  <p><code>ffmpeg -f concat -safe 0 -i X:\video_place\videos_1m\mylist.txt -c copy -scodec copy X:\video_place\videos_1m\GRMN0005to0011_scodec.mp4</code></p>
  <p><code>ffmpeg -f concat -safe 0 -i X:\video_place\videos_1m\mylist.txt -c:s copy -c:v copy X:\video_place\videos_1m\GRMN0005to0011.mp4</code></p>
  <p><code>ffmpeg -f concat -safe 0 -i X:\video_place\videos_1m\mylist.txt -c copy -c:s mov_text X:\video_place\videos_1m\GRMN0005to0011.mp4</code></p>
  <p>Can a good soul please guide me on how to perform this? I thought it was going to be simple...</p>
  
Tags: <ffmpeg><mp4>
Title: Need to concatenate several MP4 from Garmin dashcam with telemetry
UserDisplayName: Suporte JM
ThreadText: # Need to concatenate several MP4 from Garmin dashcam with telemetry
  
  (Asked by: username_0 on 2021-07-27)
  
  I have a Garmin 66W dashcam for my work (street mapping surveyor) which produces several 1min. MP4 videos of my journey (60 min. = 60 videos).
  All these videos have telemetry data on it as metadata (GPS location, speed, etc...).
  
  I want to concatenate every 5 files excluding the audio but preserving the video and the telemetry in the metadata.
  
  What I have tried:
  
  * Export GPS information as GPX file (result: successful)
  
  `exiftool -p gpx.fmt -ee X:\video_place\videos_1m\GRMN0005.mp4 > GRMN0005.gpx`
  
  * Merge MP4 videos as a single MP4 video (result: partially successful)
  
  `ffmpeg -f concat -safe 0 -i X:\video_place\videos_1m\mylist.txt -c copy X:\video_place\videos_1m\GRMN0005to0011.mp4`
  
  When I use above command on ffmpeg I loose all my telemetry data.
  
  I tried in several different ways for days, searching on several forums, I even tried to export all GPS data from each single 1min. file merge them, and them merge the videos and put the telemetry back.
  
  The ffprobe output of my 1min. video is as following:
  
  ```
    Metadata:
      major_brand     : avc1
      minor_version   : 0
      compatible_brands: avc1isom
      creation_time   : 2021-07-26T17:08:23.000000Z
    Duration: 00:01:00.06, start: 0.000000, bitrate: 19553 kb/s
    Stream #0:0(eng): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080, 19182 kb/s, 29.97 fps, 29.97 tbr, 30k tbn (default)
      Metadata:
        creation_time   : 2021-07-26T17:08:23.000000Z
        handler_name    :  Ambarella AVC
        vendor_id       : [0][0][0][0]
        encoder         : Ambarella AVC encoder
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 128 kb/s (default)
      Metadata:
        creation_time   : 2021-07-26T17:08:23.000000Z
        handler_name    :  Ambarella AAC
        vendor_id       : [0][0][0][0]
    Stream #0:2(eng): Subtitle: mov_text (text / 0x74786574), 0 kb/s (default)
      Metadata:
        creation_time   : 2021-07-26T17:08:23.000000Z
        handler_name    :  Ambarella EXT
  
  ```
  
  When I use the ffmpeg code above to concatenate the videos, I get the following ffprobe without the telemetry:
  
  ```
  Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'X:\video_place\videos_1m\GRMN0005to0011.mp4':
    Metadata:
      major_brand     : isom
      minor_version   : 512
      compatible_brands: isomiso2avc1mp41
      encoder         : Lavf59.4.100
    Duration: 00:07:00.42, start: 0.000000, bitrate: 19313 kb/s
    Stream #0:0(eng): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080, 19178 kb/s, 29.97 fps, 29.97 tbr, 30k tbn (default)
      Metadata:
        handler_name    :  Ambarella AVC
        vendor_id       : [0][0][0][0]
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 127 kb/s (default)
      Metadata:
        handler_name    :  Ambarella AAC
        vendor_id       : [0][0][0][0]
  
  ```
  
  I have tried as well with following code, but none of them seems to work:
  
  `ffmpeg -f concat -safe 0 -i X:\video_place\videos_1m\mylist.txt -c copy -scodec copy X:\video_place\videos_1m\GRMN0005to0011_scodec.mp4`
  
  `ffmpeg -f concat -safe 0 -i X:\video_place\videos_1m\mylist.txt -c:s copy -c:v copy X:\video_place\videos_1m\GRMN0005to0011.mp4`
  
  `ffmpeg -f concat -safe 0 -i X:\video_place\videos_1m\mylist.txt -c copy -c:s mov_text X:\video_place\videos_1m\GRMN0005to0011.mp4`
  
  Can a good soul please guide me on how to perform this? I thought it was going to be simple...
  
  **Tags:** ffmpeg, mp4
  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2021-07-29. Score: 1
  
  add the tag operator and read the file in as text format.
  
  ```
  ffmpeg \
      -y -f concat -i test.txt -c copy \
      -map 0:v -map 0:a -map 0:3 \
      -copy_unknown -tag:2 gpmd \
      test2.mp4
  
  ```
  
  otherwise something like this might do the trick: <http://www.dashware.net/how-it-works/>
  
  
  ---
  
  