diff --git a/channels/chan_h323.c b/channels/chan_h323.c
index 8761026d04bd442b51a4cba5977c671a5ae88d68..61dc7c25f6e5cb6c696107a91fc2ac417d9c610d 100644
--- a/channels/chan_h323.c
+++ b/channels/chan_h323.c
@@ -1031,6 +1031,8 @@ static struct ast_channel *__oh323_new(struct oh323_pvt *pvt, int state, const c
 		ch->rawwriteformat = fmt;
 		ch->readformat = fmt;
 		ch->rawreadformat = fmt;
+		if (!pvt->rtp)
+			__oh323_rtp_create(pvt);
 #if 0
 		ast_channel_set_fd(ch, 0, ast_rtp_fd(pvt->rtp));
 		ast_channel_set_fd(ch, 1, ast_rtcp_fd(pvt->rtp));