Closed Bug 964999 Opened 7 years ago Closed 7 years ago

re-encode new opus files from lossless originals

Categories

(Firefox OS Graveyard :: Gaia, defect, P3)

ARM
Gonk (Firefox OS)
defect

Tracking

(Not tracked)

RESOLVED WONTFIX
1.4 S3 (14mar)

People

(Reporter: bkelly, Assigned: bkelly)

References

Details

(Whiteboard: [c= p=1 s=2014.03.14 u=])

Attachments

(1 file)

In bug 964584 we converted our ogg/vorbis files to opus in order to save runtime memory.  The libvorbis internals seem to take a lot of RAM.

In the short term I did this by running the .ogg files through oggdec and then through opusenc.  Ralph suggests this re-encoding is probably not the best for file size and sound quality.

We should update these new opus files with encodings from the original lossless sources.

Here are the files that were converted:

apps/camera/resources/sounds/shutter.ogg
apps/communications/ftu/test/unit/resources/ringtone.ogg
apps/email/sounds/sent.ogg
apps/keyboard/resources/sounds/key.ogg 
apps/keyboard/resources/sounds/special.ogg
apps/settings/resources/ringtones/classic.ogg
apps/settings/resources/ringtones/low_bit.ogg
apps/settings/resources/ringtones/old_school.ogg
apps/sms/sounds/sent.ogg
apps/system/resources/dtmf_tones/300Hz+400Hz+500Hz_400ms.ogg
apps/system/resources/dtmf_tones/350Hz+440Hz_200ms.ogg
apps/system/resources/dtmf_tones/400Hz+1200Hz_200ms.ogg
apps/system/resources/dtmf_tones/400Hz+1200Hz_35ms.ogg 
apps/system/resources/dtmf_tones/400Hz_200ms.ogg
apps/system/resources/dtmf_tones/425Hz_200ms.ogg
apps/system/resources/dtmf_tones/440Hz+480Hz_200ms.ogg
apps/system/resources/dtmf_tones/480Hz+620Hz_200ms.ogg
apps/system/resources/dtmf_tones/950Hz+1400Hz+1800Hz_200ms.ogg
apps/system/resources/sounds/unlock.ogg
apps/system/style/notifications/ringtones/notifier_exclamation.ogg
media-samples/Music/Salt_Creek.ogg
media-samples/Music/b2g.ogg
media-samples/Music/jonobacon-freesoftwaresong2.ogg
shared/resources/media/notifications/notifier_exclamation.ogg
shared/resources/media/notifications/notifier_minimal_bands.ogg
shared/resources/media/notifications/notifier_rewind.ogg
shared/resources/media/notifications/notifier_ring.ogg
shared/resources/media/notifications/notifier_spring.ogg
shared/resources/media/ringtones/ringer_classic_electric.ogg
shared/resources/media/ringtones/ringer_classic_prism.ogg
shared/resources/media/ringtones/ringer_classic_wallphone.ogg
test_apps/uitest/data/ringtones/AC_prgrssv__Retro_Alarm_Clock_v02_SOFT.ogg
test_apps/uitest/data/ringtones/AC_progressive_dapple10.ogg
test_apps/uitest/data/ringtones/AC_progressive_shimmer07.ogg
test_apps/uitest/data/ringtones/classic.ogg
Patryk, can you provide the lossless originals or opus encoded versions of the files mentioned in comment 0?  Do you have any objections to this conversion in general?

Thanks!
Flags: needinfo?(padamczyk)
See Also: → 964584
You will find all the source and compressed files here:
https://mozilla.box.com/s/lrani6d3ejspdxnso6wu
Flags: needinfo?(padamczyk)
Thanks Patryk!  I'll get these updated.  In hindsight I should have gotten this sorted before landing the conversion.
Assignee: nobody → bkelly
Status: NEW → ASSIGNED
Depends on: 964584
Whiteboard: [c= p=1 s= u=]
Priority: -- → P1
Initial pull request that re-encodes these files from original wav using default opusenc settings:

apps/camera/resources/sounds/shutter.opus
apps/system/style/notifications/ringtones/notifier_exclamation.opus
shared/resources/media/notifications/notifier_exclamation.opus
shared/resources/media/notifications/notifier_minimal_bands.opus
shared/resources/media/notifications/notifier_rewind.opus
shared/resources/media/notifications/notifier_ring.opus
shared/resources/media/notifications/notifier_spring.opus
shared/resources/media/ringtones/ringer_classic_electric.opus
shared/resources/media/ringtones/ringer_classic_prism.opus
shared/resources/media/ringtones/ringer_classic_wallphone.opus
I think the main sounds we still need wav files for are keyboard clicks, email/sms send sound, and the dtmf tones.

Note, it appears that there are different dtmf tones here that seem to sound better to me.  Patryk has asked the sound vendor for the original wav files.
Just to clarify, it appears gaia no longer uses dtmf tone files for keypad sounds.  Instead it generates the tones as a sin wave via web audio.

The dtmf tone files in gaia are currently for things like the dial tone, etc.

To my ears the tone files provided by Patryk sound better than the sin wave generated tones.
Vlad pointed out in bug 962932 comment 26 that some of these sounds, like the keyboard clicks, are short enough that the its probably better just to use the wav files.  This saves us the work of decoding at runtime without sacrificing much disk space at all.
Priority: P1 → P3
Since bug 964584 landed on master for 1.4, I think we need to get the re-encoding done for 1.4 as well.  It is low risk.
blocking-b2g: --- → 1.4?
Ben,

Can you please provide impact to user with this fix?

Does it fit the descoped list of features in 1.4?
Flags: needinfo?(bkelly)
(In reply to Preeti Raghunath(:Preeti) from comment #9)
> Can you please provide impact to user with this fix?
> 
> Does it fit the descoped list of features in 1.4?

I believe this bug goes straight to the quality issue.  In bug 964584 I re-encoded some audio files from one compressed type to another compressed type.  In theory this can introduce some audio artifacts.

While I don't have any evidence that the sounds are a problem, UX has requested that we re-encode from the uncompressed originals to avoid any possible artifacts.

I think we should do this in the same release where bug 964584 was done.
Flags: needinfo?(bkelly)
I think we should do this, but I don't think we would hold a release on this, unless we see strong evidence of the audio quality fallout having significant user impact.
blocking-b2g: 1.4? → ---
Disregard my previous comment, I just realized that the required files were not affected.
Now that bug 964584 has been backed out, this should just be done as part of relanding that bug.
Status: ASSIGNED → RESOLVED
Closed: 7 years ago
Resolution: --- → WONTFIX
No longer depends on: 964584
Whiteboard: [c= p=1 s= u=] → [c= p=1 s=2014.03.14 u=]
Target Milestone: --- → 1.4 S3 (14mar)
You need to log in before you can comment on or make changes to this bug.