Problem bei der Direktaufnahme

Digital Recording
kaschperle83
Interessierter
Interessierter
Beiträge: 55
Registriert: Donnerstag 12. Januar 2006, 02:18

Problem bei der Direktaufnahme

Beitrag von kaschperle83 »

Ich hatte gestern volgendes Problem bis jetz hat das Graben als Direktaufnahme immer ohne Probleme funktioniert(bei Premiere) jetzt wollte ich gester mal was bei ARD aufnehemen und dabei ist die Aufnahme alles zehn Minuten mit der Fehlermeldung das die Datei nicht schnell genug geschrieben werden konnte abgebrochen. An was kann das liegen?
MFG
Markus
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Beitrag von Tommy »

Premiere hat keine so hohe Datenrate wie die ÖR'is. Liegt an deinem Netzwerk :cry:
---------------------------
Alle weiteren Infos findest Du im WIKI
Bitte vor dem posten Boardregeln lesen und verstehen!
Wie erstelle ich ein Bootlog? Wo finde ich die FAQ?
kaschperle83
Interessierter
Interessierter
Beiträge: 55
Registriert: Donnerstag 12. Januar 2006, 02:18

Beitrag von kaschperle83 »

was kann ich da den ändern eigentlich besteht das netzwerk nur aus einem PC der DBox und nem Router dei FritzBox.Meines wissens läuft das Netzwerk eigentlich recht gut aber was könnte ich vieleicht ändern?
wolgade
Semiprofi
Semiprofi
Beiträge: 1313
Registriert: Donnerstag 2. Dezember 2004, 00:18

Beitrag von wolgade »

Da kann ich ja mal meinen allerersten Thread verlinken:
http://forum.tuxbox.org/forum/viewtopic.php?t=34724
Mit dem dort verlinkten Skript von Essu kann man die NFS-Schreib- und Lesegeschwindigkeit messen.

Ich hab das damals exzessiv gemacht und immer wieder Komponenten getauscht. Am Ende herausgekommen sind ein neuer Switch, ein optimierter Kernel für meinen Eisfair, optimale Einstellungen für die Netzwerkkarte, optimale Mountoptionen und eine ganz wichtige Erkenntnis: Es gibt kein Patentrezept. Alle Tips zur Netzwerkoptimierung, die hier so rumgeistern, können bei Änderung nur einer Netzwerkkomponente nach hinten losgehen.

Wenn du also wissen willst, wo es bei dir klemmt, dann miß mal mit dem Skript und poste die Ergebnisse.
kaschperle83
Interessierter
Interessierter
Beiträge: 55
Registriert: Donnerstag 12. Januar 2006, 02:18

Beitrag von kaschperle83 »

So das mit dem Skript werde ich auf jeden Fall mal probieren nur da ich an der D-Box noch nie mit einem Skript gearbeitet habe (zumindestens noch nicht bewußt) wäre es schön wenn mir jemand mal sagen könnte wie ich das Skript ausführen bzw. nutzen kann und wo ich die ergebnise ablesen mus.
Vielen Dank schon mal! :gruebel:
wolgade
Semiprofi
Semiprofi
Beiträge: 1313
Registriert: Donnerstag 2. Dezember 2004, 00:18

Beitrag von wolgade »

Das wichtigste ist, daß der Editor, mit dem du das Skript erstellst, UNIX-Zeilenumbrüche unterstützt. Notepad unter Windows kann das definitiv nicht.

Das fertige Skript per FTP auf die Box nach /var/tmp oder /tmp verfrachten.

Per Telnet auf die Box, mit

Code: Alles auswählen

cd /var/tmp
bzw.

Code: Alles auswählen

cd /tmp
in das Vereichnis wechseln, wo das Skript liegt, das Skript ausführbar machen mit

Code: Alles auswählen

chmod 755 mein_tolles_skript
ausführen mit

Code: Alles auswählen

./mein_tolles_skript meine_freigabe > ergebnis
Das läuft jetzt ne Weile. Anschließend findest du im gleichen Verzeichnis, wo auch das Skript liegt, die Datei "ergebnis". Das ist eine normale Textdatei. Entweder per FTP auf den PC holen, was zum Posten praktisch wäre, oder mit

Code: Alles auswählen

cat ergebnis
im Telnetfenster angucken.
kaschperle83
Interessierter
Interessierter
Beiträge: 55
Registriert: Donnerstag 12. Januar 2006, 02:18

Beitrag von kaschperle83 »

Welches Program sollte ich da nutzen und welche dateiendung soll ich dem Script verpassen?
jmittelst
Tuxboxer
Tuxboxer
Beiträge: 6044
Registriert: Montag 17. November 2003, 06:48

Beitrag von jmittelst »

Linux braucht keine Dateiendung, .sh wäre aber passend.

Ein Linux-fähiger Editor wäre gut. Ich benutze Crimson Editor (Freeware) und hatte mit dem nie Probleme. Der kann auch selbst FTP-Verbindungen aufbauen, man braucht dann also nicht noch zusätzlich ein FTP-Programm.

cu
Jens
kaschperle83
Interessierter
Interessierter
Beiträge: 55
Registriert: Donnerstag 12. Januar 2006, 02:18

Beitrag von kaschperle83 »

Danke für die Tips ich werds gleich heute abend ausprobieren und die Ergebnisse posten!
kaschperle83
Interessierter
Interessierter
Beiträge: 55
Registriert: Donnerstag 12. Januar 2006, 02:18

Beitrag von kaschperle83 »

udp, sync
512000
192.157.63.10:dbox on /mnt/filme type nfs (rw,v3,rsize=8192,wsize=8192,soft,udp,nolock,addr=192.157.63.10)
192.157.63.10:/dbox on /mnt/filme type nfs (rw,sync,v3,rsize=32768,wsize=8192,soft,udp,nolock,addr=192.157.63.10)

udp, async
192.157.63.10:dbox on /mnt/filme type nfs (rw,v3,rsize=8192,wsize=8192,soft,udp,nolock,addr=192.157.63.10)
192.157.63.10:/dbox on /mnt/filme type nfs (rw,v3,rsize=32768,wsize=8192,soft,udp,nolock,addr=192.157.63.10)

tcp, sync
192.157.63.10:dbox on /mnt/filme type nfs (rw,v3,rsize=8192,wsize=8192,soft,udp,nolock,addr=192.157.63.10)
192.157.63.10:/dbox on /mnt/filme type nfs (rw,sync,v3,rsize=32768,wsize=32768,soft,tcp,nolock,addr=192.157.63.10)

tcp, async
192.157.63.10:dbox on /mnt/filme type nfs (rw,v3,rsize=8192,wsize=8192,soft,udp,nolock,addr=192.157.63.10)
192.157.63.10:/dbox on /mnt/filme type nfs (rw,v3,rsize=32768,wsize=32768,soft,tcp,nolock,addr=192.157.63.10)



so das war das ergebnis mit firewall gleich kommen die daten nochmal ohne firewall
[/code]
kaschperle83
Interessierter
Interessierter
Beiträge: 55
Registriert: Donnerstag 12. Januar 2006, 02:18

Beitrag von kaschperle83 »

udp, sync
192.157.63.10:dbox on /mnt/filme type nfs (rw,v3,rsize=8192,wsize=8192,soft,udp,nolock,addr=192.157.63.10)
192.157.63.10:/dbox on /mnt/filme type nfs (rw,sync,v3,rsize=32768,wsize=8192,soft,udp,nolock,addr=192.157.63.10)

udp, async
192.157.63.10:dbox on /mnt/filme type nfs (rw,v3,rsize=8192,wsize=8192,soft,udp,nolock,addr=192.157.63.10)
192.157.63.10:/dbox on /mnt/filme type nfs (rw,v3,rsize=32768,wsize=8192,soft,udp,nolock,addr=192.157.63.10)

tcp, sync
192.157.63.10:dbox on /mnt/filme type nfs (rw,v3,rsize=8192,wsize=8192,soft,udp,nolock,addr=192.157.63.10)
192.157.63.10:/dbox on /mnt/filme type nfs (rw,sync,v3,rsize=32768,wsize=32768,soft,tcp,nolock,addr=192.157.63.10)

tcp, async
192.157.63.10:dbox on /mnt/filme type nfs (rw,v3,rsize=8192,wsize=8192,soft,udp,nolock,addr=192.157.63.10)
192.157.63.10:/dbox on /mnt/filme type nfs (rw,v3,rsize=32768,wsize=32768,soft,tcp,nolock,addr=192.157.63.10)

so und jetzt ohne firewall und was kann ich jetzt aus den ergenissen ersehen?
wolgade
Semiprofi
Semiprofi
Beiträge: 1313
Registriert: Donnerstag 2. Dezember 2004, 00:18

Beitrag von wolgade »

Gar nix. Interessant ist die Datei, die das Skript geschrieben hat. Wenn du also

Code: Alles auswählen

mein_tolles_skript.sh meine_freigabe > mein_ergebnis
eigegeben hast dann wäre der Inhalt von "mein_ergebnis" interessant.
kaschperle83
Interessierter
Interessierter
Beiträge: 55
Registriert: Donnerstag 12. Januar 2006, 02:18

Beitrag von kaschperle83 »

so wie ich gesehen habe habe ich den inhalt direkt aus den ergebnis dateien hierher kopiert.das hat die box ausgeworfen
wolgade
Semiprofi
Semiprofi
Beiträge: 1313
Registriert: Donnerstag 2. Dezember 2004, 00:18

Beitrag von wolgade »

Mach das mal so, wie ich es beschrieben habe, also mit Ausgabeumlenkung in eine Datei. Sonst wird das nix.
kaschperle83
Interessierter
Interessierter
Beiträge: 55
Registriert: Donnerstag 12. Januar 2006, 02:18

Beitrag von kaschperle83 »

Das ist das was mir die DBox jetzt ausgegeben hat ich hoffe das dies jetzt richtig ist.

udp, sync
192.157.63.10:/dbox on /mnt/filme type nfs (rw,sync,v3,rsize=32768,wsize=8192,so
ft,udp,nolock,addr=192.157.63.10)

udp, async
512000
192.157.63.10:/dbox on /mnt/filme type nfs (rw,v3,rsize=32768,wsize=8192,soft,ud
p,nolock,addr=192.157.63.10)

tcp, sync
512000
192.157.63.10:/dbox on /mnt/filme type nfs (rw,sync,v3,rsize=32768,wsize=32768,s
oft,tcp,nolock,addr=192.157.63.10)

tcp, async
192.157.63.10:/dbox on /mnt/filme type nfs (rw,v3,rsize=32768,wsize=32768,soft,t
cp,nolock,addr=192.157.63.10)
kaschperle83
Interessierter
Interessierter
Beiträge: 55
Registriert: Donnerstag 12. Januar 2006, 02:18

Beitrag von kaschperle83 »

vieleicht ist ja auch wichtig was die console noch auswirft das wäre dann folgendes


udp, sync
192.157.63.10:/dbox on /mnt/filme type nfs (rw,sync,v3,rsize=32768,wsize=8192,so
ft,udp,nolock,addr=192.157.63.10)

udp, async
512000
192.157.63.10:/dbox on /mnt/filme type nfs (rw,v3,rsize=32768,wsize=8192,soft,ud
p,nolock,addr=192.157.63.10)

tcp, sync
512000
192.157.63.10:/dbox on /mnt/filme type nfs (rw,sync,v3,rsize=32768,wsize=32768,s
oft,tcp,nolock,addr=192.157.63.10)

tcp, async
192.157.63.10:/dbox on /mnt/filme type nfs (rw,v3,rsize=32768,wsize=32768,soft,t
cp,nolock,addr=192.157.63.10)
kaschperle83
Interessierter
Interessierter
Beiträge: 55
Registriert: Donnerstag 12. Januar 2006, 02:18

Beitrag von kaschperle83 »

Ups das war wohl ausversehen was doppeltes also hier ist das was die console tatsächlich auswirft

/tmp > ./script dbox > ergebnisa
dd: /mnt/filme/test: Is a directory
Command exited with non-zero status 1
real 0m 0.04s
user 0m 0.01s
sys 0m 0.03s
expr: division by zero
dd: /mnt/filme/test: Is a directory
Command exited with non-zero status 1
real 0m 0.05s
user 0m 0.00s
sys 0m 0.04s
expr: division by zero
dd: /mnt/filme/test: Is a directory
Command exited with non-zero status 1
real 0m 0.04s
user 0m 0.01s
sys 0m 0.02s
dd: /mnt/filme/test: Is a directory
Command exited with non-zero status 1
real 0m 0.04s
user 0m 0.02s
sys 0m 0.01s
expr: division by zero
dd: /mnt/filme/test: Is a directory
Command exited with non-zero status 1
real 0m 0.04s
user 0m 0.02s
sys 0m 0.03s
expr: division by zero
dd: /mnt/filme/test: Is a directory
Command exited with non-zero status 1
real 0m 0.04s
user 0m 0.02s
sys 0m 0.03s
dd: /mnt/filme/test: Is a directory
Command exited with non-zero status 1
real 0m 0.04s
user 0m 0.01s
sys 0m 0.02s
expr: division by zero
dd: /mnt/filme/test: Is a directory
Command exited with non-zero status 1
real 0m 0.04s
user 0m 0.03s
sys 0m 0.01s
expr: division by zero
/tmp > cat ergebnisa
wolgade
Semiprofi
Semiprofi
Beiträge: 1313
Registriert: Donnerstag 2. Dezember 2004, 00:18

Beitrag von wolgade »

Da läuft was schief.

Code: Alles auswählen

dd: /mnt/filme/test: Is a directory
Command exited with non-zero status 1
real 0m 0.04s
user 0m 0.01s
sys 0m 0.03s
expr: division by zero 
Irgendwie klappt das Mounten schon nicht.
wolgade
Semiprofi
Semiprofi
Beiträge: 1313
Registriert: Donnerstag 2. Dezember 2004, 00:18

Beitrag von wolgade »

Ich erkläre mal Schritt für Schritt, wie das bei mir funktioniert. Als NFS-Server nutze ich Eisfair auf einem alten Rechner.

Eisfair IP: 192.168.0.250
Freigabe: /daten

Wenn ich mich jetzt per Telnet auf der D-Box einlogge und

mount -t nfs -o rw,soft,nolock 192.168.0.250:/daten /mnt/filme/

eingebe, dann muß das ohne Fehlermeldung funktionieren. Überprüfen wir das ganze:

Nach der Eingabe von

mount

steht da

/dev/root on / type squashfs (ro)
none on /dev type devfs (rw)
proc on /proc type proc (rw)
tmpfs on /tmp type ramfs (rw)
/dev/mtdblock/2 on /var type jffs2 (rw)
192.168.0.250:/daten on /mnt/filme type nfs (rw,v3,rsize=32768,wsize=32768,soft,udp,nolock,addr=192.168.0.250)

Die letzte Zeile interessiert uns. Sie bedeutet,daß die Freigabe "/daten" auf "192.168.0.250" ist per NFS in das lokale Dateisystem unter "/mnt/filme" eingebunden ist. Aushängen können wir sie mit

umount /mnt/filme/

Auch das läßt sich mit "mount" überprüfen.

Jetzt geht es los. Mein Skript heißt "mnttest" und hat folgenden Inhalt:

Code: Alles auswählen

#!/bin/sh
V=$1
R=`expr 32 \* 1024`
for P in udp tcp
do
 for S in sync async
 do
 echo
 echo $P", "$S
                umount /mnt/filme
                mount -t nfs -o rw,soft,$P,nolock,$S,rsize=$R,wsize=$R 192.168.0.250:/$V /mnt/filme
                a=`date +%s`
                time dd if=/dev/zero of=/mnt/filme/test bs=8k count=8192
                z=`date +%s`
                n=`expr $z - $a`
                expr 512000 / $n
                a=`date +%s`
                time dd of=/dev/null if=/mnt/filme/test bs=8k count=8192
                z=`date +%s`
                n=`expr $z - $a`
                expr 512000 / $n
                mount | grep /mnt/filme
 done
done

Was man hier nicht sieht, manchmal aber wichtig ist: Nach dem letzten Befehl im Skript eine Leerzeile einfügen!

Jetzt wird das Skript per FTP nach /tmp auf die Box geschoben und mit "chmod 755 mnttest" ausführbar gemacht. Der Aufruf ist jetzt

./mnttest daten > ergebnis

An dieser Stelle hatte ich jetzt auch das Problem, daß das Skript rumzickte. Ich hab das dann mit "STRG-C" abgeschossen und noch mal neu gestartet.

Die Datei "ergebnis" sieht jetzt so aus:

udp, sync
5224
145
192.168.0.250:/daten on /mnt/filme type nfs (rw,sync,v3,rsize=32768,wsize=32768,soft,udp,nolock,addr=192.168.0.250)

udp, async
8827
145
192.168.0.250:/daten on /mnt/filme type nfs (rw,v3,rsize=32768,wsize=32768,soft,udp,nolock,addr=192.168.0.250)

tcp, sync
5019
7529
192.168.0.250:/daten on /mnt/filme type nfs (rw,sync,v3,rsize=32768,wsize=32768,soft,tcp,nolock,addr=192.168.0.250)

tcp, async
7876
7529
192.168.0.250:/daten on /mnt/filme type nfs (rw,v3,rsize=32768,wsize=32768,soft,tcp,nolock,addr=192.168.0.250)

Die erste Zeile eines Viererblocks gibt die Mountoptionen an, in der zweiten steht der Datendurchsatz beim Schreiben, in der dritten der Datendurchsatz beim Lesen. Was fällt hier auf? Bei udp,async ist der Datendurchsatz beim Schreiben am größten. 8,8Mb/s dürfte am oberen Ende dessen liegen, was mit der Schnittstelle der Box zu machen ist. udp,async sind folglich meine Mountoptionen für die Aufnahme. Was fällt noch auf? Der Durchsatz beim Lesen ist katastrophal bei udp. Bei tcp ist er besser, aber immer noch nicht doll.

Bisher hatte ich die Netzwerkkarte des Eisfair auf 100Mb/s, full-duplex eingestellt. Jetzt stelle ich sie auf 10Mb/s, half-duplex und messe noch einmal. Ergebnis:

udp, sync
4302
8258
192.168.0.250:/daten on /mnt/filme type nfs (rw,sync,v3,rsize=32768,wsize=32768,soft,udp,nolock,addr=192.168.0.250)

udp, async
8393
8393
192.168.0.250:/daten on /mnt/filme type nfs (rw,v3,rsize=32768,wsize=32768,soft,udp,nolock,addr=192.168.0.250)

tcp, sync
4162
7420
192.168.0.250:/daten on /mnt/filme type nfs (rw,sync,v3,rsize=32768,wsize=32768,soft,tcp,nolock,addr=192.168.0.250)

tcp, async
7111
7420
192.168.0.250:/daten on /mnt/filme type nfs (rw,v3,rsize=32768,wsize=32768,soft,tcp,nolock,addr=192.168.0.250)

Hoppla! Jetzt ist der Datendurchsatz beim Lesen viel höher. Dafür ist er beim Schreiben nicht mehr so gut.

Fazit: Ich mounte mit udp,async. Bei der Aufnahme stelle ich die Netzwerkkarte auf 100Mb/s, full-duplex, bei der Wiedergabe auf 10Mb/s, half-duplex.

Ich hab das jetzt mal so ausführlich geschrieben, damit die einzelnen Schritte deutlich werden. Außerdem sieht man an meinem Extrembeispiel, daß sich das Messen lohnt.
kaschperle83
Interessierter
Interessierter
Beiträge: 55
Registriert: Donnerstag 12. Januar 2006, 02:18

Eis

Beitrag von kaschperle83 »

Vielen dank schon mal im vorraus für die ausführliche Beschreibung ich werde sie sobald ich zeit habe umsetzten also morgen früh!
Ich hätte da noch mal me kleine Frage gehört zwar nicht hier aber es sieht so aus als hättest du davon ahnung.Also ich experimentiers im moment auch mit nme eis server rum aber jetzt mal meine Frage wie erteile ich darauf ne freigabe und welches paket brauche ich dazu?Würde da unter umständen der nfsserver ausreichen?und wie muss ich das dann einstellen bzw. wo könnte ich vieleicht ein howto dafür herbekommen?
petgun
Tuxboxer
Tuxboxer
Beiträge: 5001
Registriert: Montag 11. November 2002, 15:26

Re: Eis

Beitrag von petgun »

@kaschperle83
was hast Du eigentlich bisher fuer einen NFS-Server? Da klappt ja nix bei Dir...mit CIFS funktionieren keine Aufnahmen von Sendern mit Datenraten >6,5 Mbps...und das hier empfohlene Script funktioniert natuerlich auch nicht.
kaschperle83
Interessierter
Interessierter
Beiträge: 55
Registriert: Donnerstag 12. Januar 2006, 02:18

Beitrag von kaschperle83 »

Wer lesen kann ist klar im vorteil muss ich da mal sagen also die aufname hat bei mir bis jetzt unter Premiere einwandfrei funkftioniert nur bei ARD hats nicht geklappt.
So und jetzt wieder zum Thema also bis jetzt habe ich die ganze Zeit SFU für Windows genutzt auf meinem normalem PC aber da ich noch einen alten habe wollte ich da jetzt mal mit nem Linux OS versuchen nen Server nur zum aufzeichnen zusammen zu basteln. Und dabei bin ich auf Eisfair gestoßen.
petgun
Tuxboxer
Tuxboxer
Beiträge: 5001
Registriert: Montag 11. November 2002, 15:26

Beitrag von petgun »

kaschperle83 hat geschrieben:Wer lesen kann ist klar im vorteil muss ich da mal sagen...
:gruebel: stimmt, und dass Du einen NFS-Server (SFU) benutzt, erwaehnst Du _nach_ meiner Frage hier:
So und jetzt wieder zum Thema also bis jetzt habe ich die ganze Zeit SFU für Windows genutzt..
zum ersten mal. Sorry, dass ich Dir bei den ganzen Schwierigkeiten die Du hast, unterstellt habe evtl. CIFS zu nutzen mit dem durchaus fehlerfreie Aufnahmen von Premiere gemacht werden koennen.

Dein geplanter Umstieg auf einen Eisfair-Server (mit schwaecherer Hardware) wird Dir imo bei Deinem 'Problem' nicht helfen....es gibt nix schnelleres als SFU bei einem 0815-PC und mit denen hier im Forum mehrfach erwaehnten 'richtigen' mount Optionen fuer SFU, sollte es sogar mit Datenraten >9Mbps klappen, was imo sehr schwer mit einem Eisfair-Server auf schwaecherer Hardware zu toppen ist....besonders wenn man von Linux null Plan hat....scheint mir jedenfalls bei Dir so.

PS:behalte Deine bisherigen DBox-Mountoptionen-Aufnahmeeinstellungen/PC-Netzwerk-SFU-Konfiguration besser weiterhin fuer Dich...sonst koennte man Dir evtl. doch noch helfen....meine Kristallkugel ist dafuer mit Sicherheit jetzt zu blind geworden.
wolgade
Semiprofi
Semiprofi
Beiträge: 1313
Registriert: Donnerstag 2. Dezember 2004, 00:18

Beitrag von wolgade »

@kaschperle83:
Bei Eisfair und jeder anderen Linux-Distribution brauchst du das Paket nfs-utils. Bei Eisfair kann es sinnvoll sein, die Datei /etc/exports von Hand anzupassen. Das kommt aber erst im zweiten Schritt. Erstmal muß das laufen, d. h. das Skript sollte funktionieren. Anpassungen von Hand dienen nur der Optimierung.