diff --git a/FrOSCon26/FrOSCon.26.mm b/FrOSCon26/FrOSCon.26.mm index 41570ef..00c5690 100644 --- a/FrOSCon26/FrOSCon.26.mm +++ b/FrOSCon26/FrOSCon.26.mm @@ -1161,7 +1161,11 @@ - + + + + + @@ -1185,6 +1189,15 @@ + + + + + + + + + @@ -1290,7 +1303,8 @@ - + + @@ -1377,6 +1391,18 @@ + + + + + + + + + + + + @@ -1526,6 +1552,56 @@ + + + + + + + + + +

+ Transition auf "None", dann Zeit eingeben, dann Transition auf "Wipe", dann Richtung wählen.... +

+

+ Funktioniert sogar, wenn man alle Slides der Animation auswählt +

+ + +
+
+
+ + + + + + + + +

+ ...das würde zwar letztlich funktionieren, wenn man dann ab dem 2.Absatz alle auf "with previous" umschaltet .... ist aber irre unübersichtlich.  Verstehe nicht, warum er das manchmal macht (vielleicht, wenn man einzelne Absätze schon formatiert hat?) +

+ + +
+
+ + + + + + +

+ Zwei Objekte markieren, Animation hinzufügen, dann Animation des 2. Objekts wieder löschen ⟹ Ergebnis: man bekommt die Animation auf den ganzen Frame, nicht einzelne Absätze +

+ + +
+
+
+
@@ -1636,6 +1712,31 @@ + + + + + + +
    +
  • + Wähle diesmal mittlestarke Fehlerkorrektur (-l M) +
  • +
  • + Ein Dot = 12px hat sich bewährt (-s 12) +
  • +
  • + mache den Rand etwas schmäler (-m 3) +
  • +
  • + setze 300 dpi für die Bilddatei +
  • +
+ + +
+ +
diff --git a/FrOSCon26/Talk-IOUring.odp b/FrOSCon26/Talk-IOUring.odp index e05740a..c3264cc 100644 Binary files a/FrOSCon26/Talk-IOUring.odp and b/FrOSCon26/Talk-IOUring.odp differ diff --git a/FrOSCon26/drawings/thread-handoff.svg b/FrOSCon26/drawings/thread-handoff.svg index b2726c1..5f7649b 100644 --- a/FrOSCon26/drawings/thread-handoff.svg +++ b/FrOSCon26/drawings/thread-handoff.svg @@ -1,123 +1,472 @@ - + - - -handoff - -cluster_proactor - -  »Proactor« thread  —  playVideo() loop   - - -cluster_gui - -  GTK / GUI thread   - - - -file - - -demovideo.raw - - - -ring - -ring buffers (RING_SIZ) - -slot - -slot - -slot - -… - - - -file->ring - - -io_uring read - - - -wait - -io_uring_wait_cqe() -(blocking) - - - -timer - -frame-beat timer -20 ms · multishot - - - -timer->wait - - -CQE (TICK_TAG) - - - -baton - -toDisplay_ -std::atomic<Buffer*> - - - -ring->baton - - -publish -store(release) - - - -disp - -EglDisplay::displayFrame() -retrieveFrame() / completedFrame() - - - -gpu - -GPU texture -(glTexImage2D → draw) - - - -disp->gpu - - -upload + draw - - - -disp->baton - - -completedFrame -store(nullptr, release) - - - -baton->disp - - -retrieveFrame -load(acquire) - - + + + Proactor data handoff + + + + + + + + cluster_proactor + +  »Proactor« thread  —  playVideo() + + + cluster_gui + +  GTK / GUI thread   + + + file + + + demovideo.raw + + + ring + + ring buffers (RING_SIZ) + + slot + + slot + + slot + + … + + + io_uring read + + wait + + io_uring_wait_cqe() + (blocking) + + + timer + + frame-beat timer + 20 ms · multishot + + + timer->wait + + + + + baton + + toDisplay_ + std::atomic<Buffer*> + + + disp + + EglDisplay::displayFrame() + retrieveFrame() / completedFrame() + + + gpu + + GPU texture + (glTexImage2D → draw) + + + disp->gpu + + + upload + draw + + + + + + Proactor data handoff + + + Ichthyostega + + + + + + + + + + + + + +