12 November 2015
Mac Os X UI freezes while connecting to iphone device
unbelievable! no matter if I try to connect an iphone or ipod to my mac, the ui freezes for seconds.
14 Oktober 2015
Quality of Mac OS X is rapidly going down since a few years, at least in terms of usuability. There are windows which cannot be closed (Safari claims that a host's identity cannot be verified, but there is no chance to submit a "Continue" or "Cancel").
WLan-Adapter is randomly turning off .. since Restarting the Mac again.. This list is tbc.
02 Oktober 2015
Video über http bekommen und abspielen auf einem Android Device (Chrome)
Broken Pipe Exceptions usw.
ClientAbortException
SocketException
Situation:
Webserver, der Videofiles ausliefern soll. Ein Android-Device macht mit Chrome einen HTTP-Request auf die Video-Resource. Am Server muss nun geschaut werden, ob im http-header ein "range"-Wert mitgeliefert wird. Der sieht kann dann so aussehen:
range: bytes=23-344
oder aber auch
range: bytes=3243-
(siehe HTTP-Spezifikation).
Die Grenzen sind Inklusiv-Werte.
In beiden Fällen will der Client nicht das ganze Videofile in einem Happen, sondern wird für jeden Happen im header sagen, von welchem zu welchem byte ausgeliefert werden soll. Der zweite Range-Fall bedeutet, dass bei 3243 angefangen werden soll und das letzte byte auch das letzte byte der Datei ist. Nicht nur der Abschnitt des Videofiles muss in den outputstream des response, sondern es müssen auch die content-ranges in den header geschrieben werden:
response.setHeader( "Content-range", bytes ${startInt}-${endInt}/" + Integer.toString(fileSize) )
Initial biete ich das Video aber als ganzes Stück im response, der Client wird dann Abort sagen, woraufhin eine ClientAbortException geworfen wird. Der Client gibt nicht auf, sondern wird dann anfangen seine ranges mitzuliefern.
Abonnieren
Kommentare (Atom)
