I wanna thank you for looking, I thought I was going nuts. I did get it to 
stream! It turned out to be 1 bit. Like I mentioned before, I had posted on 
that list a week before posting here!. I got a reply when I posted the ts file. 
The developer who wrote the mediastreamvalidator took one look and pointed to 
the timestamps!

In trying to make it work, one of the things I did was enable DTS in the PES 
headers and put the DTS in there, What I missed was that the first 4 bits 
change from 2 for the PTS to 3 for the PTS and 1 for the DTS.

This :
   // Fill in the PES PTS (from our SCR):
  fInputBuffer[9] = 0x20|(fSCR.highBit<<3)|(fSCR.remainingBits>>29)|0x01;
  fInputBuffer[10] = fSCR.remainingBits>>22;
  fInputBuffer[11] = (fSCR.remainingBits>>14)|0x01;
  fInputBuffer[12] = fSCR.remainingBits>>7;
  fInputBuffer[13] = (fSCR.remainingBits<<1)|0x01;

Had to change to this:

// Fill in the PES PTS (from our SCR):
  fInputBuffer[9] = 0x30|(fSCR.highBit<<3)|(fSCR.remainingBits>>29)|0x01;
  fInputBuffer[10] = fSCR.remainingBits>>22;
  fInputBuffer[11] = (fSCR.remainingBits>>14)|0x01;
  fInputBuffer[12] = fSCR.remainingBits>>7;
  fInputBuffer[13] = (fSCR.remainingBits<<1)|0x01;

    // Fill in the PES DTS (from our SCR):
  fInputBuffer[14] = 0x10|(fSCR.highBit<<3)|(fSCR.remainingBits>>29)|0x01;
  fInputBuffer[15] = fSCR.remainingBits>>22;
  fInputBuffer[16] = (fSCR.remainingBits>>14)|0x01;
  fInputBuffer[17] = fSCR.remainingBits>>7;
  fInputBuffer[18] = (fSCR.remainingBits<<1)|0x01;

Understanding that I have gorilla subclassed the 
MPEG2TransportStreamFromESSource and MPEG2TransportStreamMultiplexor into 
MPEG2TransportStreamFromESSource4iOS and MPEG2TransportStreamMultiplexor4iOS 
that makes my segmenter trivial.

I now have a RTSP and my own PUSH RTSP along with HTTP multiple in, out, record 
and HLS streaming built on mongoose and the live555 libs. The apple validator 
still throws a warning about timestamps which I think is the cause of it to not 
play back smoothly after the first 3 segments, but I am working on it.


PS, I will look at that Xmas present, sounds great! I was thinking of writing 
one in my spare time (*cough*)





From: live-devel-boun...@ns.live555.com 
[mailto:live-devel-boun...@ns.live555.com] On Behalf Of Ross Finlayson
Sent: Friday, December 23, 2011 4:52 AM
To: LIVE555 Streaming Media - development & use
Subject: Re: [Live-devel] invalid ts stream

OK, I couldn't see anything obviously wrong with this TS file.  It played OK in 
VLC, and I was able to stream it (out and in) OK via RTSP/RTP, using our 
software.

But when I tried streaming it to an iPhone via HTTP Live Streaming from 
"live555MediaServer" (after indexing the file), it didn't work at all.

Unfortunately I don't know whether this is because there's something about your 
H.264 profile that's making the iPhone unhappy, or whether this is because 
there's something about the TS file that's making the iPhone (using HTTP Live 
Streaming) unhappy.

So, your next task is to find out - via appropriate Apple mailing list(s) 
and/or forum(s) - what is going wrong.  (You're not allowed to post on *this* 
mailing list any more about this issue until you've done that :-)

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/

________________________________
No virus found in this message.
Checked by AVG - www.avg.com<http://www.avg.com>
Version: 2012.0.1890 / Virus Database: 2109/4697 - Release Date: 12/22/11
_______________________________________________
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel

Reply via email to