Extension to Matroska for use in a real life bike trainer film

Brendan Ball via Matroska-general <[email protected]> Sat, 2 Apr 2022 11:30:25 +0200
Newsgroups gmane.comp.multimedia.matroska.general
Message-ID <CA+HXM4p2_FesKVjcpJ7BrAXhhAVqPQbBjL_Rp=4kT=7J-6afKA@mail.gmail.com>
--===============1421498888186522049==
Content-Type: multipart/alternative; boundary="00000000000026c69405dba88c5a"

--00000000000026c69405dba88c5a
Content-Type: text/plain; charset="UTF-8"

Hi

I hope this is the correct mailing list to ask this question.

I'm exploring options for making an open file format to be used for bike
trainer films.
Bike trainer films are kind of VR where a cyclist recorded a video of them
cycling which includes GPS with elevation gain. You can then use a bike
trainer connected to an app where you watch the video as you cycle and the
video speed is based on your power output from the bike trainer, which
means the video speed changes dynamically very often.
Examples of apps:
- https://ergvideo.com/
- https://www.garmin.com/en-US/p/696770/

There are many apps out there for this, but I haven't found any open file
format that they use, they all seem to implement proprietary file formats.
I would like to make it easier to create content that isn't locked behind a
specific subscription on a specific app. One of the first steps in this is
making an open file format so that any bike trainer app that supports it
can potentially use the same available content.
Given that Matroska is already an open format and seems to be pretty
extensible, I would like to find out from Matroska experts whether you
think making a Matroska extension for this use case instead of making a
completely custom new format is feasible and preferred.

Things to consider:
- GPS data for a video would just be another track in the media that is
synced with the video
- GPS data for the complete video should be easy to extract since it's very
common to show a preview profile of the elevation of the entire video to
help the user choose a video. Other metadata like complete distance is also
either extracted or calculated before playing the video
- Other data might be captured as well from sensors like a gyroscope,
accelerometer etc.
- The Matroska file should be playable as is by existing video players
(even though it contains extra data like GPS). This makes it easy to use
the same files for previewing the video without needing a special app. This
might be especially beneficial when having a collection of videos on a
website to preview before downloading.

I've briefly gone through some of the Matroska spec and it seems that it
should be possible to extend it for this use case. For example, there is a
track type that can be extended. I also saw that there is an extension for
stereoscopic media.

Thinking in more generic terms, we could theoretically link any kind of
data as a track which can be used in many different applications. I think
this use case draws parallels to "4D" movies where you could potentially
extend Matroska to support a "4D" video.

So do you like the idea of creating a Matroska extension for this use case?
Do you as a Matroska expert have any insight for me regarding this?

PS. I'm currently just a casual smart bike trainer user and a software
developer with no particular expertise in multi-media  and not currently
affiliated with any bike trainer app. I'm just a user getting annoyed by
the current state of things, who likes open standards and maybe wants to
make my own and other's experience better by making something easier/more
accessible and therefore providing more options.

Cheers
Brendan Ball

--00000000000026c69405dba88c5a
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi<div><br></div><div>I hope this is the correct mailing l=
ist to ask this question.<br><div><br></div><div>I&#39;m exploring options =
for making an open file format to be used for bike trainer films.</div><div=
>Bike trainer films are kind of VR where a cyclist recorded a video of them=
 cycling which includes GPS with elevation gain. You can then use a bike tr=
ainer connected to an app where you watch the video as you cycle and the vi=
deo speed is based on your power output from the bike trainer, which means =
the video speed changes dynamically very often.</div><div>Examples of apps:=
</div><div>- <a href=3D"https://ergvideo.com/">https://ergvideo.com/</a>=C2=
=A0</div><div>-=C2=A0<a href=3D"https://www.garmin.com/en-US/p/696770/">htt=
ps://www.garmin.com/en-US/p/696770/</a></div><div><br></div><div>There are =
many apps out there for this, but I haven&#39;t found any open file format =
that they use, they all seem to implement proprietary file formats.</div><d=
iv>I would like to make it easier to create content that isn&#39;t locked b=
ehind a specific subscription on a specific app. One of the first steps in =
this is making an open file format so that any bike trainer app that suppor=
ts it can potentially use the same available content.</div><div>Given that =
Matroska is already an open format and seems to be pretty extensible, I wou=
ld like to find out from Matroska experts whether you think making a Matros=
ka extension for this use case instead of making a completely custom new fo=
rmat is feasible and preferred.</div><div><br></div><div>Things to consider=
:</div><div>- GPS data for a video would just be another track in the media=
 that is synced with the video</div><div>- GPS data for the complete video =
should be easy to extract since it&#39;s very common to show a preview prof=
ile of the elevation of the entire video to help the user choose a video. O=
ther metadata like complete distance is also either extracted or calculated=
 before playing the video</div><div>- Other data might be captured as well =
from sensors like a gyroscope, accelerometer etc.</div><div>- The Matroska =
file should be playable as is by existing video players (even though it con=
tains extra data like GPS). This makes it easy to use the same files for pr=
eviewing the video without needing a special app. This might be especially =
beneficial when having a collection of videos on a website to preview befor=
e downloading.</div><div><br></div><div>I&#39;ve briefly gone through some =
of the Matroska spec and it seems that it should be possible to extend it f=
or this use case. For example, there is a track type that can be extended. =
I also saw that there is an extension for stereoscopic media.</div><div><br=
></div><div>Thinking in more generic terms, we could theoretically link any=
 kind of data as a track which can be used in many different applications. =
I think this use case draws parallels to &quot;4D&quot; movies where you co=
uld potentially extend Matroska to support a &quot;4D&quot; video.=C2=A0</d=
iv><div><br></div><div>So do you like the idea of creating a Matroska exten=
sion for this use case? Do you as a Matroska expert have any insight for me=
 regarding this?</div><div><br></div><div>PS. I&#39;m currently just a casu=
al smart bike trainer user and a software developer with no particular expe=
rtise in multi-media=C2=A0 and not currently affiliated with any bike train=
er app. I&#39;m just a user getting annoyed by the current state of things,=
 who likes open standards and maybe wants to make my own and other&#39;s ex=
perience better by making something easier/more accessible and therefore pr=
oviding more options.</div><div><br></div><div>Cheers</div><div>Brendan Bal=
l</div></div></div>

--00000000000026c69405dba88c5a--

--===============1421498888186522049==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Matroska-general mailing list
[email protected]
https://lists.matroska.org/cgi-bin/mailman/listinfo/matroska-general
Read Matroska-General on GMane: http://dir.gmane.org/gmane.comp.multimedia.matroska.general

--===============1421498888186522049==--