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
2cfe70ff
Commit
2cfe70ff
authored
Dec 11, 2013
by
Stefano Sabatini
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
lavf/movenc: return meaningful error code from mov_write_header()
parent
54c596fe
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
9 additions
and
5 deletions
+9
-5
movenc.c
libavformat/movenc.c
+9
-5
No files found.
libavformat/movenc.c
View file @
2cfe70ff
...
...
@@ -3705,7 +3705,7 @@ static int mov_write_header(AVFormatContext *s)
AVIOContext
*
pb
=
s
->
pb
;
MOVMuxContext
*
mov
=
s
->
priv_data
;
AVDictionaryEntry
*
t
,
*
global_tcr
=
av_dict_get
(
s
->
metadata
,
"timecode"
,
NULL
,
0
);
int
i
,
hint_track
=
0
,
tmcd_track
=
0
;
int
i
,
ret
,
hint_track
=
0
,
tmcd_track
=
0
;
/* Default mode == MP4 */
mov
->
mode
=
MODE_MP4
;
...
...
@@ -3840,6 +3840,7 @@ static int mov_write_header(AVFormatContext *s)
av_log
(
s
,
AV_LOG_ERROR
,
"Could not find tag for codec %s in stream #%d, "
"codec not currently supported in container
\n
"
,
avcodec_get_name
(
st
->
codec
->
codec_id
),
i
);
ret
=
AVERROR
(
EINVAL
);
goto
error
;
}
/* If hinting of this track is enabled by a later hint track,
...
...
@@ -3852,6 +3853,7 @@ static int mov_write_header(AVFormatContext *s)
track
->
tag
==
MKTAG
(
'm'
,
'x'
,
'5'
,
'p'
)
||
track
->
tag
==
MKTAG
(
'm'
,
'x'
,
'5'
,
'n'
))
{
if
(
st
->
codec
->
width
!=
720
||
(
st
->
codec
->
height
!=
608
&&
st
->
codec
->
height
!=
512
))
{
av_log
(
s
,
AV_LOG_ERROR
,
"D-10/IMX must use 720x608 or 720x512 video resolution
\n
"
);
ret
=
AVERROR
(
EINVAL
);
goto
error
;
}
track
->
height
=
track
->
tag
>>
24
==
'n'
?
486
:
576
;
...
...
@@ -3878,6 +3880,7 @@ static int mov_write_header(AVFormatContext *s)
st
->
codec
->
codec_id
==
AV_CODEC_ID_ILBC
){
if
(
!
st
->
codec
->
block_align
)
{
av_log
(
s
,
AV_LOG_ERROR
,
"track %d: codec block align is not set for adpcm
\n
"
,
i
);
ret
=
AVERROR
(
EINVAL
);
goto
error
;
}
track
->
sample_size
=
st
->
codec
->
block_align
;
...
...
@@ -3894,6 +3897,7 @@ static int mov_write_header(AVFormatContext *s)
track
->
enc
->
codec_id
==
AV_CODEC_ID_MP3
&&
track
->
timescale
<
16000
)
{
av_log
(
s
,
AV_LOG_ERROR
,
"track %d: muxing mp3 at %dhz is not supported
\n
"
,
i
,
track
->
enc
->
sample_rate
);
ret
=
AVERROR
(
EINVAL
);
goto
error
;
}
}
else
if
(
st
->
codec
->
codec_type
==
AVMEDIA_TYPE_SUBTITLE
)
{
...
...
@@ -3948,7 +3952,7 @@ static int mov_write_header(AVFormatContext *s)
mov
->
time
+=
0x7C25B080
;
// 1970 based -> 1904 based
if
(
mov
->
chapter_track
)
if
(
mov_create_chapter_track
(
s
,
mov
->
chapter_track
)
<
0
)
if
(
(
ret
=
mov_create_chapter_track
(
s
,
mov
->
chapter_track
)
)
<
0
)
goto
error
;
if
(
mov
->
flags
&
FF_MOV_FLAG_RTP_HINT
)
{
...
...
@@ -3957,7 +3961,7 @@ static int mov_write_header(AVFormatContext *s)
AVStream
*
st
=
s
->
streams
[
i
];
if
(
st
->
codec
->
codec_type
==
AVMEDIA_TYPE_VIDEO
||
st
->
codec
->
codec_type
==
AVMEDIA_TYPE_AUDIO
)
{
if
(
ff_mov_init_hinting
(
s
,
hint_track
,
i
)
<
0
)
if
(
(
ret
=
ff_mov_init_hinting
(
s
,
hint_track
,
i
)
)
<
0
)
goto
error
;
hint_track
++
;
}
...
...
@@ -3975,7 +3979,7 @@ static int mov_write_header(AVFormatContext *s)
t
=
av_dict_get
(
st
->
metadata
,
"timecode"
,
NULL
,
0
);
if
(
!
t
)
continue
;
if
(
mov_create_timecode_track
(
s
,
tmcd_track
,
i
,
t
->
value
)
<
0
)
if
(
(
ret
=
mov_create_timecode_track
(
s
,
tmcd_track
,
i
,
t
->
value
)
)
<
0
)
goto
error
;
tmcd_track
++
;
}
...
...
@@ -3995,7 +3999,7 @@ static int mov_write_header(AVFormatContext *s)
return
0
;
error:
mov_free
(
s
);
return
-
1
;
return
ret
;
}
static
int
get_moov_size
(
AVFormatContext
*
s
)
...
...
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