Page 1 of 3 123 LastLast
Results 1 to 10 of 25

Thread: streaming a video file while recording

  1. #1

    Default streaming a video file while recording

    Hi All,

    We need to do below 2 actions at the same time:
    1. Publish a live stream from a camera on Wowza (3.0.3) for some clients to connect and watch the live stream.
    2. Record the same published stream on Wowza for some clients to connect and watch the recorded video for past periods.
    So it is like trying to stream a video file via Wowza while it is still being recorded to by Wowza.

    What would be the recommended way of doing this?
    I have searched the forum and came across nDVR module and also LiveStreamRecord Module.
    Which one is better for the above requirements?

    Regards,
    Bora.

  2. #2
    Join Date
    Sep 2011
    Posts
    1,933

    Default

    Hi
    LiveStreamRecord Module is what I would recommend but to be sure you could get the Wowza 3 trail (30 days full functionality) and test both see which you would prefer to use, I'm sure you are aware they work in different ways and the choice comes down to your personal preference.

    LiveStreamRecord Module means you would have to have finished recording before you could watch, so depending on how long the content will be and how soon behind the live stream you want your clients to view would factor into whether you would use this option.

    Using nDVR allows you to watch the stream while recording and rewind etc, you can only record the amount of time set in the buffer and any time over that writes over the start of the recording, so if you set a 5 hour buffer and you recorded 5hours and 10 mins you would loose the first 10 mins from when you pressed record.

    Depending on how much content you wish to record you may need a large amount of disk space for both options.

    Jason

  3. #3

    Default

    Hi Jason,

    Thanks for the response.

    Actually, clients need to be able to watch the recorded file while the stream is still being recorded.
    For example, if the buffer is 5 hours, clients should be able to go back and watch 2 hours before now but the stream would continue to be recorded on the same video file.
    And some other clients would connect to watch the live stream as well at the same time.

    Hence just to confirm, according to your comments, nDVR is the only way to go, right?

    Regards.

  4. #4

    Default

    Quote Originally Posted by JasonH View Post
    Hi
    LiveStreamRecord Module is what I would recommend but to be sure you could get the Wowza 3 trail (30 days full functionality) and test both see which you would prefer to use, I'm sure you are aware they work in different ways and the choice comes down to your personal preference.

    LiveStreamRecord Module means you would have to have finished recording before you could watch, so depending on how long the content will be and how soon behind the live stream you want your clients to view would factor into whether you would use this option.

    Using nDVR allows you to watch the stream while recording and rewind etc, you can only record the amount of time set in the buffer and any time over that writes over the start of the recording, so if you set a 5 hour buffer and you recorded 5hours and 10 mins you would loose the first 10 mins from when you pressed record.

    Depending on how much content you wish to record you may need a large amount of disk space for both options.

    Jason
    Small clarification, you can set the nDVR buffer to unlimited as well.

  5. #5

    Default

    Quote Originally Posted by erbora00 View Post
    Hi Jason,

    Thanks for the response.

    Actually, clients need to be able to watch the recorded file while the stream is still being recorded.
    For example, if the buffer is 5 hours, clients should be able to go back and watch 2 hours before now but the stream would continue to be recorded on the same video file.
    And some other clients would connect to watch the live stream as well at the same time.

    Hence just to confirm, according to your comments, nDVR is the only way to go, right?

    Regards.
    Live + live stream record: clients can watch video while it is being recorded but only at the live point. No seeking back and forward in time. Have a VOD recording when finished.
    Live + nDVR: clients can watch video while recorded and can seek.
    Live + nDVR + live stream record. Same as above except once the stream is finished, live stream record creates a single VOD file that can be played back. nDVR creates a recording too that can be played back but its not a single file recording.

  6. #6

    Default

    Thanks for all the responses. It is much appreciated.

    I tried to use the nDVR module for testing purposes but failed.
    I may be deviating from the subject here as this may be a basic issue but here it goes.

    As far as I understand from the material I found in the forum and the articles, nDVR is supposed to start recording when the stream starts.
    Is this correct? And the stream needs to be started via the dvr application whose setup instructions are given in "How to setup and run Wowza nDVR", right?
    I followed the steps here and then tried to start a stream with name "test.stream" and type "rtp" via the application "dvr".
    The file test.stream contains: rtsp://camera-ip-address/axis-media/media.amp.

    This works with the example application "live" and I am able to watch the live stream.
    But when I start the same stream via the dvr application Wowza complains about timeout and destroys the stream after about 10 seconds.
    And I don't see anything recorded either.

    Also, I captured the packets via wireshark and everything looks ok. I can see the RTP packets, etc.
    So I am not sure why there's a timeout.

    Below are some sample logs:
    2011-12-14 16:49:00 EET comment server INFO 200 - RTPSessionDescriptionDataProviderBasicRTSPWorker.sessionStart: PLAY: rtsp://ip-address/axis-media/media.amp - - -
    2011-12-14 16:49:00 EET comment server INFO 200 - RTPSessionDescriptionDataProviderBasicRTSPWorker.processResponse: PLAY: rtsp://ip-address/axis-media/media.amp/ - - -
    2011-12-14 16:49:00 EET comment server INFO 200 - RTPMediaCaster.Reconnector[23578365:dvr/_definst_:test.stream]: done: 2 - - -
    2011-12-14 16:49:12 EET comment server INFO 200 - RTPMediaCaster.streamTimeout[23578365:dvr/_definst_:test.stream]: timeout:12000 diff:12013 reason:101 - - -
    2011-12-14 16:49:12 EET comment server INFO 200 - RTPMediaCaster.resetConnection[23578365:dvr/_definst_:test.stream]: - - -
    2011-12-14 16:49:12 EET comment server INFO 200 - RTPMediaCaster.closeRTPSession[23578365:dvr/_definst_:test.stream] - - -

    Regards,
    Bora.

  7. #7
    Join Date
    Dec 2007
    Posts
    21,962

    Default

    The log snip shows a RTPMediaCaster.streamTimeout, which probably has nothing to do with dvr vs live application.

    Richard

  8. #8

    Default

    So there's nothing wrong with what I am trying to do, right?
    This is the way nDVR works?

    And no clue why there's a timeout?
    As I said I can see the incoming RTP traffic with dvr application and the same stream is working with live application..

    Regards.

  9. #9
    Join Date
    Dec 2007
    Posts
    21,962

    Default

    MediaCaster timeout could be a network problem. I would not expect it to work in either application at the same time when such a timeout occurs in one if they are on the same Wowza instance.

    Richard

  10. #10

    Default

    They are on the same Wowza instance.
    I tested it again and it works fine with the live application and fails with the dvr (timeout)..
    I did restart the Wowza instance several times too.

    I am guessing there's something wrong with the Application.xml of the dvr application but can't figure out what.

    A few differences between the Application.xml's of both apps.
    On dvr:
    <LiveStreamPacketizers>dvrstreamingpacketizer</LiveStreamPacketizers>
    On live:
    <LiveStreamPacketizers>cupertinostreamingpacketizer,smoothstreamingpacketizer,sanjosestreamingpacket izer</LiveStreamPacketizers>

    On dvr I have below and they are empty on live:
    <Recorders>dvrrecorder</Recorders>
    <Store>dvrfilestorage</Store>

    On live I have this and it is empty on dvr:
    <MediaCaster>
    <Properties>
    <Property>
    <Name>forceInterleaved</Name>
    <Value>true</Value>
    <Type>Boolean</Type>
    </Property>
    </Properties>
    </MediaCaster>

    Just now I tried adding the above MediaCaster property to the dvr Application.xml and it worked
    Perhaps this helps someone else...

    Thanks.

Page 1 of 3 123 LastLast

Similar Threads

  1. Replies: 4
    Last Post: 11-06-2012, 07:09 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •