Results 1 to 7 of 7

Thread: NDI HX Camera (iPhone) with OBS (Mac OS 10.15.4)

  1. #1
    Newbie Member
    Join Date
    May 2008
    Location
    Hamburg Germany
    Posts
    23

    NDI HX Camera (iPhone) with OBS (Mac OS 10.15.4)

    I´ve just installed NDI HX Camera and want to use it as Input source for OBS Studio 24.06.

    The only way I figured out to get the stream into OBS Studio is by launching NewTek NDI Video Monitor 3.1 (28) and then choose "Window" as source for OBS. That works fine so far, but I wonder, if there is a way to get the stream directly into OBS, without using Video Monitor?
    President of ABBUC e.V., the world´s biggest 8 Bit Computer Club -> www.abbuc.de

  2. #2
    You need to install the NDI plug-in for OBS, then you can get the signal in directly from NDI-HX Camera.
    https://github.com/Palakis/obs-ndi/releases
    Kane Peterson
    Solutions Architect
    NewTek, Inc.

  3. #3
    Newbie Member
    Join Date
    May 2008
    Location
    Hamburg Germany
    Posts
    23
    Thank you kanep.
    I´ve seen that on the Facebook NDI group yesterday and immediately installed it. But sadly it crashes as soon as I hit "Okay".

    System: NDI HX Camera on iPhone XR iOS 13.3.1, MacBookPro (2015) with Mac OS X Catalina (10.15.4) and OBS Studio 24.06 (64 Bit)

    Even when NDI HX Camera on the iPhone is off and the PlugIn is not seeing a source, it crashes.

    Click image for larger version. 

Name:	obs_ndi_crash.jpg 
Views:	103 
Size:	195.5 KB 
ID:	147211

    From the crash log:

    Code:
    Process:               obs [46930]
    Path:                  /Applications/OBS.app/Contents/MacOS/obs
    Identifier:            com.obsproject.obs-studio
    Version:               24.0.6 (24.0.6)
    Code Type:             X86-64 (Native)
    Parent Process:        ??? [1]
    Responsible:           obs [46930]
    User ID:               501
    
    Date/Time:             2020-04-05 09:34:19.966 +0200
    OS Version:            Mac OS X 10.15.4 (19E266)
    Report Version:        12
    Anonymous UUID:        8948BC3E-26A0-FB07-120D-AD4A2D8E2027
    
    Sleep/Wake UUID:       AE7F6D0A-A3F8-4D4A-AB76-481F3FE3F550
    
    Time Awake Since Boot: 270000 seconds
    Time Since Wake:       2100 seconds
    
    System Integrity Protection: enabled
    
    Crashed Thread:        7  libobs: graphics thread
    
    Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
    Exception Codes:       EXC_I386_GPFLT
    Exception Note:        EXC_CORPSE_NOTIFY
    
    Termination Signal:    Segmentation fault: 11
    Termination Reason:    Namespace SIGNAL, Code 0xb
    Terminating Process:   exc handler [46930]
    
    [...]
    
    Thread 7 Crashed:: libobs: graphics thread
    0   libndi.4.dylib                	0x00000000130e9f5c 0x130b7000 + 208732
    1   libndi.4.dylib                	0x00000000130ba1fd 0x130b7000 + 12797
    2   libndi.4.dylib                	0x000000001313bcdf NDIlib_recv_create_v3 + 447
    3   obs-ndi.so                    	0x000000001309ccf9 ndi_source_update(void*, obs_data*) + 729
    4   libobs.0.dylib                	0x000000010510a354 obs_source_video_tick + 996
    5   libobs.0.dylib                	0x000000010514cb3d obs_graphics_thread + 1709
    6   libsystem_pthread.dylib       	0x00007fff71572109 _pthread_start + 148
    7   libsystem_pthread.dylib       	0x00007fff7156db8b thread_start + 15
    
    [...]
    
    Thread 10:
    0   libsystem_kernel.dylib        	0x00007fff714b23a6 __recvfrom + 10
    1   libProcessing.NDI.Plugins.IPCam.dylib	0x00000000135f778d Processing::NDI::ipfind::main::ptzoptics::connection_t::process() + 779
    2   libProcessing.NDI.Plugins.IPCam.dylib	0x00000000135f85c1 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (Processing::NDI::ipfind::main::ptzoptics::connection_t::*)(), Processing::NDI::ipfind::main::ptzoptics::connection_t*> >(void*) + 59
    3   libsystem_pthread.dylib       	0x00007fff71572109 _pthread_start + 148
    4   libsystem_pthread.dylib       	0x00007fff7156db8b thread_start + 15
    
    Thread 11:
    0   libsystem_kernel.dylib        	0x00007fff714b23a6 __recvfrom + 10
    1   libProcessing.NDI.Plugins.IPCam.dylib	0x00000000135fb5e1 Processing::NDI::ipfind::main::onvif::connection_t::process() + 611
    2   libProcessing.NDI.Plugins.IPCam.dylib	0x00000000135fc60f void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (Processing::NDI::ipfind::main::onvif::connection_t::*)(), Processing::NDI::ipfind::main::onvif::connection_t*> >(void*) + 59
    3   libsystem_pthread.dylib       	0x00007fff71572109 _pthread_start + 148
    4   libsystem_pthread.dylib       	0x00007fff7156db8b thread_start + 15
    
    Thread 12:
    0   libsystem_kernel.dylib        	0x00007fff714b23a6 __recvfrom + 10
    1   libProcessing.NDI.Plugins.IPCam.dylib	0x00000000135fb5e1 Processing::NDI::ipfind::main::onvif::connection_t::process() + 611
    2   libProcessing.NDI.Plugins.IPCam.dylib	0x00000000135fc60f void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (Processing::NDI::ipfind::main::onvif::connection_t::*)(), Processing::NDI::ipfind::main::onvif::connection_t*> >(void*) + 59
    3   libsystem_pthread.dylib       	0x00007fff71572109 _pthread_start + 148
    4   libsystem_pthread.dylib       	0x00007fff7156db8b thread_start + 15
    
    Thread 13:
    0   libsystem_kernel.dylib        	0x00007fff714b23a6 __recvfrom + 10
    1   libProcessing.NDI.Plugins.IPCam.dylib	0x00000000135ec560 Processing::NDI::ipfind::main::panasonic::connection_t::process() + 374
    2   libProcessing.NDI.Plugins.IPCam.dylib	0x00000000135ed799 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (Processing::NDI::ipfind::main::panasonic::connection_t::*)(), Processing::NDI::ipfind::main::panasonic::connection_t*> >(void*) + 59
    3   libsystem_pthread.dylib       	0x00007fff71572109 _pthread_start + 148
    4   libsystem_pthread.dylib       	0x00007fff7156db8b thread_start + 15
    
    Thread 14:
    0   libsystem_kernel.dylib        	0x00007fff714b23a6 __recvfrom + 10
    1   libProcessing.NDI.Plugins.IPCam.dylib	0x0000000013600b08 Processing::NDI::ipfind::main::sony::connection_t::process() + 524
    2   libProcessing.NDI.Plugins.IPCam.dylib	0x0000000013602099 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (Processing::NDI::ipfind::main::sony::connection_t::*)(), Processing::NDI::ipfind::main::sony::connection_t*> >(void*) + 59
    3   libsystem_pthread.dylib       	0x00007fff71572109 _pthread_start + 148
    4   libsystem_pthread.dylib       	0x00007fff7156db8b thread_start + 15
    
    [...]
    President of ABBUC e.V., the world´s biggest 8 Bit Computer Club -> www.abbuc.de

  4. #4
    Might be best to look here.
    https://github.com/Palakis/obs-ndi/issues/405
    Kane Peterson
    Solutions Architect
    NewTek, Inc.

  5. #5
    Registered User
    Join Date
    Apr 2020
    Location
    NC
    Posts
    3
    Im Setting up NDI_HX on a Mac and Iphone. I can only get audio no video. What could be the problem?

  6. #6
    Registered User
    Join Date
    Aug 2015
    Location
    london
    Posts
    292
    Hey Kane

    We have also had a few reports of "OBS Crashing" when connecting to the Sienna NDICam app on iPhone - same setup with OBS as this report and NewTek's NDI HX Camera.
    Its clearly not a general problem since thousands of other users are working happily - but it does appear there may be some sort of edge condition NDI Based vulnerability on the OBS side - either a bug in OBS, or some particular NDI version on the computer.

    its real, and its someone's bug. However its not a fault on either the Sienna NDICam app or the NewTek HX Camera on iPhone - it's a computer side bug in OBS or NDI or an incompatibility in a specific NDI Version on the host computer.

    The crash log helpfully provided in this thread may be of use to NTK to follow up.

    Quote Originally Posted by skr View Post
    Thank you kanep.
    I´ve seen that on the Facebook NDI group yesterday and immediately installed it. But sadly it crashes as soon as I hit "Okay".

    System: NDI HX Camera on iPhone XR iOS 13.3.1, MacBookPro (2015) with Mac OS X Catalina (10.15.4) and OBS Studio 24.06 (64 Bit)

    Even when NDI HX Camera on the iPhone is off and the PlugIn is not seeing a source, it crashes.

    Click image for larger version. 

Name:	obs_ndi_crash.jpg 
Views:	103 
Size:	195.5 KB 
ID:	147211

    From the crash log:

    Code:
    Process:               obs [46930]
    Path:                  /Applications/OBS.app/Contents/MacOS/obs
    Identifier:            com.obsproject.obs-studio
    Version:               24.0.6 (24.0.6)
    Code Type:             X86-64 (Native)
    Parent Process:        ??? [1]
    Responsible:           obs [46930]
    User ID:               501
    
    Date/Time:             2020-04-05 09:34:19.966 +0200
    OS Version:            Mac OS X 10.15.4 (19E266)
    Report Version:        12
    Anonymous UUID:        8948BC3E-26A0-FB07-120D-AD4A2D8E2027
    
    Sleep/Wake UUID:       AE7F6D0A-A3F8-4D4A-AB76-481F3FE3F550
    
    Time Awake Since Boot: 270000 seconds
    Time Since Wake:       2100 seconds
    
    System Integrity Protection: enabled
    
    Crashed Thread:        7  libobs: graphics thread
    
    Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
    Exception Codes:       EXC_I386_GPFLT
    Exception Note:        EXC_CORPSE_NOTIFY
    
    Termination Signal:    Segmentation fault: 11
    Termination Reason:    Namespace SIGNAL, Code 0xb
    Terminating Process:   exc handler [46930]
    
    [...]
    
    Thread 7 Crashed:: libobs: graphics thread
    0   libndi.4.dylib                	0x00000000130e9f5c 0x130b7000 + 208732
    1   libndi.4.dylib                	0x00000000130ba1fd 0x130b7000 + 12797
    2   libndi.4.dylib                	0x000000001313bcdf NDIlib_recv_create_v3 + 447
    3   obs-ndi.so                    	0x000000001309ccf9 ndi_source_update(void*, obs_data*) + 729
    4   libobs.0.dylib                	0x000000010510a354 obs_source_video_tick + 996
    5   libobs.0.dylib                	0x000000010514cb3d obs_graphics_thread + 1709
    6   libsystem_pthread.dylib       	0x00007fff71572109 _pthread_start + 148
    7   libsystem_pthread.dylib       	0x00007fff7156db8b thread_start + 15
    
    [...]
    
    Thread 10:
    0   libsystem_kernel.dylib        	0x00007fff714b23a6 __recvfrom + 10
    1   libProcessing.NDI.Plugins.IPCam.dylib	0x00000000135f778d Processing::NDI::ipfind::main::ptzoptics::connection_t::process() + 779
    2   libProcessing.NDI.Plugins.IPCam.dylib	0x00000000135f85c1 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (Processing::NDI::ipfind::main::ptzoptics::connection_t::*)(), Processing::NDI::ipfind::main::ptzoptics::connection_t*> >(void*) + 59
    3   libsystem_pthread.dylib       	0x00007fff71572109 _pthread_start + 148
    4   libsystem_pthread.dylib       	0x00007fff7156db8b thread_start + 15
    
    Thread 11:
    0   libsystem_kernel.dylib        	0x00007fff714b23a6 __recvfrom + 10
    1   libProcessing.NDI.Plugins.IPCam.dylib	0x00000000135fb5e1 Processing::NDI::ipfind::main::onvif::connection_t::process() + 611
    2   libProcessing.NDI.Plugins.IPCam.dylib	0x00000000135fc60f void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (Processing::NDI::ipfind::main::onvif::connection_t::*)(), Processing::NDI::ipfind::main::onvif::connection_t*> >(void*) + 59
    3   libsystem_pthread.dylib       	0x00007fff71572109 _pthread_start + 148
    4   libsystem_pthread.dylib       	0x00007fff7156db8b thread_start + 15
    
    Thread 12:
    0   libsystem_kernel.dylib        	0x00007fff714b23a6 __recvfrom + 10
    1   libProcessing.NDI.Plugins.IPCam.dylib	0x00000000135fb5e1 Processing::NDI::ipfind::main::onvif::connection_t::process() + 611
    2   libProcessing.NDI.Plugins.IPCam.dylib	0x00000000135fc60f void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (Processing::NDI::ipfind::main::onvif::connection_t::*)(), Processing::NDI::ipfind::main::onvif::connection_t*> >(void*) + 59
    3   libsystem_pthread.dylib       	0x00007fff71572109 _pthread_start + 148
    4   libsystem_pthread.dylib       	0x00007fff7156db8b thread_start + 15
    
    Thread 13:
    0   libsystem_kernel.dylib        	0x00007fff714b23a6 __recvfrom + 10
    1   libProcessing.NDI.Plugins.IPCam.dylib	0x00000000135ec560 Processing::NDI::ipfind::main::panasonic::connection_t::process() + 374
    2   libProcessing.NDI.Plugins.IPCam.dylib	0x00000000135ed799 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (Processing::NDI::ipfind::main::panasonic::connection_t::*)(), Processing::NDI::ipfind::main::panasonic::connection_t*> >(void*) + 59
    3   libsystem_pthread.dylib       	0x00007fff71572109 _pthread_start + 148
    4   libsystem_pthread.dylib       	0x00007fff7156db8b thread_start + 15
    
    Thread 14:
    0   libsystem_kernel.dylib        	0x00007fff714b23a6 __recvfrom + 10
    1   libProcessing.NDI.Plugins.IPCam.dylib	0x0000000013600b08 Processing::NDI::ipfind::main::sony::connection_t::process() + 524
    2   libProcessing.NDI.Plugins.IPCam.dylib	0x0000000013602099 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (Processing::NDI::ipfind::main::sony::connection_t::*)(), Processing::NDI::ipfind::main::sony::connection_t*> >(void*) + 59
    3   libsystem_pthread.dylib       	0x00007fff71572109 _pthread_start + 148
    4   libsystem_pthread.dylib       	0x00007fff7156db8b thread_start + 15
    
    [...]

  7. #7
    Registered User
    Join Date
    Aug 2015
    Location
    london
    Posts
    292
    ATTN: Kane + NTK
    Having re-read the crash log myself, I think I know the answer.

    The crash is indeed inside NDI, and its one we have seen before in other environments (nothing to do with OBS). Its basically related to the NDI HX device search process - which is finding a 'non' HX device, but which looks 'a bit like' an HX device. This version of NDI is getting a bad URL and it crashes on it. This is simply an NDI search - it has nothing at all to do with the iPhone camera. Its actually caused by a generic RTSP device on the same network which is getting confused with an HX device and leading to the crash.

    The solution is already in place - has been fixed by NTK NDI Dev team. I dont have the exact info to hand, but an updated NDI library will fix this problem - as would turning off the 'rougue' RTSP device (could be a security camera on your network somewhere). If anyone can further characterise this issue by identifying the device that would be useful - but the fix is to update the NDI Library used by OBS.


    Quote Originally Posted by livepad View Post
    Hey Kane

    We have also had a few reports of "OBS Crashing" when connecting to the Sienna NDICam app on iPhone - same setup with OBS as this report and NewTek's NDI HX Camera.
    Its clearly not a general problem since thousands of other users are working happily - but it does appear there may be some sort of edge condition NDI Based vulnerability on the OBS side - either a bug in OBS, or some particular NDI version on the computer.

    its real, and its someone's bug. However its not a fault on either the Sienna NDICam app or the NewTek HX Camera on iPhone - it's a computer side bug in OBS or NDI or an incompatibility in a specific NDI Version on the host computer.

    The crash log helpfully provided in this thread may be of use to NTK to follow up.

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
  •