Closed
Bug 784082
Opened 12 years ago
Closed 12 years ago
Disable non-mti codecs in media/webrtc
Categories
(Core :: WebRTC: Audio/Video, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: rillian, Assigned: jesup)
References
Details
(Whiteboard: [WebRTC], [blocking-webrtc+] [qa-])
Attachments
(1 file, 2 obsolete files)
18.48 KB,
patch
|
ted
:
review+
|
Details | Diff | Splinter Review |
Currently we're building the default set of codecs supported by the media/webrtc library. Instead we want to support only the minimal set of codecs. For sudio: G711 (PCMU & PCMA) and Opus. For video: VP8.
Reporter | ||
Comment 1•12 years ago
|
||
This is just updating the codec_database.h lists and gyp files based on MOZILLA_BUILD/build_with_mozilla.
Updated•12 years ago
|
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Reporter | ||
Comment 2•12 years ago
|
||
Why did you close this bug? It's not resolved as far as I know.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Comment 3•12 years ago
|
||
(In reply to Ralph Giles (:rillian) from comment #2) > Why did you close this bug? It's not resolved as far as I know. Oh. I thought this was flagged as finished in triage. Maybe a mistaken flag on my part?
Reporter | ||
Comment 4•12 years ago
|
||
Or someone else's. :) In any case, please include a commit reference if you think something is resolved but left open.
Assignee | ||
Comment 5•12 years ago
|
||
Assignee | ||
Updated•12 years ago
|
Assignee: nobody → rjesup
Reporter | ||
Comment 6•12 years ago
|
||
Comment on attachment 657619 [details] [diff] [review] Disable codecs we don't use, and make codec selection a command-line param to gyp Review of attachment 657619 [details] [diff] [review]: ----------------------------------------------------------------- Thanks for working on this. Just one comment from my work-in-progress. I hadn't gotten to the gyp part yet. ::: media/webrtc/trunk/src/engine_configurations.h @@ +35,5 @@ > // #define WEBRTC_CODEC_ISACFX // fix-point iSAC implementation > #endif > #define WEBRTC_CODEC_AVT > > #ifndef WEBRTC_CHROMIUM_BUILD I have #if !defined(WEBRTC_CHROMIUM_BUILD) && !defined(WEBRTC_CHROMIUM_BUILD) here in the upstream patch, which should make the #if 0 unnecessary.
Reporter | ||
Comment 7•12 years ago
|
||
(In reply to Ralph Giles (:rillian) from comment #6) > #if !defined(WEBRTC_CHROMIUM_BUILD) && !defined(WEBRTC_CHROMIUM_BUILD) #if !defined(WEBRTC_CHROMIUM_BUILD) && !defined(WEBRTC_MOZILLA_BUILD) is what I meant. Sorry, bedtime patch review. :)
Assignee | ||
Comment 8•12 years ago
|
||
Assignee | ||
Updated•12 years ago
|
Attachment #657619 -
Attachment is obsolete: true
Assignee | ||
Comment 9•12 years ago
|
||
Comment on attachment 657726 [details] [diff] [review] Disable codecs we don't use, and make codec selection a command-line param to gyp Addressed your comment by removing them. They're all set by configuring codecs in the call to gyp
Attachment #657726 -
Flags: review?(ted.mielczarek)
Attachment #657726 -
Flags: review?(giles)
Updated•12 years ago
|
Whiteboard: [WebRTC]
Updated•12 years ago
|
Whiteboard: [WebRTC] → [WebRTC], [blocking-webrtc+]
Reporter | ||
Comment 10•12 years ago
|
||
Comment on attachment 657726 [details] [diff] [review] Disable codecs we don't use, and make codec selection a command-line param to gyp Review of attachment 657726 [details] [diff] [review]: ----------------------------------------------------------------- It would be nice to know what upstream thinks of this approach, but I have no objection if you remove the commented-out source lines. Would it be cleaner to define which codecs are enabled for each build somewhere like audio_coding_module.gypi (or modules.gyp) based on build_with_mozilla, etc. instead of passing them on the gyp command line? That would let us maintain our codec list in the webrtc sub-tree, so it's visible upstream, and maintain the upstream and chromium codec selections in the same place rather than requiring they change their invocations as well. ::: media/webrtc/trunk/src/build/common.gypi @@ +198,5 @@ > + }], > + ['codec_isac_enable!=0', { > + 'defines': [ > + 'WEBRTC_CODEC_ISAC', > +# 'WEBRTC_CODEC_ISACFX', This breaks the WEBRTC_ARCH_ARM conditional which chooses between these in engine_configurations.h. You probably want to duplicate that here to make the patch acceptable upstream. ::: media/webrtc/trunk/src/modules/audio_coding/main/source/audio_coding_module.gypi @@ +101,5 @@ > +# 'acm_amr.h', > +# 'acm_amrwb.cc', > +# 'acm_amrwb.h', > +# 'acm_celt.cc', > +# 'acm_celt.h', If these are replaced by the conditionals above, please just remove them, rather than commenting them out here and below. ::: media/webrtc/trunk/src/modules/audio_coding/neteq/neteq.gypi @@ +83,5 @@ > 'webrtc_neteq.c', > ], > }, > ], # targets > # Exclude the test target when building with chromium. Please update the comment as well.
Attachment #657726 -
Flags: review?(giles) → review+
Comment 11•12 years ago
|
||
Comment on attachment 657726 [details] [diff] [review] Disable codecs we don't use, and make codec selection a command-line param to gyp Review of attachment 657726 [details] [diff] [review]: ----------------------------------------------------------------- Ok with the concept, but I don't like the execution. ::: configure.in @@ +8750,5 @@ > > if test -n "$MOZ_WEBRTC"; then > AC_MSG_RESULT("generating WebRTC Makefiles...") > > + WEBRTC_CONFIG="-D build_with_mozilla=1 -D include_internal_video_render=0 -D clang_use_chrome_plugins=0 -D enable_protobuf=0 -D codec_g711_enable=1 -D codec_opus_enable=1 -D codec_g722_enable=0 -D codec_ilbc_enable=0 -D codec_isac_enable=0 -D codec_pcm16b_enable=0 -D include_pulse_audio=0" This is getting pretty big. Any chance we can stick this all into a mozilla-settings.gypi somehow and just include that on the commandline? @@ +8752,5 @@ > AC_MSG_RESULT("generating WebRTC Makefiles...") > > + WEBRTC_CONFIG="-D build_with_mozilla=1 -D include_internal_video_render=0 -D clang_use_chrome_plugins=0 -D enable_protobuf=0 -D codec_g711_enable=1 -D codec_opus_enable=1 -D codec_g722_enable=0 -D codec_ilbc_enable=0 -D codec_isac_enable=0 -D codec_pcm16b_enable=0 -D include_pulse_audio=0" > + > + AC_MSG_RESULT("WEBRTC_CONFIG = ${WEBRTC_CONFIG}") Seems overly verbose, I'd leave this out. @@ +8756,5 @@ > + AC_MSG_RESULT("WEBRTC_CONFIG = ${WEBRTC_CONFIG}") > + > + GYP_WEBRTC_OPTIONS="--format=mozmake ${WEBRTC_CONFIG} ${EXTRA_GYP_DEFINES} --depth=${srcdir}/media/webrtc/trunk --toplevel-dir=${srcdir} -G OBJDIR=${_objdir}" > + > + AC_MSG_RESULT("GYP_WEBRTC_OPTIONS = ${GYP_WEBRTC_OPTIONS}") Same here.
Attachment #657726 -
Flags: review?(ted.mielczarek)
Attachment #657726 -
Flags: review-
Attachment #657726 -
Flags: review+
Assignee | ||
Comment 12•12 years ago
|
||
Assignee | ||
Updated•12 years ago
|
Attachment #657726 -
Attachment is obsolete: true
Assignee | ||
Comment 13•12 years ago
|
||
Comment on attachment 662386 [details] [diff] [review] Disable codecs we don't use, and move webrtc gyp options to a file I think you'll like this approach a lot better
Attachment #662386 -
Flags: review?(ted.mielczarek)
Comment 14•12 years ago
|
||
Comment on attachment 662386 [details] [diff] [review] Disable codecs we don't use, and move webrtc gyp options to a file Review of attachment 662386 [details] [diff] [review]: ----------------------------------------------------------------- Much nicer, thanks! ::: media/webrtc/shared_libs.mk @@ +48,5 @@ > $(call EXPAND_LIBNAME_PATH,nrappkit,$(DEPTH)/media/mtransport/third_party/nrappkit/nrappkit_nrappkit) \ > $(NULL) > + > +# If you enable one of these codecs in webrtc_config.gypi, you'll need to re-add the > +# relevant library from this list: This is a little gross, but I guess we don't expect to be fiddling this very often? (Also you have a trailing space on the first line of the comment.) ::: media/webrtc/trunk/src/build/common.gypi @@ +198,5 @@ > + }], > + ['codec_isac_enable!=0', { > + 'defines': [ > + 'WEBRTC_CODEC_ISAC', > +# 'WEBRTC_CODEC_ISACFX', You should probably just remove this instead of commenting it out.
Attachment #662386 -
Flags: review?(ted.mielczarek) → review+
Assignee | ||
Comment 15•12 years ago
|
||
(In reply to Ted Mielczarek [:ted] from comment #14) > Much nicer, thanks! Yeah, much better than hiding all the webrtc config options in configure > ::: media/webrtc/shared_libs.mk > @@ +48,5 @@ > > $(call EXPAND_LIBNAME_PATH,nrappkit,$(DEPTH)/media/mtransport/third_party/nrappkit/nrappkit_nrappkit) \ > > $(NULL) > > + > > +# If you enable one of these codecs in webrtc_config.gypi, you'll need to re-add the > > +# relevant library from this list: > > This is a little gross, but I guess we don't expect to be fiddling this very > often? (Also you have a trailing space on the first line of the comment.) Very rarely. It was more to show what should go there, since it's somewhat non-obvious. > ::: media/webrtc/trunk/src/build/common.gypi > @@ +198,5 @@ > > + }], > > + ['codec_isac_enable!=0', { > > + 'defines': [ > > + 'WEBRTC_CODEC_ISAC', > > +# 'WEBRTC_CODEC_ISACFX', > > You should probably just remove this instead of commenting it out. Actually I just commented it - it was in engine_configurations.h and I moved it here, and it was disabled with a comment in engine_configurations, so I've kept it here in a disabled state. Now looks like: ['codec_isac_enable!=0', { 'defines': [ 'WEBRTC_CODEC_ISAC', # enable this instead for fixed-point iSAC # 'WEBRTC_CODEC_ISACFX', ], }],
Assignee | ||
Comment 16•12 years ago
|
||
Landed in 8b19e0980250 on alder on 9/19/2012, later merged to m-c
Status: REOPENED → RESOLVED
Closed: 12 years ago → 12 years ago
Resolution: --- → FIXED
Updated•12 years ago
|
Whiteboard: [WebRTC], [blocking-webrtc+] → [WebRTC], [blocking-webrtc+] [qa-]
You need to log in
before you can comment on or make changes to this bug.
Description
•