Project: chromium Issues People Development process History Sign in
New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.
Issue 93887 Support FLAC audio codec
Starred by 65 users Reported by kartik....@gmail.com, Aug 23 2011 Back to list
Status: Fixed
Owner:
Closed: Dec 1
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Feature

Blocked on:
issue 591845

Blocking:
issue 217239
issue 658754
issue 666000
issue 655429

Restricted
  • Only users with EditIssue permission may comment.



Sign in to add a comment
... so that users can listen to their music at the highest quality possible (lossless). With Chrome OS this is all the more important, since there's no other app that one can run to play audio. Android supports FLAC, FWIW.
 
Labels: Feature-Media
Status: Untriaged
Passing this to our dev team.
Owner: alberto@chromium.org
Status: Assigned
Assigning this to TPM.
Labels: -Type-Bug Type-Feature
See also: [https://code.google.com/p/chromium/issues/detail?id=168493 Support the Dirac codec for HTML5 video]
as I don't see any ticket for this, I'll ask it here : isn't it also possible to support flac in chrome and chromium for HTML5 audio ? If this has never been discussed, I can create a ticket.
#6, elfejoy: I'd expect this ticket to cover the HTML5 audio tag, as Chromium OS is largely based on web technology.
Project Member Comment 8 by bugdroid1@chromium.org, Mar 10 2013
Labels: -Area-Undefined -Feature-Media Cr-Internals-Media
Comment 9 by keav...@gmail.com, Nov 6 2013
I'm developing a desktop music player app using Chromium Embedded and FLAC support is a must. It would be really good if this could be added soonish.
Owner: scherkus@chromium.org
FLAC is supported on ChromeOS. If you're making custom builds via Chromium Embedded Framework, you can set ffmpeg_branding=ChromeOS proprietary_codecs=1 to enable this functionality.
Status: WontFix
dalecurtis: doesn't FLAC only need ffmpeg_branding=ChromiumOS?

keavon1: I'd check with the Chromium Embedded folks as to whether you can enable that in the build.


Closing WontFix as FLAC is supported on Chromium OS.
You're right, simply ChromiumOS is sufficient.
Comment 14 by enjik...@gmail.com, Mar 23 2014
Is this already in or coming to the Chromium/Chrome browser? (not only OS)
Comment 15 by keav...@gmail.com, Mar 23 2014
It would be really nice if it were part of the browser because FLAC is a great format and people should be able to play it in their browser on all platforms, not just Chrome OS. Why limit it to that?
Comment 16 by reyn...@gmail.com, Jun 11 2014
This also makes streaming lossless audio to Chromecast a huge pita. The CloudAmpz app has Chromecast support from Google drive, but fails miserably on flacs because of that oversight. 
Comment 17 by Deleted ...@, Nov 23 2014
Flac codec isn't proprietary (. And it would be nice if the html5 audio could support the flac format.

https://xiph.org/flac/license.html
Comment 18 by enve...@gmail.com, Apr 15 2015
"Closing WontFix as FLAC is supported on Chromium OS."

What the hell does that have to do with anything?
Comment 19 by cont...@ekimia.fr, Apr 21 2015
Is this bug for the chromium browser ?
Comment 20 by kea...@keavon.com, Apr 21 2015
Since it's an open source codec format so there's no licensing issues to consider, why not include it in the normal Chromium/Chrome builds? If the functionality already exists for the ChromeOS version, shouldn't it be trivial to simply include it in all builds?

Also, this issue shouldn't be closed because it's not fixed; it exists in ChromeOS but not the main browser which was the main focus of this issue.

This should be reopened and, if not fixed, at least have some valid reasons stated as to why this won't be fixed even though I see no real reason against it. Is file size the concern? It couldn't add more than a megabyte or two which is negligible in 2015. Are there actually license conflicts that don't seem apparent to me? Is it because nobody is volunteering? Would it take too much time to implement? If somebody created a pull request, would it be merged or denied? Is there anything supporters of this issue can do to take action and make this happen? Are there any other reasons this isn't happening?
The fact it's trivially gated behind a flag is pretty galling, as writing my own codec wasn't entirely trivial.

Since then I've used my own worker based FLAC library in two publicly available applications.
One in which samples are sent between users, which required both compression, and losslessness to avoid generation loss.

Another which contained a music player as part of a larger app. The user should reasonably expect any common format to drag/drop and just work.
It was easier to decompress their FLAC to PCM data, and slap on a WAV header, than to arbitrarily frustrate them by trying to explain their browser doesn't support FLAC.

It's also the best format to present the user for saving locally. Rather than imposing lossy compression on what probably isn't the final step in the work-flow.

Curiously there's a nearly identical bug against Firefox, where FirefoxOS was granted FLAC support, but the browser product arbitrarily wasn't.
Cc: dalecur...@chromium.org
Owner: ----
Status: Available
I agree we should do this. It should be easy from technical point of view, since Chrome OS and Chromecast both enable FLAC support and it works fine, we just need to enable the same code path on Chromium.
As far as I remember all we need to do is:
1. Enable FLAC container/codec support when ffmpeg_branding=Chromium.
2. Make mime type checks to properly recognize and handle the 'audio/flac' mime type.
We'll only need to ensure FLAC license is liberal enough to allow inclusion into Chromium (I don't expect any problems with licensing, but we'll need to double-check).

Owner: servolk@chromium.org
Status: Assigned
Blocking: chromium:217239
Labels: M-45
The license of libFLAC and libFLAC++ is 3-clause BSD.
https://xiph.org/flac/license.html

Would love to see this fixed!
Comment 27 by enjik...@gmail.com, Oct 18 2015
Still no support for this in desktop Chrome. Works on Chrome OS though. When is it coming to desktop?
Any news on this ?
I would also very much like to see FLAC support for the html5 <audio> tag in Chromium.
Still waiting for support here too... Why is this taking so long?
Comment 31 Deleted
Bump.Bump.
Comment 33 by enjik...@gmail.com, Feb 24 2016
Bumpelibumpbump.
Comment 34 by jik...@gmail.com, Feb 24 2016
FLAC support is available on http://chromium.woolyss.com/#windows-64-bit-dev-nik
Chromium team, why is this taking so long?
Since FLAC codec is totally free as BSD License based . I can understand some functionalities or some component provided by FLAC is GPL like converting files to and from FLAC format, plugins for audio players, et cetera.
So Plain FLAC codec is absolutely free.

FLAC is supported in chrome OS then what is real issue not to provide support in chromium and  chrome ?

Without providing any real reason to not support FLAC codec in chromium , it's problem.


Bump.Bump.Bump
Comment 37 by enjik...@gmail.com, May 18 2016
Bump-bump-i-bump-buuuump
bump
Comment 39 by enve...@gmail.com, Jun 8 2016
Both Vorbis and FLAC are licenced under the same BSD licence so I'm not entirely sure how that is a sticking point when one is already supported in Chromium.

What exactly is the issue here?
Bump time!
bump !!!

I know chrome browser has support FLAC but manually, not automatic, user has to config it in Chrome Settings. WHY?

In Vietnam has a browser called CocCoc, base on Chromium. They can make FLAC plays automatically, so I think Google Chrome/Chromium also can do that :|
Comment 42 by enjik...@gmail.com, Aug 29 2016
BUUUUMP. Give us FLAC!
Re: all bumping guys,

Please file a new feature request already! It's apparent there is no active developers are watching this bug, or they should have restricted you from bumping long ago. I so admire your patience.
The listed owner of the issue may well have left Chromium team without a note, that is everyday Google.

If any of you are going to file a new issue, you can also emphasize that library-wise FLAC is in fact already supported, they just didn't make it so desktop Chrome recognizes the MIME type of FLAC, so they know it's just a piece of cake lacking a  mere decision.
Comment 44 Deleted
Issue 642219 has been merged into this issue.
Firefox is shipping FLAC support in v51. Can be tested in their nightly builds now. Better ship it now Google! http://www.ghacks.net/2016/08/30/firefox-51-flac-audio-codec-support/

Support for FLAC in Edge has a vote page here: https://wpdev.uservoice.com/forums/257854-microsoft-edge-developer/suggestions/15601752-support-flac
servolk@, this has been assigned to you for a long time, is it something you plan to work on? Is it on your teams' OKRs?

(I was asked on Twitter about this.)
Cc: -dalecur...@chromium.org servolk@chromium.org crouleau@chromium.org
Owner: dalecur...@chromium.org
This would be better assigned to dalecurtis@. I made him the owner, and he should re-assign as need be.
Labels: -M-45 M-55
We've been in communication with Firefox and actively working on this for a while now. There have been some unexpected slow downs, but we hope to have more details about a release soon. Hopefully tagging M-55.
Exciting news! Looking forward to it!
Cc: tguilbert@chromium.org
Cc: mlamouri@chromium.org
Owner: wolenetz@chromium.org
=>wolenetz who will handle the actual landing.
Blockedon: 591845
Blocking: 655429
Blocking: 658754
Labels: -M-55 M-56
Changing labels as we have crossed M-55 and looks green for M-56 as it's only pending an ffmpeg roll. 
Will this release include support for FLAC via MSE, particularly encapsulated in (f)MP4 as specified at http://git.xiph.org/?p=flac.git;a=blob;f=doc/isoflac.txt

We can provide an example stream on request.
I'm working on enabling FLAC for regular HTML5 src= (non-MSE), as part of the ffmpeg roll for M56, tracked by bug 591845.

@#59: For MSE, FLAC is not planned for M56.

Blocking: 666000
Project Member Comment 62 by bugdroid1@chromium.org, Nov 18
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6

commit cfd33cef4f1a51ba612d28504c6f76e1dfe588a6
Author: wolenetz <wolenetz@chromium.org>
Date: Fri Nov 18 03:49:09 2016

Roll src/third_party/ffmpeg/ 3c7a09882..cdf4accee (3188 commits).

https://chromium.googlesource.com/chromium/third_party/ffmpeg.git/+log/3c7a09882102..cdf4acceee58

$ git log 3c7a09882..cdf4accee --date=short --no-merges --format='%ad %ae %s'
2016-11-17 wolenetz Enable windows Chrom* build including lavf/wavdec.c
2016-11-17 wolenetz Updating build configs for M56 roll.
2016-11-17 wolenetz Disable nvenc autodetection by configure in build_ffmpeg.py
2016-11-16 wolenetz Remove deprecated munge script
2016-11-16 wolenetz build_ffmpeg on win: ignore unresolved symbols when linking
2016-11-16 wolenetz Update win_env.sh vs_files folder
2016-11-16 wolenetz Enable mac build_ffmpeg of lavf/wavdec.c
2016-11-16 wolenetz Enable mac build_ffmpeg to find external libopus symbols
2016-11-15 wolenetz Return to previous mips minimum ISA logic in configure
2016-10-25 thakis win: Remove VS2013 checks now that we require VS2015.
2016-11-15 wolenetz Enable FLAC in all Chrom* ffmpeg brandings
2016-11-15 wolenetz Remove the downstream patch for WinXP support
2016-11-15 wolenetz Drop obsolete 'arm' android TARGET_ARCH
2016-11-15 wolenetz Force HAVE_POSIX_MEMALIGN to be 0 in config.h for android in build_ffmpeg.py
2016-11-15 wolenetz Force HAVE_VALGRIND_VALGRIND_H to be 0 in build_ffmpeg.py
2016-11-11 wolenetz Update chromium/ffmpeg.sigs
2016-11-03 wolenetz Fix UAF in lavf/matroskadec.c if matroska_parse_tracks() fails
2016-11-01 wolenetz Temporarily undeprecate old ffmpeg A/V decode API
2016-11-01 wolenetz Update generate_gn.py to ignore generated bsf_list.c and protocol_list.c
2016-11-01 wolenetz Include generated bsf_list.c and protocol_list.c in configs
2016-10-28 wolenetz Update chromium/patches/README w.r.t. sidx revert patch
2016-10-25 wolenetz Chromium patch and README updates
2016-10-25 thakis win: Remove VS2013 checks now that we require VS2015.
2016-10-25 cehoyos lavc/utvideoenc: Set bits_per_coded_sample for rgba.
2016-10-25 michael avcodec/interplayvideo: Check side data size before use
2016-10-25 michael avcodec/ffv1enc: Fix storing RGB48 without explicitly set level
2016-10-18 vittorio.giovara vf_colorspace: Add support for iec61966-2.1 (sRGB) transfer
2016-10-24 rsbultje vf_colorspace: don't spam console with warnings if range is unspecified.
2016-10-14 rsbultje vp9: change order of operations in adapt_prob().
2016-01-07 rodger.combs lavf/mov: reindent
2016-01-07 rodger.combs lavf/mov: improve `tref/chap` chapter handling
2016-10-24 rodger.combs lavf: add AV_DISPOSITION_TIMED_THUMBNAILS
2016-04-28 rodger.combs fate/hevc: add automatic bsf test
2016-04-15 rodger.combs fate/aac: add automatic bsf test
2016-04-15 rodger.combs fate/h264: make mp4toannexb test use auto-BSF
2016-09-09 rodger.combs lavf/rawenc: add automatic bitstream filtering for H264+HEVC
2016-04-07 rodger.combs lavf/movenc+dashenc: add automatic bitstream filtering
2016-04-07 rodger.combs lavf/dashenc: add deinit function
2016-04-07 rodger.combs lavf/movenc: add deinit function
2016-04-07 rodger.combs lavf/segment: fix writing separate header with auto BSF
2016-04-07 rodger.combs lavf/segment: add deinit function
2016-06-24 rodger.combs lavf/mux: add avformat_init_output
2016-10-24 rodger.combs MAINTAINERS: add myself for audiotoolbox
2016-10-03 rodger.combs ffprobe: report field order for video streams
2016-10-03 rodger.combs lavc/utils: avcodec_string: dump field order when known
2016-10-03 rodger.combs lavc/h264_parser: export field order in more cases
2016-09-20 rodger.combs lavc/parser: export field order if not already set
2016-10-23 u lavfi: remove 2 unused lavc includes
2016-10-23 michael avutil/x86/emms: Document the emms_c() vs alloc/free relation.
2016-10-22 Andreas.Cadhalpun faq: use relative links to own documentation
2016-10-10 zhouxiaoyong avcodec/mips: loongson optimize mmi load and store operators
2016-10-10 zhouxiaoyong avutil/mips: loongson add mmi utils header file
2016-10-22 carlos lavf/mpegts: add missed fixes to scte35 section callback
2016-10-22 philipl avcodec/cuvid: Allow reinitialization of decoder
2016-10-17 jamrial avformat/matroskaenc: write DisplayWidth and DisplayHeight elements only if they differ from PixelWidth and PixelHeight
2016-10-22 Andreas.Cadhalpun mpegts: handle AVMEDIA_TYPE_UNKNOWN correctly
2016-10-21 michael avutil/avassert: Add av_assertX_fpu()
2016-10-21 michael avcodec/snowenc: Clear MMX state after edge drawing and picture encode
2016-10-21 michael avcodec/mpegvideo_enc: Add missing emms_c() to clear MMX state after SIMD use
2016-10-21 michael avcodec/utils: Move emms_c() before memory allocation functions in avcodec_encode_video2()
2016-10-21 michael avcodec/cavsdec: Clear MMX state after MB decode loop
2016-10-21 michael avcodec/svq1enc: Clear MMX state after svq1_encode_plane()
2016-10-22 cehoyos lavf/rtpdec_g726: Map mime type G726 to g726le.
2016-10-20 kagami lavc/libvpxenc: fix -auto-alt-ref option type
2016-10-21 dalecurtis Enable libopus builds within build_ffmpeg.py
2016-10-13 Andreas.Cadhalpun doc: fix spelling errors
2016-10-18 carlos lavf/mpegts: SCTE-35 extraction from mpegts
2016-10-18 carlos lavc: add SCTE-35 CUI codec ID
2016-10-13 cus lavd/decklink_dec: fix indentation
2016-10-13 cus lavd/decklink_dec: add option to disable drawing bars on signal loss
2016-10-21 michael avformat/mxfdec: Check size to avoid integer overflow in mxf_read_utf16_string()
2016-10-21 michael avformat/mxfdec: Fix mixed declaration and code
2016-10-20 Andreas.Cadhalpun mpeg12dec: unref discarded picture from extradata
2016-10-20 Andreas.Cadhalpun cavsdec: unref frame before referencing again
2016-10-20 Andreas.Cadhalpun dcstr: fix division by zero
2016-10-20 Andreas.Cadhalpun aiff: check block_align in aiff_read_packet
2016-10-12 lq avcodec/vda: define av_vda_default_init2 when CONFIG_H264_VDA_HWACCEL equ 0
2016-10-12 oyama avformat/rtmpproto: Fix RTMP control message handling error in listen mode.
2016-10-21 michael avcodec/mpegvideo_enc: Clear mmx state in ff_mpv_reallocate_putbitbuffer()
2016-10-21 michael avcodec/utils: Clear MMX state before returning from avcodec_default_execute*()
2016-10-21 michael avcodec/dnxhdenc: Move allocation out of radix_sort()
2016-10-06 rodger.combs lavf/segment: decide whether to rename based on list URI
2016-10-10 protogonoi openssl: Support version 1.1.0.
2016-09-21 mindmark tests/fate: add mxf metadata streams test
2016-09-21 mindmark libavformat/mxfdec: add metadata streams for external referenced sourclips
2016-09-21 mindmark libavformat/mxfdec: don't assume first stream index to be primary
2016-09-21 mindmark libavformat/mxfdec: export track name metadata
2016-10-19 t.rapp avformat/mxfdec: Detect field_order based on video_line_map
2016-10-19 Andreas.Cadhalpun rsd: limit number of channels
2016-10-20 h.leppkes dxva2: fix surface selection when compiled with both d3d11va and dxva2
2016-10-12 lq avformat/flvenc: do not attempt to write duration and filesize when not seekable
2016-10-18 cehoyos lavc/sheervideo: Increase av_get_codec_tag_string() input buffer size.
2016-10-19 mfcc64 avfilter/firequalizer: use zero phase kernel
2016-10-19 mfcc64 avfilter/showcqt: add cscheme option
2016-10-19 cehoyos lavf/riff: Document the interleaving of VSM4 video.
2016-10-19 Andreas.Cadhalpun avformat: prevent triggering request_probe assert in ff_read_packet
2016-10-18 derek.buitenhuis FATE: Add test for muxing discontinuous MP4 fragments with large timestamps
2016-10-18 michael avformat/movenc: Skip duration check for discontinuous fragments
2016-10-18 jean lavf/mov: support gopro hero moments udta tag
2016-10-19 sven.c.dack avfilter/vf_scale_npp: select cubic and lanczos as alternative where super-sampling is not supported
(...)

Roll FFmpeg DEPS for M56

Includes FFmpeg support for Opus audio decode, though disabled in
  FFmpegAudioDecoder until OpusAudioDecoder is removed later.

Updates Chromium parsing and expectations of updated FFmpegUTCDate
  format (it changed from YYYY-MM-DD HH:MM:SS to
  YYYY-MM-DDTHH:MM:SS.xxxxxxZ) used by FFmpegDemuxer's
  ExtractTimelineOffset() helper and related tests. Now uses
  much more lenient base::Time::FromUTCString() for this conversion.

Includes changes to not use deprecated AVStream.codec:
  ScopedPtrAVFreeContext is used instead of ~FFmpegGlue() iterating over
    closing of deprecated AVStream.codec in each stream.
  FFmpegDemuxer, FFmpegDemuxerStream, and various ffmpeg_common updates
    to work using conversion from AVStream.codecpar. Note that
    AVCodecParameters does not include coded_width or coded_height
    information, and AVStream.parser's coded size fields are not
    populated by av_find_stream_info(). We just use the width and
    height as hints of coded size in AVStreamToVideoDecoderConfig().
    AVStreamToVideoDecoderConfig() is also updated to allow 1 less
    invalid extradata case (see bug 517163).
  FFmpeg*BitStreamConverter, callers and related tests changed to use
    AVCodecParameters instead of AVCodecContext.
  AudioFileReader, MediaFileChecker, AudioVideoMetadataExtractor updated
    to work using conversion from AVStream.codecpar. Note that
    AVCodecContext built from an AVCodecParameters does not have its
    time_base populated until after avcodec_open2(), so
    AudioFileReader::SeekForTesting() uses AVStream.time_base instead.
  FakeMediaSource changed to use AVStreamToAVCodecContext helper intead
  of deprecated AVStream.codec, and to use AVFrame.pts instead of
  deprecated AVFrame.pkt_pts.

Updates regressed FFmpeg regression tests:
  Cr222754, CR234630b no longer get PIPELINE_OK when starting the
  pipeline. Test expectations updated.

BUG= 591845 ,517163,264459, 93887 , 590401 , 604451 , 590440 ,661350

Review-Url: https://codereview.chromium.org/2497603003
Cr-Commit-Position: refs/heads/master@{#433075}

[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/DEPS
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/chrome/test/data/extensions/api_test/media_galleries/media_metadata/test.js
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/base/audio_video_metadata_extractor.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/base/audio_video_metadata_extractor_unittest.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/base/media_file_checker.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/cast/test/fake_media_source.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/cast/test/fake_media_source.h
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/ffmpeg/ffmpeg_common.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/ffmpeg/ffmpeg_common.h
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/ffmpeg/ffmpeg_common_unittest.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/ffmpeg/ffmpeg_regression_tests.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/filters/audio_file_reader.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/filters/audio_file_reader.h
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/filters/ffmpeg_aac_bitstream_converter.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/filters/ffmpeg_aac_bitstream_converter.h
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/filters/ffmpeg_audio_decoder.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/filters/ffmpeg_demuxer.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/filters/ffmpeg_demuxer_unittest.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/filters/ffmpeg_glue.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/filters/ffmpeg_glue_unittest.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/filters/ffmpeg_h264_to_annex_b_bitstream_converter.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/filters/ffmpeg_h264_to_annex_b_bitstream_converter.h
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/filters/ffmpeg_h264_to_annex_b_bitstream_converter_unittest.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/filters/ffmpeg_h265_to_annex_b_bitstream_converter.cc
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/filters/ffmpeg_h265_to_annex_b_bitstream_converter.h
[modify] https://crrev.com/cfd33cef4f1a51ba612d28504c6f76e1dfe588a6/media/test/pipeline_integration_test.cc

Project Member Comment 63 by bugdroid1@chromium.org, Nov 18
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/97bfa47d1fc314ca4ce969d941d142749880268f

commit 97bfa47d1fc314ca4ce969d941d142749880268f
Author: dalecurtis <dalecurtis@chromium.org>
Date: Fri Nov 18 05:52:22 2016

Fix mimetype mappings for FLAC support.

FLAC support landed with the ffmpeg update in M56, we should
ensure our mimetypes are correct in this case.

Patch from servolk@ https://codereview.chromium.org/2362193003

BUG= 93887 

Review-Url: https://codereview.chromium.org/2515553002
Cr-Commit-Position: refs/heads/master@{#433125}

[modify] https://crrev.com/97bfa47d1fc314ca4ce969d941d142749880268f/content/browser/media/media_browsertest.cc
[modify] https://crrev.com/97bfa47d1fc314ca4ce969d941d142749880268f/content/browser/media/media_canplaytype_browsertest.cc
[modify] https://crrev.com/97bfa47d1fc314ca4ce969d941d142749880268f/media/base/demuxer_perftest.cc
[modify] https://crrev.com/97bfa47d1fc314ca4ce969d941d142749880268f/media/base/mime_util_internal.cc
[modify] https://crrev.com/97bfa47d1fc314ca4ce969d941d142749880268f/media/base/mime_util_internal.h
[modify] https://crrev.com/97bfa47d1fc314ca4ce969d941d142749880268f/media/base/mime_util_unittest.cc
[modify] https://crrev.com/97bfa47d1fc314ca4ce969d941d142749880268f/media/filters/audio_decoder_unittest.cc
[modify] https://crrev.com/97bfa47d1fc314ca4ce969d941d142749880268f/media/filters/ffmpeg_demuxer_unittest.cc
[modify] https://crrev.com/97bfa47d1fc314ca4ce969d941d142749880268f/media/test/pipeline_integration_test.cc

Project Member Comment 64 by bugdroid1@chromium.org, Nov 29
Labels: merge-merged-2924
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a5a5be6147fa4c83d3010e9ef8c6617e232d9019

commit a5a5be6147fa4c83d3010e9ef8c6617e232d9019
Author: Matt Wolenetz <wolenetz@chromium.org>
Date: Tue Nov 29 23:35:12 2016

To M56: Roll src/third_party/ffmpeg/ 3c7a09882..cdf4accee (3188 commits).

https://chromium.googlesource.com/chromium/third_party/ffmpeg.git/+log/3c7a09882102..cdf4acceee58

$ git log 3c7a09882..cdf4accee --date=short --no-merges --format='%ad %ae %s'
2016-11-17 wolenetz Enable windows Chrom* build including lavf/wavdec.c
2016-11-17 wolenetz Updating build configs for M56 roll.
2016-11-17 wolenetz Disable nvenc autodetection by configure in build_ffmpeg.py
2016-11-16 wolenetz Remove deprecated munge script
2016-11-16 wolenetz build_ffmpeg on win: ignore unresolved symbols when linking
2016-11-16 wolenetz Update win_env.sh vs_files folder
2016-11-16 wolenetz Enable mac build_ffmpeg of lavf/wavdec.c
2016-11-16 wolenetz Enable mac build_ffmpeg to find external libopus symbols
2016-11-15 wolenetz Return to previous mips minimum ISA logic in configure
2016-10-25 thakis win: Remove VS2013 checks now that we require VS2015.
2016-11-15 wolenetz Enable FLAC in all Chrom* ffmpeg brandings
2016-11-15 wolenetz Remove the downstream patch for WinXP support
2016-11-15 wolenetz Drop obsolete 'arm' android TARGET_ARCH
2016-11-15 wolenetz Force HAVE_POSIX_MEMALIGN to be 0 in config.h for android in build_ffmpeg.py
2016-11-15 wolenetz Force HAVE_VALGRIND_VALGRIND_H to be 0 in build_ffmpeg.py
2016-11-11 wolenetz Update chromium/ffmpeg.sigs
2016-11-03 wolenetz Fix UAF in lavf/matroskadec.c if matroska_parse_tracks() fails
2016-11-01 wolenetz Temporarily undeprecate old ffmpeg A/V decode API
2016-11-01 wolenetz Update generate_gn.py to ignore generated bsf_list.c and protocol_list.c
2016-11-01 wolenetz Include generated bsf_list.c and protocol_list.c in configs
2016-10-28 wolenetz Update chromium/patches/README w.r.t. sidx revert patch
2016-10-25 wolenetz Chromium patch and README updates
2016-10-25 thakis win: Remove VS2013 checks now that we require VS2015.
2016-10-25 cehoyos lavc/utvideoenc: Set bits_per_coded_sample for rgba.
2016-10-25 michael avcodec/interplayvideo: Check side data size before use
2016-10-25 michael avcodec/ffv1enc: Fix storing RGB48 without explicitly set level
2016-10-18 vittorio.giovara vf_colorspace: Add support for iec61966-2.1 (sRGB) transfer
2016-10-24 rsbultje vf_colorspace: don't spam console with warnings if range is unspecified.
2016-10-14 rsbultje vp9: change order of operations in adapt_prob().
2016-01-07 rodger.combs lavf/mov: reindent
2016-01-07 rodger.combs lavf/mov: improve `tref/chap` chapter handling
2016-10-24 rodger.combs lavf: add AV_DISPOSITION_TIMED_THUMBNAILS
2016-04-28 rodger.combs fate/hevc: add automatic bsf test
2016-04-15 rodger.combs fate/aac: add automatic bsf test
2016-04-15 rodger.combs fate/h264: make mp4toannexb test use auto-BSF
2016-09-09 rodger.combs lavf/rawenc: add automatic bitstream filtering for H264+HEVC
2016-04-07 rodger.combs lavf/movenc+dashenc: add automatic bitstream filtering
2016-04-07 rodger.combs lavf/dashenc: add deinit function
2016-04-07 rodger.combs lavf/movenc: add deinit function
2016-04-07 rodger.combs lavf/segment: fix writing separate header with auto BSF
2016-04-07 rodger.combs lavf/segment: add deinit function
2016-06-24 rodger.combs lavf/mux: add avformat_init_output
2016-10-24 rodger.combs MAINTAINERS: add myself for audiotoolbox
2016-10-03 rodger.combs ffprobe: report field order for video streams
2016-10-03 rodger.combs lavc/utils: avcodec_string: dump field order when known
2016-10-03 rodger.combs lavc/h264_parser: export field order in more cases
2016-09-20 rodger.combs lavc/parser: export field order if not already set
2016-10-23 u lavfi: remove 2 unused lavc includes
2016-10-23 michael avutil/x86/emms: Document the emms_c() vs alloc/free relation.
2016-10-22 Andreas.Cadhalpun faq: use relative links to own documentation
2016-10-10 zhouxiaoyong avcodec/mips: loongson optimize mmi load and store operators
2016-10-10 zhouxiaoyong avutil/mips: loongson add mmi utils header file
2016-10-22 carlos lavf/mpegts: add missed fixes to scte35 section callback
2016-10-22 philipl avcodec/cuvid: Allow reinitialization of decoder
2016-10-17 jamrial avformat/matroskaenc: write DisplayWidth and DisplayHeight elements only if they differ from PixelWidth and PixelHeight
2016-10-22 Andreas.Cadhalpun mpegts: handle AVMEDIA_TYPE_UNKNOWN correctly
2016-10-21 michael avutil/avassert: Add av_assertX_fpu()
2016-10-21 michael avcodec/snowenc: Clear MMX state after edge drawing and picture encode
2016-10-21 michael avcodec/mpegvideo_enc: Add missing emms_c() to clear MMX state after SIMD use
2016-10-21 michael avcodec/utils: Move emms_c() before memory allocation functions in avcodec_encode_video2()
2016-10-21 michael avcodec/cavsdec: Clear MMX state after MB decode loop
2016-10-21 michael avcodec/svq1enc: Clear MMX state after svq1_encode_plane()
2016-10-22 cehoyos lavf/rtpdec_g726: Map mime type G726 to g726le.
2016-10-20 kagami lavc/libvpxenc: fix -auto-alt-ref option type
2016-10-21 dalecurtis Enable libopus builds within build_ffmpeg.py
2016-10-13 Andreas.Cadhalpun doc: fix spelling errors
2016-10-18 carlos lavf/mpegts: SCTE-35 extraction from mpegts
2016-10-18 carlos lavc: add SCTE-35 CUI codec ID
2016-10-13 cus lavd/decklink_dec: fix indentation
2016-10-13 cus lavd/decklink_dec: add option to disable drawing bars on signal loss
2016-10-21 michael avformat/mxfdec: Check size to avoid integer overflow in mxf_read_utf16_string()
2016-10-21 michael avformat/mxfdec: Fix mixed declaration and code
2016-10-20 Andreas.Cadhalpun mpeg12dec: unref discarded picture from extradata
2016-10-20 Andreas.Cadhalpun cavsdec: unref frame before referencing again
2016-10-20 Andreas.Cadhalpun dcstr: fix division by zero
2016-10-20 Andreas.Cadhalpun aiff: check block_align in aiff_read_packet
2016-10-12 lq avcodec/vda: define av_vda_default_init2 when CONFIG_H264_VDA_HWACCEL equ 0
2016-10-12 oyama avformat/rtmpproto: Fix RTMP control message handling error in listen mode.
2016-10-21 michael avcodec/mpegvideo_enc: Clear mmx state in ff_mpv_reallocate_putbitbuffer()
2016-10-21 michael avcodec/utils: Clear MMX state before returning from avcodec_default_execute*()
2016-10-21 michael avcodec/dnxhdenc: Move allocation out of radix_sort()
2016-10-06 rodger.combs lavf/segment: decide whether to rename based on list URI
2016-10-10 protogonoi openssl: Support version 1.1.0.
2016-09-21 mindmark tests/fate: add mxf metadata streams test
2016-09-21 mindmark libavformat/mxfdec: add metadata streams for external referenced sourclips
2016-09-21 mindmark libavformat/mxfdec: don't assume first stream index to be primary
2016-09-21 mindmark libavformat/mxfdec: export track name metadata
2016-10-19 t.rapp avformat/mxfdec: Detect field_order based on video_line_map
2016-10-19 Andreas.Cadhalpun rsd: limit number of channels
2016-10-20 h.leppkes dxva2: fix surface selection when compiled with both d3d11va and dxva2
2016-10-12 lq avformat/flvenc: do not attempt to write duration and filesize when not seekable
2016-10-18 cehoyos lavc/sheervideo: Increase av_get_codec_tag_string() input buffer size.
2016-10-19 mfcc64 avfilter/firequalizer: use zero phase kernel
2016-10-19 mfcc64 avfilter/showcqt: add cscheme option
2016-10-19 cehoyos lavf/riff: Document the interleaving of VSM4 video.
2016-10-19 Andreas.Cadhalpun avformat: prevent triggering request_probe assert in ff_read_packet
2016-10-18 derek.buitenhuis FATE: Add test for muxing discontinuous MP4 fragments with large timestamps
2016-10-18 michael avformat/movenc: Skip duration check for discontinuous fragments
2016-10-18 jean lavf/mov: support gopro hero moments udta tag
2016-10-19 sven.c.dack avfilter/vf_scale_npp: select cubic and lanczos as alternative where super-sampling is not supported
(...)

Roll FFmpeg DEPS for M56

Includes FFmpeg support for Opus audio decode, though disabled in
  FFmpegAudioDecoder until OpusAudioDecoder is removed later.

Updates Chromium parsing and expectations of updated FFmpegUTCDate
  format (it changed from YYYY-MM-DD HH:MM:SS to
  YYYY-MM-DDTHH:MM:SS.xxxxxxZ) used by FFmpegDemuxer's
  ExtractTimelineOffset() helper and related tests. Now uses
  much more lenient base::Time::FromUTCString() for this conversion.

Includes changes to not use deprecated AVStream.codec:
  ScopedPtrAVFreeContext is used instead of ~FFmpegGlue() iterating over
    closing of deprecated AVStream.codec in each stream.
  FFmpegDemuxer, FFmpegDemuxerStream, and various ffmpeg_common updates
    to work using conversion from AVStream.codecpar. Note that
    AVCodecParameters does not include coded_width or coded_height
    information, and AVStream.parser's coded size fields are not
    populated by av_find_stream_info(). We just use the width and
    height as hints of coded size in AVStreamToVideoDecoderConfig().
    AVStreamToVideoDecoderConfig() is also updated to allow 1 less
    invalid extradata case (see bug 517163).
  FFmpeg*BitStreamConverter, callers and related tests changed to use
    AVCodecParameters instead of AVCodecContext.
  AudioFileReader, MediaFileChecker, AudioVideoMetadataExtractor updated
    to work using conversion from AVStream.codecpar. Note that
    AVCodecContext built from an AVCodecParameters does not have its
    time_base populated until after avcodec_open2(), so
    AudioFileReader::SeekForTesting() uses AVStream.time_base instead.
  FakeMediaSource changed to use AVStreamToAVCodecContext helper intead
  of deprecated AVStream.codec, and to use AVFrame.pts instead of
  deprecated AVFrame.pkt_pts.

Updates regressed FFmpeg regression tests:
  Cr222754, CR234630b no longer get PIPELINE_OK when starting the
  pipeline. Test expectations updated.

BUG= 591845 ,517163,264459, 93887 , 590401 , 604451 , 590440 ,661350

Review-Url: https://codereview.chromium.org/2497603003
Cr-Commit-Position: refs/heads/master@{#433075}
(cherry picked from commit cfd33cef4f1a51ba612d28504c6f76e1dfe588a6)

Review URL: https://codereview.chromium.org/2534193003 .

Cr-Commit-Position: refs/branch-heads/2924@{#172}
Cr-Branched-From: 3a87aecc31cd1ffe751dd72c04e5a96a1fc8108a-refs/heads/master@{#433059}

[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/DEPS
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/chrome/test/data/extensions/api_test/media_galleries/media_metadata/test.js
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/base/audio_video_metadata_extractor.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/base/audio_video_metadata_extractor_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/base/media_file_checker.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/cast/test/fake_media_source.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/cast/test/fake_media_source.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/ffmpeg/ffmpeg_common.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/ffmpeg/ffmpeg_common.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/ffmpeg/ffmpeg_common_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/ffmpeg/ffmpeg_regression_tests.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/audio_file_reader.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/audio_file_reader.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_aac_bitstream_converter.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_aac_bitstream_converter.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_audio_decoder.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_demuxer.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_demuxer_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_glue.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_glue_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_h264_to_annex_b_bitstream_converter.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_h264_to_annex_b_bitstream_converter.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_h264_to_annex_b_bitstream_converter_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_h265_to_annex_b_bitstream_converter.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_h265_to_annex_b_bitstream_converter.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/test/pipeline_integration_test.cc

Project Member Comment 65 by bugdroid1@chromium.org, Nov 29
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a5a5be6147fa4c83d3010e9ef8c6617e232d9019

commit a5a5be6147fa4c83d3010e9ef8c6617e232d9019
Author: Matt Wolenetz <wolenetz@chromium.org>
Date: Tue Nov 29 23:35:12 2016

To M56: Roll src/third_party/ffmpeg/ 3c7a09882..cdf4accee (3188 commits).

https://chromium.googlesource.com/chromium/third_party/ffmpeg.git/+log/3c7a09882102..cdf4acceee58

$ git log 3c7a09882..cdf4accee --date=short --no-merges --format='%ad %ae %s'
2016-11-17 wolenetz Enable windows Chrom* build including lavf/wavdec.c
2016-11-17 wolenetz Updating build configs for M56 roll.
2016-11-17 wolenetz Disable nvenc autodetection by configure in build_ffmpeg.py
2016-11-16 wolenetz Remove deprecated munge script
2016-11-16 wolenetz build_ffmpeg on win: ignore unresolved symbols when linking
2016-11-16 wolenetz Update win_env.sh vs_files folder
2016-11-16 wolenetz Enable mac build_ffmpeg of lavf/wavdec.c
2016-11-16 wolenetz Enable mac build_ffmpeg to find external libopus symbols
2016-11-15 wolenetz Return to previous mips minimum ISA logic in configure
2016-10-25 thakis win: Remove VS2013 checks now that we require VS2015.
2016-11-15 wolenetz Enable FLAC in all Chrom* ffmpeg brandings
2016-11-15 wolenetz Remove the downstream patch for WinXP support
2016-11-15 wolenetz Drop obsolete 'arm' android TARGET_ARCH
2016-11-15 wolenetz Force HAVE_POSIX_MEMALIGN to be 0 in config.h for android in build_ffmpeg.py
2016-11-15 wolenetz Force HAVE_VALGRIND_VALGRIND_H to be 0 in build_ffmpeg.py
2016-11-11 wolenetz Update chromium/ffmpeg.sigs
2016-11-03 wolenetz Fix UAF in lavf/matroskadec.c if matroska_parse_tracks() fails
2016-11-01 wolenetz Temporarily undeprecate old ffmpeg A/V decode API
2016-11-01 wolenetz Update generate_gn.py to ignore generated bsf_list.c and protocol_list.c
2016-11-01 wolenetz Include generated bsf_list.c and protocol_list.c in configs
2016-10-28 wolenetz Update chromium/patches/README w.r.t. sidx revert patch
2016-10-25 wolenetz Chromium patch and README updates
2016-10-25 thakis win: Remove VS2013 checks now that we require VS2015.
2016-10-25 cehoyos lavc/utvideoenc: Set bits_per_coded_sample for rgba.
2016-10-25 michael avcodec/interplayvideo: Check side data size before use
2016-10-25 michael avcodec/ffv1enc: Fix storing RGB48 without explicitly set level
2016-10-18 vittorio.giovara vf_colorspace: Add support for iec61966-2.1 (sRGB) transfer
2016-10-24 rsbultje vf_colorspace: don't spam console with warnings if range is unspecified.
2016-10-14 rsbultje vp9: change order of operations in adapt_prob().
2016-01-07 rodger.combs lavf/mov: reindent
2016-01-07 rodger.combs lavf/mov: improve `tref/chap` chapter handling
2016-10-24 rodger.combs lavf: add AV_DISPOSITION_TIMED_THUMBNAILS
2016-04-28 rodger.combs fate/hevc: add automatic bsf test
2016-04-15 rodger.combs fate/aac: add automatic bsf test
2016-04-15 rodger.combs fate/h264: make mp4toannexb test use auto-BSF
2016-09-09 rodger.combs lavf/rawenc: add automatic bitstream filtering for H264+HEVC
2016-04-07 rodger.combs lavf/movenc+dashenc: add automatic bitstream filtering
2016-04-07 rodger.combs lavf/dashenc: add deinit function
2016-04-07 rodger.combs lavf/movenc: add deinit function
2016-04-07 rodger.combs lavf/segment: fix writing separate header with auto BSF
2016-04-07 rodger.combs lavf/segment: add deinit function
2016-06-24 rodger.combs lavf/mux: add avformat_init_output
2016-10-24 rodger.combs MAINTAINERS: add myself for audiotoolbox
2016-10-03 rodger.combs ffprobe: report field order for video streams
2016-10-03 rodger.combs lavc/utils: avcodec_string: dump field order when known
2016-10-03 rodger.combs lavc/h264_parser: export field order in more cases
2016-09-20 rodger.combs lavc/parser: export field order if not already set
2016-10-23 u lavfi: remove 2 unused lavc includes
2016-10-23 michael avutil/x86/emms: Document the emms_c() vs alloc/free relation.
2016-10-22 Andreas.Cadhalpun faq: use relative links to own documentation
2016-10-10 zhouxiaoyong avcodec/mips: loongson optimize mmi load and store operators
2016-10-10 zhouxiaoyong avutil/mips: loongson add mmi utils header file
2016-10-22 carlos lavf/mpegts: add missed fixes to scte35 section callback
2016-10-22 philipl avcodec/cuvid: Allow reinitialization of decoder
2016-10-17 jamrial avformat/matroskaenc: write DisplayWidth and DisplayHeight elements only if they differ from PixelWidth and PixelHeight
2016-10-22 Andreas.Cadhalpun mpegts: handle AVMEDIA_TYPE_UNKNOWN correctly
2016-10-21 michael avutil/avassert: Add av_assertX_fpu()
2016-10-21 michael avcodec/snowenc: Clear MMX state after edge drawing and picture encode
2016-10-21 michael avcodec/mpegvideo_enc: Add missing emms_c() to clear MMX state after SIMD use
2016-10-21 michael avcodec/utils: Move emms_c() before memory allocation functions in avcodec_encode_video2()
2016-10-21 michael avcodec/cavsdec: Clear MMX state after MB decode loop
2016-10-21 michael avcodec/svq1enc: Clear MMX state after svq1_encode_plane()
2016-10-22 cehoyos lavf/rtpdec_g726: Map mime type G726 to g726le.
2016-10-20 kagami lavc/libvpxenc: fix -auto-alt-ref option type
2016-10-21 dalecurtis Enable libopus builds within build_ffmpeg.py
2016-10-13 Andreas.Cadhalpun doc: fix spelling errors
2016-10-18 carlos lavf/mpegts: SCTE-35 extraction from mpegts
2016-10-18 carlos lavc: add SCTE-35 CUI codec ID
2016-10-13 cus lavd/decklink_dec: fix indentation
2016-10-13 cus lavd/decklink_dec: add option to disable drawing bars on signal loss
2016-10-21 michael avformat/mxfdec: Check size to avoid integer overflow in mxf_read_utf16_string()
2016-10-21 michael avformat/mxfdec: Fix mixed declaration and code
2016-10-20 Andreas.Cadhalpun mpeg12dec: unref discarded picture from extradata
2016-10-20 Andreas.Cadhalpun cavsdec: unref frame before referencing again
2016-10-20 Andreas.Cadhalpun dcstr: fix division by zero
2016-10-20 Andreas.Cadhalpun aiff: check block_align in aiff_read_packet
2016-10-12 lq avcodec/vda: define av_vda_default_init2 when CONFIG_H264_VDA_HWACCEL equ 0
2016-10-12 oyama avformat/rtmpproto: Fix RTMP control message handling error in listen mode.
2016-10-21 michael avcodec/mpegvideo_enc: Clear mmx state in ff_mpv_reallocate_putbitbuffer()
2016-10-21 michael avcodec/utils: Clear MMX state before returning from avcodec_default_execute*()
2016-10-21 michael avcodec/dnxhdenc: Move allocation out of radix_sort()
2016-10-06 rodger.combs lavf/segment: decide whether to rename based on list URI
2016-10-10 protogonoi openssl: Support version 1.1.0.
2016-09-21 mindmark tests/fate: add mxf metadata streams test
2016-09-21 mindmark libavformat/mxfdec: add metadata streams for external referenced sourclips
2016-09-21 mindmark libavformat/mxfdec: don't assume first stream index to be primary
2016-09-21 mindmark libavformat/mxfdec: export track name metadata
2016-10-19 t.rapp avformat/mxfdec: Detect field_order based on video_line_map
2016-10-19 Andreas.Cadhalpun rsd: limit number of channels
2016-10-20 h.leppkes dxva2: fix surface selection when compiled with both d3d11va and dxva2
2016-10-12 lq avformat/flvenc: do not attempt to write duration and filesize when not seekable
2016-10-18 cehoyos lavc/sheervideo: Increase av_get_codec_tag_string() input buffer size.
2016-10-19 mfcc64 avfilter/firequalizer: use zero phase kernel
2016-10-19 mfcc64 avfilter/showcqt: add cscheme option
2016-10-19 cehoyos lavf/riff: Document the interleaving of VSM4 video.
2016-10-19 Andreas.Cadhalpun avformat: prevent triggering request_probe assert in ff_read_packet
2016-10-18 derek.buitenhuis FATE: Add test for muxing discontinuous MP4 fragments with large timestamps
2016-10-18 michael avformat/movenc: Skip duration check for discontinuous fragments
2016-10-18 jean lavf/mov: support gopro hero moments udta tag
2016-10-19 sven.c.dack avfilter/vf_scale_npp: select cubic and lanczos as alternative where super-sampling is not supported
(...)

Roll FFmpeg DEPS for M56

Includes FFmpeg support for Opus audio decode, though disabled in
  FFmpegAudioDecoder until OpusAudioDecoder is removed later.

Updates Chromium parsing and expectations of updated FFmpegUTCDate
  format (it changed from YYYY-MM-DD HH:MM:SS to
  YYYY-MM-DDTHH:MM:SS.xxxxxxZ) used by FFmpegDemuxer's
  ExtractTimelineOffset() helper and related tests. Now uses
  much more lenient base::Time::FromUTCString() for this conversion.

Includes changes to not use deprecated AVStream.codec:
  ScopedPtrAVFreeContext is used instead of ~FFmpegGlue() iterating over
    closing of deprecated AVStream.codec in each stream.
  FFmpegDemuxer, FFmpegDemuxerStream, and various ffmpeg_common updates
    to work using conversion from AVStream.codecpar. Note that
    AVCodecParameters does not include coded_width or coded_height
    information, and AVStream.parser's coded size fields are not
    populated by av_find_stream_info(). We just use the width and
    height as hints of coded size in AVStreamToVideoDecoderConfig().
    AVStreamToVideoDecoderConfig() is also updated to allow 1 less
    invalid extradata case (see bug 517163).
  FFmpeg*BitStreamConverter, callers and related tests changed to use
    AVCodecParameters instead of AVCodecContext.
  AudioFileReader, MediaFileChecker, AudioVideoMetadataExtractor updated
    to work using conversion from AVStream.codecpar. Note that
    AVCodecContext built from an AVCodecParameters does not have its
    time_base populated until after avcodec_open2(), so
    AudioFileReader::SeekForTesting() uses AVStream.time_base instead.
  FakeMediaSource changed to use AVStreamToAVCodecContext helper intead
  of deprecated AVStream.codec, and to use AVFrame.pts instead of
  deprecated AVFrame.pkt_pts.

Updates regressed FFmpeg regression tests:
  Cr222754, CR234630b no longer get PIPELINE_OK when starting the
  pipeline. Test expectations updated.

BUG= 591845 ,517163,264459, 93887 , 590401 , 604451 , 590440 ,661350

Review-Url: https://codereview.chromium.org/2497603003
Cr-Commit-Position: refs/heads/master@{#433075}
(cherry picked from commit cfd33cef4f1a51ba612d28504c6f76e1dfe588a6)

Review URL: https://codereview.chromium.org/2534193003 .

Cr-Commit-Position: refs/branch-heads/2924@{#172}
Cr-Branched-From: 3a87aecc31cd1ffe751dd72c04e5a96a1fc8108a-refs/heads/master@{#433059}

[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/DEPS
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/chrome/test/data/extensions/api_test/media_galleries/media_metadata/test.js
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/base/audio_video_metadata_extractor.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/base/audio_video_metadata_extractor_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/base/media_file_checker.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/cast/test/fake_media_source.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/cast/test/fake_media_source.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/ffmpeg/ffmpeg_common.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/ffmpeg/ffmpeg_common.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/ffmpeg/ffmpeg_common_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/ffmpeg/ffmpeg_regression_tests.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/audio_file_reader.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/audio_file_reader.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_aac_bitstream_converter.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_aac_bitstream_converter.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_audio_decoder.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_demuxer.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_demuxer_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_glue.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_glue_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_h264_to_annex_b_bitstream_converter.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_h264_to_annex_b_bitstream_converter.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_h264_to_annex_b_bitstream_converter_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_h265_to_annex_b_bitstream_converter.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_h265_to_annex_b_bitstream_converter.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/test/pipeline_integration_test.cc

Project Member Comment 66 by bugdroid1@chromium.org, Nov 29
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a5a5be6147fa4c83d3010e9ef8c6617e232d9019

commit a5a5be6147fa4c83d3010e9ef8c6617e232d9019
Author: Matt Wolenetz <wolenetz@chromium.org>
Date: Tue Nov 29 23:35:12 2016

To M56: Roll src/third_party/ffmpeg/ 3c7a09882..cdf4accee (3188 commits).

https://chromium.googlesource.com/chromium/third_party/ffmpeg.git/+log/3c7a09882102..cdf4acceee58

$ git log 3c7a09882..cdf4accee --date=short --no-merges --format='%ad %ae %s'
2016-11-17 wolenetz Enable windows Chrom* build including lavf/wavdec.c
2016-11-17 wolenetz Updating build configs for M56 roll.
2016-11-17 wolenetz Disable nvenc autodetection by configure in build_ffmpeg.py
2016-11-16 wolenetz Remove deprecated munge script
2016-11-16 wolenetz build_ffmpeg on win: ignore unresolved symbols when linking
2016-11-16 wolenetz Update win_env.sh vs_files folder
2016-11-16 wolenetz Enable mac build_ffmpeg of lavf/wavdec.c
2016-11-16 wolenetz Enable mac build_ffmpeg to find external libopus symbols
2016-11-15 wolenetz Return to previous mips minimum ISA logic in configure
2016-10-25 thakis win: Remove VS2013 checks now that we require VS2015.
2016-11-15 wolenetz Enable FLAC in all Chrom* ffmpeg brandings
2016-11-15 wolenetz Remove the downstream patch for WinXP support
2016-11-15 wolenetz Drop obsolete 'arm' android TARGET_ARCH
2016-11-15 wolenetz Force HAVE_POSIX_MEMALIGN to be 0 in config.h for android in build_ffmpeg.py
2016-11-15 wolenetz Force HAVE_VALGRIND_VALGRIND_H to be 0 in build_ffmpeg.py
2016-11-11 wolenetz Update chromium/ffmpeg.sigs
2016-11-03 wolenetz Fix UAF in lavf/matroskadec.c if matroska_parse_tracks() fails
2016-11-01 wolenetz Temporarily undeprecate old ffmpeg A/V decode API
2016-11-01 wolenetz Update generate_gn.py to ignore generated bsf_list.c and protocol_list.c
2016-11-01 wolenetz Include generated bsf_list.c and protocol_list.c in configs
2016-10-28 wolenetz Update chromium/patches/README w.r.t. sidx revert patch
2016-10-25 wolenetz Chromium patch and README updates
2016-10-25 thakis win: Remove VS2013 checks now that we require VS2015.
2016-10-25 cehoyos lavc/utvideoenc: Set bits_per_coded_sample for rgba.
2016-10-25 michael avcodec/interplayvideo: Check side data size before use
2016-10-25 michael avcodec/ffv1enc: Fix storing RGB48 without explicitly set level
2016-10-18 vittorio.giovara vf_colorspace: Add support for iec61966-2.1 (sRGB) transfer
2016-10-24 rsbultje vf_colorspace: don't spam console with warnings if range is unspecified.
2016-10-14 rsbultje vp9: change order of operations in adapt_prob().
2016-01-07 rodger.combs lavf/mov: reindent
2016-01-07 rodger.combs lavf/mov: improve `tref/chap` chapter handling
2016-10-24 rodger.combs lavf: add AV_DISPOSITION_TIMED_THUMBNAILS
2016-04-28 rodger.combs fate/hevc: add automatic bsf test
2016-04-15 rodger.combs fate/aac: add automatic bsf test
2016-04-15 rodger.combs fate/h264: make mp4toannexb test use auto-BSF
2016-09-09 rodger.combs lavf/rawenc: add automatic bitstream filtering for H264+HEVC
2016-04-07 rodger.combs lavf/movenc+dashenc: add automatic bitstream filtering
2016-04-07 rodger.combs lavf/dashenc: add deinit function
2016-04-07 rodger.combs lavf/movenc: add deinit function
2016-04-07 rodger.combs lavf/segment: fix writing separate header with auto BSF
2016-04-07 rodger.combs lavf/segment: add deinit function
2016-06-24 rodger.combs lavf/mux: add avformat_init_output
2016-10-24 rodger.combs MAINTAINERS: add myself for audiotoolbox
2016-10-03 rodger.combs ffprobe: report field order for video streams
2016-10-03 rodger.combs lavc/utils: avcodec_string: dump field order when known
2016-10-03 rodger.combs lavc/h264_parser: export field order in more cases
2016-09-20 rodger.combs lavc/parser: export field order if not already set
2016-10-23 u lavfi: remove 2 unused lavc includes
2016-10-23 michael avutil/x86/emms: Document the emms_c() vs alloc/free relation.
2016-10-22 Andreas.Cadhalpun faq: use relative links to own documentation
2016-10-10 zhouxiaoyong avcodec/mips: loongson optimize mmi load and store operators
2016-10-10 zhouxiaoyong avutil/mips: loongson add mmi utils header file
2016-10-22 carlos lavf/mpegts: add missed fixes to scte35 section callback
2016-10-22 philipl avcodec/cuvid: Allow reinitialization of decoder
2016-10-17 jamrial avformat/matroskaenc: write DisplayWidth and DisplayHeight elements only if they differ from PixelWidth and PixelHeight
2016-10-22 Andreas.Cadhalpun mpegts: handle AVMEDIA_TYPE_UNKNOWN correctly
2016-10-21 michael avutil/avassert: Add av_assertX_fpu()
2016-10-21 michael avcodec/snowenc: Clear MMX state after edge drawing and picture encode
2016-10-21 michael avcodec/mpegvideo_enc: Add missing emms_c() to clear MMX state after SIMD use
2016-10-21 michael avcodec/utils: Move emms_c() before memory allocation functions in avcodec_encode_video2()
2016-10-21 michael avcodec/cavsdec: Clear MMX state after MB decode loop
2016-10-21 michael avcodec/svq1enc: Clear MMX state after svq1_encode_plane()
2016-10-22 cehoyos lavf/rtpdec_g726: Map mime type G726 to g726le.
2016-10-20 kagami lavc/libvpxenc: fix -auto-alt-ref option type
2016-10-21 dalecurtis Enable libopus builds within build_ffmpeg.py
2016-10-13 Andreas.Cadhalpun doc: fix spelling errors
2016-10-18 carlos lavf/mpegts: SCTE-35 extraction from mpegts
2016-10-18 carlos lavc: add SCTE-35 CUI codec ID
2016-10-13 cus lavd/decklink_dec: fix indentation
2016-10-13 cus lavd/decklink_dec: add option to disable drawing bars on signal loss
2016-10-21 michael avformat/mxfdec: Check size to avoid integer overflow in mxf_read_utf16_string()
2016-10-21 michael avformat/mxfdec: Fix mixed declaration and code
2016-10-20 Andreas.Cadhalpun mpeg12dec: unref discarded picture from extradata
2016-10-20 Andreas.Cadhalpun cavsdec: unref frame before referencing again
2016-10-20 Andreas.Cadhalpun dcstr: fix division by zero
2016-10-20 Andreas.Cadhalpun aiff: check block_align in aiff_read_packet
2016-10-12 lq avcodec/vda: define av_vda_default_init2 when CONFIG_H264_VDA_HWACCEL equ 0
2016-10-12 oyama avformat/rtmpproto: Fix RTMP control message handling error in listen mode.
2016-10-21 michael avcodec/mpegvideo_enc: Clear mmx state in ff_mpv_reallocate_putbitbuffer()
2016-10-21 michael avcodec/utils: Clear MMX state before returning from avcodec_default_execute*()
2016-10-21 michael avcodec/dnxhdenc: Move allocation out of radix_sort()
2016-10-06 rodger.combs lavf/segment: decide whether to rename based on list URI
2016-10-10 protogonoi openssl: Support version 1.1.0.
2016-09-21 mindmark tests/fate: add mxf metadata streams test
2016-09-21 mindmark libavformat/mxfdec: add metadata streams for external referenced sourclips
2016-09-21 mindmark libavformat/mxfdec: don't assume first stream index to be primary
2016-09-21 mindmark libavformat/mxfdec: export track name metadata
2016-10-19 t.rapp avformat/mxfdec: Detect field_order based on video_line_map
2016-10-19 Andreas.Cadhalpun rsd: limit number of channels
2016-10-20 h.leppkes dxva2: fix surface selection when compiled with both d3d11va and dxva2
2016-10-12 lq avformat/flvenc: do not attempt to write duration and filesize when not seekable
2016-10-18 cehoyos lavc/sheervideo: Increase av_get_codec_tag_string() input buffer size.
2016-10-19 mfcc64 avfilter/firequalizer: use zero phase kernel
2016-10-19 mfcc64 avfilter/showcqt: add cscheme option
2016-10-19 cehoyos lavf/riff: Document the interleaving of VSM4 video.
2016-10-19 Andreas.Cadhalpun avformat: prevent triggering request_probe assert in ff_read_packet
2016-10-18 derek.buitenhuis FATE: Add test for muxing discontinuous MP4 fragments with large timestamps
2016-10-18 michael avformat/movenc: Skip duration check for discontinuous fragments
2016-10-18 jean lavf/mov: support gopro hero moments udta tag
2016-10-19 sven.c.dack avfilter/vf_scale_npp: select cubic and lanczos as alternative where super-sampling is not supported
(...)

Roll FFmpeg DEPS for M56

Includes FFmpeg support for Opus audio decode, though disabled in
  FFmpegAudioDecoder until OpusAudioDecoder is removed later.

Updates Chromium parsing and expectations of updated FFmpegUTCDate
  format (it changed from YYYY-MM-DD HH:MM:SS to
  YYYY-MM-DDTHH:MM:SS.xxxxxxZ) used by FFmpegDemuxer's
  ExtractTimelineOffset() helper and related tests. Now uses
  much more lenient base::Time::FromUTCString() for this conversion.

Includes changes to not use deprecated AVStream.codec:
  ScopedPtrAVFreeContext is used instead of ~FFmpegGlue() iterating over
    closing of deprecated AVStream.codec in each stream.
  FFmpegDemuxer, FFmpegDemuxerStream, and various ffmpeg_common updates
    to work using conversion from AVStream.codecpar. Note that
    AVCodecParameters does not include coded_width or coded_height
    information, and AVStream.parser's coded size fields are not
    populated by av_find_stream_info(). We just use the width and
    height as hints of coded size in AVStreamToVideoDecoderConfig().
    AVStreamToVideoDecoderConfig() is also updated to allow 1 less
    invalid extradata case (see bug 517163).
  FFmpeg*BitStreamConverter, callers and related tests changed to use
    AVCodecParameters instead of AVCodecContext.
  AudioFileReader, MediaFileChecker, AudioVideoMetadataExtractor updated
    to work using conversion from AVStream.codecpar. Note that
    AVCodecContext built from an AVCodecParameters does not have its
    time_base populated until after avcodec_open2(), so
    AudioFileReader::SeekForTesting() uses AVStream.time_base instead.
  FakeMediaSource changed to use AVStreamToAVCodecContext helper intead
  of deprecated AVStream.codec, and to use AVFrame.pts instead of
  deprecated AVFrame.pkt_pts.

Updates regressed FFmpeg regression tests:
  Cr222754, CR234630b no longer get PIPELINE_OK when starting the
  pipeline. Test expectations updated.

BUG= 591845 ,517163,264459, 93887 , 590401 , 604451 , 590440 ,661350

Review-Url: https://codereview.chromium.org/2497603003
Cr-Commit-Position: refs/heads/master@{#433075}
(cherry picked from commit cfd33cef4f1a51ba612d28504c6f76e1dfe588a6)

Review URL: https://codereview.chromium.org/2534193003 .

Cr-Commit-Position: refs/branch-heads/2924@{#172}
Cr-Branched-From: 3a87aecc31cd1ffe751dd72c04e5a96a1fc8108a-refs/heads/master@{#433059}

[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/DEPS
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/chrome/test/data/extensions/api_test/media_galleries/media_metadata/test.js
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/base/audio_video_metadata_extractor.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/base/audio_video_metadata_extractor_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/base/media_file_checker.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/cast/test/fake_media_source.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/cast/test/fake_media_source.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/ffmpeg/ffmpeg_common.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/ffmpeg/ffmpeg_common.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/ffmpeg/ffmpeg_common_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/ffmpeg/ffmpeg_regression_tests.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/audio_file_reader.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/audio_file_reader.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_aac_bitstream_converter.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_aac_bitstream_converter.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_aac_bitstream_converter_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_audio_decoder.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_demuxer.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_demuxer_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_glue.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_glue_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_h264_to_annex_b_bitstream_converter.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_h264_to_annex_b_bitstream_converter.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_h264_to_annex_b_bitstream_converter_unittest.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_h265_to_annex_b_bitstream_converter.cc
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/filters/ffmpeg_h265_to_annex_b_bitstream_converter.h
[modify] https://crrev.com/a5a5be6147fa4c83d3010e9ef8c6617e232d9019/media/test/pipeline_integration_test.cc

Labels: -M-56 M-57 Merge-Request-56
#62 got support in ffmpeg for FLAC across all Chrom* landed in trunk (M57). #63 got mime-type support for FLAC across all Chrom* also landed in trunk (M57). 

#64 (and duplicate bugdroids #65-66), along with buildspec update to branch 2924 (https://bugs.chromium.org/p/chromium/issues/detail?id=591845#c93) show that #62 merged to M56.

Requesting merge-to-M56 of #63 (no buildspec/DEPS update should be necessary to get that done).
Labels: -Merge-Request-56 Merge-Review-56 Hotlist-Merge-Review
[Automated comment] DEPS changes referenced in bugdroid comments, needs manual review.
@#68, please see #67: no buildspec/DEPS update is expected for merging #63 to M-56. The rest of the fix has already been merged (including buildspec) as part of merging issue 591845 to M-56.
I've tried FLAC playback a bit in latest Chrome Canary and it seems to work good so far. Thanks for the implementation!
Awesome work! How long would something like this typically take until
release in the mainstream production build of Chrome?
Probably about ~7-8 weeks in this case given the holidays; you can generally count on ~6 weeks per milestone though.
Labels: -Merge-Review-56 Merge-Approved-56
Re: #69 LGTM, approving for merge into M56
Project Member Comment 74 by bugdroid1@chromium.org, Dec 1
Labels: -merge-approved-56
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8a4fb783e988dabe69eb4d3260eb7f44500dee02

commit 8a4fb783e988dabe69eb4d3260eb7f44500dee02
Author: Matt Wolenetz <wolenetz@chromium.org>
Date: Thu Dec 01 20:40:50 2016

To M56: Fix mimetype mappings for FLAC support.

FLAC support landed with the ffmpeg update in M56, we should
ensure our mimetypes are correct in this case.

Patch from servolk@ https://codereview.chromium.org/2362193003

BUG= 93887 

Review-Url: https://codereview.chromium.org/2515553002
Cr-Commit-Position: refs/heads/master@{#433125}
(cherry picked from commit 97bfa47d1fc314ca4ce969d941d142749880268f)

TBR=dalecurtis@chromium.org,servolk@chromium.org,ddorwin@chromium.org

Review URL: https://codereview.chromium.org/2550473002 .

Cr-Commit-Position: refs/branch-heads/2924@{#260}
Cr-Branched-From: 3a87aecc31cd1ffe751dd72c04e5a96a1fc8108a-refs/heads/master@{#433059}

[modify] https://crrev.com/8a4fb783e988dabe69eb4d3260eb7f44500dee02/content/browser/media/media_browsertest.cc
[modify] https://crrev.com/8a4fb783e988dabe69eb4d3260eb7f44500dee02/content/browser/media/media_canplaytype_browsertest.cc
[modify] https://crrev.com/8a4fb783e988dabe69eb4d3260eb7f44500dee02/media/base/demuxer_perftest.cc
[modify] https://crrev.com/8a4fb783e988dabe69eb4d3260eb7f44500dee02/media/base/mime_util_internal.cc
[modify] https://crrev.com/8a4fb783e988dabe69eb4d3260eb7f44500dee02/media/base/mime_util_internal.h
[modify] https://crrev.com/8a4fb783e988dabe69eb4d3260eb7f44500dee02/media/base/mime_util_unittest.cc
[modify] https://crrev.com/8a4fb783e988dabe69eb4d3260eb7f44500dee02/media/filters/audio_decoder_unittest.cc
[modify] https://crrev.com/8a4fb783e988dabe69eb4d3260eb7f44500dee02/media/filters/ffmpeg_demuxer_unittest.cc
[modify] https://crrev.com/8a4fb783e988dabe69eb4d3260eb7f44500dee02/media/test/pipeline_integration_test.cc

Labels: M-56
Status: Fixed
The FLAC seems to be compressed and loose it's lossless features when using the Media Capture and Streams API (Web RTC). 

Steps to reproduce:
- Clone https://github.com/enjikaka/webrtc-audio-stream
- npm install
- gulp
- node server
- click link to receiver.html
- open flac file on station.html
- listen on receiver.html
Comment 77 Deleted
Labels: Restrict-AddIssueComment-EditIssue
Sign in to add a comment