ports/61062: libxine-1.0.r3 is looking for RealMedia codecs in wrong places

Sascha Blank sblank at tiscali.de
Thu Jan 8 10:30:27 UTC 2004


>Number:         61062
>Category:       ports
>Synopsis:       libxine-1.0.r3 is looking for RealMedia codecs in wrong places
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Thu Jan 08 02:30:08 PST 2004
>Closed-Date:
>Last-Modified:
>Originator:     Sascha Blank
>Release:        FreeBSD 4.9-STABLE i386
>Organization:
>Environment:
System: FreeBSD ally.localnet.de 4.9-STABLE FreeBSD 4.9-STABLE #3: Sun Jan 4 13:33:34 CET 2004 sblank at ally.localnet.de:/usr/obj/usr/src/sys/ALLY i386

# $FreeBSD: ports/multimedia/libxine/Makefile,v 1.51 2004/01/07 14:14:16 nobutak
a Exp $

>Description:

xine-lib-1-rc3a has the capability to load RealPlayer codecs at runtime to play
RealAudio and RealVideo files.  The search for these codecs is done in the
routine "init_class" in file "src/libreal/xine_decoder.c" (starting around line
568).

Unfortunately the search is done in places which one will not likely find on a
typical FreeBSD installation.  Thus the search will turn up no results and
"xine" will complain that it is therefore unable to play any RealAudio or
RealVideo files.

One can get around this problem by setting the "codec.real_codecs_path"
variable in "~/.xine/config" but that is cumbersome, especially when you have
to do this on a multiuser system as "xine" has no global configuration file
(yet).

The attached patch points the search to locations that are typical for the
FreeBSD filesystem hierarchy.  Now I can play both RealAudio and RealVideo
files with xine-0.9.23.  Copy the patch to
/usr/ports/multimedia/libxine/files/patch-src:libreal:xine_decoder.c and
rebuild the port.

>How-To-Repeat:
>Fix:

*** src/libreal/xine_decoder.c.orig	Sun Dec 14 23:13:24 2003
--- src/libreal/xine_decoder.c	Thu Jan  8 10:19:34 2004
***************
*** 589,612 ****
  
      /* try some auto-detection */
  
!     if (!stat ("/usr/local/RealPlayer8/Codecs/drv3.so.6.0", &s)) 
        config->update_string (config, "codec.real_codecs_path", 
! 			     "/usr/local/RealPlayer8/Codecs");
!     if (!stat ("/usr/RealPlayer8/Codecs/drv3.so.6.0", &s)) 
        config->update_string (config, "codec.real_codecs_path", 
! 			     "/usr/RealPlayer8/Codecs");
!     if (!stat ("/usr/lib/RealPlayer8/Codecs/drv3.so.6.0", &s)) 
        config->update_string (config, "codec.real_codecs_path", 
! 			     "/usr/lib/RealPlayer8/Codecs");
!     if (!stat ("/opt/RealPlayer8/Codecs/drv3.so.6.0", &s)) 
!       config->update_string (config, "codec.real_codecs_path", 
! 			     "/opt/RealPlayer8/Codecs");
!     if (!stat ("/usr/lib/RealPlayer9/users/Real/Codecs/drv3.so.6.0", &s)) 
!       config->update_string (config, "codec.real_codecs_path", 
! 			     "/usr/lib/RealPlayer9/users/Real/Codecs");
!     if (!stat ("/usr/lib/win32/drv3.so.6.0", &s)) 
!       config->update_string (config, "codec.real_codecs_path", 
! 			     "/usr/lib/win32");
    }
  
    lprintf ("real codec path : %s\n",  real_codec_path);
--- 589,603 ----
  
      /* try some auto-detection */
  
!     if (!stat ("/usr/local/lib/RealPlayer8/Codecs/drv3.so.6.0", &s)) 
        config->update_string (config, "codec.real_codecs_path", 
! 			     "/usr/local/lib/RealPlayer8/Codecs");
!     if (!stat ("/usr/local/lib/RealPlayer9/users/Real/Codecs/drv3.so.6.0", &s)) 
        config->update_string (config, "codec.real_codecs_path", 
! 			     "/usr/local/lib/RealPlayer9/users/Real/Codecs");
!     if (!stat ("/usr/local/lib/win32/drv3.so.6.0", &s)) 
        config->update_string (config, "codec.real_codecs_path", 
! 			     "/usr/local/lib/win32");
    }
  
    lprintf ("real codec path : %s\n",  real_codec_path);
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list