打印

在DM8168中通过live555实现rtsp的直播

[复制链接]
688|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
qaz098xsw|  楼主 | 2017-10-2 16:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在DM8168中通过live555实现rtsp的直播


1、源码

   
2、实现交叉编译

    vim config.armlinux

    修改: CROSS_COMPILE?=         arm-none-linux-gnueabi-

    ./genMakefiles armlinux

    make



    挂载:

    busybox mount -t nfs -o nolock 172.16.0.73:/xubinbin/live555/live /mnt


3、利用有名管道来实现数据的传输

    在live555中的testProgs/testH264VideoStreamer.cpp默认文件问test.264, 修改为/tmp/test.264


    在视频采集进程中添加:
  • int rtsp_fd;
  • char rtsp_filename[128];
  • int socket_server_init()
  • {
  •     memcpy(rtsp_filename,"/tmp/test.264",sizeof(rtsp_filename));
  •     unlink(rtsp_filename);
  •     if (access(rtsp_filename, F_OK) != 0) {
  •         if (mkfifo(rtsp_filename, 0666) < 0) {
  •             OSA_printf("Failed to mkfifo %s\n", rtsp_filename);
  •             return FALSE;
  •         }
  •     }
  •     if (system("/home/testH264VideoStreamer &") != 0) {
  •         OSA_printf("Failed to execute system command");
  •         return FALSE;
  •     }
  •     rtsp_fd = open(rtsp_filename, O_WRONLY);
  •     if (rtsp_fd <= 0) {
  •         OSA_printf("Failed to open file %s\n", rtsp_filename);
  •     }
  •     else {
  •         OSA_printf("Open file %s for server\n", rtsp_filename);
  •     }
  •     return 0;
  • }
  • write(rtsp_fd,pFullBuf->bufVirtAddr,pFullBuf->filledBufSize);
  • int socket_server_init()
  • {
  •     //删除文件,资源释放,数据清空
  • }

[color=rgb(51, 102, 153) !important]复制代码

[color=rgb(51, 102, 153) !important]


相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

632

主题

842

帖子

3

粉丝