File size: 1,250 Bytes
aa7c374
 
c025c08
aa7c374
 
 
 
 
 
 
 
4dc7a21
 
 
aa7c374
4dc7a21
aa7c374
4dc7a21
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
---
title: Ad Placement Recommender
emoji: 🎯
colorFrom: indigo
colorTo: blue
sdk: streamlit
sdk_version: "1.30.0"
app_file: dashboard.py
pinned: false
---

# Retention-Aware Mid-Roll Ad Placement System

## Project Structure
`
project/
+-- requirements.txt
β”œβ”€β”€ simulate_and_test.py       ← Start here (no video needed)
β”œβ”€β”€ component1_candidate_generator.py
β”œβ”€β”€ component2_feature_extractor.py
β”œβ”€β”€ candidates.json            ← Output of Component 1
β”œβ”€β”€ features.csv               ← Output of Component 2
└── README.md
```

## Quick Start
```bash
# 1. Install dependencies
pip install -r requirements.txt

# 2. Test the pipeline (no video or API needed)
python simulate_and_test.py
python component2_feature_extractor.py

# 3. Run on a real video
python component1_candidate_generator.py your_video.mp4
python component2_feature_extractor.py
```

## Phases
- [x] Phase 1 β€” Environment Setup
- [x] Phase 2 β€” Component 1: Candidate Generator
- [x] Phase 3 β€” Component 2: Feature Extractor (simulated retention)
- [ ] Phase 4 β€” Component 3: ML Ranker (LightGBM)
- [ ] Phase 5 β€” Component 4: Ad Placement Recommender
- [ ] Phase 6 β€” FastAPI + Dashboard
- [ ] Phase 7 β€” Evaluation + Research Paper