Skip to content

Commit b9b3d4f

Browse files
committed
framer++
1 parent f624a7e commit b9b3d4f

File tree

305 files changed

+4998
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

305 files changed

+4998
-0
lines changed

Framer++/comparison.css

Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
.comparisons-container {
2+
width: 100%;
3+
max-width: 1200px;
4+
margin: 0 auto;
5+
padding: 20px;
6+
}
7+
8+
.comparisons-section {
9+
margin-bottom: 2rem;
10+
background-color: #fff;
11+
border-radius: 8px;
12+
padding: 15px 20px;
13+
border: 1px solid #eaeaea;
14+
}
15+
16+
.comparisons-title {
17+
font-size: 1.8rem;
18+
margin-bottom: 1.2rem;
19+
text-align: center;
20+
font-weight: bold;
21+
}
22+
23+
.comparison-table-container {
24+
width: 100%;
25+
overflow-x: auto;
26+
}
27+
28+
.comparison-table {
29+
width: 100%;
30+
border-collapse: collapse;
31+
margin-top: 20px;
32+
}
33+
34+
.comparison-table th,
35+
.comparison-table td {
36+
padding: 10px;
37+
border: 1px solid #ddd;
38+
text-align: center;
39+
vertical-align: middle;
40+
}
41+
42+
.comparison-table th {
43+
background-color: #f5f5f5;
44+
font-weight: bold;
45+
position: sticky;
46+
top: 0;
47+
}
48+
49+
.comparison-table thead th:first-child {
50+
width: 150px;
51+
}
52+
53+
.case-name {
54+
font-weight: bold;
55+
background-color: #f9f9f9;
56+
}
57+
58+
.result-cell {
59+
width: 5%;
60+
padding: 10px;
61+
transition: all 0.3s ease;
62+
}
63+
64+
.ours-cell {
65+
width: 10%;
66+
}
67+
68+
.comparison-video-container {
69+
width: 100%;
70+
max-width: 250px;
71+
margin: 0 auto;
72+
}
73+
74+
.comparison-video-container video {
75+
width: 100%;
76+
border-radius: 4px;
77+
border: 1px solid #eee;
78+
background-color: #f9f9f9;
79+
}
80+
81+
/* Highlight our method column */
82+
.comparison-table th:last-child,
83+
.comparison-table td:last-child {
84+
background-color: #f0f8ff;
85+
border-left: 2px solid #4a90e2;
86+
}
87+
88+
/* Responsive adjustments */
89+
@media (max-width: 992px) {
90+
.comparison-video-container {
91+
max-width: 200px;
92+
}
93+
94+
.comparison-table th,
95+
.comparison-table td {
96+
padding: 8px;
97+
}
98+
}
99+
100+
@media (max-width: 768px) {
101+
.comparison-video-container {
102+
max-width: 150px;
103+
}
104+
105+
.comparison-table th,
106+
.comparison-table td {
107+
padding: 5px;
108+
font-size: 0.9rem;
109+
}
110+
111+
.comparisons-title {
112+
font-size: 1.5rem;
113+
}
114+
}

Framer++/comparison.js

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
// Configuration for the comparison table
2+
const comparisonConfig = {
3+
// Define the methods to compare (in order they should appear in the table)
4+
// AMT[30], 309
5+
// RIFE[20], FLAVR[26], and FILM[43], as well as gener- 310
6+
// ative video interpolation methods, such as LDMVFI[13], 311
7+
// DynamiCrafter[53], SVDKFI[51], and Framer[49].
8+
methods: [
9+
{ id: "amt", name: "AMT" },
10+
{ id: "rife", name: "RIFE" },
11+
{ id: "flavr", name: "FLAVR" },
12+
{ id: "film", name: "FILM" },
13+
{ id: "dynamicrafter", name: "DynamiCrafter" },
14+
{ id: "svdkfi", name: "SVDKFI" },
15+
{ id: "framer", name: "Framer" },
16+
{ id: "ours_f17", name: "Framer++" }
17+
],
18+
19+
// The test cases/results to show (each becomes a row)
20+
results: [
21+
{ id: "0001" },
22+
{ id: "2c8d98c5f43c7d6eba8a3d0bfbc494a5" },
23+
{ id: "6b68181c4ad17382a3e1027dfdf80017" },
24+
{ id: "dc03ac96e082fa0b0c23fd10f695870b" },
25+
{ id: "de2fa2f62103a278c7c605d99005ef89" },
26+
{ id: "fdea467348a14c83068586cceac05759" }
27+
]
28+
};
29+
30+
// Function to generate the comparison table
31+
function generateComparisonTable() {
32+
const container = document.getElementById('comparison-table-container');
33+
if (!container) return;
34+
35+
// Create table HTML
36+
let tableHTML = `
37+
<table class="comparison-table">
38+
<thead>
39+
<tr>
40+
${comparisonConfig.methods.map(method => `<th>${method.name}</th>`).join('')}
41+
</tr>
42+
</thead>
43+
<tbody>
44+
`;
45+
46+
// Add rows for each result case
47+
comparisonConfig.results.forEach(result => {
48+
tableHTML += `
49+
<tr>
50+
${comparisonConfig.methods.map(method => `
51+
<td class="result-cell ${method.id === 'ours_f17' ? 'ours-cell' : ''}">
52+
<div class="comparison-video-container">
53+
<video autoplay loop muted playsinline controls>
54+
<source src="./comparisons/${method.id}/${result.id}.mp4" type="video/mp4">
55+
</video>
56+
</div>
57+
</td>
58+
`).join('')}
59+
</tr>
60+
`;
61+
});
62+
63+
tableHTML += `
64+
</tbody>
65+
</table>
66+
`;
67+
68+
container.innerHTML = tableHTML;
69+
}
70+
71+
// Initialize the comparison table when the DOM is loaded
72+
document.addEventListener('DOMContentLoaded', function() {
73+
generateComparisonTable();
74+
});

Framer++/comparisons/amt/0001.mp4

42.9 KB
Binary file not shown.
12 KB
Binary file not shown.
28.4 KB
Binary file not shown.
25.4 KB
Binary file not shown.
40.3 KB
Binary file not shown.
18.6 KB
Binary file not shown.
200 KB
Binary file not shown.
Binary file not shown.

0 commit comments

Comments
 (0)