Skip to main content
October 16, 2013
Question

Stream records for sometime and then gives Stream.Record.NoAccess

  • October 16, 2013
  • 4 replies
  • 1754 views

Hi,

Following are the details of the Stream:

Stream: Video, encoded in H.264, H264Profile.BASELINE, H264Level.LEVEL_3, recording the f4v.

I try to upgrade/degrade the bitrate(only) of the stream, using setQuality(br, q) method with respect to the change in bandwidth of the publisher.

Issue: With use of setQuality, after a few bitrate changes, it gives Stream.Record.NoAccess error and stops the recording of the stream at that point. Noticably the live stream keeps on running well but the part after Stream.Record.NoAccess does not get recorded.

Normally the stream records fine and completely, there are no issues of readOnly folder/file in my case. I have tried the issue on all FMS 3.5 to 5.0 and it occurs.

Can anybody provide a fix as i have not been able to find help on the web other than these:

1) help docs

NetStream.Record.NoAccess

error

The client tried to record a stream that is still playing. Or the client tried to record (overwrite) a stream that exists on the server with read-only status.

2) http://forums.adobe.com/message/3928900

Thanks.

Sahil.

    This topic has been closed for replies.

    4 replies

    Adobe Employee
    July 29, 2014

    stsd entries in mp4 file in AMS can be modified by chaning config in server.xml vide <Mp4><Recording><MaxDataSampleDescriptions>...the current default is 10 and can be changed to any suitable value.

    Adobe Employee
    July 1, 2014

    I guess we know what the problem is.

    AMS allows max 10 stsd entries in an MP4 while recording which means you cannot change properties such as bitrate/ frame rate more than that count.

    This is what is happening when using the setQuality() call on publisher.

    My suggestion would be to create separate MP4 files since we know that it cannot record more than 10 entries.

    Another and better alternative is to use the bandwidth detection feature of AMS and stick to one quality settings rather than changing it on the fly n number of times.

    bandwidth detection is documented here Adobe Flash Media Server 4.5 * Detecting bandwidth

    Known Participant
    July 22, 2014

    Where does that limitation comes from? First time I hear about it! So you are saying that when we are publishing / recording a mp4 (f4v as well?) file, we mustn't use setQuality more that 10 times? By the way, what does "stsd" stands for?

    Also, is there other manipulations like this that can have the same effect? For instance, attaching or detaching a microphone from the stream while the video is still publishing? Because we had random problems with the recording of h264 streams and we still are unable to find what is the source of the problem...

    Thanks!

    Adobe Employee
    July 23, 2014

    stsd stands for sample descriptor entries in an MP4 file. The limitation is on AMS end. thing is you need to allocate certain memory for these entries at start of recording and hence you need to be aware of the total entries you want to support.

    10 seems like a good number and had worked well for customers. Ideally people setup MBR streams rather than changing the quality parameters.

    bitrate, frames, video size are few parameters that i am aware can lead to multiple stsd entries.

    Adobe Employee
    June 16, 2014

    Acknowledged...I think we will try to see if we can reproduce this in-house/

    Dmitrii Nikolaev
    Known Participant
    June 11, 2014

    Are you solved the problem? Can anyone help, we have the same issue.