Results 1 to 3 of 3

Thread: Exposing sender capabilities to receiver

  1. #1
    Registered User
    Join Date
    Nov 2017
    Location
    Redmond, WA
    Posts
    1

    Exposing sender capabilities to receiver

    I'm implementing an NDI sender that generates frames dynamically, and I'd like to use a web interface to to adjust various renderer parameters. I'm also considering adding recording support so I can review the generated video later. I can see how to get the address of the web interface and control the recording on the receiver end, but there don't appear to be any functions in the SDK for the sender to inform the receiver that it can do these things. The SDK documentation does mention an "NDIlib_Send_Capabilities" sample, but it is missing from the download I got.

    How can I inform downstream receivers that my source is capable of web control/recording/PTZ? Is it just a matter of sending the right XML metadata along the connection (and if so, what format does it need to be in)? Did this functionality get pulled from the SDK at the last minute? Or is there something that I'm just straight-up missing?

  2. #2
    Registered User
    Join Date
    Aug 2015
    Location
    london
    Posts
    194
    Quote Originally Posted by DarkMorford View Post
    I'm implementing an NDI sender that generates frames dynamically, and I'd like to use a web interface to to adjust various renderer parameters. I'm also considering adding recording support so I can review the generated video later. I can see how to get the address of the web interface and control the recording on the receiver end, but there don't appear to be any functions in the SDK for the sender to inform the receiver that it can do these things. The SDK documentation does mention an "NDIlib_Send_Capabilities" sample, but it is missing from the download I got.

    How can I inform downstream receivers that my source is capable of web control/recording/PTZ? Is it just a matter of sending the right XML metadata along the connection (and if so, what format does it need to be in)? Did this functionality get pulled from the SDK at the last minute? Or is there something that I'm just straight-up missing?

    // This will provide a web control on the current IP address under the name http://URL/MyControl/
    // You should have a web server running locally that can serve these files and allow your application
    // to be configured correctly.
    //
    // To test : Run NDI Video Monitor (from NDI Tools 2.5 or later). When viewing this source it will
    // have a gadget in the lower right of the display. If you click on this it will take you
    // to the URL defined below.
    //
    static const char* p_capabilities = "<ndi_capabilities web_control="http://%IP%//MyControl"/>";
    const NDIlib_metadata_frame_t NDI_connection_type = {
    // The length
    (int)::strlen(p_capabilities),
    // Timecode (synthesized for us !)
    NDIlib_send_timecode_synthesize,
    // The string
    (char*)p_capabilities
    };
    NDIlib_send_add_connection_metadata(pNDI_send, &NDI_connection_type);

  3. #3
    Registered User
    Join Date
    Jan 2018
    Location
    Bangalore
    Posts
    9
    Quote Originally Posted by livepad View Post
    // This will provide a web control on the current IP address under the name http://URL/MyControl/
    // You should have a web server running locally that can serve these files and allow your application
    // to be configured correctly.
    //
    // To test : Run NDI Video Monitor (from NDI Tools 2.5 or later). When viewing this source it will
    // have a gadget in the lower right of the display. If you click on this it will take you
    // to the URL defined below.
    //
    static const char* p_capabilities = "<ndi_capabilities web_control="http://%IP%//MyControl"/>";
    const NDIlib_metadata_frame_t NDI_connection_type = {
    // The length
    (int)::strlen(p_capabilities),
    // Timecode (synthesized for us !)
    NDIlib_send_timecode_synthesize,
    // The string
    (char*)p_capabilities
    };
    NDIlib_send_add_connection_metadata(pNDI_send, &NDI_connection_type);


    Can I specify any URL over there or is that specific to any perticular class?

Tags for this Thread

Bookmarks

Posting Permissions

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