[ILUG] Streaming video

Brian Foster blf at blf.utvinternet.ie
Wed Sep 21 18:56:32 IST 2005


  | Date: Wed, 21 Sep 2005 10:23:17 +0100
  | From: P at draigBrady.com
  | 
  | Niall O Broin wrote:
  | > On 21 Sep 2005, at 08:44, Andres Jimenez wrote:
  | >> I don't think "Streaming video" is an accurate title for the thread,
  | >> because you are only exporting a Samba share....
  | > 
  | > I did actually think about that, and you're possibly right - but from my
  | > POV as a watcher of said video, I'm having problems streaming them from
  | > the server, even though reading may be a more correct term. But what is
  | > streaming but reading anyway? And what's in a name?
  | 
  | Well a lot really. Streaming is not just reading. There is
  | generally a streaming protocol that is used to efficiently
  | fill the network connection and the buffers at each end.
  | I.E. Quality Of Service parameters are actively monitored.

 if I may elaborate on this ... in a past life, I was
 one step removed from A/V streaming issues, and in my
 current job I'm a few more steps removed ....

 first, when there are playback problems, the usual
 recommendation is to continue playing the audio
 seamlessly.  drop video frames if you have to, but
 continue with the audio.  try to never drop audio
 frames!  the reason is the human ear is much more
 preceptive that the eye, and will notice astonishingly
 small/short glitches in audio.  the eye is more
 tolerant, and the odd dropped frame is no big deal.
 ( of course, the problem in this thread is lots of
  video frames are vanishing or being delayed, so it
  becomes noticeable. )

 the difference between streaming and reading can
 be thought of as the difference between the player
 pulling (reading) and the server pushing (streaming)
 the frames to be played.

 an even better way to think of it is the model A/V
 playback designers often(?) use:  frames are pulled
 through the entire system, from DVD/server/whatever
 through the decoders et.al. by the audio speakers.
 the sound has to be delivered to the speakers at
 a very precise fixed rate.  the decoded samples
 must be available at predicatable times.  that timing
 constraint must be met, so it is the governing factor
 in pulling the frames from the origin through the
 entire system into the speakers.

 reading from the disk is only loosely connected with
 this.  taking ready-in-time frames served up over a
 streaming connection is, as Pádraig explains, a very
 different thing.  indeed, often in streaming systems
 there isn't a read/write loop in the traditional sense,
 but an dequeue/enqueue loop or even H/W assist, with
 deadlines and feedback to adjust the QoS to the extent
 possible.

cheers!
	-blf-

  | Over a filesystem interface your player (xine or vlc)
  | may be making assumptions. I.E. they're tuned for
  | working with hard disks so the more you deviate from 30MB/s
  | or so the choppier the video will become.
  | It may be possible to tune the sizes of the reads/seeks/buffers
  | in the players to something more appropriate?
  | Also the samba server will have a lot to do with things,
  | if it is not buffering and servicing that buffer appropriately.
  | There are a multitude or things to consider there.  [ ... ]
-- 
Experienced (20+ yrs) kernel/software Eng: | Brian Foster   Montpellier,
 • Unix, embedded, &tc;  • Linux;  • doc;  | blf at utvinternet.ie   FRANCE
 • IDL, automated testing, process, &tc.   |  Stop E$$o (ExxonMobile)!
Résumé (CV) http://www.blf.utvinternet.ie  |     http://www.stopesso.com



More information about the ILUG mailing list