You are not logged in.

Dear visitor, welcome to VDR Portal. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

21

Thursday, April 19th 2012, 11:06pm

Mit -DUSE_AUDIO_DRIFT_CORRECTION ist es eher schlechter, jedenfalls nicht besser.
Mir geht es um die kurze Phase direkt nach dem Sprung, während der das Video zu langsam läuft.
Das ist im Log nicht zu sehen.

Apr 19 22:51:02 vdr vdr: audio/alsa: start delay 336ms
Apr 19 22:51:02 vdr vdr: video: decoder buffer empty, duping frame (688/686) 0 v-buf
Apr 19 22:51:02 vdr vdr: video: 9:37:55.512+8888 0 0/\ms 0 v-buf
Apr 19 22:51:03 vdr vdr: video: decoder buffer empty, duping frame (701/686) 1 v-buf
Apr 19 22:51:03 vdr vdr: video: 9:37:45.712+1344 886 0/\ms 23 v-buf
Apr 19 22:51:04 vdr vdr: video: 9:37:46.212 +844 1110 0/\ms 59 v-buf
Apr 19 22:51:05 vdr vdr: video: 9:37:46.712 +344 1118 0/\ms 85 v-buf
Apr 19 22:51:06 vdr vdr: video: 9:37:47.412 +44 1102 0/\ms 100 v-buf
Apr 19 22:51:19 vdr vdr: video: 9:38:00.392 +24 1086 0/\ms 100 v-buf
Apr 19 22:51:23 vdr vdr: video: 9:38:04.372 +4 1094 0/\ms 100 v-buf

Mein VDR

Asrock M3A770DE, Sempron 140 @ DualCore, 3 x TT S2-1600, GT520
openSuse 13.1 64bit, Kernel 3.14.13 + BER/UNC-Patch für stv090x, nvidia 340.24, vdr 2.1.6 mit Patchen (checkts, naludump, statusleds, ...)

22

Friday, April 20th 2012, 4:03pm

Mmm es könnte sein, das die Zähler nicht zurückgesetzt werden. Damit dürfte beim Spulen immer der Soft-Start-Sync arbeiten.

Habe mal im GIT die Zeit auf 120 Bilder (2s - 2.4s) erhöht.

Diese veränderten Audio zu Video Zeiten stören halt mich.
Da sollte am Besten 24 Stunden lang, der erste gute Wert stehen.

Kann es sein das der Bildschirm mit 60Hz läuft?

Johns
Sag mir, wo die Developer sind. Wo sind sie geblieben? . . . . . . . . . . . . . . . . . . . . SoftHdDevice - A software and GPU emulated HD output device plugin.
Sag mir, wo die Developer sind. Was ist geschehn?

Client0: Crown CW02 MSI_C847MS-E33 Zotac_GT640_passiv Cine-S2 iMon-MCE / streamdev softhddevice
Client1: Lian_Li_PC-Q09FB ASRock_H67M-ITX/HT I3-2100 ASUS_ENGT520_passiv / streamdev softhddevice
Test: Lian_Li_PC-Q09R Asus C60M1-I / streamdev
Server0: Dockstar TT-S2-3600-USB / streamdev
Server2: Lian_Li_PC-Q07R Intel_DH61DL G620 WD20EARX 90W PicoPSU Cine-S2+DuoFlex-S2+DuoFlex-CT / streamdev / 22 Watt Verbrauch

23

Saturday, April 21st 2012, 1:00pm

Ich habe etwas geändert. Nun sollte die Sprünge wie eine neue Wiedergabe behandelt werden.

Johns
Sag mir, wo die Developer sind. Wo sind sie geblieben? . . . . . . . . . . . . . . . . . . . . SoftHdDevice - A software and GPU emulated HD output device plugin.
Sag mir, wo die Developer sind. Was ist geschehn?

Client0: Crown CW02 MSI_C847MS-E33 Zotac_GT640_passiv Cine-S2 iMon-MCE / streamdev softhddevice
Client1: Lian_Li_PC-Q09FB ASRock_H67M-ITX/HT I3-2100 ASUS_ENGT520_passiv / streamdev softhddevice
Test: Lian_Li_PC-Q09R Asus C60M1-I / streamdev
Server0: Dockstar TT-S2-3600-USB / streamdev
Server2: Lian_Li_PC-Q07R Intel_DH61DL G620 WD20EARX 90W PicoPSU Cine-S2+DuoFlex-S2+DuoFlex-CT / streamdev / 22 Watt Verbrauch

24

Saturday, April 21st 2012, 3:05pm

Das Display läuft mit 50 Hz.

Mit VideoSoftStartFrames 120 (habe auch mal 360 und 1200 ausprobiert) war es nicht besser:
Start der Aufnahme: Ton von Anfang an, erst kurz Standbild, dann läuft Bild ruckelfrei.
Weiter nach Sprung: Ton von Anfang an, Bild läuft ruckelnd an, dann gleichmäßig.

Jetzt mit VideoResetStart verhält er sich nach einem Sprung wie beim Start, wobei manchmal das Bild zerfällt. Das sieht aber eher noch schlechter aus, und als Nebeneffekt hängt er jetzt vor Beginn des schnellen Vorlaufs eine Weile fest. Trotzdem vielleicht ein guter Ansatz (?).

Mit vdr-xine gibt es weder Standbild noch Ruckeln.

Ich möchte noch mal die (modifizierte) Frage aus Post 1 stellen:
Bei xine laufen Audio und Video nach jedem Sprung praktisch sofort los. Dagegen dauert es beim softhddevice einen kurzen Moment, bis das Video gleichmäßig läuft / anläuft.
Ist das eigentlich prinzipiell aufgrund der Funktionsweise des softhddevice unvermeidlich, oder besteht da noch die Möglichkeit, es grundsätzlich zu verbessern, so dass es auch praktisch sofort gleichmäßig läuft? Softhddevice und xine funktionieren ja unterschiedlich, bei xine „tickt“ ein Metronom, und Audio und Video werden jeweils ständig daran angepasst, während beim softhddevice Video an Audio angepasst wird. Muss deshalb erst mal der Ton anlaufen, und erst mit einer Verzögerung das Bild? Und wieso ist die Verzögerung nicht praktisch unmerklich (bei Aufnahmen)?
In Post 17 hattest du geschrieben: Aber um eine halbe Sekunde Pause kommst du nicht herum.
Wie kommt es, dass das bei vdr-xine geht, und bei softhddevice nicht? Das soll jetzt keine Kritik sein, sondern eine Verständnis Frage (und natürlich der Wunsch, dass es eines Tages im softhddevice geht :-) ).

Mein VDR

Asrock M3A770DE, Sempron 140 @ DualCore, 3 x TT S2-1600, GT520
openSuse 13.1 64bit, Kernel 3.14.13 + BER/UNC-Patch für stv090x, nvidia 340.24, vdr 2.1.6 mit Patchen (checkts, naludump, statusleds, ...)

25

Saturday, April 21st 2012, 4:05pm

Habe es gerade getestet ohne Softstart, sieht man eine kaputte Frame. Da muß ich noch mal gucken, wie man die wegbekommt.
Mich würde mal intressieren von welchen Sender die Aufnahmen sind.

Man braucht min. 300 - 500 ms an gepufferten Audio, weil es sonst zu Ton Aussetzer kommt.
Dann kommt noch dazu, das einige Fernsehsender das Bild vor dem Ton senden.
In besonderen die Öffentlichen Sender machen dies.

Will ich jetzt Ton und Bild gleichzeitig loslaufen lassen, dann muß ich 1.5s an Bild wegschmeissen oder 1.5s warten bis der Ton kommt.
Im Moment liegt der Fokus noch auf LiveTV, da bringt es nichts an Bildern wegzuschmeissen.

Im Moment versuche ich die Zeit in der das Bild nicht mit der richtigen Geschwindigkeit läuft so klein wie möglich zuhalten.
Wenn also 1s fehlt, dann läuft das Bild nur 2s in Zeitluppe.

Als Alternative könnte man die Zeit in der das Bild langsam läuft vergrößern. Dann fällt einem die Zeitluppe nicht so auf.
Aber wärend dieser Zeit ist dann der Ton nach dem Bild.

Johns
Sag mir, wo die Developer sind. Wo sind sie geblieben? . . . . . . . . . . . . . . . . . . . . SoftHdDevice - A software and GPU emulated HD output device plugin.
Sag mir, wo die Developer sind. Was ist geschehn?

Client0: Crown CW02 MSI_C847MS-E33 Zotac_GT640_passiv Cine-S2 iMon-MCE / streamdev softhddevice
Client1: Lian_Li_PC-Q09FB ASRock_H67M-ITX/HT I3-2100 ASUS_ENGT520_passiv / streamdev softhddevice
Test: Lian_Li_PC-Q09R Asus C60M1-I / streamdev
Server0: Dockstar TT-S2-3600-USB / streamdev
Server2: Lian_Li_PC-Q07R Intel_DH61DL G620 WD20EARX 90W PicoPSU Cine-S2+DuoFlex-S2+DuoFlex-CT / streamdev / 22 Watt Verbrauch

26

Saturday, April 21st 2012, 4:50pm

Mich würde mal intressieren von welchen Sender die Aufnahmen sind.

z.B. Arte HD, ARD HD, ZDF HD.

Man braucht min. 300 - 500 ms an gepufferten Audio, weil es sonst zu Ton Aussetzer kommt.
Dann kommt noch dazu, das einige Fernsehsender das Bild vor dem Ton senden.
In besonderen die Öffentlichen Sender machen dies.

Bei einer Aufnahme müsste das Laden vom Audio in einen Puffer doch blitzschnell gehen, oder?
Bei einer Aufnahme sind die Daten ja alle schon da.

Will ich jetzt Ton und Bild gleichzeitig loslaufen lassen, dann muß ich 1.5s an Bild wegschmeissen oder 1.5s warten bis der Ton kommt.
Im Moment liegt der Fokus noch auf LiveTV, da bringt es nichts an Bildern wegzuschmeissen.

Das Wegschmeissen wäre mir bei einem Sprung ziemlich egal, mir kommt es ja nicht darauf an, dass er genau 10 Sekunden (oder wieviel auch immer) springt, sondern nur, dass es ein Stück vorwärts geht.
Generell wäre vermutlich ein unterschiedliches Handling von Aufnahmen und LiveTV nützlich.

Als Alternative könnte man die Zeit in der das Bild langsam läuft vergrößern. Dann fällt einem die Zeitluppe nicht so auf.
Aber wärend dieser Zeit ist dann der Ton nach dem Bild.

So war das auf dem Pentium3 mit xine. Das war aber auch nicht schön.
Wegschmeißen fände ich erst mal das Beste.
Und langfristig wohl eine unterschiedliche Behandlung von Aufnahmen und LiveTV.

Mein VDR

Asrock M3A770DE, Sempron 140 @ DualCore, 3 x TT S2-1600, GT520
openSuse 13.1 64bit, Kernel 3.14.13 + BER/UNC-Patch für stv090x, nvidia 340.24, vdr 2.1.6 mit Patchen (checkts, naludump, statusleds, ...)

27

Saturday, April 21st 2012, 9:47pm

Das sind genau die, wo bei der Übertragung Ton + Bild einen großen Versatz hat.

Wobei man Audiodaten wegschmeissen muß. Bild hat den Zeitstempel X und der Ton Y = X - 1s.
Ich halte im Moment das Bild ca. 1s an oder lasse es langsam laufen, damit der Ton aufholt bzw. genug gepuffert sind.
Ich übergebe den Bild Zeitstempel schon bis zum Tonteil, da ich dort ausrechen wollte, wieviel ich vom Ton skippen kann.

Wenn du Lust hast, kannst du ja mal gucken, manchmal ist man ja Betriebsblind.

AudioVideoReady() und AudioVideoIsReady sind die entsprechenden Funktionen und Variable.
AudioVideoReady wird meist zweimal aufgerufen, sobald das Bildformat erkannt wurde und sobald ein Bildzeitstempel gefunden wurde.

Johns
Sag mir, wo die Developer sind. Wo sind sie geblieben? . . . . . . . . . . . . . . . . . . . . SoftHdDevice - A software and GPU emulated HD output device plugin.
Sag mir, wo die Developer sind. Was ist geschehn?

Client0: Crown CW02 MSI_C847MS-E33 Zotac_GT640_passiv Cine-S2 iMon-MCE / streamdev softhddevice
Client1: Lian_Li_PC-Q09FB ASRock_H67M-ITX/HT I3-2100 ASUS_ENGT520_passiv / streamdev softhddevice
Test: Lian_Li_PC-Q09R Asus C60M1-I / streamdev
Server0: Dockstar TT-S2-3600-USB / streamdev
Server2: Lian_Li_PC-Q07R Intel_DH61DL G620 WD20EARX 90W PicoPSU Cine-S2+DuoFlex-S2+DuoFlex-CT / streamdev / 22 Watt Verbrauch

28

Sunday, April 22nd 2012, 11:32am

Das sind genau die, wo bei der Übertragung Ton + Bild einen großen Versatz hat.

Wobei man Audiodaten wegschmeissen muß.

Existiert dieser Versatz denn noch in einer Aufnahme?

Mein VDR

Asrock M3A770DE, Sempron 140 @ DualCore, 3 x TT S2-1600, GT520
openSuse 13.1 64bit, Kernel 3.14.13 + BER/UNC-Patch für stv090x, nvidia 340.24, vdr 2.1.6 mit Patchen (checkts, naludump, statusleds, ...)

29

Sunday, April 22nd 2012, 2:39pm

Keine Ahnung, aber warum sollte VDR dies umsortieren. Der wird die TS Pakete so wie so kommen speichern.
Und damit ist der Versatz bei der Aufnahme wie bei LiveTV. Kompilier mal mit -DDEBUG, da gibt der die Zeitstempel schön aus.

Johns
Sag mir, wo die Developer sind. Wo sind sie geblieben? . . . . . . . . . . . . . . . . . . . . SoftHdDevice - A software and GPU emulated HD output device plugin.
Sag mir, wo die Developer sind. Was ist geschehn?

Client0: Crown CW02 MSI_C847MS-E33 Zotac_GT640_passiv Cine-S2 iMon-MCE / streamdev softhddevice
Client1: Lian_Li_PC-Q09FB ASRock_H67M-ITX/HT I3-2100 ASUS_ENGT520_passiv / streamdev softhddevice
Test: Lian_Li_PC-Q09R Asus C60M1-I / streamdev
Server0: Dockstar TT-S2-3600-USB / streamdev
Server2: Lian_Li_PC-Q07R Intel_DH61DL G620 WD20EARX 90W PicoPSU Cine-S2+DuoFlex-S2+DuoFlex-CT / streamdev / 22 Watt Verbrauch

30

Tuesday, April 24th 2012, 1:03pm


Wenn du Lust hast, kannst du ja mal gucken, ...

Ich habe noch mal genau drüber nachgedacht.
Die Syncronisation könnte in etwa so aussehen (Bild kommt früher als Ton):

Vpts = erste Bild pts
Apts = erste Audio pts
dpts = Vpts – Apts, A/V-Versatz
AudioPuffer = nötiger Audio Puffer
Ton startet mit der pts (Apts + Maximum(dpts, AudioPuffer))
Bild startet mit der pts (Vpts + Maximum(0, AudioPuffer – dpts)

Dann passt es von Anfang an zueinander.

Das Problem bei Aufnahmen ist eine Nebenwirkung von der Absicht, bei LiveTV gefühlt möglichst schnell umzuschalten. Um das zu vermeiden, muss auf den A/V-Versatz gewartet werden, wenn dieser größer ist als der AudioPuffer. Dann muss das Bild nicht mehr gebremst werden. Denn jetzt startet der Ton falls dpts größer AudioPuffer mit zu früher pts, nämlich sobald der Puffer voll ist, und deswegen muss das Bild gebremst werden.

Nach meinem Geschmack wäre das auch bei LiveTV angenehmer.
Falls es bei LiveTV so bleiben soll, wie es ist, wäre eine Fallunterscheidung nötig, bei LiveTV so, bei Aufnahmen so. Aber ich schätze, das ist nicht wirklich nötig, falls man bei LiveTV lieber etwas länger wartet, aber dafür einen Start mit sauberem A/V-Sync hat.

Mein VDR

Asrock M3A770DE, Sempron 140 @ DualCore, 3 x TT S2-1600, GT520
openSuse 13.1 64bit, Kernel 3.14.13 + BER/UNC-Patch für stv090x, nvidia 340.24, vdr 2.1.6 mit Patchen (checkts, naludump, statusleds, ...)

31

Thursday, April 26th 2012, 2:15pm

Mit folgender Methode hätte man
- Ton so früh wie möglich bei LiveTV
- Bildfluss im richtigen Tempo so früh wie möglich bei LiveTV
- guten Sync bei LiveTV und Aufnahmen

LiveTV:
Ton läuft so an wie jetzt.
Das erste Video frame wird als Standbild gezeigt bis Audio die Sync-pts (Apts + Maximum(dpts, AudioPuffer)) erreicht hat, dann läuft Video an
(eventuell muss eine Latenz fürs Video-Anlaufen berücksichtigt werden).

Aufnahme:
Der Ton wird ab Sync-pts – AudioPuffer gepuffert und startet mit der Sync-pts.
Auch das Video läuft mit der Sync-pts an
(eventuell muss eine Latenz fürs Video-Anlaufen berücksichtigt werden).

Dazu berechnet der Audio-Thread aus der vom Video-Thread übergebenen ersten Vpts die Sync-pts und übergibt sie an den Video-Thread.

Kommentare erwünscht.

Mein VDR

Asrock M3A770DE, Sempron 140 @ DualCore, 3 x TT S2-1600, GT520
openSuse 13.1 64bit, Kernel 3.14.13 + BER/UNC-Patch für stv090x, nvidia 340.24, vdr 2.1.6 mit Patchen (checkts, naludump, statusleds, ...)

32

Thursday, April 26th 2012, 8:50pm

Im Moment würde ich alles im Audioteil machen, wenn der richtig arbeitet läuft das Bild automatisch auch richtig.

Sobald Video bereit ist, wird vom Ton alles Überflüssige weggeschmissen, bzw ausgerechnet was noch weggeworfen werden kann.
Damit sollte dann der Ton + Bild mit max. 250ms Verzögerung anlaufen.

Das solle bei LiveTv und Aufnahmen klappen, durch das wegschmeissen vom Ton sollten dann Aufnahmen sofort loslaufen.
Bei LiveTV muß man halt warten bis genug Ton gepuffert ist.

Johns
Sag mir, wo die Developer sind. Wo sind sie geblieben? . . . . . . . . . . . . . . . . . . . . SoftHdDevice - A software and GPU emulated HD output device plugin.
Sag mir, wo die Developer sind. Was ist geschehn?

Client0: Crown CW02 MSI_C847MS-E33 Zotac_GT640_passiv Cine-S2 iMon-MCE / streamdev softhddevice
Client1: Lian_Li_PC-Q09FB ASRock_H67M-ITX/HT I3-2100 ASUS_ENGT520_passiv / streamdev softhddevice
Test: Lian_Li_PC-Q09R Asus C60M1-I / streamdev
Server0: Dockstar TT-S2-3600-USB / streamdev
Server2: Lian_Li_PC-Q07R Intel_DH61DL G620 WD20EARX 90W PicoPSU Cine-S2+DuoFlex-S2+DuoFlex-CT / streamdev / 22 Watt Verbrauch

rudirabbit

Professional

Posts: 1,342

Occupation: Kfz Elektroniker

  • Send private message

33

Friday, April 27th 2012, 7:22pm

Hi,
Live TV Audio Sync passt einigermassen (HD und auch SD)

Wenn man allerdings eine Wiedergabe stoppt, und z.b langsamen Vorlauf macht, und dann wieder auf Play geht.
Dann ist der Audio Sync komplett daneben, und dies bleibt auch so.
Im Log schaut das so aus:

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Apr 27 19:15:37 linux-ugjv vdr: [1579] [softhddev]Freeze:
Apr 27 19:15:37 linux-ugjv vdr: [3142] Text2Skin: replaySmall display update thread started (pid=1579, tid=3142)
Apr 27 19:15:37 linux-ugjv vdr: video: decoder buffer empty, duping frame (601/66) 30 v-buf
Apr 27 19:15:37 linux-ugjv vdr: video: 19:27:17.499  +33 1043 240/\ms  30 v-buf
Apr 27 19:15:39 linux-ugjv vdr: [1579] [softhddev]Mute:
Apr 27 19:15:39 linux-ugjv vdr: [1579] [softhddev]TrickSpeed: 8
Apr 27 19:15:39 linux-ugjv vdr: audio/alsa: using device 'hdmi_complete'
Apr 27 19:15:39 linux-ugjv vdr: audio/alsa: start delay 336ms
Apr 27 19:15:43 linux-ugjv vdr: [1579] [softhddev]Freeze:
Apr 27 19:15:44 linux-ugjv vdr: [1579] [softhddev]Play:
Apr 27 19:15:48 linux-ugjv vdr: [3142] Text2Skin: replaySmall display update thread ended (pid=1579, tid=3142)
Apr 27 19:16:35 linux-ugjv vdr: video: decoder buffer empty, duping frame (739/88) 189 v-buf
Apr 27 19:16:35 linux-ugjv vdr: video: 19:28:08.679-6706  700 240/\ms 189 v-buf
Apr 27 19:17:35 linux-ugjv vdr: video: 19:29:08.679-6704  726 240/\ms 189 v-buf
Apr 27 19:18:35 linux-ugjv vdr: video: 19:30:08.679-6704  726 240/\ms 189 v-buf

softhddevice ist aktuell, audiodrift ist eingeschaltet.
VDR 1 (SD) : ASRock A330 GC, 1 GB RAM, TT- FF Karte rev. 2.3, 7'' TFT, Lirc X10 - Selbstbau Gehäuse - Suse 11.3 (64) vdr-1.7.10 diverse Plugins
VDR 2 (HD) : MSI G41M-P25, 2 GB RAM, E6700 2x3.20GHz, Gainward GT220, 2TB HD, Lirc X10, TT S2-3600 USB, TT S2-1600, - Suse 11.3 (64) NvidiaTreiber 260.19 vdr-1.7.18 - xineliboutplugin 1.0.90 cvs, xine-lib 1.1.90 , s2-liplianin DVB Treiber

34

Saturday, April 28th 2012, 12:36pm

So habe das Skip eingebaut.

Mit Stop, langsamer Vorlauf, Play ist mir noch nicht aufgefallen, werde ich mal gucken. Eigentlich sollte es laufen.

Johns
Sag mir, wo die Developer sind. Wo sind sie geblieben? . . . . . . . . . . . . . . . . . . . . SoftHdDevice - A software and GPU emulated HD output device plugin.
Sag mir, wo die Developer sind. Was ist geschehn?

Client0: Crown CW02 MSI_C847MS-E33 Zotac_GT640_passiv Cine-S2 iMon-MCE / streamdev softhddevice
Client1: Lian_Li_PC-Q09FB ASRock_H67M-ITX/HT I3-2100 ASUS_ENGT520_passiv / streamdev softhddevice
Test: Lian_Li_PC-Q09R Asus C60M1-I / streamdev
Server0: Dockstar TT-S2-3600-USB / streamdev
Server2: Lian_Li_PC-Q07R Intel_DH61DL G620 WD20EARX 90W PicoPSU Cine-S2+DuoFlex-S2+DuoFlex-CT / streamdev / 22 Watt Verbrauch

35

Saturday, April 28th 2012, 2:59pm

Danke!!!
Kurztest: Nach einem Sprung in einer Aufnahme überspringt er jetzt das voraus laufende Audio, aber statt sofort los zu spielen, hängt er einen Moment fest.
Da besteht noch Verbesserungs Bedarf.
Und wenn man zweimal kurz hintereinander springt, ist das Verhalten wie früher.

Mein VDR

Asrock M3A770DE, Sempron 140 @ DualCore, 3 x TT S2-1600, GT520
openSuse 13.1 64bit, Kernel 3.14.13 + BER/UNC-Patch für stv090x, nvidia 340.24, vdr 2.1.6 mit Patchen (checkts, naludump, statusleds, ...)

36

Saturday, April 28th 2012, 7:42pm

Sollte nicht sein, bzw kann nicht sein. Da nichts gepuffert wird bzw. alles übersprungen wird, kann es bei Aufnahmen keine Pause geben.
Habe zwar 100ms Toleranz gelassen, welche im Moment nur 1ms ist.
Auch sollte 2* springen das Selbe Ergebnis bringen.

Johns
Sag mir, wo die Developer sind. Wo sind sie geblieben? . . . . . . . . . . . . . . . . . . . . SoftHdDevice - A software and GPU emulated HD output device plugin.
Sag mir, wo die Developer sind. Was ist geschehn?

Client0: Crown CW02 MSI_C847MS-E33 Zotac_GT640_passiv Cine-S2 iMon-MCE / streamdev softhddevice
Client1: Lian_Li_PC-Q09FB ASRock_H67M-ITX/HT I3-2100 ASUS_ENGT520_passiv / streamdev softhddevice
Test: Lian_Li_PC-Q09R Asus C60M1-I / streamdev
Server0: Dockstar TT-S2-3600-USB / streamdev
Server2: Lian_Li_PC-Q07R Intel_DH61DL G620 WD20EARX 90W PicoPSU Cine-S2+DuoFlex-S2+DuoFlex-CT / streamdev / 22 Watt Verbrauch

37

Saturday, April 28th 2012, 9:06pm

Nachdem ich "Soft start a/v sync" aktiviert habe, geht es. 2x springen tut´s nun auch.
Besonders gut sichtbar ist es an Laufschriften oder anderen gleichmäßigen Bewegungen.
Es ist zwar noch nicht ganz so glatt wie bei vdr-xine, aber eine große Verbesserung.
vdr-xine schmeißt mehr Audio weg, und läuft sofort glatt, während bei softhddevice jetzt die Ruckelphase viel kürzer, aber noch sichtbar vorhanden ist (z.B. Arte HD).
Damit ich softhddevice wirklich gerne benutze, müsste das noch besser werden ;-)

Mein VDR

Asrock M3A770DE, Sempron 140 @ DualCore, 3 x TT S2-1600, GT520
openSuse 13.1 64bit, Kernel 3.14.13 + BER/UNC-Patch für stv090x, nvidia 340.24, vdr 2.1.6 mit Patchen (checkts, naludump, statusleds, ...)

38

Friday, December 21st 2012, 8:12pm

Hallo johns,
weiß softhddevice, ob eine Aufnahme abgespielt wird oder ob LiveTV abgespielt wird?
Falls nein, würde ich dich bitten es einzubauen :-)
Falls ja, wie kann ich das benutzen?
Ich möchte gerne bei der skip-Berechnung in audio.c eine Fallunterscheidung einbauen, wenn LiveTV so wie immer, wenn Aufnahme abgespielt wird etwas anderes.
Geht das?
Dann bekomme ich nämlich den Sprung so hin, wie ich es schön finde, ohne den Rest zu verunstalten.
Und auch wenn´s den meisten egal ist, für mich ist ein "sauberer" Sprung wichtig.
Danke,
Jörg

Mein VDR

Asrock M3A770DE, Sempron 140 @ DualCore, 3 x TT S2-1600, GT520
openSuse 13.1 64bit, Kernel 3.14.13 + BER/UNC-Patch für stv090x, nvidia 340.24, vdr 2.1.6 mit Patchen (checkts, naludump, statusleds, ...)

39

Friday, December 21st 2012, 9:21pm

Irgendwie bin ich da unempfindlicher. Mir fällt beim Werbepause überspringen nichts auf.

Im Prinzip weiß ich ob es eine Aufnahme oder LiveTv Wiedergabe ist.

Seit dem letzten Post, hat sich einiges getan. Im Moment fällt mir gar nichts ein, was
stören könnte.

Video sollte sofort loslaufen, Audio, was zuviel ist, wird geskippt, die Audiopuffer sollten
sich sofort füllen und der Ton somit loslaufen.

Einzig "soft limit buffer full", könnte die Sache etwas ausbremsen.
Schmeiß einfach mal dies raus und gucke was passiert.

Johns
Sag mir, wo die Developer sind. Wo sind sie geblieben? . . . . . . . . . . . . . . . . . . . . SoftHdDevice - A software and GPU emulated HD output device plugin.
Sag mir, wo die Developer sind. Was ist geschehn?

Client0: Crown CW02 MSI_C847MS-E33 Zotac_GT640_passiv Cine-S2 iMon-MCE / streamdev softhddevice
Client1: Lian_Li_PC-Q09FB ASRock_H67M-ITX/HT I3-2100 ASUS_ENGT520_passiv / streamdev softhddevice
Test: Lian_Li_PC-Q09R Asus C60M1-I / streamdev
Server0: Dockstar TT-S2-3600-USB / streamdev
Server2: Lian_Li_PC-Q07R Intel_DH61DL G620 WD20EARX 90W PicoPSU Cine-S2+DuoFlex-S2+DuoFlex-CT / streamdev / 22 Watt Verbrauch

40

Friday, December 21st 2012, 10:33pm

Ok, ich habe dreimal „soft limit buffer full“ auskommentiert, bringt aber kein Verbesserung.
Was mich stört ist, dass nach einem Sprung das Video kurz in Zeitlupe abgespielt wird. Der Ton läuft sofort los. Die Aufnahme hat ca. 300 - 400 ms Audio/Video Versatz, die Zeitlupe dauert entsprechend, und mich stört das.
Wenn ich in audio.c AudioVideoReady() folgendes anwende

Source code

1
2
3
4
5
6
7
8
9
10
11
12
--- audio.c.orig        2012-12-21 22:21:34.291060255 +0100
+++ audio.c.neu 2012-12-21 22:22:43.122118840 +0100
@@ -2288,7 +2288,8 @@
        // buffer ~15 video frames
        // FIXME: HDTV can use smaller video buffer
        skip =
-           pts - 15 * 20 * 90 - AudioBufferTime * 90 - audio_pts +
+           pts + 45 * 20 * 90 - audio_pts +
+//         pts - 15 * 20 * 90 - AudioBufferTime * 90 - audio_pts +
            VideoAudioDelay;
 #ifdef DEBUG
        printf("%dms %dms %dms\n", (int)(pts - audio_pts) / 90,


gibt es keine Zeitlupe mehr, sondern das Video spielt sofort los (und der Ton auch).
Das ist natürlich nur beim Springen schön, sonst eher scheußlich.
Ich weiss auch nicht genau, warum das funktioniert, habe es durch ausprobieren heraus gefunden.

Mein VDR

Asrock M3A770DE, Sempron 140 @ DualCore, 3 x TT S2-1600, GT520
openSuse 13.1 64bit, Kernel 3.14.13 + BER/UNC-Patch für stv090x, nvidia 340.24, vdr 2.1.6 mit Patchen (checkts, naludump, statusleds, ...)