This "innovation" is for anyone who wants to more easily hyperlink to several points of time in a long YouTube video for later viewing—videos such as recorded FileMaker webinars, user group meeting recordings, training and how-to videos, etc. So it's really more of an innovation for content than for development.
You can skip the rest of this lengthy description and just look at the attached solution if you want.
It started as a Community question I had to answer for myself: YouTube Topical Timestamp Links Script/Function/Service?
In this age of YouTube, we are getting a lot of content that requires sequential access and does not lend itself to random/direct access. I'm sure Google/YouTube (and maybe even FMI) will be promoting solutions for this shortly (if they aren't already), but in the meantime we have people who are annoyed by the video and non-textual trend, as we can see from the following thread: FileMaker Training Series - no updates planned for FM16 release?
One solution is to provide topical timestamp links to parts of videos so that inquiring minds can jump straight to the parts of videos they are most interested in or want to share and discuss directly. For an exquisite example of this, please see TonyWhite's User interface for viewing multi topic, technical content on YouTube....
However, the method used there requires post significant production work, and I just don't want to invest more time than I already do to relay the videos we produce for DIGFM.
While watching a DIGFM presentation, I take notes and include the time of day (h:mm) so I (and others) can more easily skip to that portion of the video without having to scan the whole thing. Example:
That's it. I'm done. As good as those presentations can be, I don't have the time to sit through the whole thing again. I even did that for most of the FileMaker Product Roadmap Webinar 2018 to hyperlink the FileMaker Product Roadmap 2019 feature tables just for fun, but it was a completely manual process that should be easier.
What I really wanted was
a YouTube Topical Timestamp Link Script, Function, or Service that can do the following:
- Read HTML or plain text, and find and intelligently interpret the absolute video time or time of day entered (whether as hh:mm, mm:ss, h:mm:ss, etc.),
- Convert times of day to absolute video time, if necessary, using a supplied offset in seconds or hh:mm:ss. E.g. -14:01:30 = 0:00:00.
- Combine an absolute video time with the supplied YouTube URL to generate a timestamp link. E.g.: https://youtu.be/zV3SSIcmkXU?t=1214
Thus the input would probably be:
- YouTube URL. E.g. "https://youtu.be/zV3SSIcmkXU"
- Offset time. E.g. -50490 or "-14:01:30"
- Time format. E.g. "h:mm" or "mm:ss"
- Text (plain or HTML) that includes times of day or absolute video time.
The output would be the same text with all times of day or absolute video times hyperlinked to specific times in the YouTube video.
Another alternative would be some kind of service that generates all the closed-captioning text, and then tags all of that text with timestamp links. At least it would be semi-searchable by content and could provide links that way.
As it turns out, YouTube can auto-generate somewhat useful SubViewer (sbv) subtitle files; so I added this feature.*
Attached to this document is my solution.
Please feel free to offer suggestions or, better yet, make development changes yourself and bring them back here.
- It turns out that just putting plain video times in a YouTube description or comment automatically links to those points in the video; so I've included that feature, as well, under the "Plain" tab.
- For me, I added an "append timestamp line" button for taking notes in the Input field. It also copies the timestamp to the clipboard in case I'm taking notes elsewhere, like in the Community, as usual.
- By completing the Time and VidTime fields, the Offset is calculated to generate the video timestamp links. It also gives the option of keeping the original entered times or replacing them all with the calculated offset.
- You can process hand-entered timestamped notes or auto-generated timestamped transcripts or subtitles.
- If you have access to the specified YouTube video's automatically generated Closed Caption/Subtitles, the "CC" button will take you there where you can download the .sbv file for processing.
The main scripts in the solution use the CustomList custom function:
You can see examples of the output here:
My brief notes on the Community Roadmap.
2:06 Yes, best place to find answers on Internet.
2:12 Strategic Plan
2:16 Can't do all at once
2:19 Q1/Q2 migration to new platform.
2:22 Engineers in Community
*The latest version of YTTT can also tag a subtitle format called SubViewer (sbv) auto-generated by YouTube.
An example of the results is here:
Now the spoken content of a video can show up in search results. For example:
Furthermore, you can search the page for content like "zabbix" and jump straight to it in the video. (Good luck finding confused words like "DevCon", though.)
You'll see that I've been posting YouTube's auto-generated transcripts with hyperlinks in all our DIGFM videos. They are barely 99% accurate, misspell a lot of people's name, and have no punctuation or formatting.
If someone had time time to edit the transcripts, I'll gladly update them, but my objective of posting the transcripts, isn't readability or better than 98% accuracy, but to make the content much more searchable and reachable than it would have been otherwise.
If people want to find some exact locations in the video where "iOS" or "iOS app" is mentioned, they can now do that without watching the whole video. We at least get all that with very minimal extra effort.