Bug 1711040 - Sound screeching when playing certain videos
Summary: Sound screeching when playing certain videos
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: fdk-aac-free
Version: 30
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Wim Taymans
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-05-16 19:05 UTC by Michael Catanzaro
Modified: 2019-09-27 15:26 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-09-27 15:26:56 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Michael Catanzaro 2019-05-16 19:05:11 UTC
Description of problem: Many YouTube videos are affected by screeching sounds when played in Epiphany Tech preview.

It affects non-YouTube as well. Reproducer is:

https://share.tube/videos/watch/afa7808a-fbaa-4707-8328-022602a72f3d

Download the video and play it with gst-play-1.0.

Moved from Moved from https://bugs.webkit.org/show_bug.cgi?id=197847

Version-Release number of selected component (if applicable): This is actually not a Fedora bug, it's a bug in freedesktop SDK 18.08, but there's no other place to report. Our build element is:

https://gitlab.com/freedesktop-sdk/freedesktop-sdk/blob/18.08/elements/desktop/libfdk-aac.bst

You can see we are building:

sources:
- kind: git_tag
  url: git://people.freedesktop.org/~wtay/fdk-aac
  track: stripped2
  ref: ba7ffc9dd95b73b2b5f465f127609aa4235f6800

which appears to be an old git snapshot. Tim-Philipp has confirmed that Debian's newer unstripped fdk-aac is unaffected. So either there is a bug in the stripping, or a bug in the old version.


How reproducible: Always


Steps to Reproduce:
1. Download the video using the download link (Support, Share, ..., click on ... to get to the download link)
2. Install org.gnome.Platform//master
3. $ flatpak run --filesystem=home org.gnome.Platform//master
4. $ gst-play-1.0 'Thoughts on Ubuntu 19.04 - Linux distro review-1080p.mp4'

Actual results: This doesn't actually reproduce the screeching problem, but it does reproduce a decoding error:

ERROR debug information: ../../../ext/fdkaac/gstfdkaacdec.c(220): gst_fdkaacdec_handle_frame (): /GstPlayBin:playbin/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstFdkAacDec:fdkaacdec0:
decoding error: 16394
Reached end of play list.

To reproduce the screeching problem in Epiphany Tech Preview, just play the video.

Expected results: Video plays properly.


Additional info: A cat’s jaw can’t move sideways, so a cat can’t chew large chunks of food.

Comment 1 Tim-Philipp Müller 2019-05-16 19:50:30 UTC
I could reproduce the screeching glitches as well as the decoder error, with GStreamer 1.14 and 1.16, in combination with Wim's fdk-aac stripped2 branch. Same works fine with the libfdk-aac as in debian sid (0.1.6).

For me the downloaded 480p version of the above video reproduces the glitches and the 1080p version errors out.

The AAC gets signalled as

  audio/mpeg, mpegversion=(int)4, framed=(boolean)true, stream-format=(string)raw, level=(string)2, base-profile=(string)lc, profile=(string)lc, codec_data=(buffer)121056e500, rate=(int)44100, channels=(int)2

The 5 bytes of codec-data made me wonder if it's actually HE-AACv1 (which should still be playable by LC decoders).

Putting some printfs into the lib, m_extensionAudioObjectType ends up being 5 (AOT_SBR) in CAacDecoder_Init(), but I haven't looked at the actual AAC bitstream data.

Comment 2 Michael Catanzaro 2019-06-14 17:37:39 UTC
I updated freedesktop-sdk from stripped2 to the fedora branch in https://gitlab.com/freedesktop-sdk/freedesktop-sdk/issues/781, but unfortunately this issue persists. Due to this issue, I'm going to suggest that freedesktop-sdk move away from using the stripped package and instead package the upstream version in the html5-codecs extension.

We also tried updating to stripped3 but discovered this was not possible due to API breaks.

Comment 3 Michael Catanzaro 2019-06-14 17:41:19 UTC
I've reported https://gitlab.com/freedesktop-sdk/freedesktop-sdk/issues/806 to move away from using the stripped codec until this is fixed.

Comment 4 Wim Taymans 2019-06-25 13:18:34 UTC
There is a new update pending here:

https://bodhi.fedoraproject.org/updates/FEDORA-2019-bd6ec33eef

Comment 5 Michael Catanzaro 2019-06-25 14:02:02 UTC
Thanks Wim! I'll update the freedesktop-sdk.

Perhaps https://cgit.freedesktop.org/~wtay/fdk-aac could move to gitlab.freedesktop.org, so bugs could be reported there rather than here? Alternatively, if you prefer to receive bug reports here, you could update the README.fedora to indicate that.

Comment 6 Michael Catanzaro 2019-06-25 22:22:39 UTC
I noticed that gstreamer-plugins-bad master and 1.14 branch both have the commits necessary to build against this new fdk-aac, but the 1.16 branch does not. Some backporting to 1.16 is required.

Comment 7 Wim Taymans 2019-09-27 13:47:29 UTC
is this still an issue with the latest version?

Comment 8 Michael Catanzaro 2019-09-27 15:26:56 UTC
No, this has been fixed for a long time now.


Note You need to log in before you can comment on or make changes to this bug.