blob: 4dafabf1501068ad2a4e8992f5a9e757270b239a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
= Automatisierte Erkennung von Werbeblöcken
:author: Jan Klemkow, Benjamin Franzke
:lang: de
== cuting.sh
* Angegebene Intervalle von Input-Video in Output-Video kopieren
[source,sh]
----
./cutint.sh input output [start duration [start duration ...]]
----
* Input Video entsprechend Intervallangabe in Einzelvideos zerlegen
** Neukodierung notwendig (start.type != keyframe?)
* concat aller Einzelvideos -> output
== overlap
image::image/overlap_problem.svg[width="100%"]
== overlap
image::image/overlap_tool.svg[width="100%"]
== Struktur
image::image/stack.svg[width="100%"]
== Simple Video API
[source,c]
----
include::../src/video_decode.h[]
----
== Erste Schritte
image::image/film.svg["Filmszenen", width="100%"]
== Implementierung
* Durchschnitt der Helligkeit eines Frames
* Differenz zweier Frames
== Frame-Analyse
image::../src/graph.svg["cut graph", height="75%"]
== Beispiel
++++
<video src="../heute100sec.wmv" />
++++
== Schnitt
image::../src/img/0101.png[]
== Schnitt
image::../src/img/0178.png[]
== Schnitt
image::../src/img/0268.png[]
== Schnitt
image::../src/img/0345.png[]
== Schnitt
image::../src/img/0445.png[]
== Schnitt
image::../src/img/0467.png[]
== Schnitt
image::../src/img/0598.png[]
== Schnitt
image::../src/img/0702.png[]
== Schnitt
image::../src/img/0881.png[]
== Schnitt
image::../src/img/0953.png[]
== Schnitt
image::../src/img/0975.png[]
== Schnitt
image::../src/img/1037.png[]
== Schnitt
image::../src/img/1107.png[]
== Schnitt
image::../src/img/1203.png[]
== Schnitt
image::../src/img/1328.png[]
== Schnitt
image::../src/img/1424.png[]
== Schnitt
image::../src/img/1446.png[]
== Schnitt
image::../src/img/1563.png[]
== Schnitt
image::../src/img/1619.png[]
== Schnitt
image::../src/img/1739.png[]
== Schnitt
image::../src/img/1851.png[]
== Schnitt
image::../src/img/1947.png[]
== Schnitt
image::../src/img/1969.png[]
== Schnitt
image::../src/img/2046.png[]
== Schnitt
image::../src/img/2104.png[]
== Schnitt
image::../src/img/2157.png[]
== Schnitt
image::../src/img/2398.png[]
== Schnitt
image::../src/img/2421.png[]
== Schnitt
image::../src/img/2584.png[]
// vim: ft=asciidoc:
|