Uploading Audio to Scriptoria and Confusion over Sending Audio setting

When you publishing an app with Scriptoria, you need to consider how your project is using audio. If the project has a File Source that has the type Assets, then the audio needs to be included in the project’s data folder so that Scriptoria has access to it when it builds the app.

To have the audio in the data folder, open the Scripture App Builders Settings (Preferences on Mac), go to the Files tab and set Audio Files to Copy files to app projects data folder. After this setting is changed, when audio files are added to the project they will be copied into the project_data/audio folder.

Note: Changing this setting doesn’t affect the files that are currently included in the project. You can re-add the files to the project to copy them into the data folder.

To control which of these audio file are uploaded to Scriptoria, there is an Audio configuration dropdown when you send app data.

Here are the options:

  • Send All
  • Send Assets (default)
  • Send None

There has been some confusion as to WHY this option is there. Let me explain what it does and give a little history. I hope I can disolve the confusion.

What It Does

The purpose of the Audio configuration is to tell the App Builder software how it should handle sending audio that IS IN the project_data/audio folder. Here is what each setting does:

  • Send All - all audio files that is in the project_data/audio folder will be uploaded to Scriptoria
  • Send Assets - any audio files that are in the project_data/audio folder and that are used in the app with the File Source = Asset will be uploaded to Scriptoria
  • Send None - no audio files will be uploaded to Scriptoria even if they are used in the app with the File Source - Asset

Details

Normally, the App Builder software uploads all data that is in the project_data folder + the .appDef file (these two things define a project). So what should it do with audio files in the project_data/audio folder? How do audio files get into the project_data/audio folder in the first place?

When you add audio to a project, what happens depends on the GLOBAL setting of Files > Audio Files:

  • If the setting is set to Link to files in their current location, the full path to the audio file is added to the .appDef file.
  • If the setting is set to Copy files to app projects data folder, the the file is copied to project_data/audio and the name of the file with out the path is added to the .appDef file.

So … if you are uploading a project to Scriptoria and you have a File Source that is of type Asset (which means the audio is embedded in the app), then Scriptoria needs access to those audio files. There are two options:

  • Upload the audio files with the project
  • Have Scriptoria download the audio during the build

History

We have been working with Faith Comes By Hearing to allow them to use Scriptoria to automate the process of updating their Global Bible Apps at https://apk.fcbh.org (still not quite there). These apps have all of the NT Audio (highly compressed) included as Assets in the APK to simplify distribution.

They store the audio files for a project in the project_data/audio folder to simplify copying project between users (this was before Scriptoria could download). Also, they wanted to download audio files from BibleBrain.com (DBP4) during the build instead of being copied to Scriptoria. So I added the Audio option so that FCBH could keep having the audio files in the project_data/audio folder on their local computers but the App Builder software would not upload the files to Scriptoria.

Later, I suspected that there could be users who wanted all the audio in the project_data/audio to be uploaded to Scriptoria as a backup. So I added the Send All option. I don’t really know if people are using this.

Conclusion

Most users will use the default value of Send Assets and will not need to change it.

Any questions? Please post below and I will try to update this post to better explain it.

Thanks,
Chris Hubbard

Chris, thanks for the good explanation of all this!

I didn’t actually realize that an app built with SAB would be able to find the audio files, if the audio files are removed from the project_data/audio folder and in the Audio Files section of the SAB project Not found is listed next to those audio files that are to be downloaded from the internet. But after testing this, I see that the app does find where to look on the internet for the files. That’s so great!

Thanks!

@NeilZubot,

If the File Source = Asset, then SAB needs the audio files to include in the app.
If the File Source is another type, it needs the audio once during the setup of the project to get the duration. The audio is also used for creating timing files with Aeneas and fine tuning the timing. After that, it is technically is not needed.