grabbing tools für linux/unix, vorschläge?

Digital Recording
stdin
Interessierter
Interessierter
Beiträge: 93
Registriert: Freitag 15. Oktober 2004, 18:40

grabbing tools für linux/unix, vorschläge?

Beitrag von stdin »

hallo,

ich habe vor kurzem mal wieder bei premiere direkt einen film mittels ggrab aufgenommen.
ich bemerkte beim demuxen, dass der ton zum film in unterschiedlichen zeitspannen asynchron wird. also anfang des films liegt der ton ca. 350ms hinter dem film, beim ende sind es bereits 1 1/2 sek..
ich suchte mir mittels avidemux2 diese frames heraus, wo der ton an synchronität verlor. dabei bemrkte ich, dass das bild in diesem abschnitt starke artefakte auffwies. nach diesen hatte der film eine höhere asynchronität.

ich nutzt zum grabbing folgenden audfruf:

Code: Alles auswählen

./ggrab -host 192.168.5.7 \
    -p 0x01ff 0x0203 \
    -s 4000 \
    -o /mein_verzeichnis
meine frage nun hierzu: was kann diese asynchronität verursachen?

was mich erneut auf eine weitere frage bringt: welche tools, bzw. möglichkeiten gibt es für linux zum grabben?

leider wird ja ggrab + sserver nicht mehr weiterentwickelt.

ich hatte auch schon udrec_suite versucht, bin aber bei der compilation gescheitert.
hatte mehrere benötigte abhängigkeiten geklärt und nach der qt anpassung machte dann auch noch make schwierigkeiten (vermutl. hab ich zuviele sachen an den sourcen verändert *egal*), hab das programm dann ins datennirvana geschickt (/dev/null ;) )

cu..
luke999

ps: ich könnte ja mal alle antworten zusammenfassen und veröffentlichen, wenn es sowas nicht schon gibt (hab nichts gefunden), bzw. wenn es gewünscht ist.
alsuffndruff
Einsteiger
Einsteiger
Beiträge: 264
Registriert: Montag 9. Juni 2003, 21:18

Beitrag von alsuffndruff »

Schade dass du es mit der udrec_suite nicht weiter versucht hast (bzw. bei Problemen gefragt hast). Aber kein Problem. :D
Wenn du die Tools, die wir in der udrecsuite verwenden direkt einsetzen willst dann solltest du auf udrec (http://www.haraldmaiss.de) zurückgreifen.
EIne andere Möglichkeit ist das direkt streaming über NFS/CIFS, wobei NFS wohl die bessere Wahl zu sein scheint.

Gruss
Kai
stdin
Interessierter
Interessierter
Beiträge: 93
Registriert: Freitag 15. Oktober 2004, 18:40

Beitrag von stdin »

hi alsuffndruff,

ich habe es nun doch nochmal probiert ;)
nachdem ich alle benötigten programme (ausser vlc und dvdrecord *müsste auch ohne gehen*) installiert, verlinkt, mich durch makefehlermeldungen diverser proggis kämpfte ...
hat sich auch wieder die configure anweisungen erfolgreich beendet (bis auf die o.g. zwei warnungen).
möchte erwähnen, dass ich mir die sourcen aus dem cvs lud.
danch mal wieder make und siehe da wieder der eine fehler

Code: Alles auswählen

[...]
/usr/lib/qt3//bin/moc -o dvdwizarddialog.moc.cpp dvdwizarddialog.h
/usr/lib/qt3//bin/moc -o processchainstatusdialog.moc.cpp processchainstatusdialog.h
/usr/lib/qt3//bin/uic -o createdialogbase.h createdialogbase.ui
uic: File generated with too recent version of Qt Designer (3.3 vs. 3.2.3)
make[3]: *** [createdialogbase.h] Fehler 1
make[3]: Leaving directory `/home/daniel/dbox/udrec/udrec_suite/src/usgui'
make[2]: *** [all-recursive] Fehler 1
make[2]: Leaving directory `/home/daniel/dbox/udrec/udrec_suite/src'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/home/daniel/dbox/udrec/udrec_suite'
make: *** [all] Fehler 2
okay, d.h. es wurde eine neuere version von qt benutzt als ich hab (ich hab 3.2. am laufen).

nun, überlege ich ob ich wieder die datei createdialogbase.ui

Code: Alles auswählen

<!DOCTYPE UI><UI version="3.3" stdsetdef="1">
<class>CreateDialogBase</class>
<widget class="QDialog">
[..]
entsprechend meiner version anpasse.
z.b.

Code: Alles auswählen

<!DOCTYPE UI><UI version="3.2" stdsetdef="1">
<class>CreateDialogBase</class>
<widget class="QDialog">
[..]
damit kann ich zwar die fehlermeldung bei make übergehen, jedoch trat dann später bei make install ein fehler auf.

ich bleib erstmal hier stehen, ohne die änderung durchzuführen und warte mal auf deinen ratschlag als entwickler des ganzen ;)
aber bitte nicht sagen, dass ich qt updaten soll, d.h. für mich sämtliche kde anwendungen erneut aufzuspielen... das wär zuviel des guten 8)

cu...
luke999
alsuffndruff
Einsteiger
Einsteiger
Beiträge: 264
Registriert: Montag 9. Juni 2003, 21:18

Beitrag von alsuffndruff »

Hallo luke999

xxx nachdem ich alle benötigten programme (ausser vlc und dvdrecord
xxx *müsste auch ohne gehen*) installiert, verlinkt, mich durch
xxx makefehlermeldungen diverser proggis kämpfte ...

Sag mal welches Linux verwendest du? Normalerweise sind die Pakete (qt mal ausgenommen) in den Versionen doch bei jeder Distri dabei, dachte ich? Mein Problem ist dass ich mit meinem debian unstable wohl immer ziemlich vorne dran bin.


ich werde mal bei mir versuchen, das mit einer älteren Version zu übersetzen. Vorher aber eine Frage: Welches 3.2 ist das?
3.2.0, 3.2.1, 3.2.2?

Ich melde mich wenn ich das dann probiert habe.

Gruss
Kai
Zuletzt geändert von alsuffndruff am Montag 25. Oktober 2004, 20:51, insgesamt 2-mal geändert.
stdin
Interessierter
Interessierter
Beiträge: 93
Registriert: Freitag 15. Oktober 2004, 18:40

Beitrag von stdin »

hi,

ich verwende die version 3.2.3...
habe übrigends mandrake in der version 10.0

qt in der version 3.3 gibts erst in mandrake 10.1

habe gerade mal die versionsnummern in den ui' s angepasst und erhalte folgende meldung:

Code: Alles auswählen

[...]
if g++ -DHAVE_CONFIG_H -I. -I. -I../..    -g -O2  -I../common -I./xmltv -I/usr/lib/qt3//include -D_REENTRANT -DQT_THREAD_SUPPORT -g -O2 -MT udrec_suite_gui-usguibase.o -MD -MP -MF ".deps/udrec_suite_gui-usguibase.Tpo" \
  -c -o udrec_suite_gui-usguibase.o `test -f 'usguibase.cpp' || echo './'`usguibase.cpp; \
then mv -f ".deps/udrec_suite_gui-usguibase.Tpo" ".deps/udrec_suite_gui-usguibase.Po"; \
else rm -f ".deps/udrec_suite_gui-usguibase.Tpo"; exit 1; \
fi
usguibase.cpp:164: error: duplicate `const'
usguibase.cpp:195: error: duplicate `const'
usguibase.cpp:256: error: duplicate `const'
usguibase.cpp:368: error: duplicate `const'
usguibase.cpp:403: error: duplicate `const'
usguibase.cpp:496: error: duplicate `const'
usguibase.cpp:517: error: duplicate `const'
usguibase.cpp:535: error: duplicate `const'
usguibase.cpp:593: error: duplicate `const'
usguibase.cpp:791: error: duplicate `const'
usguibase.cpp:822: error: duplicate `const'
usguibase.cpp:860: error: duplicate `const'
usguibase.cpp:1425: error: duplicate `const'
usguibase.cpp:1556: error: duplicate `const'
usguibase.cpp:1737: error: duplicate `const'
make[5]: *** [udrec_suite_gui-usguibase.o] Fehler 1
make[5]: Leaving directory `/home/daniel/dbox/udrec/udrec_suite/src/usgui'
make[4]: *** [all-recursive] Fehler 1
make[4]: Leaving directory `/home/daniel/dbox/udrec/udrec_suite/src/usgui'
make[3]: *** [all] Fehler 2
make[3]: Leaving directory `/home/daniel/dbox/udrec/udrec_suite/src/usgui'
make[2]: *** [all-recursive] Fehler 1
make[2]: Leaving directory `/home/daniel/dbox/udrec/udrec_suite/src'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/home/daniel/dbox/udrec/udrec_suite'
make: *** [all] Fehler 2
[daniel@DBox udrec_suite]$
cu...
luke999
stdin
Interessierter
Interessierter
Beiträge: 93
Registriert: Freitag 15. Oktober 2004, 18:40

Beitrag von stdin »

hab mal weiter probiert:

ein make install funktioniert mit folgendem fehler:

Code: Alles auswählen

[...]
make[4]: Entering directory `/home/daniel/dbox/udrec/udrec_suite/src/usgui'
if g++ -DHAVE_CONFIG_H -I. -I. -I../..    -g -O2  -I../common -I./xmltv -I/usr/lib/qt3//include -D_REENTRANT -DQT_THREAD_SUPPORT -g -O2 -MT udrec_suite_gui-usguibase.o -MD -MP -MF ".deps/udrec_suite_gui-usguibase.Tpo" \
  -c -o udrec_suite_gui-usguibase.o `test -f 'usguibase.cpp' || echo './'`usguibase.cpp; \
then mv -f ".deps/udrec_suite_gui-usguibase.Tpo" ".deps/udrec_suite_gui-usguibase.Po"; \
else rm -f ".deps/udrec_suite_gui-usguibase.Tpo"; exit 1; \
fi
usguibase.cpp:164: error: duplicate `const'
usguibase.cpp:195: error: duplicate `const'
usguibase.cpp:256: error: duplicate `const'
usguibase.cpp:368: error: duplicate `const'
usguibase.cpp:403: error: duplicate `const'
usguibase.cpp:496: error: duplicate `const'
usguibase.cpp:517: error: duplicate `const'
usguibase.cpp:535: error: duplicate `const'
usguibase.cpp:593: error: duplicate `const'
usguibase.cpp:791: error: duplicate `const'
usguibase.cpp:822: error: duplicate `const'
usguibase.cpp:860: error: duplicate `const'
usguibase.cpp:1425: error: duplicate `const'
usguibase.cpp:1556: error: duplicate `const'
usguibase.cpp:1737: error: duplicate `const'
make[4]: *** [udrec_suite_gui-usguibase.o] Fehler 1
make[4]: Leaving directory `/home/daniel/dbox/udrec/udrec_suite/src/usgui'
make[3]: *** [install-recursive] Fehler 1
make[3]: Leaving directory `/home/daniel/dbox/udrec/udrec_suite/src/usgui'
make[2]: *** [install] Fehler 2
make[2]: Leaving directory `/home/daniel/dbox/udrec/udrec_suite/src/usgui'
make[1]: *** [install-recursive] Fehler 1
make[1]: Leaving directory `/home/daniel/dbox/udrec/udrec_suite/src'
make: *** [install-recursive] Fehler 1
[root@DBox udrec_suite]#
ich denke mal die gui für udrec ist nicht installiert, oder?

folgende proggis sind installiert worden:

Code: Alles auswählen

[daniel@DBox udrec_suite]$ ls /usr/local/bin/ud*
/usr/local/bin/ud_daemon.pl*    /usr/local/bin/ud_mux.pl*
/usr/local/bin/ud_demux.pl*     /usr/local/bin/udrec.exe*
/usr/local/bin/ud_getfmt.pl*    /usr/local/bin/udrec_suite*
/usr/local/bin/ud_launchpx.pl*  /usr/local/bin/ud_requant.pl*
/usr/local/bin/ud_mpg2ts.pl*    /usr/local/bin/ud_suite.pl*
vielleicht hilft es ja zur fehlerfindung ;)
alsuffndruff
Einsteiger
Einsteiger
Beiträge: 264
Registriert: Montag 9. Juni 2003, 21:18

Beitrag von alsuffndruff »

OK, erstmal danke für die Info.
Ich compilier hier gerade qt 3.2.2 und werde das damit versuchen.


Das mit dem make install ist so eine Sache. Das make install bricht bei dem Fehler ab, d.h. alles was danach installiert worden wäre wurde nicht installiert. Anders gesagt: Schwer zu sagen in was für einem Zustand sich dein System bezogen auf die udrec_suite befindet, Das gui ist sicher nicht installiert, udconfig auch nicht. D.h. du muesstest die Config datei von Hand anpassen, ist aber zu verkraften.
Versuch doch einfach mal ne Aufnahme, nachdem du das config file angepasst hast (ud_suite.conf). Lasse automatische in mpg erzeugen. Gib dann "dvdwizard [mpgname]" ein und schau ob ein dvd Verzeichnis erzeugt wird. Wenn du das mit xine anschauen kannst dann funktioniert das wichtigste (bis auf das gui).

Wie oben schon gesagt: Ich werde das mal mit der älteren Version versuchen. Wenn das geklappt hat checke ich ein und sage Bescheid, dann kannst du nochmal versuchen.

Am Rande: Vielleicht solltest du statt direkt "make install" einzugeben ein alternatives DESTDIR angeben, damit du die Dateileichen später wieder loswirst.

Gruss
Kai
alsuffndruff
Einsteiger
Einsteiger
Beiträge: 264
Registriert: Montag 9. Juni 2003, 21:18

Beitrag von alsuffndruff »

Ok, habe es jetzt mit qt 3.2.2 übersetzt und scheint zu tun.

Ist alles im cvs, kannst du mal checken obs jetzt bei dir tut? Bin auf deine Antwort gespannt :-)

Gruss
Kai
stdin
Interessierter
Interessierter
Beiträge: 93
Registriert: Freitag 15. Oktober 2004, 18:40

Beitrag von stdin »

hi,

also das compilieren verlief ohne probleme :)

was hast du noch geändert ausser die anpassung der ui' s (das hatte ich an den quellen auch schon probiert, jedoch o.g. fehler erhalten???)?

aber, nach dem aufruf von udconfig und entsprechender einrichtung erhalte ich beim start folgende fehlermeldungen;

Code: Alles auswählen

[daniel@DBox udrec_suite]$ udrec_suite_config
FEHLER: Benoetige Variable UDREC_CFG
[daniel@DBox udrec_suite]$ udrec_suite_gui
FEHLER: Benoetige Variable UDREC_CFG
[daniel@DBox udrec_suite]$ udrec_suite_gui start
FEHLER: Benoetige Variable UDREC_CFG
[daniel@DBox udrec_suite]$
hab mal ein bischen in deinen quellen gestöbert und als ursache die datei main.cpp erhalten.
dort wird versucht eine umgebungsvariable festzulegen, was irgendwie scheitert!
hast du für mich noch ein tip was da falsch lief?

cu...
luke999
stdin
Interessierter
Interessierter
Beiträge: 93
Registriert: Freitag 15. Oktober 2004, 18:40

Beitrag von stdin »

... und noch ein problem <ohne worte>

Code: Alles auswählen

mono /usr/local/bin/udrec.exe
19:07:35 listening to any host on port 4000
19:07:46 to DBox: VIDEO 31341 16 0 1 va 0ff 100
19:07:46 from DBox: INFO: IP c0a80501 Port 31341
19:07:46 from DBox: PID va 2 ff 100
19:07:46 to DBox: START
19:07:46 from DBox: INFO: UdpSender() - PID796 R0 W0
19:07:46 from DBox: INFO: DmxReader() - Pid ff 204960 0 0
19:07:46 from DBox: INFO: DmxReader() - Pid 100 29280 0 0
Segmentation fault   <=========================================================== hier
[root@DBox log]#
alsuffndruff
Einsteiger
Einsteiger
Beiträge: 264
Registriert: Montag 9. Juni 2003, 21:18

Beitrag von alsuffndruff »

luke999 hat geschrieben:hi,

was hast du noch geändert ausser die anpassung der ui' s (das hatte ich an den quellen auch schon probiert, jedoch o.g. fehler erhalten???)?

hast du für mich noch ein tip was da falsch lief?

cu...
luke999
Ich musste einige Icons mitdem alten designer neu einbinden, dann liefs. Ansonsten prima, freut mich !!!

Du musst "usgui" starten, nicht udrec_suite_gui, du denkst zuviel
:D

Was das Problem mit udrec betrifft, keine Ahnung, ich schau mal heute abend (bei mir tats aber). Du kannst aber auch direkt streamen (würde ich dir mit deinen unix Kenntnissen eh empfehlen)

Gruss
Kai
stdin
Interessierter
Interessierter
Beiträge: 93
Registriert: Freitag 15. Oktober 2004, 18:40

Beitrag von stdin »

hi alsuffndruff,
alsuffndruff hat geschrieben: Du musst "usgui" starten, nicht udrec_suite_gui, du denkst zuviel
:D
ups, yep es geht ... :lol:

werd mal ein wenig probieren ...

cu...
luke999
alsuffndruff
Einsteiger
Einsteiger
Beiträge: 264
Registriert: Montag 9. Juni 2003, 21:18

Beitrag von alsuffndruff »

sag mal der segfault wurde doch von udrec produziert, oder etwa von meinen tools? (Kann gar nicht sein :roll: )
stdin
Interessierter
Interessierter
Beiträge: 93
Registriert: Freitag 15. Oktober 2004, 18:40

Beitrag von stdin »

richtig!


folgende vorgensweise:

programmstart mittels $ mono /usr/local/bin/udrec.exe
ausgabe:

Code: Alles auswählen

[daniel@DBox log]$ mono /usr/local/bin/udrec.exe
20:11:16 listening to any host on port 4000
danach habe ich über dem streamingserver der dbox eine aufnahme gestartet.
ausgabe:

Code: Alles auswählen

Segmentation fault
eine verbose-, bzw. debug option habe ich bei udrec nicht gefunden, sonst hätte ich dir die ausgabe zukommen lassen!
stdin
Interessierter
Interessierter
Beiträge: 93
Registriert: Freitag 15. Oktober 2004, 18:40

Beitrag von stdin »

hab mal weiter getestet...

hab mir die binary von der author-homepage gezogen und gestartet.
ausgabe:

Code: Alles auswählen

[daniel@DBox udrec_only]$ mono udrec.exe
20:33:46 listening to any host on port 4000
20:33:50 to DBox: VIDEO 31341 16 0 1 va 0a1 054
20:33:51 from DBox: INFO: IP c0a80501 Port 31341
20:33:51 from DBox: PID va 2 a1 54
20:33:52 to DBox: START
20:33:52 from DBox: INFO: UdpSender() - PID1320 R0 W0
20:33:52 from DBox: INFO: DmxReader() - Pid a1 204960 0 0
20:33:52 from DBox: INFO: DmxReader() - Pid 54 29280 0 0
20:34:00 found video stream (e0)
20:34:00 found mp2 stream (c0)
20:34:04 16:55:29.56: video resync
20:34:42 to DBox: STOP
20:34:42 network statistics:
max:      4,9 Mbit/s total data rate
average:  4,2 Mbit/s total data rate
average:  0,000 Mbit/s resend data rate
count:    0 resend packets
average:  1 resend packet per 19200,0 total packets
max:      0 packets per resend
average:  0,0 packets per resend
20:34:42 TcpSender stopped
20:34:42 ESSync stopped - no stream errors
20:34:42 listening to any host on port 4000
Segmentation fault
[daniel@DBox udrec_only]$
will auch nicht so recht ... hat aber zumindest aufgenommen :gruebel:
alsuffndruff
Einsteiger
Einsteiger
Beiträge: 264
Registriert: Montag 9. Juni 2003, 21:18

Beitrag von alsuffndruff »

Ok, an dieser Stelle sollte tonsel übernehmen :-)
Kann es sein dass du eine zu alte (sprich beta) Version von mono hast?

Bei mir funktioniert alles wunderbar, habs eben getestet
stdin
Interessierter
Interessierter
Beiträge: 93
Registriert: Freitag 15. Oktober 2004, 18:40

Beitrag von stdin »

autsch, da hast du voll ins schwarze getroffen :oops:

Code: Alles auswählen

[daniel@DBox VOB_erstellen]$ mono --version
Mono JIT compiler version 0.30.1, (C) 2002-2004 Novell, Inc. www.go-mono.com
[daniel@DBox VOB_erstellen]$
ups, bitte nichts sagen <ascheaufmeinhaupt> ... hab mir gerade mal ca. 40mb mono rpm' s gezogen und siehe da, es funktioniert soweit

meine jetzige version

Code: Alles auswählen

[daniel@DBox bin]$ mono --version
Mono JIT compiler version 1.0.2, (C) 2002-2004 Novell, Inc and Contributors. www.go-mono.com
        TLS:           __thread
        GC:            Included Boehm (with typed GC)
        SIGSEGV      : normal
        Globalization: ICU
[daniel@DBox bin]$