Toon posts:

Met mencoder en Pinnacle PC-tv/rave opnemen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik probeer al enige tijd met mencoder van een Pinnacle PC-tv/rave kaart een video op te nemen. De videorecorder zit op kanaal 37 en hij moet naar een mpeg2 file worden geschreven. Ik draai Suse 9.1. Op een een of ander manier krijg ik maar niet de juiste commandline. Ik heb al een heleboel verschillende commando's geprobeerd die ik hier op GoT vond maar geeneen werkt.

Wie weet de juiste oplossing ?

Verwijderd

Ik gebruik het volgende met een PCTV pro op Mandrake:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
echo -n "#### Starting recording session #### " >> $log
date >> $log
TVOPTIONS="channel=$2:driver=v4l:width=768:height=576:outfmt=I420:amode=0:forcechan=2"
LAVCOPTS="vcodec=mpeg4:vbitrate=5000:vhq:keyint=0"
VCODEC="lavc -lavcopts $LAVCOPTS"
LAMEOPTS="mode=3:abr:br=96"
ACODEC="mp3lame -lameopts $LAMEOPTS"
FILTERS="scale=352:288,pp=md,crop=756:566:6:8"
mencoder tv:// -tv $TVOPTIONS -vop $FILTERS -oac pcm -ovc "rawyuv" -o "$3.tmp.tmp" -endpos $1 >/dev/null 2>&1 &&
mencoder -oac copy -ovc $VCODEC "$3.tmp.tmp" -o "$3.tmp" >/dev/null 2>&1 &&
rm -f "$3.tmp.tmp"
mencoder -oac $ACODEC -ovc copy "$3.tmp" -o "$3" >/dev/null 2>&1 &&
rm -f "$3.tmp"
echo -n "#### End of recording session ####" >> $log

  • Jelmer
  • Registratie: Maart 2000
  • Nu online
slierp, klopt het als ik zeg dat jij raw avi's naar "$3.tmp.tmp" weg laat schrijven en deze na afloop weer verwijderd?

Volgens mij heb je dan voor een half uurtje recording al iets van 25GB nodig.. Ik zou zeggen (als dat kan) maak gebruik van een fifo (eerst mkfifo $3.tmp.tmp in je script zetten voordat je mencoder start).

vv dat zou idd realtime encoding moeten zijn

[ Voor 14% gewijzigd door Jelmer op 19-08-2004 22:21 ]


Verwijderd

Ja. Dat is omdat m'n server compu te laag geklokt is om real-time te coderen maar wel zat schijfruimte heeft. Is met zo'n pipe werken niet gewoon hetzelfde als wel real-time coderen?

Verwijderd

Topicstarter
Verwijderd schreef op 19 augustus 2004 @ 08:54:
Ik gebruik het volgende met een PCTV pro op Mandrake:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
echo -n "#### Starting recording session #### " >> $log
date >> $log
TVOPTIONS="channel=$2:driver=v4l:width=768:height=576:outfmt=I420:amode=0:forcechan=2"
LAVCOPTS="vcodec=mpeg4:vbitrate=5000:vhq:keyint=0"
VCODEC="lavc -lavcopts $LAVCOPTS"
LAMEOPTS="mode=3:abr:br=96"
ACODEC="mp3lame -lameopts $LAMEOPTS"
FILTERS="scale=352:288,pp=md,crop=756:566:6:8"
mencoder tv:// -tv $TVOPTIONS -vop $FILTERS -oac pcm -ovc "rawyuv" -o "$3.tmp.tmp" -endpos $1 >/dev/null 2>&1 &&
mencoder -oac copy -ovc $VCODEC "$3.tmp.tmp" -o "$3.tmp" >/dev/null 2>&1 &&
rm -f "$3.tmp.tmp"
mencoder -oac $ACODEC -ovc copy "$3.tmp" -o "$3" >/dev/null 2>&1 &&
rm -f "$3.tmp"
echo -n "#### End of recording session ####" >> $log
Ik krijg de volgende foutmeldingen:
./test3: line 1: $log: ambiguous redirect
./test3: line 2: $log: ambiguous redirect
MEncoder 1.0pre5-RPM-3.2.2 (C) 2000-2004 MPlayer Team

CPU: Intel Pentium 4/Xeon/Celeron Foster 2794 MHz (Family: 8, Stepping: 9)
Detected cache-line size is 64 bytes
CPUflags: Type: 8 MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled with runtime CPU detection - WARNING - this is not optimal!
To get best performance, recompile MPlayer with --disable-runtime-cpudetection.
Reading /home/jbru/.mplayer/codecs.conf: 73 audio & 180 video codecs
File not found: 'frameno.avi'
Failed to open frameno.avi
Reading config file /home/jbru/.mplayer/mencoder
Error: option 'tv' must have a parameter!
Exiting... (error parsing cmdline)
./test3: line 15: $log: ambiguous redirect

Enig idee waar dat aan ligt ?

Verwijderd

Je kunt de code niet copy-pasten naar je console. Het is onderdeel van een groter script. Waar het om gaat zijn de instellingen die gedefinieerd staan in TVOPTIONS etc.

Verwijderd

Topicstarter
Verwijderd schreef op 19 augustus 2004 @ 13:15:
Je kunt de code niet copy-pasten naar je console. Het is onderdeel van een groter script. Waar het om gaat zijn de instellingen die gedefinieerd staan in TVOPTIONS etc.
Als je mij het hele script zou kunnen geven zou het helemaal fijn zijn. Is misschien ook makkelijker voor personen die in de toekomst zoiets willen doen. Ondertussen zal ik zelf nog even verder prutsen. In ieder geval allemaal bedankt ! ;)

Verwijderd

Ik wou je ook de rest van de scripts mailen maar die kwam retour. In ieder geval de rest van dit script. Dit hoort erboven:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/bin/sh

PATH=/usr/local/sbin:/usr/local/bin:$PATH

case "$1" in
  help)
    echo "Usage: $0 {recording_length {HH:MM:SS} channel avi_filename}"
            exit 1
esac

log="/home/slierp/scripts/mencoder/mencoder.log"
umix_recordsettings="/home/slierp/scripts/mencoder/umix_recordsettings"
umix_storesettings="/home/slierp/scripts/mencoder/.umix_storesettings"

echo -n "#### Start of $0 ####" > $log
date >> $log
echo "#### Giving you the device file permissions ####" >> $log
ls -l /dev/sound/mixer >> $log
ls -l /dev/v4l/video0 >> $log
ls -l /dev/sound/dsp >> $log

echo "#### Shutting down radio (precautionary) ####" >> $log
radio -qm >> $log 2>&1

echo "#### Setting volume settings ####" >> $log
umix -s -f $umix_storesettings >> $log
umix -l -f $umix_recordsettings  >> $log 2>&1

En dit eronder:
code:
1
2
3
4
5
6
7
8
9
date >> $log

echo "#### Restoring volume settings ####" >> $log
umix -l -f $umix_storesettings >> $log
rm -f $umix_storesettings

echo -n "#### End of $0 ####" >> $log
date >> $log
exit 0


Voor de geluidsinstellingen gebruikt het script umix.

Verwijderd

Topicstarter
Verwijderd schreef op 20 augustus 2004 @ 00:06:
Ik wou je ook de rest van de scripts mailen maar die kwam retour. In ieder geval de rest van dit script. Dit hoort erboven:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/bin/sh

PATH=/usr/local/sbin:/usr/local/bin:$PATH

case "$1" in
  help)
    echo "Usage: $0 {recording_length {HH:MM:SS} channel avi_filename}"
            exit 1
esac

log="/home/slierp/scripts/mencoder/mencoder.log"
umix_recordsettings="/home/slierp/scripts/mencoder/umix_recordsettings"
umix_storesettings="/home/slierp/scripts/mencoder/.umix_storesettings"

echo -n "#### Start of $0 ####" > $log
date >> $log
echo "#### Giving you the device file permissions ####" >> $log
ls -l /dev/sound/mixer >> $log
ls -l /dev/v4l/video0 >> $log
ls -l /dev/sound/dsp >> $log

echo "#### Shutting down radio (precautionary) ####" >> $log
radio -qm >> $log 2>&1

echo "#### Setting volume settings ####" >> $log
umix -s -f $umix_storesettings >> $log
umix -l -f $umix_recordsettings  >> $log 2>&1

En dit eronder:
code:
1
2
3
4
5
6
7
8
9
date >> $log

echo "#### Restoring volume settings ####" >> $log
umix -l -f $umix_storesettings >> $log
rm -f $umix_storesettings

echo -n "#### End of $0 ####" >> $log
date >> $log
exit 0


Voor de geluidsinstellingen gebruikt het script umix.
Thanks ! Ik ga hem helemaal overnemen.

Het gekke is alleen dat jullie deze optie gebruiken:

TVOPTIONS="waarde"

en ik moet deze gebruiken

TVOPTIONS='waarde'

dus ' i.p.v. "

Maakt ook niet uit, het werkt in ieder geval. Het zou kunnen komen doordat ik v4l2 heb en niet de gewone 4vl. Misschien dat daar iets in gewijzigd is qua meegeven van opties e.d.

In ieder geval allemaal nog bedankt. Jullie hebben buiten mij ook mijn kleine neefje blij gemaakt want ik moest zijn tekenfilms overzetten op DVD aangezien hun videorecorder de geest had gegeven :(

Hopelijk hebben meer mensen wat aan dit forum 8)

[ Voor 9% gewijzigd door Verwijderd op 20-08-2004 07:27 ]

Pagina: 1