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

Issue 166094 link

Starred by 18 users

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Mar 2013
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Feature



Sign in to add a comment

Add VP9 and Opus support to Chromium

Project Member Reported by tomfinegan@chromium.org, Dec 14 2012

Issue description

This is a tracking bug for adding VP9 and Opus decode support to Chromium.
 
Cc: jimbankoski@chromium.org
Project Member

Comment 2 by bugdroid1@chromium.org, Dec 18 2012

The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=173663

------------------------------------------------------------------------
r173663 | tomfinegan@chromium.org | 2012-12-18T07:07:50.043952Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/media_switches.h?r1=173663&r2=173662&pathrev=173663
   A http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/opus_audio_decoder.cc?r1=173663&r2=173662&pathrev=173663
   A http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/opus_audio_decoder.h?r1=173663&r2=173662&pathrev=173663
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/about_flags.cc?r1=173663&r2=173662&pathrev=173663
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/DEPS?r1=173663&r2=173662&pathrev=173663
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/audio_decoder_config.h?r1=173663&r2=173662&pathrev=173663
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/media.gyp?r1=173663&r2=173662&pathrev=173663
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/renderer_host/render_process_host_impl.cc?r1=173663&r2=173662&pathrev=173663
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/media/filter_helpers.cc?r1=173663&r2=173662&pathrev=173663
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/generated_resources.grd?r1=173663&r2=173662&pathrev=173663
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/ffmpeg/ffmpeg_common.cc?r1=173663&r2=173662&pathrev=173663
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/media_switches.cc?r1=173663&r2=173662&pathrev=173663

Add wrapper class to media for support of Opus audio, and add a command line flag to enable the support.

This initial version of the wrapper provides support for decoding Opus audio in WebM container files, and is disabled by default.

New flag added: --enable-opus-playback

BUG= 166094 
TEST=Opus audio in WebM containers plays back in <video> elements when --enable-opus-playback is specified on the command line.

Review URL: https://codereview.chromium.org/11416367
------------------------------------------------------------------------
Project Member

Comment 3 by bugdroid1@chromium.org, Dec 20 2012

Labels: merge-merged-ffmpeg
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=174224

------------------------------------------------------------------------
r174224 | dalecurtis@google.com | 2012-12-20T20:25:39.451450Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/branches/ffmpeg/1364/libavformat/matroskadec.c?r1=174224&r2=174223&pathrev=174224
   M http://src.chromium.org/viewvc/chrome/branches/ffmpeg/1364/libavcodec/avcodec.h?r1=174224&r2=174223&pathrev=174224
   M http://src.chromium.org/viewvc/chrome/branches/ffmpeg/1364/libavformat/matroska.c?r1=174224&r2=174223&pathrev=174224

Pull security and VP9 fixes for M25. BUG= 165601 , 166094 
------------------------------------------------------------------------
Project Member

Comment 4 by bugdroid1@chromium.org, Dec 21 2012

The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=174311

------------------------------------------------------------------------
r174311 | tomfinegan@chromium.org | 2012-12-21T01:38:59.892952Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/media_switches.h?r1=174311&r2=174310&pathrev=174311
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/about_flags.cc?r1=174311&r2=174310&pathrev=174311
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/DEPS?r1=174311&r2=174310&pathrev=174311
   M http://src.chromium.org/viewvc/chrome/trunk/src/DEPS?r1=174311&r2=174310&pathrev=174311
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/media.gyp?r1=174311&r2=174310&pathrev=174311
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/renderer_host/render_process_host_impl.cc?r1=174311&r2=174310&pathrev=174311
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/video_decoder_config.h?r1=174311&r2=174310&pathrev=174311
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/media/filter_helpers.cc?r1=174311&r2=174310&pathrev=174311
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/generated_resources.grd?r1=174311&r2=174310&pathrev=174311
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/ffmpeg/ffmpeg_common.cc?r1=174311&r2=174310&pathrev=174311
   A http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/vpx_video_decoder.cc?r1=174311&r2=174310&pathrev=174311
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/media_switches.cc?r1=174311&r2=174310&pathrev=174311
   A http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/vpx_video_decoder.h?r1=174311&r2=174310&pathrev=174311

Add wrapper class to media for support of VP9 video, and add a command line flag to enable the support. 

This initial version of the wrapper provides support for decoding VP9 video in WebM container files, and is disabled by default. 

New flag added: --enable-vp9-playback 

BUG= 166094 
TEST=VP9 video in WebM containers plays back in <video> elements when --enable-vp9-playback is specified on the command line. 


Review URL: https://chromiumcodereview.appspot.com/11468018
------------------------------------------------------------------------
Project Member

Comment 5 by bugdroid1@chromium.org, Dec 21 2012

The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=174346

------------------------------------------------------------------------
r174346 | kinaba@chromium.org | 2012-12-21T07:20:10.823315Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/media_switches.h?r1=174346&r2=174345&pathrev=174346
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/about_flags.cc?r1=174346&r2=174345&pathrev=174346
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/DEPS?r1=174346&r2=174345&pathrev=174346
   M http://src.chromium.org/viewvc/chrome/trunk/src/DEPS?r1=174346&r2=174345&pathrev=174346
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/media.gyp?r1=174346&r2=174345&pathrev=174346
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/renderer_host/render_process_host_impl.cc?r1=174346&r2=174345&pathrev=174346
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/video_decoder_config.h?r1=174346&r2=174345&pathrev=174346
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/media/filter_helpers.cc?r1=174346&r2=174345&pathrev=174346
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/generated_resources.grd?r1=174346&r2=174345&pathrev=174346
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/ffmpeg/ffmpeg_common.cc?r1=174346&r2=174345&pathrev=174346
   D http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/vpx_video_decoder.cc?r1=174346&r2=174345&pathrev=174346
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/media_switches.cc?r1=174346&r2=174345&pathrev=174346
   D http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/vpx_video_decoder.h?r1=174346&r2=174345&pathrev=174346

Revert 174311

Windows build is failing around libvpx after this patch:
http://build.chromium.org/p/chromium/builders/Win/builds/14332
[1220/203018 : error : decomposer.cc(2186)] Block collision for function at 46813200(1536) with ..\..\build\Release\obj\global_intermediate\third_party\libvpx\vp9_subpixel_mmx.obj

> Add wrapper class to media for support of VP9 video, and add a command line flag to enable the support. 
> 
> This initial version of the wrapper provides support for decoding VP9 video in WebM container files, and is disabled by default. 
> 
> New flag added: --enable-vp9-playback 
> 
> BUG= 166094 
> TEST=VP9 video in WebM containers plays back in <video> elements when --enable-vp9-playback is specified on the command line. 
> 
> 
> Review URL: https://chromiumcodereview.appspot.com/11468018

TBR=tomfinegan@chromium.org
Review URL: https://codereview.chromium.org/11578046
------------------------------------------------------------------------
Project Member

Comment 6 by bugdroid1@chromium.org, Dec 22 2012

The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=174488

------------------------------------------------------------------------
r174488 | tomfinegan@chromium.org | 2012-12-22T02:00:26.513422Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/media_switches.h?r1=174488&r2=174487&pathrev=174488
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/about_flags.cc?r1=174488&r2=174487&pathrev=174488
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/DEPS?r1=174488&r2=174487&pathrev=174488
   M http://src.chromium.org/viewvc/chrome/trunk/src/DEPS?r1=174488&r2=174487&pathrev=174488
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/media.gyp?r1=174488&r2=174487&pathrev=174488
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/renderer_host/render_process_host_impl.cc?r1=174488&r2=174487&pathrev=174488
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/video_decoder_config.h?r1=174488&r2=174487&pathrev=174488
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/media/filter_helpers.cc?r1=174488&r2=174487&pathrev=174488
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/generated_resources.grd?r1=174488&r2=174487&pathrev=174488
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/ffmpeg/ffmpeg_common.cc?r1=174488&r2=174487&pathrev=174488
   A http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/vpx_video_decoder.cc?r1=174488&r2=174487&pathrev=174488
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/media_switches.cc?r1=174488&r2=174487&pathrev=174488
   A http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/vpx_video_decoder.h?r1=174488&r2=174487&pathrev=174488

Add wrapper class to media for support of VP9 video, and add a command line flag to enable the support.

This initial version of the wrapper provides support for decoding VP9 video in WebM container files, and is disabled by default.

New flag added: --enable-vp9-playback

TBR=brettw,scherkus,xhwang
BUG= 166094 
TEST=VP9 video in WebM containers plays back in <video> elements when --enable-vp9-playback is specified on the command line.

Review URL: https://codereview.chromium.org/11644078
------------------------------------------------------------------------
The flag --enable-vp9-playback has landed in Google Chrome canary builds. Is there a way to test VP playback, is there a VP9 file for testing purposes?
videotestmatrix has VP9 files, but they are encoded with 'experimental' as of yesterday and would only decode with a matching decoder, not the 'preview' or a different version of experimental.
http://tskir-html5.kir.corp.google.com/testmatrix/mediaFiles/bear/bear0.vp9.webm

The Opus side of things is mostly done.

Comment 9 by giles@webrtc.org, Jan 11 2013

Would you please post the test file at a publicly accessible url?
Labels: -Mstone-25 Mstone-26
Note that --enable-vp9-playback was rolled back in crrev.com/174739. It looks like the team will try to get it back in for M26.
Labels: not-webrtc
Labels: -Feature-Media-Codecs -Feature-Media-FFmpeg Feature-Media
Project Member

Comment 13 by bugdroid1@chromium.org, Jan 18 2013

The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=177552

------------------------------------------------------------------------
r177552 | tomfinegan@chromium.org | 2013-01-18T00:50:48.831642Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/DEPS?r1=177552&r2=177551&pathrev=177552

Libvpx roll to r177298

From r176485

See https://codereview.chromium.org/11974002/ and https://codereview.chromium.org/11973019/ for the actual changes.

BUG=165504, 166094 


Review URL: https://chromiumcodereview.appspot.com/11958028
------------------------------------------------------------------------
Project Member

Comment 14 by bugdroid1@chromium.org, Jan 19 2013

The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=177842

------------------------------------------------------------------------
r177842 | tomfinegan@chromium.org | 2013-01-19T04:48:11.156294Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/about_flags.cc?r1=177842&r2=177841&pathrev=177842
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/DEPS?r1=177842&r2=177841&pathrev=177842
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/media.gyp?r1=177842&r2=177841&pathrev=177842
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/renderer_host/render_process_host_impl.cc?r1=177842&r2=177841&pathrev=177842
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/video_decoder_config.h?r1=177842&r2=177841&pathrev=177842
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/media/filter_helpers.cc?r1=177842&r2=177841&pathrev=177842
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/generated_resources.grd?r1=177842&r2=177841&pathrev=177842
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/ffmpeg/ffmpeg_common.cc?r1=177842&r2=177841&pathrev=177842
   A http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/vpx_video_decoder.cc?r1=177842&r2=177841&pathrev=177842
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/media_switches.cc?r1=177842&r2=177841&pathrev=177842
   A http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/vpx_video_decoder.h?r1=177842&r2=177841&pathrev=177842
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/media_switches.h?r1=177842&r2=177841&pathrev=177842

Add wrapper class to media for support of VP9 video, and add a command line flag to enable the support.

This initial version of the wrapper provides support for decoding VP9 video in WebM container files, and is disabled by default.

New flag added: --enable-vp9-playback

TBR=brettw,scherkus,xhwang
BUG= 166094 
TEST=VP9 video in WebM containers plays back in <video> elements when --enable-vp9-playback is specified on the command line.


Review URL: https://chromiumcodereview.appspot.com/12025030
------------------------------------------------------------------------

Comment 15 by aku...@gmail.com, Jan 20 2013

Any plans for Opus encode? Would love to encode recorded audio via Opus on the browser side if possible.

Cheers,
Adam

Project Member

Comment 16 by bugdroid1@chromium.org, Jan 22 2013

The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=177953

------------------------------------------------------------------------
r177953 | thakis@chromium.org | 2013-01-21T20:18:15.050901Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/media_switches.cc?r1=177953&r2=177952&pathrev=177953
   D http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/vpx_video_decoder.h?r1=177953&r2=177952&pathrev=177953
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/media_switches.h?r1=177953&r2=177952&pathrev=177953
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/about_flags.cc?r1=177953&r2=177952&pathrev=177953
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/DEPS?r1=177953&r2=177952&pathrev=177953
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/media.gyp?r1=177953&r2=177952&pathrev=177953
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/renderer_host/render_process_host_impl.cc?r1=177953&r2=177952&pathrev=177953
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/video_decoder_config.h?r1=177953&r2=177952&pathrev=177953
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/media/filter_helpers.cc?r1=177953&r2=177952&pathrev=177953
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/generated_resources.grd?r1=177953&r2=177952&pathrev=177953
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/ffmpeg/ffmpeg_common.cc?r1=177953&r2=177952&pathrev=177953
   D http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/vpx_video_decoder.cc?r1=177953&r2=177952&pathrev=177953

Revert 177842. This doesn't build in standalone webkit builds:
https://bugs.webkit.org/show_bug.cgi?id=107468

It looks like the exact same problem happened when this landed the last time:
https://bugs.webkit.org/show_bug.cgi?id=105813

Please make sure this issue is fixed before you reland.

The CL also likely regressed binary size by 0.25MB:  http://crbug.com/171143 

> Add wrapper class to media for support of VP9 video, and add a command line flag to enable the support.
> 
> This initial version of the wrapper provides support for decoding VP9 video in WebM container files, and is disabled by default.
> 
> New flag added: --enable-vp9-playback
> 
> TBR=brettw,scherkus,xhwang
> BUG= 166094 
> TEST=VP9 video in WebM containers plays back in <video> elements when --enable-vp9-playback is specified on the command line.
> 
> 
> Review URL: https://chromiumcodereview.appspot.com/12025030

TBR=tomfinegan@chromium.org
Review URL: https://codereview.chromium.org/11953017
------------------------------------------------------------------------
Project Member

Comment 17 by bugdroid1@chromium.org, Jan 23 2013

The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=178230

------------------------------------------------------------------------
r178230 | fgalligan@chromium.org | 2013-01-23T03:32:56.008219Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/DEPS?r1=178230&r2=178229&pathrev=178230

Libvpx roll to r178115

From r177298

This roll fixes the standalone webkit chromium build when adding
support for Vp9 playback.

BUG=165504,  166094 , https://bugs.webkit.org/show_bug.cgi?id=107468


Review URL: https://chromiumcodereview.appspot.com/12047033
------------------------------------------------------------------------
Re #9
Attached is a short clip encoded with 'master' branch v1.2.0-1547-gb46d58a
It plays okay with chrome if/when --enable-vp9-playback is working, and can be decoded with vpxdec.  Its 640x360 30 fps, 2 seconds.
As the bit stream is not final, this file will only work with recent builds, and will break in the near future.


bear0.vp9.webm
184 KB Download
Project Member

Comment 19 by bugdroid1@chromium.org, Jan 25 2013

The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=178799

------------------------------------------------------------------------
r178799 | tomfinegan@chromium.org | 2013-01-25T09:26:17.361468Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/media_switches.h?r1=178799&r2=178798&pathrev=178799
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/about_flags.cc?r1=178799&r2=178798&pathrev=178799
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/DEPS?r1=178799&r2=178798&pathrev=178799
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/media.gyp?r1=178799&r2=178798&pathrev=178799
   M http://src.chromium.org/viewvc/chrome/trunk/src/content/browser/renderer_host/render_process_host_impl.cc?r1=178799&r2=178798&pathrev=178799
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/video_decoder_config.h?r1=178799&r2=178798&pathrev=178799
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/media/filter_helpers.cc?r1=178799&r2=178798&pathrev=178799
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/generated_resources.grd?r1=178799&r2=178798&pathrev=178799
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/ffmpeg/ffmpeg_common.cc?r1=178799&r2=178798&pathrev=178799
   A http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/vpx_video_decoder.cc?r1=178799&r2=178798&pathrev=178799
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/base/media_switches.cc?r1=178799&r2=178798&pathrev=178799
   A http://src.chromium.org/viewvc/chrome/trunk/src/media/filters/vpx_video_decoder.h?r1=178799&r2=178798&pathrev=178799

Add wrapper class to media for support of VP9 video, and add a command line flag to enable the support.

This initial version of the wrapper provides support for decoding VP9 video in WebM container files, and is disabled by default.

New flag added: --enable-vp9-playback

TBR=brettw,scherkus,xhwang
BUG= 166094 
TEST=VP9 video in WebM containers plays back in <video> elements when --enable-vp9-playback is specified on the command line.


Review URL: https://chromiumcodereview.appspot.com/12045060
------------------------------------------------------------------------
Tested okay with 
Google Chrome	26.0.1395.1 (Official Build 179064) canary

Testmatrix is posted.  e.g.
http://tskir-html5.kir.corp.google.com/testmatrix/index.html?file=red0.vp9.webm
Opus is weaved in
http://tskir-html5.kir.corp.google.com/testmatrix/index.html?file=red2.vp9.webm

Is this fixed? Are are we waiting for more tests?
Status: Fixed
Yeah, it's fixed. Creating a new bug for re-enabling the tests after VP9 bitstream finalization and libvpx snapshot update.
Project Member

Comment 23 by bugdroid1@chromium.org, Mar 10 2013

Labels: -Feature-Media -Mstone-26 Cr-Internals-Media M-26

Sign in to add a comment