[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [Linphone-developers] oRTP MPEG4 video streaming
From: |
Francesco Andrisani |
Subject: |
RE: [Linphone-developers] oRTP MPEG4 video streaming |
Date: |
Mon, 13 Nov 2006 17:37:37 +0100 |
I've added a new profile to my application, but i've only a warning now.
RTP: Succesfully setup remote peer to 192.168.198.15 port 50208
ortp-warning-rtp_session_recv_with_ts: unable to recv an unsupported payload.
My code (a piece) is:
ortp_init();
ortp_scheduler_init();
recvsession=rtp_session_new(RTP_SESSION_RECVONLY);
if (recvsession == NULL)
{
printf("RTP FATAL: Unable to allocate new session.");
return -1;
}
rtp_session_set_scheduling_mode (recvsession, 1);
rtp_session_set_blocking_mode (recvsession, 0);
m_videoMpeg4 = rtp_profile_new("AV profile + MPEG4 Video");
rtp_profile_set_payload(m_videoMpeg4,0,&payload_type_pcmu8000);
rtp_profile_set_payload(m_videoMpeg4,1,&payload_type_lpc1016);
rtp_profile_set_payload(m_videoMpeg4,3,&payload_type_gsm);
rtp_profile_set_payload(m_videoMpeg4,4,&payload_type_g7231);
rtp_profile_set_payload(m_videoMpeg4,8,&payload_type_pcma8000);
rtp_profile_set_payload(m_videoMpeg4,18,&payload_type_g729);
rtp_profile_set_payload(m_videoMpeg4,31,&payload_type_h261);
rtp_profile_set_payload(m_videoMpeg4,32,&payload_type_mpv);
rtp_profile_set_payload(m_videoMpeg4,96,&payload_type_mp4v);
rtp_session_set_profile(recvsession, m_videoMpeg4);
rtp_session_set_jitter_compensation (recvsession, 60);
ret = rtp_session_set_local_addr (
recvsession,
"192.168.195.16",
20000
);
ret = rtp_session_set_remote_addr (
recvsession,
"192.168.198.13",
atoi(serverPort1)
);
if (ret != 0)
{
printf("\nRTP: ERROR: Unable to set peer to 192.168.198.15 port %d",atoi(serverPort1));
return -1;
}
else
printf("\nRTP: Succesfully setup remote peer to 192.168.198.15 port %d",atoi(serverPort1));
data_from_rtp = (char *) malloc (1500);
have_more = 1;
while (have_more)
{
printf("\nin while");
recvd_bytes = rtp_session_recv_with_ts (
recvsession,
data_from_rtp,
1500,
timestamp,
&have_more);
printf("\nBytes letti: %d",recvd_bytes);
if (have_more != 0)
printf("\nRTP Warning, have more !");
else
timestamp += recvd_bytes;
if (recvd_bytes > 0)
{
printf("\nWriting to file!");
n = fwrite(data_from_rtp,sizeof(data_from_rtp),n,outfile);
printf("\nBytes scritti: %d",n);
}
}
fclose(outfile);
free (data_from_rtp);
Is my code wrong?
Thanks
-----Original Message-----
From: Emmanuel Buu [mailto:address@hidden]
Sent: Mon 11/13/2006 5:23 PM
To: Francesco Andrisani; address@hidden
Subject: Re: [Linphone-developers] oRTP MPEG4 video streaming
Ah, I ran into the same issue with another Cam. You have to create a new profile:
m_videoMpeg4 = rtp_profile_new("AV profile + MPEG4 Video");
rtp_profile_set_payload(m_videoMpeg4,0,&payload_type_pcmu8000);
rtp_profile_set_payload(m_videoMpeg4,1,&payload_type_lpc1016);
rtp_profile_set_payload(m_videoMpeg4,3,&payload_type_gsm);
rtp_profile_set_payload(m_videoMpeg4,4,&payload_type_g7231);
rtp_profile_set_payload(m_videoMpeg4,8,&payload_type_pcma8000);
rtp_profile_set_payload(m_videoMpeg4,18,&payload_type_g729);
rtp_profile_set_payload(m_videoMpeg4,31,&payload_type_h261);
rtp_profile_set_payload(m_videoMpeg4,32,&payload_type_mpv);
rtp_profile_set_payload(m_videoMpeg4,96,&payload_type_mp4v);
Beware, the payload type you specify in the last line should match the payload
type actually sent by your cam (use a Etheral capture to check).
Then assign this profile to your session :
rtp_session_set_profile(s, m_videoMpeg4);
On Mon, 13 Nov 2006 17:07:13 +0100, Francesco Andrisani wrote
> Hi all,
> i've a problem when i try to receive a rtp flow fron an AXIS camera.
> I use oRTP and in output of my code i have the follow error:
>
> RTP: Succesfully setup remote peer to 192.168.198.15 port 50196
> RTP: Set payload type to 2
>
> ortp-warning-rtp_session_ts_to_t: use of unsupported payload type .
> ortp-warning-rtp_session_recv_with_ts: unable to recv an
> unsupported payload.
>
> Read Bytes: -1
>
> I don't know if i set wrong payload type.
>
> Regards