Results 1 to 8 of 8

Thread: MPEG-DASH and setPlayStart() setPlayDuration() not working

  1. #1
    Join Date
    May 2009
    Posts
    19

    Default MPEG-DASH and setPlayStart() setPlayDuration() not working

    I need to do some access controls over my video file. (Only a part of the file can be played publicly.)

    I can do it on HLS/HDS streaming, but not in DASH streaming.

    I tried the following ways:

    • IMediaStreamNameAliasProvider2 -> resolvePlayAlias -> ihttpStreamerSession.setPlayDuration(60*1000L); ihttpStreamerSession.setPlayStart(2*60*1000L); not working
    • IMediaListProvider -> resolveMediaList -> MediaListRendition -> rendition.setPlayDuration(60*1000L); rendition.setPlayStart(2*60*1000L);


    These API calls works in HLS/HDS streaming, but not in DASH.

    Maybe I'm doing it the wrong way or I catch a bug?

    Any ideas?

  2. #2
    Join Date
    Dec 2007
    Posts
    22,013

    Default

    What version of Wowza are you using? MPEG-DASH is not listed in the article, however it is mentioned in the 4.0.3 release notes.

    Richard

  3. #3
    Join Date
    May 2009
    Posts
    19

    Default

    Thank you for your respond Richard.

    First I used wrong wowza version (4.0.0). I've upgraded to the latest stable (4.0.3) but it's not works. May I try with the latest development version?

    To be honest, I see that the API call has effect, but I cannot play the resultant stream.

    I've tried these players:


    The only thing I see on client side the player newer starts to download the chunks from wowza if duration and start time are setted.


    package hu.nava.wowza.test;
    
    import com.wowza.wms.httpstreamer.model.IHTTPStreamerSession;
    import com.wowza.wms.module.ModuleBase;
    
    /**
     * Created by amade on 2014.05.20..
     */
    public class DashTestModule extends ModuleBase {
    
        public void onHTTPSessionCreate(IHTTPStreamerSession httpSession) {
    
            //Cannot play the resultant stream if httpSession is DASH
            httpSession.setPlayStart(60*1000L);
            httpSession.setPlayDuration(60*1000L);
        }
    
    }

    Here is the relevant part of the log:
    INFO application app-start _definst_ hls/_definst_
    INFO mpegdash connect 912965499 -
    INFO stream create sample.mp4 -
    INFO server comment - MediaReaderH264MPEGDash.indexFile[hls/_definst_/sample.mp4][mp4a.40.2]: AAC Audio info: {MediaCodecInfoAudio: codec:AAC, channels:2, frequency:48000, samplesPerFrame:1024, objectType:LC}
    INFO server comment - MediaReaderH264MPEGDash.indexFile[hls/_definst_/sample.mp4][avc1.66.30]: H.264 Video info: {MediaCodecInfoVideo: codec:H264, profile:Baseline, level:3.0, frameSize:424x240, displaySize:424x240, frameRate:24,000000}
    INFO server comment - HTTPStreamerMPEGDashIndex.createM4SListBasedManifest[hls/_definst_/mp4:sample.mp4]: AdpSetId:0 RepId:0 mimeType:video/mp4 codecs:avc1.42c01e bandwidth:420000 height:240 width:424 duration:61042
    INFO server comment - HTTPStreamerMPEGDashIndex.createM4SListBasedManifest[hls/_definst_/mp4:sample.mp4]: AdpSetId:1 RepId:0 mimeType:audio/mp4 codecs:mp4a.40.2 bandwidth:99000 audioSamplingRate="48000"

  4. #4
    Join Date
    Dec 2007
    Posts
    22,013

    Default

    Make sure you start and duration values make sense, do not exceed the length of the video. The Dash info message says the video is 64042 seconds duration. I'm not sure your duration time makes sense. But you say it works correctly with HLS, HDS or Smooth playback?

    Yes, please try it with the latest development patch, version 4.03.02

    If this is still a problem for you with that version, I will try to replicate and forward to Engineering if necessary.

    Thanks,
    Richard

  5. #5
    Join Date
    May 2009
    Posts
    19

    Default

    I've tried with the latest development build (4.03.02 ). Problem remains same.

    Yes, i't works correctly with HLS, HDS and Smooth streaming, only DASH affected.

    The sample.mp4 is the original untouched sample.mp4 which came with wowza. It's duration is 596459ms (9min 56s 459ms).

    The start and duration values setted via API are 1min (60000ms -> 60*1000L), so they are in the length of the video.

    Regards,
    Amade

  6. #6
    Join Date
    Dec 2007
    Posts
    22,013

    Default

    Amade,

    Okay, thanks for updating to latest for your test. I will take the next steps and get back to you in this post or possibly open a ticket on your behalf at some point.

    Thanks for the report,
    Richard

  7. #7
    Join Date
    Dec 2007
    Posts
    22,013

    Default

    Amade,

    What I have learned is that this is a player issue with at least our DASH test player. Server-side, this feature is supported but our test player does not fully support params, and it may be the same in other DASH players.

    Richard

  8. #8
    Join Date
    Dec 2007
    Posts
    22,013

    Default

    Actually, I didn't get the full story before writing previous. This will work in our DASH player using manifest_mvlist.mpd insead of manifest.mpd, like this:

    http://[wowza-address]:1935/vod/mp4:sample.mp4/manifest_mvlist.mpd?wowzaplaystart=30000&wowzaplayduration=40000

    Richard

Similar Threads

  1. Mpeg dash
    By lee2510 in forum Live Streaming and Encoders
    Replies: 1
    Last Post: 02-20-2014, 09:54 PM
  2. Doubts regarding MPEG-DASH
    By stream4life in forum General Forum
    Replies: 2
    Last Post: 01-31-2014, 06:47 AM
  3. setPlayStart/setPlayDuration have no effect when called from onHTTPSessionCreate
    By vlad312 in forum Video On Demand Streaming Discussion
    Replies: 31
    Last Post: 04-03-2012, 02:45 PM

Posting Permissions

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