Revert "avserver: fix build after the next bump."
This temporarily (until 0.8 is released) reverts commit 8e1340abc316e038bb89e5a3b46e92ff58c98a88. That commit breaks shared builds because of symbol hiding. Reverting it will enable shared builds for 0.8
This commit is contained in:
parent
d2a0041c20
commit
97e3f94b61
20
avserver.c
20
avserver.c
@ -26,16 +26,13 @@
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include "libavformat/avformat.h"
|
#include "libavformat/avformat.h"
|
||||||
// FIXME those are internal headers, avserver _really_ shouldn't use them
|
|
||||||
#include "libavformat/ffm.h"
|
#include "libavformat/ffm.h"
|
||||||
#include "libavformat/network.h"
|
#include "libavformat/network.h"
|
||||||
#include "libavformat/os_support.h"
|
#include "libavformat/os_support.h"
|
||||||
#include "libavformat/rtpdec.h"
|
#include "libavformat/rtpdec.h"
|
||||||
#include "libavformat/rtsp.h"
|
#include "libavformat/rtsp.h"
|
||||||
|
// XXX for ffio_open_dyn_packet_buffer, to be removed
|
||||||
#include "libavformat/avio_internal.h"
|
#include "libavformat/avio_internal.h"
|
||||||
#include "libavformat/internal.h"
|
|
||||||
#include "libavformat/url.h"
|
|
||||||
|
|
||||||
#include "libavutil/avstring.h"
|
#include "libavutil/avstring.h"
|
||||||
#include "libavutil/lfg.h"
|
#include "libavutil/lfg.h"
|
||||||
#include "libavutil/dict.h"
|
#include "libavutil/dict.h"
|
||||||
@ -870,7 +867,7 @@ static void close_connection(HTTPContext *c)
|
|||||||
}
|
}
|
||||||
h = c->rtp_handles[i];
|
h = c->rtp_handles[i];
|
||||||
if (h)
|
if (h)
|
||||||
ffurl_close(h);
|
url_close(h);
|
||||||
}
|
}
|
||||||
|
|
||||||
ctx = &c->fmt_ctx;
|
ctx = &c->fmt_ctx;
|
||||||
@ -2251,6 +2248,7 @@ static int http_prepare_data(HTTPContext *c)
|
|||||||
* Default value from Libav
|
* Default value from Libav
|
||||||
* Try to set it use configuration option
|
* Try to set it use configuration option
|
||||||
*/
|
*/
|
||||||
|
c->fmt_ctx.preload = (int)(0.5*AV_TIME_BASE);
|
||||||
c->fmt_ctx.max_delay = (int)(0.7*AV_TIME_BASE);
|
c->fmt_ctx.max_delay = (int)(0.7*AV_TIME_BASE);
|
||||||
|
|
||||||
if (avformat_write_header(&c->fmt_ctx, NULL) < 0) {
|
if (avformat_write_header(&c->fmt_ctx, NULL) < 0) {
|
||||||
@ -2369,7 +2367,7 @@ static int http_prepare_data(HTTPContext *c)
|
|||||||
if (c->rtp_protocol == RTSP_LOWER_TRANSPORT_TCP)
|
if (c->rtp_protocol == RTSP_LOWER_TRANSPORT_TCP)
|
||||||
max_packet_size = RTSP_TCP_MAX_PACKET_SIZE;
|
max_packet_size = RTSP_TCP_MAX_PACKET_SIZE;
|
||||||
else
|
else
|
||||||
max_packet_size = c->rtp_handles[c->packet_stream_index]->max_packet_size;
|
max_packet_size = url_get_max_packet_size(c->rtp_handles[c->packet_stream_index]);
|
||||||
ret = ffio_open_dyn_packet_buf(&ctx->pb, max_packet_size);
|
ret = ffio_open_dyn_packet_buf(&ctx->pb, max_packet_size);
|
||||||
} else {
|
} else {
|
||||||
ret = avio_open_dyn_buf(&ctx->pb);
|
ret = avio_open_dyn_buf(&ctx->pb);
|
||||||
@ -2522,7 +2520,7 @@ static int http_send_data(HTTPContext *c)
|
|||||||
} else {
|
} else {
|
||||||
/* send RTP packet directly in UDP */
|
/* send RTP packet directly in UDP */
|
||||||
c->buffer_ptr += 4;
|
c->buffer_ptr += 4;
|
||||||
ffurl_write(c->rtp_handles[c->packet_stream_index],
|
url_write(c->rtp_handles[c->packet_stream_index],
|
||||||
c->buffer_ptr, len);
|
c->buffer_ptr, len);
|
||||||
c->buffer_ptr += len;
|
c->buffer_ptr += len;
|
||||||
/* here we continue as we can send several packets per 10 ms slot */
|
/* here we continue as we can send several packets per 10 ms slot */
|
||||||
@ -3406,10 +3404,10 @@ static int rtp_new_av_stream(HTTPContext *c,
|
|||||||
"rtp://%s:%d", ipaddr, ntohs(dest_addr->sin_port));
|
"rtp://%s:%d", ipaddr, ntohs(dest_addr->sin_port));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ffurl_open(&h, ctx->filename, AVIO_FLAG_WRITE, NULL, NULL) < 0)
|
if (url_open(&h, ctx->filename, AVIO_FLAG_WRITE) < 0)
|
||||||
goto fail;
|
goto fail;
|
||||||
c->rtp_handles[stream_index] = h;
|
c->rtp_handles[stream_index] = h;
|
||||||
max_packet_size = h->max_packet_size;
|
max_packet_size = url_get_max_packet_size(h);
|
||||||
break;
|
break;
|
||||||
case RTSP_LOWER_TRANSPORT_TCP:
|
case RTSP_LOWER_TRANSPORT_TCP:
|
||||||
/* RTP/TCP case */
|
/* RTP/TCP case */
|
||||||
@ -3432,7 +3430,7 @@ static int rtp_new_av_stream(HTTPContext *c,
|
|||||||
if (avformat_write_header(ctx, NULL) < 0) {
|
if (avformat_write_header(ctx, NULL) < 0) {
|
||||||
fail:
|
fail:
|
||||||
if (h)
|
if (h)
|
||||||
ffurl_close(h);
|
url_close(h);
|
||||||
av_free(ctx);
|
av_free(ctx);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
@ -3469,7 +3467,7 @@ static AVStream *add_av_stream1(FFStream *stream, AVCodecContext *codec, int cop
|
|||||||
}
|
}
|
||||||
fst->priv_data = av_mallocz(sizeof(FeedData));
|
fst->priv_data = av_mallocz(sizeof(FeedData));
|
||||||
fst->index = stream->nb_streams;
|
fst->index = stream->nb_streams;
|
||||||
avpriv_set_pts_info(fst, 33, 1, 90000);
|
av_set_pts_info(fst, 33, 1, 90000);
|
||||||
fst->sample_aspect_ratio = codec->sample_aspect_ratio;
|
fst->sample_aspect_ratio = codec->sample_aspect_ratio;
|
||||||
stream->streams[stream->nb_streams++] = fst;
|
stream->streams[stream->nb_streams++] = fst;
|
||||||
return fst;
|
return fst;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user