Manual module loading - testlaw error

Hi all, when I make a test call on a new PBX I am building I see the following issue in the console when I disable module autoloading in modules.conf

[May 26 10:48:20] WARNING[2470]: res_pjsip_sdp_rtp.c:1244 create_outgoing_sdp_stream: Unable to get rtp codec payload code for testlaw

The call works fine with various codecs. The error goes away if I reenable autoloading. Does anyone know module am I missing from my configuration please?

[modules]
autoload = no

; Applications

load = app_bridgewait.so
load = app_dial.so
load = app_playback.so
load = app_stack.so
load = app_verbose.so
load = app_voicemail.so

; Bridging

load = bridge_builtin_features.so
load = bridge_builtin_interval_features.so
load = bridge_holding.so
load = bridge_native_rtp.so
load = bridge_simple.so
load = bridge_softmix.so

; Call Detail Records

load = cdr_adaptive_odbc.so

; Channel Drivers

load = chan_bridge_media.so
load = chan_pjsip.so
load = chan_iax2.so
load = chan_rtp.so
load = chan_skinny.so

; Codecs

load = codec_a_mu.so
load = codec_adpcm.so
load = codec_alaw.so
load = codec_g722.so
load = codec_g726.so
load = codec_gsm.so
load = codec_ilbc.so
load = codec_lpc10.so
load = codec_resample.so
load = codec_ulaw.so
load = codec_opus.so
load = codec_silk.so
load = codec_g729-ast140-gcc4-glibc-x86_64-core2-sse4.so


; Formats

load = format_g719.so
load = format_g723.so
load = format_g726.so
load = format_g729.so
load = format_gsm.so
load = format_h263.so
load = format_h264.so
load = format_ilbc.so
load = format_jpeg.so
load = format_mp3.so
load = format_pcm.so
load = format_siren14.so
load = format_siren7.so
load = format_sln.so
load = format_vox.so
load = format_wav.so
load = format_wav_gsm.so

; Functions

load = func_db.so
load = func_odbc.so
load = func_callerid.so
load = func_cdr.so
load = func_channel.so
load = func_pjsip_aor.so
load = func_pjsip_contact.so
load = func_pjsip_endpoint.so
load = func_sorcery.so
load = func_devstate.so
load = func_strings.so

; Core/PBX

load = pbx_config.so

; Resources

preload = res_odbc.so
preload = res_odbc_transaction.so
preload = res_config_odbc.so
load = res_musiconhold.so
load = res_pjproject.so
load = res_pjsip.so
load = res_pjsip_acl.so
load = res_pjsip_authenticator_digest.so
load = res_pjsip_caller_id.so
load = res_pjsip_config_wizard.so
load = res_pjsip_dialog_info_body_generator.so
load = res_pjsip_diversion.so
load = res_pjsip_dlg_options.so
load = res_pjsip_dtmf_info.so
load = res_pjsip_empty_info.so
load = res_pjsip_endpoint_identifier_anonymous.so
load = res_pjsip_endpoint_identifier_ip.so
load = res_pjsip_endpoint_identifier_user.so
load = res_pjsip_exten_state.so
load = res_pjsip_header_funcs.so
load = res_pjsip_history.so
load = res_pjsip_logger.so
load = res_pjsip_messaging.so
load = res_pjsip_mwi.so
load = res_pjsip_mwi_body_generator.so
load = res_pjsip_nat.so
load = res_pjsip_notify.so
load = res_pjsip_one_touch_record_info.so
load = res_pjsip_outbound_authenticator_digest.so
load = res_pjsip_outbound_publish.so
load = res_pjsip_outbound_registration.so
load = res_pjsip_path.so
load = res_pjsip_phoneprov_provider.so
load = res_pjsip_pidf_body_generator.so
load = res_pjsip_pidf_digium_body_supplement.so
load = res_pjsip_pidf_eyebeam_body_supplement.so
load = res_pjsip_publish_asterisk.so
load = res_pjsip_pubsub.so
load = res_pjsip_refer.so
load = res_pjsip_registrar.so
load = res_pjsip_registrar_expire.so
load = res_pjsip_rfc3326.so
load = res_pjsip_sdp_rtp.so
load = res_pjsip_send_to_voicemail.so
load = res_pjsip_session.so
load = res_pjsip_sips_contact.so
load = res_pjsip_t38.so
load = res_pjsip_transport_management.so
load = res_pjsip_transport_websocket.so
load = res_pjsip_xpidf_body_generator.so
load = res_rtp_asterisk.so
load = res_sorcery_astdb.so
load = res_sorcery_config.so
load = res_sorcery_memory.so
load = res_sorcery_realtime.so
load = res_timing_timerfd.so

Here’s the modules asterisk autoloaded that are missing from my manual configuration - so it’s going to be one or more of these

app_adsiprog.so
app_agent_pool.so
app_alarmreceiver.so
app_amd.so
app_authenticate.so
app_bridgeaddchan.so
app_cdr.so
app_celgenuserevent.so
app_chanisavail.so
app_channelredirect.so
app_chanspy.so
app_confbridge.so
app_controlplayback.so
app_db.so
app_dictate.so
app_directed_pickup.so
app_directory.so
app_disa.so
app_dumpchan.so
app_echo.so
app_exec.so
app_externalivr.so
app_festival.so
app_followme.so
app_forkcdr.so
app_getcpeid.so
app_ices.so
app_image.so
app_macro.so
app_milliwatt.so
app_minivm.so
app_mixmonitor.so
app_morsecode.so
app_mp3.so
app_nbscat.so
app_originate.so
app_page.so
app_playtones.so
app_privacy.so
app_queue.so
app_readexten.so
app_read.so
app_record.so
app_sayunixtime.so
app_senddtmf.so
app_sendtext.so
app_sms.so
app_softhangup.so
app_speech_utils.so
app_stasis.so
app_system.so
app_talkdetect.so
app_test.so
app_transfer.so
app_url.so
app_userevent.so
app_waitforring.so
app_waitforsilence.so
app_waituntil.so
app_while.so
app_zapateller.so
cdr_csv.so
cdr_custom.so
cdr_manager.so
cdr_odbc.so
cdr_sqlite3_custom.so
cdr_syslog.so
cel_custom.so
cel_manager.so
cel_odbc.so
cel_sqlite3_custom.so
chan_mgcp.so
chan_oss.so
chan_phone.so
chan_sip.so
chan_unistim.so
codec_g729-ast140
format_ogg_opus.so
func_aes.so
func_audiohookinherit.so
func_base64.so
func_blacklist.so
func_callcompletion.so
func_config.so
func_cut.so
func_dialgroup.so
func_dialplan.so
func_enum.so
func_env.so
func_extstate.so
func_frame_trace.so
func_global.so
func_groupcount.so
func_hangupcause.so
func_holdintercept.so
func_iconv.so
func_jitterbuffer.so
func_lock.so
func_logic.so
func_math.so
func_md5.so
func_module.so
func_periodic_hook.so
func_pitchshift.so
func_presencestate.so
func_rand.so
func_realtime.so
func_sha1.so
func_shell.so
func_sprintf.so
func_srv.so
func_sysinfo.so
func_talkdetect.so
func_timeout.so
func_uri.so
func_version.so
func_vmcount.so
func_volume.so
pbx_ael.so
pbx_dundi.so
pbx_loopback.so
pbx_realtime.so
pbx_spool.so
res_adsi.so
res_ael_share.so
res_agi.so
res_ari_applications.so
res_ari_asterisk.so
res_ari_bridges.so
res_ari_channels.so
res_ari_device_states.so
res_ari_endpoints.so
res_ari_events.so
res_ari_model.so
res_ari_playbacks.so
res_ari_recordings.so
res_ari.so
res_ari_sounds.so
res_calendar.so
res_clialiases.so
res_clioriginate.so
res_config_sqlite3.so
res_convert.so
res_crypto.so
res_fax.so
res_format_attr_celt.so
res_format_attr_g729.so
res_format_attr_h263.so
res_format_attr_h264.so
res_format_attr_ilbc.so
res_format_attr_opus.so
res_format_attr_silk.so
res_format_attr_siren14.so
res_format_attr_siren7.so
res_format_attr_vp8.so
res_hep_pjsip.so
res_hep_rtcp.so
res_hep.so
res_http_websocket.so
res_limit.so
res_manager_devicestate.so
res_manager_presencestate.so
res_monitor.so
res_mutestream.so
res_parking.so
res_phoneprov.so
res_realtime.so
res_rtp_multicast.so
res_security_log.so
res_smdi.so
res_sorcery_memory_cache.so
res_speech.so
res_stasis_answer.so
res_stasis_device_state.so
res_stasis_playback.so
res_stasis_recording.so
res_stasis_snoop.so
res_stasis.so
res_statsd.so
res_stun_monitor.so
res_timing_pthread.so
res_timing_timerfd.so

I don’t know which module would contain it, but the error would also go away if you were explicit with your allowed codecs, as you seem to being using “allow=all”.

Thank you, I’ll experiment with explicit allows

That worked! Thanks!