Page 1 of 2 12 LastLast
Results 1 to 10 of 15

Thread: origin-edge using custom instance name.

  1. #1

    Default origin-edge using custom instance name.

    Hello !
    When i use fully specified fms path like server/application/custom_instance/streamname? I cant playback stream from edge, only from origin. Without setting custom_instance all works fine.

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

    Default

    If you use a .stream file you can start that on any application instance you want on the edge. What exactly are you doing?

    Richard

  3. #3

    Default

    I dont use any .stream files. Simphly I try playback dvr from edge using custom instance name - of course, before this, I wrote stream on origin in same instance

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

    Default

    Then I suppose you are relying on the edge Application.xml /OriginURL setting. Use .stream files instead for more flexibility.

    Richard

  5. #5

    Default

    Quote Originally Posted by rrlanham View Post
    Then I suppose you are relying on the edge Application.xml /OriginURL setting. Use .stream files instead for more flexibility.

    Richard
    I try to use stream files instead OriginUrl:
    standard origin-edge settigs, empty OriginUrl on edge:


    1)test.stream contents:
    rtmp://SERVER_IP:1935/origin/myuser/live

    2)connect to wowza using OSMF player, src=http://SERVER_IP:1935/edge/test.stream/manifest.f4m?DVR

    log
    INFO server comment - Wowza Media Server is started!
    INFO application app-start _definst_ edge/_definst_
    INFO stream create - -
    INFO server comment - MediaStreamHTTPStreamerRepeaterBuffer.initLiveStreamRepeating: receiverClass: com.wowza.wms.httpst
    reamer.dvrrepeater.DvrLiveRepeaterReceiver
    INFO server comment - LiveMediaStreamReceiver.connect: rtmp://SERVER_IP:1935/origin/myuser/live:rtmp://192.168.128.
    89:1935/origin/myuser[live]
    INFO server comment - DvrStreamManagerBase.initProperties properties: {Properties: isDvrPacketizer: true}
    INFO server comment - DvrStreamManagerBase.initStorage[edge/_definst_/test.stream] : storeName:null isRecorder:false has
    Storage:false
    INFO server comment - MediaStreamMap.getLiveStreamPacketizer: Create live stream packetizer: dvrstreamingpacketizer:test
    .stream
    INFO application app-start myuser origin/myuser
    INFO session connect-pending SERVER_IP -
    INFO session connect SERVER_IP -
    INFO application setstreamtype httprepeater-origin -
    INFO stream create - -
    INFO server comment - MediaStreamHTTPStreamerRepeaterOriginPlay.initLiveStreamRepeating: playerClass: com.wowza.wms.http
    streamer.dvrrepeater.DvrLiveRepeaterPlayer
    INFO server comment - DvrStreamManagerBase.initProperties properties: {Properties: isDvrPacketizer: true}
    INFO server comment - DvrStreamManagerBase.initStorage[origin/myuser/live] : storeName:dvrfilestorage isRecorder:true ha
    sStorage:true
    INFO server comment - DvrStreamStoreBase.initProperties[origin/myuser/live/live.0] : ChunkOriginURL=null
    INFO server comment - DvrStreamStoreBase.initProperties[origin/myuser/live/live.0] : properties:[dvrChunkGroupingSeconds
    =600, dvrAllowableAVPacketDelta=2000, dvrResetTimePacketDelta=200, dvrPacketDeltaToNotify=200]
    INFO server comment - MediaStreamMap.getLiveStreamPacketizer: Create live stream packetizer: dvrstreamingpacketizer:live

    INFO server comment - MediaStreamMap.removeLiveStreamPacketizer[edge/_definst_/test.stream]: Destroy live stream packeti
    zer: dvrstreamingpacketizer
    INFO server comment - DvrStreamManagerBase.initProperties properties: {Properties: isDvrPacketizer: true}
    INFO server comment - DvrStreamManagerBase.initStorage[edge/_definst_/test.stream] : storeName:null isRecorder:false has
    Storage:false
    INFO server comment - MediaStreamMap.getLiveStreamPacketizer: Create live stream packetizer: dvrstreamingpacketizer:test
    .stream
    INFO server comment - DvrStreamStoreBase.initProperties[edge/_definst_/test.stream/live.0] : ChunkOriginURL=null
    INFO server comment - DvrStreamStoreBase.initProperties[edge/_definst_/test.stream/live.0] : properties:[dvrChunkGroupin
    gSeconds=600, dvrAllowableAVPacketDelta=2000, dvrResetTimePacketDelta=200, dvrPacketDeltaToNotify=200]
    INFO sanjose connect 1634224716 -
    INFO stream create test.stream -
    WARN server comment - DvrStreamStoreBase.retrieveChunkFromRepeater[edge/_definst_/test.stream/live.0] : No origin URLs d
    efined for retrieving chunks.
    WARN server comment - .getDvrSanJoseFragments: null video chunk chunkIndex=0
    WARN server comment - .getDvrSanJoseFragments: null audio chunk chunkIndex=0
    WARN server comment - HTTPStreamerAdapterSanJoseStreamer.onMediaFile: Chunk:0 not found [edge/test.stream/DVR_b125000_w1
    634224716_qRFZS.abst/Seg1-Frag0]: test.stream.
    Same situation....

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

    Default

    "myuser" in rtmp://SERVER_IP:1935/origin/myuser/live is an application instance. There has to be stream being published on the origin at the application/applicationInstance. If you are not specifying an application instance for the origin stream then it is the _defInst_ which you do not have to specify.

    It is easy to test. Take the origin url you have the .stream file on the edge, and try to play it in the Wowza example FlashRTMPlayer

    Server: rtmp://SERVER_IP:1935/origin/myuser
    Stream: live

    Richard

  7. #7

    Default

    ....

    Problem, that i cant select origin per stream using wowza api. This is the main problem.

    In the case of using stream-fles, problem, that it cannot to work without setting originurl (for dvr) When i setup originurl i get fixed path to origin



    What about the first message - I examined different wowza processes , related with edge-origin communications, and i found, that the main problem attempts, when edge connect to origin dvrchunk httpstreamers.
    Look:

    originurl="wowz://server:1935/OriginApplication"

    1) Http client connect to EDGE using url http://server:1935/EDGEapplication/custom_instance/stream/manifest.f4m?DVR
    2) In imediastreamnamealias provider, when resolveStreamAlias(IApplicationInstance appInstance, String name, IMediaCaster mediaCaster) is called, name="wowz://server:1935/OriginApplication/_definst_/stream". This is a first point of problem.
    3)Edge make rtmp connection to origin for to standup DVRstore for stream, using rtmp url : rtmp://server:1935/application/_definst_/stream
    4)Auter start play in client player, EDGE make connection to dvrchunkstreamer using server/application/_definst_/stream

    Okay. what we can do ?
    set originurl="wowz://server:1935/OriginApplication/custom_instance/stream"

    1) Http client connect to EDGE using url http://server:1935/EDGEapplication/custom_instance/stream/manifest.f4m?DVR
    2) In imediastreamnamealias provider, when resolveStreamAlias(IApplicationInstance appInstance, String name, IMediaCaster mediaCaster) is called, name="wowz://server:1935/OriginApplication/custom_instance/stream". - Ok
    3)Edge make rtmp connection to origin for to standup DVRstore for stream, using rtmp url : rtmp://server:1935/application/custom_instance/stream - Ok !

    4)EDGE make connection to dvrchunkstreamer using ..... server/application/_definst_/stream I love wowza:-)

    How I can fix problem on last step ?
    Last edited by yaroslavv; 04-10-2013 at 04:37 AM.

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

    Default

    Right, that's true of nDVR. As far as I know you have to use OriginURL. You can use multiple applications to re-stream from different origins.

    Richard

  9. #9

    Default

    Quote Originally Posted by rrlanham View Post
    Right, that's true of nDVR. As far as I know you have to use OriginURL. You can use multiple applications to re-stream from different origins.

    Richard
    Sorry, Im update post.

  10. #10

    Default

    My opinion is that the changes in wowza code sholud be very easy - for implementing ability to use custom instance name in edge-origin scheme.
    Origin correctly processes dvr chunk request (*.dvr) using custom instance name , originurl can be simphy updated using onappinstancestart.
    Only one thing, whats extremely needed - adding application instanse name to dvrrepeater requests for dvr chunks downloading from origin.

    Also, i have to think about implement simple proxy, which will be to proxy requests from edge to origin for rewrite headers. Or, about implementing edge infrastructure on diffepernt software platform.

Page 1 of 2 12 LastLast

Similar Threads

  1. Live Repeater Origin-Edge and HTTP Caching Origin
    By vjagannathan in forum General Forum
    Replies: 3
    Last Post: 06-18-2014, 02:56 AM
  2. Replies: 1
    Last Post: 10-10-2013, 11:34 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
  •