Próbuję osadzić wideo z wyciszonym dźwiękiem, ale nie wiem, jak to działa.
Obecnie używam tego, ale nie działa:
<iframe src="https://www.youtube.com/embed/uNRGWVJ10gQ?rel=0&autoplay=1" width="560" height="315" frameborder="0" allowfullscreen></iframe>
Czy ktoś z was wie, jak mogę to zrobić?
html
youtube
youtube-iframe-api
user2924482
źródło
źródło
U mnie działa przy użyciu
&autoplay=1&mute=1
źródło
&mute=1
.Przyjęta odpowiedź nie działała dla mnie, zamiast tego skorzystałem z tego samouczka z sukcesem.
Gruntownie:
<div id="muteYouTubeVideoPlayer"></div> <script async src="https://www.youtube.com/iframe_api"></script> <script> function onYouTubeIframeAPIReady() { var player; player = new YT.Player('muteYouTubeVideoPlayer', { videoId: 'YOUR_VIDEO_ID', // YouTube Video ID width: 560, // Player width (in px) height: 316, // Player height (in px) playerVars: { autoplay: 1, // Auto-play the video on load controls: 1, // Show pause/play buttons in player showinfo: 0, // Hide the video title modestbranding: 1, // Hide the Youtube Logo loop: 1, // Run the video in a loop fs: 0, // Hide the full screen button cc_load_policy: 0, // Hide closed captions iv_load_policy: 3, // Hide the Video Annotations autohide: 0 // Hide video controls when playing }, events: { onReady: function(e) { e.target.mute(); } } }); } // Written by @labnol </script>
źródło
mute: 1
jako dodatkowe,playerVar
a wtedyonReady
wydarzenie nie będzie potrzebne. Pamiętaj, aby dodać przecinek poautohide: 0
i pamiętaj, że nie możesz użyć,mute: 0
ponieważ zostałby uznany za „spamerski”. Pamiętaj też, że po jawnym wyciszeniu wideo podczas odświeżania strony nadal będzie ono wyciszone.To jest łatwe. Po prostu dodaj mute = 1 do parametru src elementu iframe.
Przykład:
<iframe src="https://www.youtube.com/embed/uNRGWVJ10gQ?controls=0&mute=1&showinfo=0&rel=0&autoplay=1&loop=1&playlist=uNRGWVJ10gQ" frameborder="0" allowfullscreen></iframe>
źródło
<iframe src="https://www.youtube.com/embed/7cjVj1ZyzyE?autoplay=1&loop=1&playlist=7cjVj1ZyzyE&mute=1" frameborder="0" allowfullscreen></iframe>
wyciszenie = 1
źródło
<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/ObHKvS2qSp8?list=PLF8tTShmRC6uppiZ_v-Xj-E1EtR3QCTox&autoplay=1&controls=1&loop=1&mute=1" frameborder="0" allowfullscreen></iframe> <iframe width="560" height="315" src="https://www.youtube.com/embed/ObHKvS2qSp8?list=PLF8tTShmRC6uppiZ_v-Xj-E1EtR3QCTox&autoplay=1&controls=1&loop=1&mute=1" frameborder="0" allowfullscreen></iframe>
źródło
Chciałbym podziękować znajomemu, który zamieścił poniższe kody w tym obszarze. W końcu rozwiązałem problem, z którym miałem do czynienia przez cały dzień.
<div id="muteYouTubeVideoPlayer"></div> <script async src="https://www.youtube.com/iframe_api"></script> <script> function onYouTubeIframeAPIReady() { var player; player = new YT.Player('muteYouTubeVideoPlayer', { videoId: 'xCIBR8kpM6Q', // YouTube Video ID width: 1350, // Player width (in px) height: 500, // Player height (in px) playerVars: { autoplay: 1, // Auto-play the video on load controls: 0, // Show pause/play buttons in player showinfo: 0, // Hide the video title modestbranding: 0, // Hide the Youtube Logo loop: 1, // Run the video in a loop fs: 0, // Hide the full screen button cc_load_policy: 0, // Hide closed captions iv_load_policy: 3, // Hide the Video Annotations autohide: 0, // Hide video controls when playing rel: 0 }, events: { onReady: function(e) { e.target.setVolume(5); } } }); } // Written by @labnol </script>
źródło
Źródło: https://developers.google.com/youtube/iframe_api_reference
<div id="player"></div> <script> var tag = document.createElement('script'); tag.src = "https://www.youtube.com/iframe_api"; var firstScriptTag = document.getElementsByTagName('script')[0]; firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); var player; function onYouTubeIframeAPIReady() { player = new YT.Player('player', { height: '720', width: '1280', videoId: 'M7lc1UVf-VE', playerVars :{'autoplay':1,'loop':1,'playlist':'M7lc1UVf-VE','vq':'hd720'}, events: { 'onReady': onPlayerReady, 'onStateChange': onPlayerStateChange } }); } function onPlayerReady(event) { event.target.setVolume(0); event.target.playVideo(); } var done = false; function onPlayerStateChange(event) { if (event.data == YT.PlayerState.PLAYING && !done) { // setTimeout(stopVideo, 6000); done = true; } event.target.setVolume(0); } </script>
źródło
Po prostu podaj
mute=1
.Na przykład:
<iframe id="myVideo" src="https://www.youtube.com/embed/k0DN-BZrM4o?rel=0&autoplay=1;mute=1" width="100%" height="600" frameborder="0" allowfullscreen></iframe>
źródło
również szukałem rozwiązania tego problemu, ale nie włączałem go przez iframe, mój był powiązany z images / video.mp4 - znalazłem to https://www.w3schools.com/tags/att_video_muted.asp - i po prostu dodałem < sterowanie wideo wyciszone> (rozwiązanie CSS / HTML 5), ale nie jest wymagany JS ...
źródło
<iframe width="560" height="315" src="https://www.youtube.com/embed/ULzr7JsFp0k?list=PLF8tTShmRC6vp9YTjkVdm1qKuTimC6K3e&rel=0&autoplay=1&controls=1&loop=1" rel=0& frameborder="0" allowfullscreen></iframe>
źródło
Spróbuj tego
<iframe width="420" height="315" src="http://www.youtube.com/embed/ HeQ39bLsoTI?autoplay=1&cc_load_policy=1" volume="0" frameborder="0" allowfullscreen></iframe>
nie zapomnij napisać volume = "0"
źródło