New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 599134 link

Starred by 2 users

Issue metadata

Status: WontFix
Owner:
Email to this user bounced
Closed: Apr 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 2
Type: Bug



Sign in to add a comment

No duration or seeking cue for opus audio produced with mediarecoder

Reported by couillar...@voxlog.ca, Mar 30 2016

Issue description

UserAgent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.110 Safari/537.36

Example URL:

Steps to reproduce the problem:
1. Create a small demo javascript app like https://developers.google.com/web/updates/2016/01/mediarecorder
2. Blob 'type' : 'audio/ogg; codecs=opus'
3. Check resulting file with MediaInfo
3. 

What is the expected behavior?
Duration should be added in the audio container.

What went wrong?
We cannot seek in the audio file produced with Chrome and MediaRecorder API. But it's ok with Firefox.

Did this work before? No 

Is it a problem with Flash or HTML5? HTML5

Does this work in other browsers? Yes 

Chrome version: 49.0.2623.110  Channel: stable
OS Version: 10.0
Flash Version: Shockwave Flash 21.0 r0

## Chrome 49.0.2623.110 ##

General
Complete name        : 20160330-103254.162-0400.ogg
Format                                   : WebM
Format version                           : Version 2
File size                                : 66.5 KiB
Writing application                      : Chrome
Writing library                          : Chrome
IsTruncated                              : Yes

Audio
ID                                       : 1
Format                                   : Opus
Codec ID                                 : A_OPUS
Channel(s)                               : 1 channel
Channel positions                        : Front: C
Sampling rate                            : 48.0 KHz
Compression mode                         : Lossy
Language                                 : English
Default                                  : Yes
Forced                                   : No

## Firefox 44.0.2 ##
General
Complete name      : 20160330-110413.900-0400.ogg
Format                                   : Ogg
File size                                : 4.73 KiB
Duration                                 : 6s 250ms
Overall bit rate                         : 6 199 bps
Writing application                      : Mozilla44.0.2

Audio
ID                                       : 23094 (0x5A36)
Format                                   : Opus
Duration                                 : 6s 250ms
Channel(s)                               : 1 channel
Channel positions                        : Front: C
Sampling rate                            : 44.1 KHz
Compression mode                         : Lossy
Writing library                          : libopus unknown
 
Components: -Internals>Media Blink>GetUserMedia
Owner: cpaulin@chromium.org
Status: Assigned (was: Unconfirmed)
cpaulin@, can you triage this issue?

In parallel, couillard@, can you see if the same issue is present with Canary Chrome?
Cc: mcasas@chromium.org
tnakamura@ - I believe this is WAI, the webm files are not seekable by design.
Also, you cannot pass audio/ogg mime type to media recorder as per [1]. Though apparently if you record audio only, it produce be the same contents as an ogg file according to mcasas@.

[1] https://code.google.com/p/chromium/codesearch#chromium/src/content/renderer/media/media_recorder_handler.cc&l=50
Status: WontFix (was: Assigned)

Comment 5 Deleted

Same behavior with Version 51.0.2700.0 canary (64-bit)
 
- I think to pass audio ogg container as an option for media recorder should be added to the roadmap.

At least with getusermedia, the audio wave produced is seekable.

As a workaround, I'll try to convert it from webm to ogg with ffmpeg on the server side.

Components: -Blink>GetUserMedia Blink>MediaStreamRecording
couillard.michel@ two things:
- set up the recorder with mimetype webm and codec type opus [1],
or even better leave the mimetype entirely empty.
- then download the produced multipart blob as an ogg like is
done in [2].

This will work because the ogg container with Opus is
compatible with vorbis+Opus format. However, in MR case, 
the produced file would not be seekable because we cannot
introduce cues for seeking if the length of the file is
unknown in advance.


[1] https://code.google.com/p/chromium/codesearch#chromium/src/third_party/WebKit/LayoutTests/fast/mediarecorder/MediaRecorder-isTypeSupported.html&sq=package:chromium&type=cs&q=layouttests%20mediarecorder&l=37
[2] https://rawgit.com/Miguelao/demos/master/audiotranscode.html

Comment 8 by sshru...@google.com, May 24 2016

Components: -Blink>MediaStreamRecording Blink>MediaStream>Recording
Renamed component Blink>MediaStreamRecording to Blink>MediaStream>Recording. Moving issues to the new component. 

Comment 9 by mcasas@chromium.org, Jan 18 2017

Components: Blink>MediaRecording
Components: -Blink>MediaStream>Recording

Sign in to add a comment