FFmpeg
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
Functions
Variables
Data Structures
Data Structures
Data Structure Index
Class Hierarchy
Data Fields
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
c
d
g
h
i
o
q
r
s
v
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
Enumerator
a
d
e
f
h
i
j
l
m
n
p
r
s
v
Files
File List
Globals
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
l
m
o
p
q
r
s
t
u
v
w
x
y
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Examples
•
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Modules
Pages
libavformat
mov_esds.c
Go to the documentation of this file.
1
/*
2
* This file is part of FFmpeg.
3
*
4
* FFmpeg is free software; you can redistribute it and/or
5
* modify it under the terms of the GNU Lesser General Public
6
* License as published by the Free Software Foundation; either
7
* version 2.1 of the License, or (at your option) any later version.
8
*
9
* FFmpeg is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
* Lesser General Public License for more details.
13
*
14
* You should have received a copy of the GNU Lesser General Public
15
* License along with FFmpeg; if not, write to the Free Software
16
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17
*/
18
19
#include "
avformat.h
"
20
#include "
avio.h
"
21
#include "
isom.h
"
22
23
int
ff_mov_read_esds
(
AVFormatContext
*
fc
,
AVIOContext
*pb)
24
{
25
AVStream
*st;
26
int
tag
,
ret
= 0;
27
28
if
(
fc
->nb_streams < 1)
29
return
0;
30
st =
fc
->streams[
fc
->nb_streams-1];
31
32
avio_rb32
(pb);
/* version + flags */
33
ff_mp4_read_descr
(
fc
, pb, &
tag
);
34
if
(
tag
==
MP4ESDescrTag
) {
35
ff_mp4_parse_es_descr
(pb,
NULL
);
36
}
else
37
avio_rb16
(pb);
/* ID */
38
39
ff_mp4_read_descr
(
fc
, pb, &
tag
);
40
if
(
tag
==
MP4DecConfigDescrTag
)
41
ret
=
ff_mp4_read_dec_config_descr
(
fc
, st, pb);
42
43
return
ret
;
44
}
MP4DecConfigDescrTag
#define MP4DecConfigDescrTag
Definition:
isom.h:392
ff_mp4_read_dec_config_descr
int ff_mp4_read_dec_config_descr(void *logctx, AVStream *st, AVIOContext *pb)
Definition:
isom.c:329
ff_mp4_parse_es_descr
void ff_mp4_parse_es_descr(AVIOContext *pb, int *es_id)
Definition:
isom.c:304
avio_rb32
unsigned int avio_rb32(AVIOContext *s)
Definition:
aviobuf.c:761
fc
#define fc(width, name, range_min, range_max)
Definition:
cbs_av1.c:493
ff_mov_read_esds
int ff_mov_read_esds(AVFormatContext *fc, AVIOContext *pb)
Definition:
mov_esds.c:23
MP4ESDescrTag
#define MP4ESDescrTag
Definition:
isom.h:391
AVFormatContext
Format I/O context.
Definition:
avformat.h:1265
NULL
#define NULL
Definition:
coverity.c:32
isom.h
ff_mp4_read_descr
int ff_mp4_read_descr(void *logctx, AVIOContext *pb, int *tag)
Definition:
isom.c:295
AVIOContext
Bytestream IO Context.
Definition:
avio.h:160
avio.h
tag
uint32_t tag
Definition:
movenc.c:1911
ret
ret
Definition:
filter_design.txt:187
AVStream
Stream structure.
Definition:
avformat.h:745
avio_rb16
unsigned int avio_rb16(AVIOContext *s)
Definition:
aviobuf.c:746
avformat.h
Generated on Tue Apr 1 2025 19:22:55 for FFmpeg by
1.8.17