
 Jak zakódovat automatické spuštění titulků včetně překladu do odkazu na YT video?
				Jak zakódovat automatické spuštění titulků včetně překladu do odkazu na YT video?			
							
					Potřeboval bych přidat na stránky YT video, ale ideálně tak, aby se u něj spustily i automaticky překládané CZ titulky. Video není mé, takže do něj zasahovat nemohu, mohu akorát nějak modifikovat odkaz, aby se spustily automaticky překládané titulky, pokud je to vůbec možné. 
 
 
Zobrazení titulků:
Nastavení jazyka:
Jestli to bude fungovat v praxi tak jak si představuješ, netuším.
A jak přesně by pak takový odkaz měl vypadat, tj. kam to vložit? Můžeš to ilustrovat třeba na https://youtu.be/lqSSqVLjvUg, kde je hodně mluvení?
Vložíš to do URL adresy jako parametry.
Udělal jsem to podle hosta: https://youtu.be/lqSSqVLjvUg?cc_load_policy=1&hl=cs
Titulky se spustí, ale jsou anglicky.
Jo, místo hl by mělo pravděpodobně být cc_lang_pref. Parametr hl je pro volbu jazyka interface přehrávače.
Udělal jsem to tedy takhle: https://youtu.be/lqSSqVLjvUg?cc_load_policy=1&hl=cs&cc_lang_pref=cs a stejně mi to přehrává titulky anglicky.
Že by to fungovalo jen v rámci IFRAME? Těžko říct. Nic nebrání to tazateli vyzkoušet...
https://developers.google.com/youtube/player_parameters
Spustí, ale jenom, když mám u YT zapnuté titulky. Když je vypnu a znovu spustím daný odkaz, tak se nespustí ani anglické titulky ...
Možná tohle by mohlo fungovat, ale momentálně to z časových důvodů nemohu vzkoušet: https://www.3playmedia.com/blog/force-closed-captions-appear-youtube-videos/
Konečně jsem se dostal k pokusům s automatickým spuštěním titulků, ale zatím jsem skončil na parametru cc_load_policy=1, který spustí titulky jenom v případě, že jsem je zapnul v nějakém předcházejícím videu. Pokud je na nějakém jiném videu vypnu, tak tak ani parametr cc_load_policy=1 je nespustí. Nepochopil jsem, k čemu pak vůbec je.
Edit: Asi to má nějakou souvislost s cookies, jelikož když odkaz https://youtu.be/lqSSqVLjvUg?cc_load_policy=1 otevřu v anonymním okně a odmítnu cookies, tak se titulky zobrazí.
https://www.youtube.com/watch?v=xd24_NnzKy4
Asi by mohlo fungovat tohle: http://jsfiddle.net/setalosas/mezopfhL/, ale kam přidat ten skript do Fastcentriku?
<iframe id="existing-iframe"
width="640" height="360"
src="https://www.youtube.com/embed/q2C0EO0zzAY?enablejsapi=1&cc_load_policy=1"
frameborder="0"
style="border: solid 4px #37474F"
></iframe>
<script type="text/javascript">
var tag = document.createElement('script');
tag.src = 'https://www.youtube.com/iframe_api';
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
let player
const onApiChange = _ => {
if (typeof player.setOption === 'function') {
player.setOption('captions', 'track', {languageCode: 'en'}) // undocumented call
}
}
function onYouTubeIframeAPIReady() {
player = new YT.Player('existing-iframe', {events: {onApiChange}})
}
</script>