sapenc: Pass the title on to the chained muxers
This makes sure it ends up in the SDP, providing a proper session name in the SAP announcements. Signed-off-by: Martin Storsjö <martin@martin.st>
This commit is contained in:
committed by
Martin Storsjö
parent
b2fe6756e3
commit
e30e8e311e
@@ -23,6 +23,7 @@
|
|||||||
#include "libavutil/parseutils.h"
|
#include "libavutil/parseutils.h"
|
||||||
#include "libavutil/random_seed.h"
|
#include "libavutil/random_seed.h"
|
||||||
#include "libavutil/avstring.h"
|
#include "libavutil/avstring.h"
|
||||||
|
#include "libavutil/dict.h"
|
||||||
#include "libavutil/intreadwrite.h"
|
#include "libavutil/intreadwrite.h"
|
||||||
#include "libavutil/time.h"
|
#include "libavutil/time.h"
|
||||||
#include "internal.h"
|
#include "internal.h"
|
||||||
@@ -76,6 +77,7 @@ static int sap_write_header(AVFormatContext *s)
|
|||||||
struct sockaddr_storage localaddr;
|
struct sockaddr_storage localaddr;
|
||||||
socklen_t addrlen = sizeof(localaddr);
|
socklen_t addrlen = sizeof(localaddr);
|
||||||
int udp_fd;
|
int udp_fd;
|
||||||
|
AVDictionaryEntry* title = av_dict_get(s->metadata, "title", NULL, 0);
|
||||||
|
|
||||||
if (!ff_network_init())
|
if (!ff_network_init())
|
||||||
return AVERROR(EIO);
|
return AVERROR(EIO);
|
||||||
@@ -158,6 +160,9 @@ static int sap_write_header(AVFormatContext *s)
|
|||||||
av_strlcpy(contexts[i]->filename, url, sizeof(contexts[i]->filename));
|
av_strlcpy(contexts[i]->filename, url, sizeof(contexts[i]->filename));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (s->nb_streams > 0 && title)
|
||||||
|
av_dict_set(&contexts[0]->metadata, "title", title->value, 0);
|
||||||
|
|
||||||
ff_url_join(url, sizeof(url), "udp", NULL, announce_addr, port,
|
ff_url_join(url, sizeof(url), "udp", NULL, announce_addr, port,
|
||||||
"?ttl=%d&connect=1", ttl);
|
"?ttl=%d&connect=1", ttl);
|
||||||
ret = ffurl_open(&sap->ann_fd, url, AVIO_FLAG_WRITE,
|
ret = ffurl_open(&sap->ann_fd, url, AVIO_FLAG_WRITE,
|
||||||
|
Reference in New Issue
Block a user