2012-07-04 12 views
8

Aplikacja, nad którą pracuję, musi uzyskać miniatury HQ w YouTube pod adresem URL. Using this answer, Próbowałem użyć maxresdefault.jpg, aby uzyskać maksymalną rozdzielczość miniatury, ale w niektórych filmach (na pozór losowych) żądanie 404.Link do miniaturek YouTube nie działa we wszystkich przypadkach.

Oto kilka przykładów:

Używając tej samej zawartości, a inne prośby używając tych samych klawiszy wideo działają:

Dlaczego nie maxresdefault.jpg niezawodnie powrotu obraz? Oba te filmy są publiczne i mogą być osadzone.

Użyłbym 0.jpg, ale ma czarne paski na górze i na dole obrazu.

Odpowiedz

11

Jak rozumiem, YouTube generuje tylko wysokiej jakości zdjęcia do filmów o wysokiej rozdzielczości. Pierwszy link został przesłany w rozdzielczości co najmniej 1080p, a drugi mniej niż 720p.

Loki, jak jedyną rzeczą, którą możesz zrobić, to wyciągnąć wideo, sprawdzić, czy nie udało się wygenerować wysokiej rozdzielczości i pomniejszyć mniejszą, jeśli nie.

Wszystkie zdjęcia z YouTube są wyświetlane w proporcjach 4: 3, więc zawsze mają czarne pasy u góry iu dołu, jeśli wideo ma proporcje 16: 9. W HTML/CSS można to łatwo zwalczać, ustawiając obraz jako tło div i dobierając div do właściwego aspektu.

¹ Z wyjątkiem aparaturze mqdefault.jpg, znajdujące się w proporcji 16: 9 (320x180)

+0

Ah Widzę. Niesamowite. =) Dzięki za wejście, to naprawdę pomogło. – anjunatl

+3

Wygląda na to, że niektóre miniatury "mqdefault.jpg" nie mają czarnych pasków u góry iu dołu. –

+0

Nie sądzę, że żaden z kciuków mqdefault ma czarne paski. Wszystkie są 16: 9, jeśli dobrze pamiętam. Należy pamiętać, że w odpowiedzi, naprawdę. –

4

Aktualizacja 2015: Żaden z Twojego linku 'maxresdefault' wydaje się działać

Spróbuj tych:

http://img.youtube.com/vi/<insert-youtube-video-id-here>/0.jpg 
http://img.youtube.com/vi/<insert-youtube-video-id-here>/1.jpg 
http://img.youtube.com/vi/<insert-youtube-video-id-here>/2.jpg 
http://img.youtube.com/vi/<insert-youtube-video-id-here>/3.jpg 
Powiązane problemy