* Some patches to make gorecord more useful.

svn path=/nixpkgs/trunk/; revision=12172
This commit is contained in:
Eelco Dolstra 2008-06-20 18:17:27 +00:00
parent 3736bd0716
commit a64c9e4b8f
2 changed files with 38 additions and 0 deletions

View File

@ -0,0 +1,20 @@
diff -rc wis-go7007-linux-0.9.8-orig/apps/gorecord.c wis-go7007-linux-0.9.8/apps/gorecord.c
*** wis-go7007-linux-0.9.8-orig/apps/gorecord.c 2006-04-02 00:35:17.000000000 +0200
--- wis-go7007-linux-0.9.8/apps/gorecord.c 2008-06-20 19:47:48.000000000 +0200
***************
*** 196,202 ****
sprintf(sympath, "/sys/class/sound/pcmC%dD0c/device", i);
if (realpath(sympath, canonpath) == NULL)
continue;
! if (!strcmp(gopath, canonpath))
break;
}
if (i == 20) {
--- 196,202 ----
sprintf(sympath, "/sys/class/sound/pcmC%dD0c/device", i);
if (realpath(sympath, canonpath) == NULL)
continue;
! if (!strncmp(gopath, canonpath, strlen(gopath)))
break;
}
if (i == 20) {

View File

@ -1,5 +1,16 @@
{stdenv, fetchurl, kernel, ncurses, fxload}:
let
# A patch to fix A/V sync, and to allow video to be played
# (e.g. using MPlayer) while the AVI is being recorded.
gorecordAV = fetchurl {
url = http://colabti.org/convertx/patch-av-aviheader.diff;
sha256 = "04qk58qigzwfdnn3mr3pg28qx4r89nlzdhgkvfipz36bsny23r50";
};
in
stdenv.mkDerivation {
name = "wis-go7007-0.9.8-${kernel.version}";
@ -21,10 +32,17 @@ stdenv.mkDerivation {
{ url = http://home.comcast.net/~bender647/go7007/wis-go7007-2.6.24-no_algo_control.diff;
sha256 = "1a7jkcsnzagir3wpsj60pjrr9wgfaqq21jlmq6s0qg9hqg4nzbvf";
}
] ++ [
# http://nikosapi.org/wiki/index.php/WIS_Go7007_Linux_driver#wis-streamer_fails_to_find_the_ALSA_audio_node_and_emulated_OSS_device_node
./alsa.patch
];
buildInputs = [ncurses];
postPatch = ''
(cd apps && patch < ${gorecordAV}) || false
'';
preBuild = ''
# Urgh, we need the complete kernel sources for some header
# files. So unpack the original kernel source tarball and copy