Posted: Fri Mar 09, 2007 11:36 am Post subject: [Asterisk-video] app_transcoder
Hi all..
I have just added a first (and early version) of a video transcoding application.
Currently only MPEG4 to H263 is working which will be needed if you plan to
test the app_rtsp application with a network camera, but i hope to have H263 to H263
for use with h324m gateway and been able to bridge a 3g videocall with a video
softphone.
I also still have to implement a better bitrate control and handle default parametes so
it doesn't segfault when one is missing... :)
Posted: Mon Mar 12, 2007 11:33 am Post subject: [Asterisk-video] app_transcoder
Hi,
On Fri, 2007-03-09 at 12:49 +0100, Sergio Garcia Murillo wrote:
Quote:
Hi all..
I have just added a first (and early version) of a video transcoding
application.
Currently only MPEG4 to H263 is working which will be needed if you
plan to
test the app_rtsp application with a network camera, but i hope to
have H263 to H263
for use with h324m gateway and been able to bridge a 3g videocall with
a video
softphone.
I also still have to implement a better bitrate control and handle
default parametes so
it doesn't segfault when one is missing... :)
uhm...
Asterisk can build the app but cannot start it:
CLI> load app_transcoder.so
[Mar 12 12:29:28] WARNING[16670]: loader.c:362 load_dynamic_module:
Error loading module
'app_transcoder.so': /usr/lib/asterisk/modules/app_transcoder.so:
undefined symbol: av_realloc
uhm...
ld path is ok, since app_mp4 and libh324 that're on same libavcodec
path works ok....
any hint?
Greetings,
Matteo
P.S. I've here an axis netcam that handles rtsp. With ffplay and mplayer
I can see it, so I think will be no probs...
--
Matteo Brancaleoni
R&D Director
Tel :+39.02.70633354
Voip :sip:matteo@sip.voismart.it
_______________________________________________
--Bandwidth and Colocation provided by Easynews.com --
My app_transcoder.so doesn't have the av_realloc symboll, could you check
your're using the correct avcodec.h file?
----- Original Message -----
From: "matteo brancaleoni" <mbrancaleoni@espia.it>
To: "Development discussion of video media support in Asterisk"
<asterisk-video@lists.digium.com>
Sent: Monday, March 12, 2007 1:16 PM
Subject: Re: [Asterisk-video] app_transcoder
Quote:
uhm,
On Mon, 2007-03-12 at 12:35 +0100, matteo brancaleoni wrote:
> FFmpeg version SVN-r8164, Copyright (c) 2000-2007 Fabrice Bellard, et
> al.
> configuration: --enable-amr_nb --enable-amr_wb
> libavutil version: 49.3.0
> libavcodec version: 51.35.0
> libavformat version: 51.10.0
> built on Mar 1 2007 09:46:49, gcc: 3.4.6 20060404 (Red Hat 3.4.6-3)
even with the latest svn of ffmpeg the issue is present...
matteo.
--
Matteo Brancaleoni
R&D Director
Tel :+39.02.70633354
Voip :sip:matteo@sip.voismart.it
_______________________________________________
--Bandwidth and Colocation provided by Easynews.com --
Posted: Mon Mar 12, 2007 1:38 pm Post subject: [Asterisk-video] app_transcoder
Hi,
On Mon, 2007-03-12 at 14:18 +0100, Sergio Garcia Murillo wrote:
Quote:
My version of ffmpeg is
<snip>
Quote:
My app_transcoder.so doesn't have the av_realloc symboll, could you check
your're using the correct avcodec.h file?
the problem was int not having the shared libs.
I enabled them in ffmpeg and now starts ok.
BUT another problem arises....
seems that the transcode app does not like something.
Here's asterisk log:
-- Executing [0229411616@isdn:1] h324m_gw("mISDN/1-u0",
"201@isdn-video") in new stack
[Mar 12 14:29:32] DEBUG[25754]: app_queue.c:546 changethread: Device
'mISDN/1' changed to state '6' (Ringing) but we don't care because
they're not a member of any queue.
[Mar 12 14:29:32] DEBUG[25753]: app_h324m.c:386 app_h324m_gw:
h324m_loopback
[Mar 12 14:29:32] WARNING[25753]: channel.c:627 ast_best_codec: Don't
know any of 0x2000 formats
P[ 1] MGMT: SSTATUS: L2_ESTABLISH
[Mar 12 14:29:32] DEBUG[25755]: pbx.c:1767 pbx_extension_helper:
Launching 'Answer'
-- Executing [201@isdn-video:1]
Answer("Local/201@isdn-video-aeaf,2", "") in new stack
[Mar 12 14:29:32] DEBUG[25755]: devicestate.c:303
__ast_device_state_changed_literal: Notification of state change to be
queued on device/channel Local/201@isdn-video-aeaf,2
[Mar 12 14:29:32] DEBUG[25725]: devicestate.c:161 ast_device_state: No
provider found, checking channel drivers for Local - 201@isdn-video
[Mar 12 14:29:32] DEBUG[25725]: chan_local.c:145 local_devicestate:
Checking if extension 201@isdn-video exists (devicestate)
[Mar 12 14:29:32] DEBUG[25725]: channel.c:943 channel_find_locked:
Avoiding initial deadlock for channel '0x891cce0'
[Mar 12 14:29:32] DEBUG[25755]: pbx.c:1767 pbx_extension_helper:
Launching 'transcode'
[Mar 12 14:29:32] DEBUG[25725]: devicestate.c:287 do_state_change:
Changing state for Local/201@isdn-video - state 2 (In use)
[Mar 12 14:29:32] DEBUG[25756]: app_queue.c:546 changethread: Device
'Local/201@isdn-video' changed to state '2' (In use) but we don't care
because they're not a member of any queue.
-- Executing [201@isdn-video:2]
transcode("Local/201@isdn-video-aeaf,2", "|s@camera|
h263@qcif/fps=10/kb=52/qmin=4/qmax=12/gs=50") in new stack
-transcoding [,s@camera,h263@qcif/fps=10/kb=52/qmin=4/qmax=12/gs=50]
[Mar 12 14:29:32] WARNING[25755]: channel.c:2895 ast_request: No
translator path exists for channel type Local (native -1) to 5767168
[Mar 12 14:29:32] DEBUG[25755]: pbx.c:1767 pbx_extension_helper:
Launching 'Hangup'
-- Executing [201@isdn-video:3]
Hangup("Local/201@isdn-video-aeaf,2", "") in new stack
[Mar 12 14:29:32] DEBUG[25755]: pbx.c:2363 __ast_pbx_run: Spawn
extension (isdn-video,201,3) exited non-zero on
'Local/201@isdn-video-aeaf,2'
== Spawn extension (isdn-video, 201, 3) exited non-zero on
'Local/201@isdn-video-aeaf,2'
and this's my dialplan:
[isdn-video]
exten => 201,1,Answer
exten =>
201,2,transcode(,s@camera,h263@qcif/fps=10/kb=52/qmin=4/qmax=12/gs=50)
exten => 201,3,HangUp
Posted: Mon Mar 12, 2007 2:19 pm Post subject: [Asterisk-video] app_transcoder
Could you try first with a softphone without using the h324m ?
----- Original Message -----
From: "matteo brancaleoni" <mbrancaleoni@espia.it>
To: "Development discussion of video media support in Asterisk"
<asterisk-video@lists.digium.com>
Sent: Monday, March 12, 2007 2:35 PM
Subject: Re: [Asterisk-video] app_transcoder
Quote:
Hi,
On Mon, 2007-03-12 at 14:18 +0100, Sergio Garcia Murillo wrote:
> My version of ffmpeg is
<snip>
> My app_transcoder.so doesn't have the av_realloc symboll, could you
check
Quote:
> your're using the correct avcodec.h file?
the problem was int not having the shared libs.
I enabled them in ffmpeg and now starts ok.
BUT another problem arises....
seems that the transcode app does not like something.
Here's asterisk log:
-- Executing [0229411616@isdn:1] h324m_gw("mISDN/1-u0",
"201@isdn-video") in new stack
[Mar 12 14:29:32] DEBUG[25754]: app_queue.c:546 changethread: Device
'mISDN/1' changed to state '6' (Ringing) but we don't care because
they're not a member of any queue.
[Mar 12 14:29:32] DEBUG[25753]: app_h324m.c:386 app_h324m_gw:
h324m_loopback
[Mar 12 14:29:32] WARNING[25753]: channel.c:627 ast_best_codec: Don't
know any of 0x2000 formats
P[ 1] MGMT: SSTATUS: L2_ESTABLISH
[Mar 12 14:29:32] DEBUG[25755]: pbx.c:1767 pbx_extension_helper:
Launching 'Answer'
-- Executing [201@isdn-video:1]
Answer("Local/201@isdn-video-aeaf,2", "") in new stack
[Mar 12 14:29:32] DEBUG[25755]: devicestate.c:303
__ast_device_state_changed_literal: Notification of state change to be
queued on device/channel Local/201@isdn-video-aeaf,2
[Mar 12 14:29:32] DEBUG[25725]: devicestate.c:161 ast_device_state: No
provider found, checking channel drivers for Local - 201@isdn-video
[Mar 12 14:29:32] DEBUG[25725]: chan_local.c:145 local_devicestate:
Checking if extension 201@isdn-video exists (devicestate)
[Mar 12 14:29:32] DEBUG[25725]: channel.c:943 channel_find_locked:
Avoiding initial deadlock for channel '0x891cce0'
[Mar 12 14:29:32] DEBUG[25755]: pbx.c:1767 pbx_extension_helper:
Launching 'transcode'
[Mar 12 14:29:32] DEBUG[25725]: devicestate.c:287 do_state_change:
Changing state for Local/201@isdn-video - state 2 (In use)
[Mar 12 14:29:32] DEBUG[25756]: app_queue.c:546 changethread: Device
'Local/201@isdn-video' changed to state '2' (In use) but we don't care
because they're not a member of any queue.
-- Executing [201@isdn-video:2]
transcode("Local/201@isdn-video-aeaf,2", "|s@camera|
h263@qcif/fps=10/kb=52/qmin=4/qmax=12/gs=50") in new stack
-transcoding [,s@camera,h263@qcif/fps=10/kb=52/qmin=4/qmax=12/gs=50]
[Mar 12 14:29:32] WARNING[25755]: channel.c:2895 ast_request: No
translator path exists for channel type Local (native -1) to 5767168
[Mar 12 14:29:32] DEBUG[25755]: pbx.c:1767 pbx_extension_helper:
Launching 'Hangup'
-- Executing [201@isdn-video:3]
Hangup("Local/201@isdn-video-aeaf,2", "") in new stack
[Mar 12 14:29:32] DEBUG[25755]: pbx.c:2363 __ast_pbx_run: Spawn
extension (isdn-video,201,3) exited non-zero on
'Local/201@isdn-video-aeaf,2'
== Spawn extension (isdn-video, 201, 3) exited non-zero on
'Local/201@isdn-video-aeaf,2'
and this's my dialplan:
[isdn-video]
exten => 201,1,Answer
exten =>
201,2,transcode(,s@camera,h263@qcif/fps=10/kb=52/qmin=4/qmax=12/gs=50)
exten => 201,3,HangUp
Posted: Mon Mar 12, 2007 6:21 pm Post subject: [Asterisk-video] app_transcoder
Hi,
On Mon, 2007-03-12 at 15:25 +0100, Sergio Garcia Murillo wrote:
Quote:
Could you try first with a softphone without using the h324m ?
I tried with a video softphone.
The app exits with a segfault after calling app_rtsp
(and app rtsp does nothing)
Here's the gdb log:
0 0x00fd74be in avcodec_close () from /usr/local/lib/libavcodec.so.51
(gdb) bt
#0 0x00fd74be in avcodec_close () from /usr/local/lib/libavcodec.so.51
#1 0x09c6a290 in ?? ()
#2 0x00000000 in ?? ()
(gdb) bt full
#0 0x00fd74be in avcodec_close () from /usr/local/lib/libavcodec.so.51
No symbol table info available.
#1 0x09c6a290 in ?? ()
No symbol table info available.
#2 0x00000000 in ?? ()
No symbol table info available.
(gdb)
not very useful, uh
then asterisk output:
[Mar 12 16:22:57] DEBUG[25895]: pbx.c:1767 pbx_extension_helper:
Launching 'Answer'
-- Executing [s@camera:1] Answer("Local/s@camera-3227,2", "") in new
stack
[Mar 12 16:22:57] DEBUG[25895]: devicestate.c:303
__ast_device_state_changed_literal: Notification of state change to be
queued on device/channel Local/s@camera-3227,2
[Mar 12 16:22:57] DEBUG[25895]: pbx.c:1767 pbx_extension_helper:
Launching 'rtsp'
-- Executing [s@camera:2] rtsp("Local/s@camera-3227,2",
"rtsp://192.168.1.62/mpeg4/media.amp") in new stack
[Mar 12 16:22:57] DEBUG[25862]: devicestate.c:161 ast_device_state: No
provider found, checking channel drivers for Local - s@camera
[Mar 12 16:22:57] DEBUG[25862]: chan_local.c:145 local_devicestate:
Checking if extension s@camera exists (devicestate)
[Mar 12 16:22:57] DEBUG[25862]: devicestate.c:287 do_state_change:
Changing state for Local/s@camera - state 2 (In use)
-rtsp_play loop
[Mar 12 16:22:57] DEBUG[25896]: app_queue.c:546 changethread: Device
'Local/s@camera' changed to state '2' (In use) but we don't care because
they're not a member of any queue.
[Mar 12 16:22:57] DEBUG[25891]: devicestate.c:303
__ast_device_state_changed_literal: Notification of state change to be
queued on device/channel Local/s@camera-3227,1
[Mar 12 16:22:57] DEBUG[25862]: devicestate.c:161 ast_device_state: No
provider found, checking channel drivers for Local - s@camera
[Mar 12 16:22:57] DEBUG[25862]: chan_local.c:145 local_devicestate:
Checking if extension s@camera exists (devicestate)
[Mar 12 16:22:57] DEBUG[25862]: devicestate.c:287 do_state_change:
Changing state for Local/s@camera - state 2 (In use)
[Mar 12 16:22:57] DEBUG[25897]: app_queue.c:546 changethread: Device
'Local/s@camera' changed to state '2' (In use) but we don't care because
they're not a member of any queue.
[Mar 12 16:22:57] DEBUG[25868]: chan_sip.c:4315 find_call: = Found Their
Call ID: KmqZucElAT@192.168.1.228 Their Tag ar8OwsdC4Z Our tag:
as735a27f3
[Mar 12 16:22:57] DEBUG[25868]: chan_sip.c:14453 handle_request: ****
Received ACK (6) - Command in SIP ACK
[Mar 12 16:22:57] DEBUG[25868]: chan_sip.c:2071 __sip_ack: Stopping
retransmission on 'KmqZucElAT@192.168.1.228' of Response 1: Match Not
Found
-Receiving describe
<rtsp_play[Mar 12 16:22:57] DEBUG[25895]: pbx.c:1767
pbx_extension_helper: Launching 'Hangup'
-- Executing [s@camera:3] Hangup("Local/s@camera-3227,2", "") in new
stack
any hint?
uhm
maybe I have to try with a vivotek cam ?
I've one here...
matteo.
--
Matteo Brancaleoni
R&D Director
Tel :+39.02.70633354
Voip :sip:matteo@sip.voismart.it
_______________________________________________
--Bandwidth and Colocation provided by Easynews.com --
Posted: Tue Mar 13, 2007 8:39 am Post subject: [Asterisk-video] app_transcoder
Hi,
On Mon, 2007-03-12 at 19:45 +0100, Sergio Garcia Murillo wrote:
Quote:
I've just uploaded two new version of app_transcoding and app_rtsp that fix
the problems you describe.
Please try with them again
ok, no more segs, now the calls goes up, but no video is seen,
and I have a lot of mpeg4 header damaged messages.
Here's my log:
-- Executing [s@camera:2] rtsp("Local/s@camera-e573,2",
"rtsp://192.168.1.62/mpeg4/media.amp") in new stack
[Mar 13 09:34:00] DEBUG[28295]: devicestate.c:303
__ast_device_state_changed_literal: Notification of state change to be
queued on device/channel Local/s@camera-e573,1
[Mar 13 09:34:00] DEBUG[28254]: devicestate.c:161 ast_device_state: No
provider found, checking channel drivers for Local - s@camera
[Mar 13 09:34:00] DEBUG[28254]: chan_local.c:145 local_devicestate:
Checking if extension s@camera exists (devicestate)
[Mar 13 09:34:00] DEBUG[28254]: devicestate.c:287 do_state_change:
Changing state for Local/s@camera - state 2 (In use)
[Mar 13 09:34:00] DEBUG[28301]: app_queue.c:546 changethread: Device
'Local/s@camera' changed to state '2' (In use) but we don't care because
they're not a member of any queue.
-rtsp_play loop
You can post new topics in this forum You can reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum