Add support for the OPUS audio format

Bug #1460464 reported by Sturm Flut
70
This bug affects 16 people
Affects Status Importance Assigned to Milestone
Canonical System Image
In Progress
Wishlist
Unassigned
Telegram app
Fix Released
Wishlist
Unassigned
Ubuntu Music App
Invalid
Undecided
Unassigned
media-hub (Ubuntu)
Fix Committed
Wishlist
Unassigned
media-hub (Ubuntu RTM)
Fix Committed
Wishlist
Unassigned

Bug Description

Currently playback of OPUS audio files does not seem to be supported.

Tags: ota-14 pm
Revision history for this message
Victor Thompson (vthompson) wrote :

Hi Simon! Thanks for taking the time to file this issue! Could you attach your /home/phablet/.cache/upstart/mediascanner-2.0.log file? When I save one of examples on this webpage [1] to the device it does show up in the app under Unknown Album/Unknown artist.

New file was created: /home/phablet/Music/music_128kbps.wav.^M
Extracting metadata from /home/phablet/Music/music_128kbps.wav.^M
Added song to backing store: /home/phablet/Music/music_128kbps.wav^M
 author : ^M
 title : music 128kbps^M
 album : ^M
 duration : 90^M

The added title is playable in the app, so the OPUS codec is supported. I imagine that an Ogg encapsulated OPUS file will have valid metadata to display/categorize.

1 - http://www.opus-codec.org/examples/

Changed in music-app:
status: New → Incomplete
Revision history for this message
Sturm Flut (sturmflut) wrote :

Hey Victor,

thanks for the quick answer!

Looks like you fell into the same trap as me in the beginning: all the links at the top of the OPUS examples website point to WAV files, OPUS files end in ".opus". An actual OPUS file would e.g. be [1]. Copying this file to my phone gives me the following mediascanner-2.0 logfile entries:

New file was created: /home/phablet/Music/ehren-paper_lights-96.opus.
Extracting metadata from /home/phablet/Music/ehren-paper_lights-96.opus.
Error when adding new file: Unable to discover file /home/phablet/Music/ehren-paper_lights-96.opus

I think gstreamer is missing the "opus" plugin.

[1] http://people.xiph.org/~giles/2012/opus/ehren-paper_lights-96.opus

Revision history for this message
Jim Hodapp (jhodapp) wrote :

Indeed, the issue is by default, gstreamer1.0-libav is not installed because of licensing issues. If you make your image writable and then install this package, you should have no issues playing OPUS files anymore.

Revision history for this message
Sturm Flut (sturmflut) wrote :

Thanks for the solution, Jim. Another great thing destroyed by licensing issues.

Changed in music-app:
status: Incomplete → Invalid
Jim Hodapp (jhodapp)
Changed in media-hub:
importance: Undecided → Wishlist
affects: media-hub → media-hub (Ubuntu)
Changed in media-hub (Ubuntu):
status: New → Triaged
Revision history for this message
Michał Karnicki (karni) wrote :

Jim, is this because of BSD license?
https://www.opus-codec.org/license/

Changed in libqtelegram:
importance: Undecided → High
status: New → Triaged
Revision history for this message
Jim Hodapp (jhodapp) wrote :

No it'd be more because of the licensing of the codec intellectual property than anything. We need to be able to figure out if we need to license this codec IP and what that might cost (if anything).

tags: added: pm
Revision history for this message
Jan Claeys (janc) wrote :

The package gstreamer1.0-libav is not needed for Opus support; the Opus codec is part of gstreamer1.0-plugins-bad (which is in universe currently)

And the codec is considered to be safe by major players like Mozilla, Google, Cisco & Microsoft (all relevant patents come with a royalty free license for Opus), so I'm not sure what is holding up Opus support? (Even Canonical seem to consider it safe, as it's in universe and not multiverse…)

Revision history for this message
David Gámiz Jiménez (david-gamiz) wrote :

Hi devs,

Thank for that incredible app to ubuntu phone! :D

Is very neccesary feature to add audio clips.

Cheers,
David Gámiz Jiménez

Changed in canonical-devices-system-image:
status: New → Triaged
importance: Undecided → Wishlist
milestone: none → backlog
summary: - Add support for the OPUS audio format
+ Add support for the OPUS audio format because that's the codec telegram
+ need
Revision history for this message
Michael Zanetti (mzanetti) wrote :

I tried to take a stab on adding support for voice messages to Telegram. But I got blocked by this one.

Please consider adding support for this codec to enable voice messages in chats.

summary: - Add support for the OPUS audio format because that's the codec telegram
- need
+ Add support for the OPUS audio format
Revision history for this message
madbiologist (me-again) wrote :

Good news. Opus support has been moved from gst-plugins-bad1.0 to gst-plugins-base1.0 in gstreamer 1.8. This change is also in the 2nd pre-release, gstreamer 1.7.91 which is available in the currently under development Ubuntu 16.04 "Xenial Xerus". Ubuntu 16.04 is scheduled for release on 21st April 2016.

Revision history for this message
madbiologist (me-again) wrote :

gst-plugins-base1.0 version 1.8.0-1ubuntu1 is available in Ubuntu 16.04 "Xenial Xerus".

Changed in telegram-app:
status: Triaged → Fix Released
Changed in media-hub (Ubuntu):
status: Triaged → Fix Released
Changed in canonical-devices-system-image:
status: Triaged → Fix Released
Revision history for this message
Yuan-Chen Cheng (ycheng-twn) wrote :

this bug is for phone and tablet. it's release after we have phone/table run in Xenial.

Changed in canonical-devices-system-image:
status: Fix Released → Confirmed
Changed in telegram-app:
status: Fix Released → Confirmed
Jim Hodapp (jhodapp)
Changed in media-hub (Ubuntu):
status: Fix Released → Confirmed
Jim Hodapp (jhodapp)
Changed in media-hub (Ubuntu):
status: Confirmed → Triaged
Changed in media-hub (Ubuntu RTM):
status: New → Triaged
importance: Undecided → Wishlist
Revision history for this message
Andrea Bernabei (faenil) wrote :

can have the needed gstream package version added to the Overlay PPA so that currently released phones and tablets can get it?

Revision history for this message
Jim Hodapp (jhodapp) wrote :

It's something that will be coming soon as it's definitely on the team's backlog.

Revision history for this message
Andrea Bernabei (faenil) wrote :

great news, thanks Jim! The fact that you marked it as "wishlist" had me worried for a second :)

Revision history for this message
Jim Hodapp (jhodapp) wrote :

No worries. Wishlist doesn't mean that it's a low priority necessarily. It can mean that it's just a new feature to add which is true in this case.

Revision history for this message
Yuan-Chen Cheng (ycheng-twn) wrote :

it's said opus codec will be release in gstreamer in ota13. It seems we can continue working on app part.

Changed in telegram-app:
assignee: nobody → Jin (jin.cth)
Revision history for this message
Jim Hodapp (jhodapp) wrote :

You can track this landing currently in silo 58. It's presently under QA.

Jin (jindallo)
Changed in telegram-app:
milestone: none → m33
Jim Hodapp (jhodapp)
Changed in media-hub (Ubuntu):
status: Triaged → Fix Committed
Changed in media-hub (Ubuntu RTM):
status: Triaged → Fix Committed
Changed in canonical-devices-system-image:
status: Confirmed → In Progress
Changed in telegram-app:
status: Confirmed → In Progress
Jin (jindallo)
Changed in telegram-app:
importance: High → Wishlist
Jin (jindallo)
tags: added: ota-14
Jin (jindallo)
Changed in telegram-app:
milestone: m33 → m34
Revision history for this message
Jin (jindallo) wrote :

The patch we provided is landed and verified with rc-proposed.

Paste the device info here:
    current build number: 573
    device name: mako
    channel: ubuntu-touch/rc-proposed/ubuntu
    last update: 2016-11-18 15:11:10
    version version: 573
    version ubuntu: 20161118
    version device: 20160401.1
    version custom: 20161118

Changed in telegram-app:
milestone: m34 → m33
status: In Progress → Fix Committed
Jin (jindallo)
Changed in telegram-app:
status: Fix Committed → Fix Released
assignee: Jin (jin.cth) → nobody
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.