packages: psi-plugin-psimedia/psi-plugin-psimedia.spec, psi-plugin-psimedia...

cactus cactus at pld-linux.org
Fri Jul 22 18:13:45 CEST 2011


Author: cactus                       Date: Fri Jul 22 16:13:45 2011 GMT
Module: packages                      Tag: HEAD
---- Log message:
- add 2.6.38 and v4l patches
- rel 4

---- Files affected:
packages/psi-plugin-psimedia:
   psi-plugin-psimedia.spec (1.8 -> 1.9) , psimedia-drop-v4l.patch (NONE -> 1.1)  (NEW), psimedia-2.6.38.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/psi-plugin-psimedia/psi-plugin-psimedia.spec
diff -u packages/psi-plugin-psimedia/psi-plugin-psimedia.spec:1.8 packages/psi-plugin-psimedia/psi-plugin-psimedia.spec:1.9
--- packages/psi-plugin-psimedia/psi-plugin-psimedia.spec:1.8	Mon Nov 16 14:49:29 2009
+++ packages/psi-plugin-psimedia/psi-plugin-psimedia.spec	Fri Jul 22 18:13:40 2011
@@ -3,11 +3,13 @@
 Summary:	Audio and Video plugin for PSI
 Name:		psi-plugin-psimedia
 Version:	1.0.3
-Release:	3
+Release:	4
 License:	LGPL v2.1+
 Group:		Applications/Communications
 Source0:	http://delta.affinix.com/download/psimedia/psimedia-%{version}.tar.bz2
 # Source0-md5:	1be71c37d71c655ffc2c53cf86c77a7a
+Patch0:		%{orgname}-2.6.38.patch
+Patch1:		%{orgname}-drop-v4l.patch
 URL:		http://delta.affinix.com/psimedia/
 BuildRequires:	QtCore-devel >= 4.5.0
 BuildRequires:	QtGui-devel
@@ -38,6 +40,8 @@
 
 %prep
 %setup -q -n %{orgname}-%{version}
+%patch0 -p1
+%patch1 -p1
 
 %build
 ./configure
@@ -64,6 +68,10 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.9  2011/07/22 16:13:40  cactus
+- add 2.6.38 and v4l patches
+- rel 4
+
 Revision 1.8  2009/11/16 13:49:29  zbyniu
 - missing BRs
 

================================================================
Index: packages/psi-plugin-psimedia/psimedia-drop-v4l.patch
diff -u /dev/null packages/psi-plugin-psimedia/psimedia-drop-v4l.patch:1.1
--- /dev/null	Fri Jul 22 18:13:45 2011
+++ packages/psi-plugin-psimedia/psimedia-drop-v4l.patch	Fri Jul 22 18:13:40 2011
@@ -0,0 +1,51 @@
+https://bugs.gentoo.org/show_bug.cgi?id=361419#c5
+
+--- psimedia/gstprovider/devices.cpp	2009-06-09 10:12:11.000000000 +0200
++++ psimedia/gstprovider/devices.cpp	2011-04-02 11:47:21.898041830 +0200
+@@ -90,7 +90,6 @@ 
+ 		element_name == "alsasink" ||
+ 		element_name == "osssrc" ||
+ 		element_name == "osssink" ||
+-		element_name == "v4lsrc" ||
+ 		element_name == "v4l2src" ||
+ 		element_name == "osxaudiosrc" ||
+ 		element_name == "osxaudiosink" ||
+@@ -224,11 +223,6 @@ 
+ 		if(type == PDevice::VideoIn)
+ 			element_name = "osxvideosrc";
+ 	}
+-	else if(driver == "v4l")
+-	{
+-		if(type == PDevice::VideoIn)
+-			element_name = "v4lsrc";
+-	}
+ 	else if(driver == "v4l2")
+ 	{
+ 		if(type == PDevice::VideoIn)
+@@ -380,7 +374,7 @@ 
+ 			bool first = true;
+ 			foreach(const DeviceEnum::Item &i, list)
+ 			{
+-				if(type == PDevice::VideoIn && (element_name == "v4lsrc" || element_name == "v4l2src"))
++				if(type == PDevice::VideoIn && element_name == "v4l2src")
+ 				{
+ 					if(!test_video(element_name, i.id))
+ 						continue;
+@@ -444,7 +438,6 @@ 
+ 	else // PDevice::VideoIn
+ 	{
+ 		drivers
+-		<< "v4l"
+ 		<< "v4l2"
+ 		<< "osxvideo"
+ 		<< "winks";
+--- psimedia/gstprovider/gstthread.cpp	2009-05-17 19:55:27.000000000 +0200
++++ psimedia/gstprovider/gstthread.cpp	2011-04-02 11:48:28.581514484 +0200
+@@ -235,7 +235,6 @@ 
+ #elif defined(Q_OS_LINUX)
+ 			reqelem
+ 			<< "alsasrc" << "alsasink"
+-			<< "v4lsrc"
+ 			<< "v4l2src";
+ #elif defined(Q_OS_UNIX)
+ 			reqelem

================================================================
Index: packages/psi-plugin-psimedia/psimedia-2.6.38.patch
diff -u /dev/null packages/psi-plugin-psimedia/psimedia-2.6.38.patch:1.1
--- /dev/null	Fri Jul 22 18:13:45 2011
+++ packages/psi-plugin-psimedia/psimedia-2.6.38.patch	Fri Jul 22 18:13:40 2011
@@ -0,0 +1,100 @@
+Index: psimedia/gstprovider/deviceenum/deviceenum_unix.cpp
+===================================================================
+--- psimedia/gstprovider/deviceenum/deviceenum_unix.cpp	(revision 808)
++++ psimedia/gstprovider/deviceenum/deviceenum_unix.cpp	(working copy)
+@@ -35,7 +35,7 @@
+ # include <sys/stat.h>
+ # include <dirent.h>
+ # include <sys/ioctl.h>
+-# include <linux/videodev.h>
++# include <linux/videodev2.h>
+ #endif
+ 
+ namespace DeviceEnum {
+@@ -475,77 +475,6 @@
+ 	return out;
+ }
+ 
+-// v4l detection scheme adapted from PWLib (used by Ekiga/Gnomemeeting)
+-static QList<Item> get_v4l_items()
+-{
+-#ifdef Q_OS_LINUX
+-	QList<Item> out;
+-
+-	QList<V4LName> list = get_v4l_names("/sys/class/video4linux", true);
+-	if(list.isEmpty())
+-		list = get_v4l_names("/proc/video/dev", false);
+-
+-	// if we can't find anything, then do a raw scan for possibilities
+-	if(list.isEmpty())
+-	{
+-		QStringList possible = scan_for_videodevs("/dev");
+-		foreach(QString str, possible)
+-		{
+-			V4LName v;
+-			v.dev = str;
+-			list += v;
+-		}
+-	}
+-
+-	for(int n = 0; n < list.count(); ++n)
+-	{
+-		V4LName &v = list[n];
+-
+-		// if we already have a friendly name then we'll skip the confirm
+-		//   in order to save resources.  the only real drawback here that
+-		//   I can think of is if the device isn't a capture type.  but
+-		//   what does it mean to have a V4L device that isn't capture??
+-		if(v.friendlyName.isEmpty())
+-		{
+-			int fd = open(QFile::encodeName(v.dev).data(), O_RDONLY | O_NONBLOCK);
+-			if(fd == -1)
+-				continue;
+-
+-			// get video capabilities and close
+-			struct video_capability caps;
+-			memset(&caps, 0, sizeof(caps));
+-			int ret = ioctl(fd, VIDIOCGCAP, &caps);
+-			close(fd);
+-			if(ret == -1)
+-				continue;
+-
+-			if(!(caps.type & VID_TYPE_CAPTURE))
+-				continue;
+-
+-			v.friendlyName = caps.name;
+-		}
+-
+-		Item i;
+-		i.type = Item::Video;
+-		i.dir = Item::Input;
+-		i.name = v.friendlyName;
+-		i.driver = "v4l";
+-		i.id = v.dev;
+-
+-		// HACK
+-		if(v.friendlyName == "Labtec Webcam Notebook")
+-			i.explicitCaptureSize = QSize(640, 480);
+-
+-		out += i;
+-	}
+-
+-	return out;
+-#else
+-	// return empty list if non-linux
+-	return QList<Item>();
+-#endif
+-}
+-
+ static QList<Item> get_v4l2_items()
+ {
+ #ifdef Q_OS_LINUX
+@@ -636,8 +565,6 @@
+ 	QList<Item> out;
+ 	if(driver.isEmpty() || driver == "v4l2")
+ 		out += get_v4l2_items();
+-	if(driver.isEmpty() || driver == "v4l")
+-		out += get_v4l_items();
+ 	return out;
+ }
+ 
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/psi-plugin-psimedia/psi-plugin-psimedia.spec?r1=1.8&r2=1.9&f=u



More information about the pld-cvs-commit mailing list