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
12127b65
Commit
12127b65
authored
Aug 07, 2012
by
Samuel Pitoiset
Committed by
Martin Storsjö
Aug 07, 2012
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
rtmp: Factorize simultaneous URLProtocol / AVClass declarations with a macro
Signed-off-by:
Martin Storsjö
<
martin@martin.st
>
parent
ec9d2c15
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
23 additions
and
104 deletions
+23
-104
rtmpproto.c
libavformat/rtmpproto.c
+23
-104
No files found.
libavformat/rtmpproto.c
View file @
12127b65
...
@@ -1598,110 +1598,29 @@ static const AVOption rtmp_options[] = {
...
@@ -1598,110 +1598,29 @@ static const AVOption rtmp_options[] = {
{
NULL
},
{
NULL
},
};
};
static
const
AVClass
rtmp_class
=
{
#define RTMP_PROTOCOL(flavor) \
.
class_name
=
"rtmp"
,
static const AVClass flavor##_class = { \
.
item_name
=
av_default_item_name
,
.class_name = #flavor, \
.
option
=
rtmp_options
,
.item_name = av_default_item_name, \
.
version
=
LIBAVUTIL_VERSION_INT
,
.option = rtmp_options, \
.version = LIBAVUTIL_VERSION_INT, \
}; \
\
URLProtocol ff_##flavor##_protocol = { \
.name = #flavor, \
.url_open = rtmp_open, \
.url_read = rtmp_read, \
.url_write = rtmp_write, \
.url_close = rtmp_close, \
.priv_data_size = sizeof(RTMPContext), \
.flags = URL_PROTOCOL_FLAG_NETWORK, \
.priv_data_class= &flavor##_class, \
};
};
URLProtocol
ff_rtmp_protocol
=
{
.
name
=
"rtmp"
,
.
url_open
=
rtmp_open
,
.
url_read
=
rtmp_read
,
.
url_write
=
rtmp_write
,
.
url_close
=
rtmp_close
,
.
priv_data_size
=
sizeof
(
RTMPContext
),
.
flags
=
URL_PROTOCOL_FLAG_NETWORK
,
.
priv_data_class
=
&
rtmp_class
,
};
static
const
AVClass
rtmpe_class
=
{
.
class_name
=
"rtmpe"
,
.
item_name
=
av_default_item_name
,
.
option
=
rtmp_options
,
.
version
=
LIBAVUTIL_VERSION_INT
,
};
URLProtocol
ff_rtmpe_protocol
=
{
.
name
=
"rtmpe"
,
.
url_open
=
rtmp_open
,
.
url_read
=
rtmp_read
,
.
url_write
=
rtmp_write
,
.
url_close
=
rtmp_close
,
.
priv_data_size
=
sizeof
(
RTMPContext
),
.
flags
=
URL_PROTOCOL_FLAG_NETWORK
,
.
priv_data_class
=
&
rtmpe_class
,
};
static
const
AVClass
rtmps_class
=
{
.
class_name
=
"rtmps"
,
.
item_name
=
av_default_item_name
,
.
option
=
rtmp_options
,
.
version
=
LIBAVUTIL_VERSION_INT
,
};
URLProtocol
ff_rtmps_protocol
=
{
.
name
=
"rtmps"
,
.
url_open
=
rtmp_open
,
.
url_read
=
rtmp_read
,
.
url_write
=
rtmp_write
,
.
url_close
=
rtmp_close
,
.
priv_data_size
=
sizeof
(
RTMPContext
),
.
flags
=
URL_PROTOCOL_FLAG_NETWORK
,
.
priv_data_class
=
&
rtmps_class
,
};
static
const
AVClass
rtmpt_class
=
{
.
class_name
=
"rtmpt"
,
.
item_name
=
av_default_item_name
,
.
option
=
rtmp_options
,
.
version
=
LIBAVUTIL_VERSION_INT
,
};
URLProtocol
ff_rtmpt_protocol
=
{
.
name
=
"rtmpt"
,
.
url_open
=
rtmp_open
,
.
url_read
=
rtmp_read
,
.
url_write
=
rtmp_write
,
.
url_close
=
rtmp_close
,
.
priv_data_size
=
sizeof
(
RTMPContext
),
.
flags
=
URL_PROTOCOL_FLAG_NETWORK
,
.
priv_data_class
=
&
rtmpt_class
,
};
static
const
AVClass
rtmpte_class
=
{
.
class_name
=
"rtmpte"
,
.
item_name
=
av_default_item_name
,
.
option
=
rtmp_options
,
.
version
=
LIBAVUTIL_VERSION_INT
,
};
URLProtocol
ff_rtmpte_protocol
=
{
RTMP_PROTOCOL
(
rtmp
)
.
name
=
"rtmpte"
,
RTMP_PROTOCOL
(
rtmpe
)
.
url_open
=
rtmp_open
,
RTMP_PROTOCOL
(
rtmps
)
.
url_read
=
rtmp_read
,
RTMP_PROTOCOL
(
rtmpt
)
.
url_write
=
rtmp_write
,
RTMP_PROTOCOL
(
rtmpte
)
.
url_close
=
rtmp_close
,
RTMP_PROTOCOL
(
rtmpts
)
.
priv_data_size
=
sizeof
(
RTMPContext
),
.
flags
=
URL_PROTOCOL_FLAG_NETWORK
,
.
priv_data_class
=
&
rtmpte_class
,
};
static
const
AVClass
rtmpts_class
=
{
.
class_name
=
"rtmpts"
,
.
item_name
=
av_default_item_name
,
.
option
=
rtmp_options
,
.
version
=
LIBAVUTIL_VERSION_INT
,
};
URLProtocol
ff_rtmpts_protocol
=
{
.
name
=
"rtmpts"
,
.
url_open
=
rtmp_open
,
.
url_read
=
rtmp_read
,
.
url_write
=
rtmp_write
,
.
url_close
=
rtmp_close
,
.
priv_data_size
=
sizeof
(
RTMPContext
),
.
flags
=
URL_PROTOCOL_FLAG_NETWORK
,
.
priv_data_class
=
&
rtmpts_class
,
};
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