Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
F
ffmpeg.wasm-core
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Linshizhi
ffmpeg.wasm-core
Commits
4ec153bb
Commit
4ec153bb
authored
Mar 08, 2011
by
Anton Khirnov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
avio: make udp_set_remote_url/get_local_port internal.
parent
4377fafd
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
19 additions
and
13 deletions
+19
-13
protocols.texi
doc/protocols.texi
+2
-2
avio.h
libavformat/avio.h
+3
-3
avio_internal.h
libavformat/avio_internal.h
+4
-0
rtpproto.c
libavformat/rtpproto.c
+6
-5
udp.c
libavformat/udp.c
+4
-3
No files found.
doc/protocols.texi
View file @
4ec153bb
...
@@ -433,9 +433,9 @@ set the time to live value (for multicast only)
...
@@ -433,9 +433,9 @@ set the time to live value (for multicast only)
@item connect=@var{1|0}
@item connect=@var{1|0}
Initialize the UDP socket with @code{connect()}. In this case, the
Initialize the UDP socket with @code{connect()}. In this case, the
destination address can't be changed with udp_set_remote_url later.
destination address can't be changed with
ff_
udp_set_remote_url later.
If the destination address isn't known at the start, this option can
If the destination address isn't known at the start, this option can
be specified in udp_set_remote_url, too.
be specified in
ff_
udp_set_remote_url, too.
This allows finding out the source address for the packets with getsockname,
This allows finding out the source address for the packets with getsockname,
and makes writes return with AVERROR(ECONNREFUSED) if "destination
and makes writes return with AVERROR(ECONNREFUSED) if "destination
unreachable" is received.
unreachable" is received.
...
...
libavformat/avio.h
View file @
4ec153bb
...
@@ -448,6 +448,9 @@ attribute_deprecated void put_flush_packet(AVIOContext *s);
...
@@ -448,6 +448,9 @@ attribute_deprecated void put_flush_packet(AVIOContext *s);
*/
*/
attribute_deprecated
int
url_feof
(
AVIOContext
*
s
);
attribute_deprecated
int
url_feof
(
AVIOContext
*
s
);
attribute_deprecated
int
url_ferror
(
AVIOContext
*
s
);
attribute_deprecated
int
url_ferror
(
AVIOContext
*
s
);
attribute_deprecated
int
udp_set_remote_url
(
URLContext
*
h
,
const
char
*
uri
);
attribute_deprecated
int
udp_get_local_port
(
URLContext
*
h
);
#endif
#endif
AVIOContext
*
avio_alloc_context
(
AVIOContext
*
avio_alloc_context
(
...
@@ -675,9 +678,6 @@ void init_checksum(AVIOContext *s,
...
@@ -675,9 +678,6 @@ void init_checksum(AVIOContext *s,
unsigned
long
(
*
update_checksum
)(
unsigned
long
c
,
const
uint8_t
*
p
,
unsigned
int
len
),
unsigned
long
(
*
update_checksum
)(
unsigned
long
c
,
const
uint8_t
*
p
,
unsigned
int
len
),
unsigned
long
checksum
);
unsigned
long
checksum
);
/* udp.c */
int
udp_set_remote_url
(
URLContext
*
h
,
const
char
*
uri
);
int
udp_get_local_port
(
URLContext
*
h
);
#if FF_API_UDP_GET_FILE
#if FF_API_UDP_GET_FILE
int
udp_get_file_handle
(
URLContext
*
h
);
int
udp_get_file_handle
(
URLContext
*
h
);
#endif
#endif
...
...
libavformat/avio_internal.h
View file @
4ec153bb
...
@@ -70,5 +70,9 @@ int ffio_read_pause(AVIOContext *h, int pause);
...
@@ -70,5 +70,9 @@ int ffio_read_pause(AVIOContext *h, int pause);
int64_t
ffio_read_seek
(
AVIOContext
*
h
,
int
stream_index
,
int64_t
ffio_read_seek
(
AVIOContext
*
h
,
int
stream_index
,
int64_t
timestamp
,
int
flags
);
int64_t
timestamp
,
int
flags
);
/* udp.c */
int
ff_udp_set_remote_url
(
URLContext
*
h
,
const
char
*
uri
);
int
ff_udp_get_local_port
(
URLContext
*
h
);
#endif // AVFORMAT_AVIO_INTERNAL_H
#endif // AVFORMAT_AVIO_INTERNAL_H
libavformat/rtpproto.c
View file @
4ec153bb
...
@@ -27,6 +27,7 @@
...
@@ -27,6 +27,7 @@
#include "libavutil/parseutils.h"
#include "libavutil/parseutils.h"
#include "libavutil/avstring.h"
#include "libavutil/avstring.h"
#include "avformat.h"
#include "avformat.h"
#include "avio_internal.h"
#include "rtpdec.h"
#include "rtpdec.h"
#include <unistd.h>
#include <unistd.h>
...
@@ -71,10 +72,10 @@ int rtp_set_remote_url(URLContext *h, const char *uri)
...
@@ -71,10 +72,10 @@ int rtp_set_remote_url(URLContext *h, const char *uri)
path
,
sizeof
(
path
),
uri
);
path
,
sizeof
(
path
),
uri
);
ff_url_join
(
buf
,
sizeof
(
buf
),
"udp"
,
NULL
,
hostname
,
port
,
"%s"
,
path
);
ff_url_join
(
buf
,
sizeof
(
buf
),
"udp"
,
NULL
,
hostname
,
port
,
"%s"
,
path
);
udp_set_remote_url
(
s
->
rtp_hd
,
buf
);
ff_
udp_set_remote_url
(
s
->
rtp_hd
,
buf
);
ff_url_join
(
buf
,
sizeof
(
buf
),
"udp"
,
NULL
,
hostname
,
port
+
1
,
"%s"
,
path
);
ff_url_join
(
buf
,
sizeof
(
buf
),
"udp"
,
NULL
,
hostname
,
port
+
1
,
"%s"
,
path
);
udp_set_remote_url
(
s
->
rtcp_hd
,
buf
);
ff_
udp_set_remote_url
(
s
->
rtcp_hd
,
buf
);
return
0
;
return
0
;
}
}
...
@@ -191,7 +192,7 @@ static int rtp_open(URLContext *h, const char *uri, int flags)
...
@@ -191,7 +192,7 @@ static int rtp_open(URLContext *h, const char *uri, int flags)
if
(
url_open
(
&
s
->
rtp_hd
,
buf
,
flags
)
<
0
)
if
(
url_open
(
&
s
->
rtp_hd
,
buf
,
flags
)
<
0
)
goto
fail
;
goto
fail
;
if
(
local_rtp_port
>=
0
&&
local_rtcp_port
<
0
)
if
(
local_rtp_port
>=
0
&&
local_rtcp_port
<
0
)
local_rtcp_port
=
udp_get_local_port
(
s
->
rtp_hd
)
+
1
;
local_rtcp_port
=
ff_
udp_get_local_port
(
s
->
rtp_hd
)
+
1
;
build_udp_url
(
buf
,
sizeof
(
buf
),
build_udp_url
(
buf
,
sizeof
(
buf
),
hostname
,
rtcp_port
,
local_rtcp_port
,
ttl
,
max_packet_size
,
hostname
,
rtcp_port
,
local_rtcp_port
,
ttl
,
max_packet_size
,
...
@@ -326,7 +327,7 @@ static int rtp_close(URLContext *h)
...
@@ -326,7 +327,7 @@ static int rtp_close(URLContext *h)
int
rtp_get_local_rtp_port
(
URLContext
*
h
)
int
rtp_get_local_rtp_port
(
URLContext
*
h
)
{
{
RTPContext
*
s
=
h
->
priv_data
;
RTPContext
*
s
=
h
->
priv_data
;
return
udp_get_local_port
(
s
->
rtp_hd
);
return
ff_
udp_get_local_port
(
s
->
rtp_hd
);
}
}
/**
/**
...
@@ -338,7 +339,7 @@ int rtp_get_local_rtp_port(URLContext *h)
...
@@ -338,7 +339,7 @@ int rtp_get_local_rtp_port(URLContext *h)
int
rtp_get_local_rtcp_port
(
URLContext
*
h
)
int
rtp_get_local_rtcp_port
(
URLContext
*
h
)
{
{
RTPContext
*
s
=
h
->
priv_data
;
RTPContext
*
s
=
h
->
priv_data
;
return
udp_get_local_port
(
s
->
rtcp_hd
);
return
ff_
udp_get_local_port
(
s
->
rtcp_hd
);
}
}
static
int
rtp_get_file_handle
(
URLContext
*
h
)
static
int
rtp_get_file_handle
(
URLContext
*
h
)
...
...
libavformat/udp.c
View file @
4ec153bb
...
@@ -27,6 +27,7 @@
...
@@ -27,6 +27,7 @@
#define _BSD_SOURCE
/* Needed for using struct ip_mreq with recent glibc */
#define _BSD_SOURCE
/* Needed for using struct ip_mreq with recent glibc */
#define _DARWIN_C_SOURCE
/* Needed for using IP_MULTICAST_TTL on OS X */
#define _DARWIN_C_SOURCE
/* Needed for using IP_MULTICAST_TTL on OS X */
#include "avformat.h"
#include "avformat.h"
#include "avio_internal.h"
#include "libavutil/parseutils.h"
#include "libavutil/parseutils.h"
#include <unistd.h>
#include <unistd.h>
#include "internal.h"
#include "internal.h"
...
@@ -243,7 +244,7 @@ static int udp_port(struct sockaddr_storage *addr, int addr_len)
...
@@ -243,7 +244,7 @@ static int udp_port(struct sockaddr_storage *addr, int addr_len)
* @param uri of the remote server
* @param uri of the remote server
* @return zero if no error.
* @return zero if no error.
*/
*/
int
udp_set_remote_url
(
URLContext
*
h
,
const
char
*
uri
)
int
ff_
udp_set_remote_url
(
URLContext
*
h
,
const
char
*
uri
)
{
{
UDPContext
*
s
=
h
->
priv_data
;
UDPContext
*
s
=
h
->
priv_data
;
char
hostname
[
256
],
buf
[
10
];
char
hostname
[
256
],
buf
[
10
];
...
@@ -282,7 +283,7 @@ int udp_set_remote_url(URLContext *h, const char *uri)
...
@@ -282,7 +283,7 @@ int udp_set_remote_url(URLContext *h, const char *uri)
* @param h media file context
* @param h media file context
* @return the local port number
* @return the local port number
*/
*/
int
udp_get_local_port
(
URLContext
*
h
)
int
ff_
udp_get_local_port
(
URLContext
*
h
)
{
{
UDPContext
*
s
=
h
->
priv_data
;
UDPContext
*
s
=
h
->
priv_data
;
return
s
->
local_port
;
return
s
->
local_port
;
...
@@ -365,7 +366,7 @@ static int udp_open(URLContext *h, const char *uri, int flags)
...
@@ -365,7 +366,7 @@ static int udp_open(URLContext *h, const char *uri, int flags)
if
(
flags
&
URL_WRONLY
)
if
(
flags
&
URL_WRONLY
)
goto
fail
;
goto
fail
;
}
else
{
}
else
{
if
(
udp_set_remote_url
(
h
,
uri
)
<
0
)
if
(
ff_
udp_set_remote_url
(
h
,
uri
)
<
0
)
goto
fail
;
goto
fail
;
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment