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
dbc5c0c1
Commit
dbc5c0c1
authored
Apr 04, 2020
by
Carl Eugen Hoyos
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
lavfi/telecine: Mark telecined frames as interlaced.
parent
9d21d18e
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
8 additions
and
0 deletions
+8
-0
vf_telecine.c
libavfilter/vf_telecine.c
+8
-0
No files found.
libavfilter/vf_telecine.c
View file @
dbc5c0c1
...
...
@@ -207,6 +207,8 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *inpicref)
s
->
stride
[
i
],
(
s
->
planeheight
[
i
]
-
!
s
->
first_field
+
1
)
/
2
);
}
s
->
frame
[
nout
]
->
interlaced_frame
=
1
;
s
->
frame
[
nout
]
->
top_field_first
=
!
s
->
first_field
;
nout
++
;
len
--
;
s
->
occupied
=
0
;
...
...
@@ -220,6 +222,8 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *inpicref)
inpicref
->
data
[
i
],
inpicref
->
linesize
[
i
],
s
->
stride
[
i
],
s
->
planeheight
[
i
]);
s
->
frame
[
nout
]
->
interlaced_frame
=
inpicref
->
interlaced_frame
;
s
->
frame
[
nout
]
->
top_field_first
=
inpicref
->
top_field_first
;
nout
++
;
len
-=
2
;
}
...
...
@@ -236,6 +240,8 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *inpicref)
for
(
i
=
0
;
i
<
nout
;
i
++
)
{
AVFrame
*
frame
=
av_frame_clone
(
s
->
frame
[
i
]);
int
interlaced
=
frame
->
interlaced_frame
;
int
tff
=
frame
->
top_field_first
;
if
(
!
frame
)
{
av_frame_free
(
&
inpicref
);
...
...
@@ -243,6 +249,8 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *inpicref)
}
av_frame_copy_props
(
frame
,
inpicref
);
frame
->
interlaced_frame
=
interlaced
;
frame
->
top_field_first
=
tff
;
frame
->
pts
=
((
s
->
start_time
==
AV_NOPTS_VALUE
)
?
0
:
s
->
start_time
)
+
av_rescale
(
outlink
->
frame_count_in
,
s
->
ts_unit
.
num
,
s
->
ts_unit
.
den
);
...
...
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