The perils of Flash in documentation

Continuing the discussion from :speech_balloon: Looking for examples of online phonetic inventories with audio:

In the above thread about audio-enabled phonetic inventory interfaces, I tried out a an interface describing the sound system of Dena’ina:

Welp, I tried it out on my trusty laptop — still didn’t work. What gives? If you remember the post How to try Javascript now, you will be familiar with the idea of “inspecting” an element in the developer tools. In the screenshot below, I did just that:

The culprit in the sound not working is a technological one.

You can see for yourself (and I hope you try this!)

The line that causes the problem is right here (the

<embed src="../../audio/sound_system_swf/2a1-uncle.swf" width="25" height="25">

That swf file means that the audio is recorded as a Flash file, and Flash is officially defunct.

Like, officially as in the company that created Flash recently released a statement that they are deprecating the format entirely — it will actually stop working, officially, in the future.

For documentation, this is bad.

What to do?

Flash is a remnant of the bad old days of the web, when support for audio and video media were not built in. Flash was a proprietary format created by Adobe for web animation and video, and to use it, you had to install a “plugin” in your browser.

The web now has built-in support for many audio and video formats, but Flash isn’t one of them.

If you want to learn about the web’s support for audio and video, you could start here:

What would it take to update the Dena’ina interface to a more future-proof state?

  1. Each file would need to be converted from flash to a modern audio format, such as mp3, ogg, or wav. One (rather nerdy) way to achieve this would be to use ffmpeg, which can convert just about any media format to anything else. Assuming you’re in a terminal, and in a directory full of swf files, you could do this:

    for i in *.swf; do ffmpeg -i $i  ${i/swf/mp3}; done 
    

I think there are less nerdy ways to do this (can Handbrake do audio?) Anyway, you get the idea.

  1. The HTML would have to be updated to something like:

    <audio src="../../audio/2a1-uncle.mp3" controls></audio>
    
  2. The updated HTML files and the audio files would have to be uploaded to the server so everything works.

This is the simplest possible solution, and it’s going to insert a rather clunky audio interfaces all over the place. A better solution would be to add a play icon, someth :play_or_pause_button: , and then set up a little Javascript to play the correct audio when the icon is clicked.

But whatever, even a clunky interface would be acceptable if it’s preserving the voice of Peter Kalifornsky!

1 Like