ORTP(3)VS2019编译ORTP

将ortp源码复制到window上,打开VS2019,文件----打开-----项目/解决方案

打开 ortp\build\win32nativ下的VS项目

导入完成

 直接运行

编译报错,查看

 屏蔽它

编译成功,添加dll或者lib使用库

 库路径

 \ortp\build\win32native\Debug

 添加工程在exe/ortp/

第一层

# CMake 最低版本号要求
cmake_minimum_required(VERSION 3.0.0)  
# 项目名称
project(1)

# 第二种编译方式,手动添加
file(GLOB MY_SOURCE_DIR 
    ./source/*.c
    ./source/1/*.c)

set(MY_INCLUDE_DIR 
    ./include 
    ./include/1)

# 向工程添加多个指定头文件的搜索路径
include_directories (${MY_INCLUDE_DIR})

#链接线程库
LINK_LIBRARIES(-lm)

# 向当前工程添加存放源文件的子目录
add_executable (main ${MY_SOURCE_DIR})

# 生成文件路径 指定为项目根目录的bin路径
set (EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/exe)

add_subdirectory (source/2-ortp)

 2-ortp

add_subdirectory (./rtpsend)
add_subdirectory (./rtprecv)
add_subdirectory (./mrtpsend)
add_subdirectory (./mrtprecv)

rtpsend

# CMake 最低版本号要求
cmake_minimum_required(VERSION 3.0.0)  


# 第二种编译方式,手动添加
file(GLOB ORTP_SOURCE_DIR 
    ./*.c)

set(ORTP_INCLUDE_DIR 
    ${PROJECT_SOURCE_DIR}/lib/1-ortp/)

# 向工程添加多个指定头文件的搜索路径
include_directories (${ORTP_INCLUDE_DIR})
#链接线程库
LINK_LIBRARIES(-lm)

# 找库
find_library(ORTP_LIB oRTP.lib ${PROJECT_SOURCE_DIR}/lib/1-ortp)

# 向当前工程添加存放源文件的子目录
add_executable (rtpsend ${ORTP_SOURCE_DIR})

#链接
target_link_libraries (rtpsend ${ORTP_LIB})

# 生成文件路径 指定为项目根目录的bin路径
set (EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/exe/ortp)

编译成功,运行

将ortp.dll加入到运行目录下

原文链接

服务器:接收

 客户端:发送

 实际上可以ping通

 

 

开启发送接收

 

 

 接收不到任何数据

在windows10下使用win_receiver时同样会提示下如下错误,
QOSAddSocketToFlow failed to add a flow with error 87

ortp-error-Could not bind RTP socket on port to 192.168.150.136 port 12321
具体问题暂时还没有深究,这个应该是一个系统兼容性问题,需要系统支持qwave.lib。
在查找了错误出处,对比了前几个ortp的版本后,对ortp的源代码进行了修改

在Sources Files-----rtpsession_inet.c--------rtp_session_set_local_addr函数修改 

 编译运行

 

 出现连接标志,数据发送