[x264-devel] flash player and intra-refresh, connecting to a already present stream not working.

Badri Gopalan badri_p_gopalan at yahoo.com
Sat Jul 20 20:35:35 CEST 2013


Greetings everyone,
  
 In the past, I had asked about problems using Adobe flashplayer connected to a stream which uses
intra-refresh and the zerolatency options. IT works fine without the intra-refresh, and didnt work
with the intra-refresh.

 With some experimentation, I've come to believe that flashplayer needs to see the first full IDR frame 
(the first frame in intra refresh is a full I-frame). In other words, if flashplayer sees the first frame 
then the stream is fine, if not, it doesnt play. Connecting to an already present stream didnt play.
Connecting to a server before the stream has started and waiting for the stream to start plays fine.
Other players like mplayer, avconv etc., work fine to connect to the stream after it has started, which leads
me to believe it is an issue with flashplayer.  
 Really appreciate the community's advice on whether this is this a known issue with flashplayer.
 If so, how to get around it ? I am using the latest and greatest  version of flashplayer on different platforms.
 It seems like a problem which makes the intra-refresh mode unusable for my configuration.

 Additional info:
 The toolchain I am using is:
   gstreamer for encoding, crtmpserver as rtmp server, flashplayer as the viewer in a browser.

  A sample pipeline is:
   % gst-launch videotestsrc is-live=true ! video/x-raw-yuv,framerate=20/1,width=480,height=320 \
       ffmpegcolorspace ! x264enc tune=zerolatency speed-preset=veryfast profile=baseline \
       intra-refresh=true pass=qual quantizer=23 \
       ! flvmux ! tcpclientsink port=6666

  This is sent to crtmpserver which publishes the stream at (say)
    rtmp://<hostname>/live/streamFlv
   
 I am able to read the output using rtmpdump to a file, or to view it on the command line using avplay. But flash doesnt show anything (just the rotating arrow / blank screen) if it connects to the stream after it starts. 
This works fine if flashplayer connects to the server before the stream starts. It does not work if the
flashplayer connects to an existing stream.
 
  
thanks,
bgpl
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x264-devel/attachments/20130720/1c76b9c2/attachment.html>


More information about the x264-devel mailing list