• 树莓派使用gmediarender获取投屏链接


    dlna+upna的协议体系实际是将A端的媒体URL发送至B端,B端经此URL进行视屏或者音频播放。因此我们可以通过投屏的方法来接收此URL,方法如下:

    1、在树莓派(本人使用Pi4)上,git clone gmediareder代码:https://github.com/hzeller/gmrender-resurrect.git

    2、修改一下patch:

    diff --git a/src/upnp_transport.c b/src/upnp_transport.c
    index 1f7a039..96607f0 100644
    --- a/src/upnp_transport.c
    +++ b/src/upnp_transport.c
    @@ -495,6 +495,7 @@ static void replace_current_uri_and_meta(const char *uri, const char *meta){
            const char *tracks = (uri != NULL && strlen(uri) > 0) ? "1" : "0";
            replace_var(TRANSPORT_VAR_CUR_TRACK, tracks);
            replace_var(TRANSPORT_VAR_CUR_TRACK_URI, uri);
    +       printf("====uri: %s
    ", uri);
            replace_var(TRANSPORT_VAR_CUR_TRACK_META, meta);
     }

    3、编译、运行gmediareder。

    4、从移动端发起投屏,投屏时选择gmediareder。在第3步如果通过gmediareder的参数指定了特定的--friendly-name,此处就选择对应的名称。

    5、树莓派端的gmediareder将打印接收到的url:

    此url一般是m3u8格式描述文件,依次记录了多个剪辑片段的url。如果需要下载此视频,需要先将m3u8文件下载后,再下载其中的所有片段,最后使用ffmpeg将诸文件合并为一个文件。

    某些视频软件也会直接使用资源本身的url发射投屏,这种情况可直接wget获取此资源。

  • 相关阅读:
    jquery-追加元素
    mssql-异常value '0000-00-00' can not be represented as java.sql.Date
    lucene-Field.Store解析
    mysql-删除日志文件命令详解
    js-读取上传文件后缀
    js-处理回车事件
    maven-腾讯SDK(QQ)接口java引入pom配置
    ps制作gif图片
    java-commons-HttpClient超时设置setConnectionTimeout和setSoTimeout
    js-比较两个日期的大小
  • 原文地址:https://www.cnblogs.com/shijianyujingshen/p/14353676.html
Copyright © 2020-2023  润新知