Spaces:
Running
Running
<html lang="ko"> | |
<head> | |
<meta charset="UTF-8"> | |
<meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
<title>Video Gallery</title> | |
<style> | |
* { | |
box-sizing: border-box; | |
margin: 0; | |
padding: 0; | |
} | |
body { | |
background-color: #000000; | |
color: white; | |
} | |
.gradient-header { | |
background: linear-gradient(90deg, | |
#FF0000, #FF7F00, #FFFF00, #00FF00, | |
#0000FF, #4B0082, #8B00FF); | |
padding: 20px; | |
margin-bottom: 30px; | |
text-align: center; | |
color: white; | |
font-size: 24px; | |
font-weight: bold; | |
text-shadow: 2px 2px 4px rgba(0,0,0,0.5); | |
animation: gradient 15s ease infinite; | |
background-size: 200% 200%; | |
border-radius: 0 0 15px 15px; | |
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); | |
} | |
.gradient-header::before { | |
content: 'ποΈ'; | |
margin-right: 10px; | |
} | |
.gradient-header::after { | |
content: 'π¬'; | |
margin-left: 10px; | |
} | |
@keyframes gradient { | |
0% { | |
background-position: 0% 50%; | |
} | |
50% { | |
background-position: 100% 50%; | |
} | |
100% { | |
background-position: 0% 50%; | |
} | |
} | |
.gradient-header a { | |
color: white; | |
text-decoration: none; | |
transition: all 0.3s ease; | |
} | |
.gradient-header a:hover { | |
color: #f0f0f0; | |
text-shadow: 3px 3px 6px rgba(0,0,0,0.7); | |
} | |
.container { | |
max-width: 1800px; | |
margin: 0 auto; | |
padding: 20px; | |
} | |
.selected-content { | |
display: flex; | |
margin-bottom: 30px; | |
gap: 20px; | |
height: 400px; | |
padding: 20px; | |
background: linear-gradient(45deg, #1a1a1a, #2c2c2c); | |
border-radius: 15px; | |
box-shadow: 0 0 20px rgba(255, 255, 255, 0.1); | |
position: relative; | |
} | |
.selected-content::before { | |
content: 'π¬'; | |
position: absolute; | |
top: -15px; | |
left: 20px; | |
font-size: 30px; | |
} | |
.selected-content::after { | |
content: 'π₯'; | |
position: absolute; | |
top: -15px; | |
right: 20px; | |
font-size: 30px; | |
} | |
.selected-thumbnail, .selected-video { | |
flex: 1; | |
background-color: #000; | |
border: 4px solid #333; | |
border-radius: 10px; | |
box-shadow: | |
0 0 0 2px #1a1a1a, | |
0 0 10px rgba(255, 255, 255, 0.2), | |
inset 0 0 20px rgba(0, 0, 0, 0.8); | |
overflow: hidden; | |
} | |
.selected-thumbnail video { | |
max-width: 100%; | |
max-height: 100%; | |
object-fit: contain; | |
} | |
.selected-video video { | |
width: 100%; | |
height: 100%; | |
object-fit: contain; | |
} | |
.gallery { | |
display: grid; | |
grid-template-columns: repeat(8, 1fr); | |
gap: 15px; | |
padding: 20px; | |
background: linear-gradient(45deg, #1a1a1a, #2c2c2c); | |
border-radius: 15px; | |
} | |
.thumbnail { | |
position: relative; | |
padding-top: 56.25%; | |
cursor: pointer; | |
overflow: hidden; | |
background-color: #000; | |
border: 3px solid #333; | |
border-radius: 8px; | |
box-shadow: | |
0 5px 15px rgba(0, 0, 0, 0.5), | |
0 0 0 1px rgba(255, 255, 255, 0.1); | |
transition: transform 0.3s ease, box-shadow 0.3s ease; | |
} | |
.thumbnail:hover { | |
transform: translateY(-5px) scale(1.02); | |
box-shadow: | |
0 8px 20px rgba(0, 0, 0, 0.8), | |
0 0 0 1px rgba(255, 255, 255, 0.2); | |
} | |
.thumbnail video { | |
position: absolute; | |
top: 0; | |
left: 0; | |
width: 100%; | |
height: 100%; | |
object-fit: cover; | |
transition: transform 0.3s ease; | |
} | |
.thumbnail:hover video { | |
transform: scale(1.1); | |
} | |
</style> | |
</head> | |
<body> | |
<div class="gradient-header"> | |
[Dokdo Theater] Gen: <a href="https://ginigen-Dokdo.hf.space" target="_blank">https://ginigen-Dokdo.hf.space</a> | |
</div> | |
<div class="container"> | |
<div class="selected-content"> | |
<div class="selected-thumbnail"> | |
<video id="selected-thumb" playsinline muted> | |
<source src="" type="video/mp4"> | |
</video> | |
</div> | |
<div class="selected-video"> | |
<video id="selected-video" controls> | |
<source src="" type="video/mp4"> | |
</video> | |
</div> | |
</div> | |
<div class="gallery" id="video-gallery"></div> | |
</div> | |
<script> | |
const videoFiles = [ | |
'i0.mp4', | |
'i1.mp4', | |
'qq13.mp4', | |
'qq14.mp4', | |
'qq12.mp4', | |
'i2.mp4', | |
'i3.mp4', | |
'qqq1.mp4', | |
'qqq2.mp4', | |
'i4.mp4', | |
'tmpaqldmcah.mp4', | |
'qq43.mp4', | |
'qq44.mp4', | |
'qw1.mp4', | |
'i5.mp4', | |
'i6.mp4', | |
'i7.mp4', | |
'i8.mp4', | |
'qqq10.mp4', | |
'i9.mp4', | |
'13.mp4', | |
'qq21.mp4', | |
'qq22.mp4', | |
'qq23.mp4', | |
'tmp72ufgzpa.mp4', | |
'tmpeodtm_jl.output.mp4', | |
'tmpi2bkoc60.mp4', | |
'aq1.mp4', | |
'aq2.mp4', | |
'tmpss5nprt_.mp4', | |
'watermarked_output (10).mp4', | |
'qq1.mp4', | |
'qq2.mp4', | |
'qq3.mp4', | |
'qq4.mp4', | |
'qq41.mp4', | |
'qq42.mp4', | |
'11.mp4', | |
'12.mp4', | |
'qq11.mp4', | |
'tmp1y2bgrly.output.mp4', | |
'tmp22o82oge.output.mp4', | |
'tmp43xj9wgj.output.mp4', | |
'tmp59a06_s4.output.mp4', | |
'tmp6tomynny.output.mp4', | |
'tmp77sxlo_s.output.mp4', | |
'tmp8tehlk6n.output.mp4', | |
'tmp95_p0et8.output.mp4', | |
'tmp9l96xmk5.output.mp4', | |
'tmpa1kmfjzl.output.mp4', | |
'tmpf03w8duw.output.mp4', | |
'tmpga24owoo.output.mp4', | |
'tmph843b62h.output.mp4', | |
'tmpi97a5zy8.mp4', | |
'tmpinq30vk2.mp4', | |
'tmpnuljiasj.output.mp4', | |
'tmpqh0z4uts.output.mp4', | |
'tmps_zu8c60.output.mp4', | |
'tmpvdq4uchy.output.mp4', | |
'tmpx2ketgav.output.mp4', | |
'tmpx75_3o81.output.mp4', | |
'tmpy2_6d7qo.output.mp4', | |
'qw2.mp4', | |
'qw3.mp4', | |
'qw4.mp4', | |
'qw5.mp4', | |
'watermarked_output (4).mp4', | |
'aq3.mp4', | |
'aq4.mp4', | |
'aq5.mp4', | |
'qqq11.mp4', | |
'watermarked_output (9).mp4' | |
]; | |
function initializeGallery() { | |
const gallery = document.getElementById('video-gallery'); | |
const selectedThumb = document.getElementById('selected-thumb'); | |
const selectedVideo = document.getElementById('selected-video'); | |
videoFiles.forEach((videoPath) => { | |
const thumbnail = document.createElement('div'); | |
thumbnail.className = 'thumbnail'; | |
const thumbVideo = document.createElement('video'); | |
thumbVideo.src = videoPath; | |
thumbVideo.playsinline = true; | |
thumbVideo.muted = true; | |
thumbVideo.preload = 'metadata'; | |
thumbVideo.addEventListener('loadeddata', () => { | |
thumbVideo.currentTime = 0; | |
}); | |
thumbnail.appendChild(thumbVideo); | |
thumbnail.addEventListener('click', () => { | |
selectedThumb.src = videoPath; | |
selectedVideo.src = videoPath; | |
selectedThumb.currentTime = 0; | |
selectedVideo.play(); | |
}); | |
gallery.appendChild(thumbnail); | |
}); | |
if (videoFiles.length > 0) { | |
selectedThumb.src = videoFiles[0]; | |
selectedVideo.src = videoFiles[0]; | |
selectedThumb.currentTime = 0; | |
} | |
} | |
initializeGallery(); | |
</script> | |
</body> | |
</html> |