GN flag proprietary_codecs

1,001 views
Skip to first unread message

Ens

unread,
Jun 6, 2019, 9:22:19 AM6/6/19
to Chromium-dev
Lately I was wondering, what this build flag is controlling exactly. I found different information about it. The args description for proprietary_codecs says "Enables proprietary codecs and demuxers; e.g. H264, AAC, MP3, and MP4. We always build Google Chrome and Chromecast with proprietary codecs." but on https://www.chromium.org/audio-video I found the information that the proprietary_codecs flag "Alters the list of codecs Chromium claims to support, which affects <source> and canPlayType() behaviour". I understand this like there are no proprietary codecs added by setting the flag to "true" only the browser will claim it can handle media encoded with proprietary codecs.

I wonder which information is correct. I want to be on the safe side and not include proprietary codecs that I would need to pay license fees for.


PhistucK

unread,
Jun 6, 2019, 11:32:13 AM6/6/19
to wangenh...@gmail.com, Chromium-dev
Looks like it (when tied with the Chrome FFMPEG branding flag) enables the FFMPEG features at compile time, which usually means they are included in the binary only when it is enabled -

Since Chromium builds can be downloaded (for testing) from the project, I do not think they would risk having licensed content in them.

PhistucK


On Thu, Jun 6, 2019 at 4:23 PM Ens <wangenh...@gmail.com> wrote:
Lately I was wondering, what this build flag is controlling exactly. I found different information about it. The args description for proprietary_codecs says "Enables proprietary codecs and demuxers; e.g. H264, AAC, MP3, and MP4. We always build Google Chrome and Chromecast with proprietary codecs." but on https://www.chromium.org/audio-video I found the information that the proprietary_codecs flag "Alters the list of codecs Chromium claims to support, which affects <source> and canPlayType() behaviour". I understand this like there are no proprietary codecs added by setting the flag to "true" only the browser will claim it can handle media encoded with proprietary codecs.

I wonder which information is correct. I want to be on the safe side and not include proprietary codecs that I would need to pay license fees for.


--
--
Chromium Developers mailing list: chromi...@chromium.org
View archives, change email options, or unsubscribe:
http://groups.google.com/a/chromium.org/group/chromium-dev
---
You received this message because you are subscribed to the Google Groups "Chromium-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/f1277f20-e9aa-4030-b755-b4b1db601706%40chromium.org.

Ens

unread,
Jun 7, 2019, 3:05:21 AM6/7/19
to Chromium-dev, wangenh...@gmail.com
Thanks for you response. But I am not talking about using it tied with the Chrome FFMPEG flag. ONLY proprietary_codecs = true.
To unsubscribe from this group and stop receiving emails from it, send an email to chromi...@chromium.org.

PhistucK

unread,
Jun 7, 2019, 4:32:51 AM6/7/19
to wangenh...@gmail.com, Chromium-dev
Does it work at all? I found this code, so I expect the build to fail (unless assert does something different in their book) -
if (proprietary_codecs && media_use_ffmpeg) {
  assert(
      ffmpeg_branding != "Chromium",
      "proprietary codecs and ffmpeg_branding set to Chromium are incompatible")
}

Anyway, why would you use one without the other? If you do not want proprietary codecs, do not set the proprietary_codecs flag in the first place.
I feel like you are not asking the bigger question you really want to ask or not providing enough details.


PhistucK


To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/fb4ab979-3731-4504-af55-7e706d44b3c9%40chromium.org.

Ens

unread,
Jun 7, 2019, 5:04:24 AM6/7/19
to Chromium-dev, wangenh...@gmail.com
I would remove the assert to prevent the build from failing. My plan is, to make the browser claim it supports all codecs (so websites will always serve the video) and use the Android MediaPlayer for the codecs that are not supported by Chromium.
That is the reason why I need to know for sure, if the flag only alters the list of codecs the browser claims to support and not actually adds proprietary codecs. It would be great to find a way to be 100% sure what exactly happens.

PhistucK

unread,
Jun 7, 2019, 5:16:31 AM6/7/19
to wangenh...@gmail.com, Chromium-dev
media-dev might be more helpful.

PhistucK


To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/eccecc78-4365-402e-9e48-792632fbaec9%40chromium.org.

Ens

unread,
Jun 7, 2019, 5:28:34 AM6/7/19
to Chromium-dev, wangenh...@gmail.com
I'll ask there as well. Thanks!
Reply all
Reply to author
Forward
0 new messages