RTSP on x86_64?

Forum for questions and support relating to the 1.24.x releases only.
Locked
dbosso
Posts: 23
Joined: Thu Jul 21, 2005 8:21 pm
Location: Goleta, California

RTSP on x86_64?

Post by dbosso »

Has anyone had success with RTSP on 64bit linux? I had it working fine on my 32bit install, and now after getting everything else working on a 64bit box I'm seeing issues similar to what's been reported here:
http://www.zoneminder.com/forums/viewtopic.php?t=15194
http://www.zoneminder.com/forums/viewtopic.php?t=15819

debug logs look like this for my axis cams:
06/23/10 12:13:06.240752 zmc_m3[-1].DB4-zm_rtsp.cpp/589 [Received]
06/23/10 12:13:06.241465 zmc_m3[-1].DB4-zm_rtsp.cpp/569 [Read 1448 bytes on sd 3, 1448 total]
06/23/10 12:13:06.241481 zmc_m3[-1].DB4-zm_rtsp.cpp/578 [Got 1448 bytes left, expecting 1444 byte packet on channel 60]
06/23/10 12:13:06.241491 zmc_m3[-1].DB4-zm_rtsp.cpp/586 [Got 1448 bytes on data channel 60, packet length is 1444]
06/23/10 12:13:06.241501 zmc_m3[-1].DB4-zm_rtsp.cpp/587 [16: 24 3c 05 a4 80 60 90 cc 12 ee 37 a8 1f 0d 33 f4]
06/23/10 12:13:06.241513 zmc_m3[-1].WAR-zm_rtp_data.cpp/57 [Discarding packet for unrecognised ssrc 75565f47]

over and over. I thought I check to see if anyone else had tracked this down. I've verified that ffmpeg works for direct access, and mjpeg seems to work OK.

Thanks.

-David
dbosso
Posts: 23
Joined: Thu Jul 21, 2005 8:21 pm
Location: Goleta, California

Fixed

Post by dbosso »

OK, I think I found the fix for this. Turns out, assuming a long is 32bits is not such a good idea :shock:. Patch:

Code: Select all

diff -ur ZoneMinder-1.24.2.old/src/zm.h ZoneMinder-1.24.2/src/zm.h
--- ZoneMinder-1.24.2.old/src/zm.h	2009-03-20 05:07:00.000000000 -0700
+++ ZoneMinder-1.24.2/src/zm.h	2010-06-29 10:45:24.000000000 -0700
@@ -17,6 +17,8 @@
 // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 // 
 
+#include "stdint.h"
+
 #ifndef ZM_H
 #define ZM_H
 
@@ -34,14 +36,14 @@
 #endif
 }
 
-typedef unsigned char       U8;
-typedef unsigned short      U16;
-typedef unsigned long       U32;
-typedef unsigned long long  U64;
-
-typedef signed char         S8;
-typedef signed short        S16;
-typedef signed long         S32;
-typedef signed long long    S64;
+typedef uint8_t             U8;
+typedef uint16_t            U16;
+typedef uint32_t            U32;
+typedef uint64_t            U64;
+
+typedef int8_t              S8;
+typedef int16_t             S16;
+typedef int32_t             S32;
+typedef int64_t             S64;
 
 #endif // ZM_H
User avatar
zoneminder
Site Admin
Posts: 5215
Joined: Wed Jul 09, 2003 2:07 pm
Location: Bristol, UK
Contact:

Post by zoneminder »

Thanks for that. I have been going through changing the types but have not published the mod yet.
Phil
ejcv
Posts: 6
Joined: Mon Jan 18, 2010 8:49 pm

Post by ejcv »

Ã
c0mputerking
Posts: 190
Joined: Tue Sep 16, 2008 5:22 am

Post by c0mputerking »

Guess i am more of an newbie than i thought How do i make the patch work? Do i have to recompile zm or something?

I am running Ubuntu 10.04 LTS 64bit server edition and installed Zoneminder using the ports can't find the zm.h file anywhere on my system?
c0mputerking
Posts: 190
Joined: Tue Sep 16, 2008 5:22 am

Post by c0mputerking »

Anybody a hint? as to how i can get RSTP to work with Ubuntu 64 bit?
Locked