¿Se puede cambiar el reproductor de video?

Haz tus consultas pedagógicas o técnicas en español aquí. Por favor siempre indica tu versión de Chamilo en cualquier consulta o reporte.

Moderator: Coursenligne

¿Se puede cambiar el reproductor de video?

Postby josenovo77 » 03 Jan 2018, 16:43

Hola, quisiera cambiar el reproductor de video, por defecto cuando uno sube un video a chamilo o coloca un link (que no sea de youtube), el video se reproduce por defecto con el reproductor del navegador, pero por ejemplo en windows 10 utilizando firefox, el mismo permite descargar el video sin programas (esta opcion ya la tienen incorporada en el reproductor) y yo no quiero que el alumno descargue el video.
es claro que todo desde internet se puede descargar, pero con capas e logrado que sea un poco mas complicado la descarga, pero con este boton no puedo evirtarlo, por ese motivo quiero colocar otro reproductor sea con codigo HTML desde la misma creacion de clase o de otra forma.
josenovo77
New user
 
Posts: 14
Joined: 15 Dec 2017, 22:14

Re: ¿Se puede cambiar el reproductor de video?

Postby josenovo77 » 03 Jan 2018, 17:47

Estoy trabajando en esto, arme un codigo (adaptado a un codigo de microsoft) que permite utilizar los botones que yo quiero, de esa forma elimino los botones pre establecidos de los exploradores (boton de decarga), anda todo (play, pausa, volumen), pero no consigo el de pantalla completa (igual tengo que afinar un poco los botones), les comparto el codigo por si se les ocurre algo.

<html >
<head>
<title>Full player example</title>
<!-- Uncomment the following meta tag if you have issues rendering this page on an intranet or local site. -->
<!-- <meta http-equiv="X-UA-Compatible" content="IE=edge"/> -->

<script type="text/javascript">
function init() { // Master function, encapsulates all functions
var video = document.getElementById("Video1");
if (video.canPlayType) { // tests that we have HTML5 video support
// if successful, display buttons and set up events
document.getElementById("buttonbar").style.display = "block";
document.getElementById("inputField").style.display = "block";

// helper functions
// play video
function vidplay(evt) {
if (video.src == "") { // inital source load
getVideo();
}
button = evt.target; // get the button id to swap the text based on the state
if (video.paused) { // play the file, and display pause symbol
video.play();
button.textContent = "||";
} else { // pause the file, and display play symbol
video.pause();
button.textContent = ">";
}
}
// load video file from input field
function getVideo() {
var fileURL = document.getElementById("videoFile").value; // get input field
if (fileURL != "") {
video.src = fileURL;
video.load(); // if HTML source element is used
document.getElementById("play").click(); // start play
} else {
errMessage("Enter a valid video URL"); // fail silently
}
}



// button helper functions
// skip forward, backward, or restart
function setTime(tValue) {
// if no video is loaded, this throws an exception
try {
if (tValue == 0) {
video.currentTime = tValue;
}
else {
video.currentTime += tValue;
}

} catch (err) {
// errMessage(err) // show exception
errMessage("Video content might not be loaded");
}
}
// display an error message
function errMessage(msg) {
// displays an error message for 5 seconds then clears it
document.getElementById("errorMsg").textContent = msg;
setTimeout("document.getElementById('errorMsg').textContent=''", 5000);
}
// change volume based on incoming value
function setVol(value) {
var vol = video.volume;
vol += value;
// test for range 0 - 1 to avoid exceptions
if (vol >= 0 && vol <= 1) {
// if valid value, use it
video.volume = vol;
} else {
// otherwise substitute a 0 or 1
video.volume = (vol < 0) ? 0 : 1;
}
}
// button events
// Play
document.getElementById("play").addEventListener("click", vidplay, false);
// Restart
document.getElementById("restart").addEventListener("click", function () {
setTime(0);
}, false);
// Skip backward 10 seconds
document.getElementById("rew").addEventListener("click", function () {
setTime(-10);
}, false);
// Skip forward 10 seconds
document.getElementById("fwd").addEventListener("click", function () {
setTime(10);
}, false);
// set src == latest video file URL
document.getElementById("loadVideo").addEventListener("click", getVideo, false);

// fail with message
video.addEventListener("error", function (err) {
errMessage(err);
}, true);
// volume buttons
document.getElementById("volDn").addEventListener("click", function () {
setVol(-.1); // down by 10%
}, false);
document.getElementById("volUp").addEventListener("click", function () {
setVol(.1); // up by 10%
}, false);

// playback speed buttons
document.getElementById("slower").addEventListener("click", function () {
video.playbackRate -= .25;
}, false);
document.getElementById("faster").addEventListener("click", function () {
video.playbackRate += .25;
}, false);
document.getElementById("normal").addEventListener("click", function () {
video.playbackRate = 1;
}, false);
document.getElementById("mute").addEventListener("click", function (evt) {
if (video.muted) {
video.muted = false;
evt.target.innerHTML = "<img alt='volume on button' src='vol2.png' />"
} else {
video.muted = true;
evt.target.innerHTML = "<img alt='volume off button' src='mute2.png' />"
}
}, false);
} // end of runtime
}// end of master
</script>

</head>
<body onload="init();" >

<video id="Video1" style="border: 1px solid blue;" height="240" width="320" title="video element">
HTML5 Video is required for this example
</video>

<div id="buttonbar" style="display: none;")>
<button id="restart" title="Restart button">[]</button>
<button id="slower" title="Slower playback button">-</button>
<button id="rew" title="Rewind button" >&lt;&lt;</button>
<button id="play" title="Play button">&gt;</button>
<button id="fwd" title="Forward button" >&gt;&gt;</button>
<button id="faster" title="Faster playback button">+</button>
<button id="Button2" title="Mute button" ><img alt="Volume on button" src="vol2.png" /></button>
<br />
<label>Playback </label>
<label>Reset playback rate: </label><button id="normal" title="Reset playback rate button">=</button>

<label> Volume </label>
<button id="volDn" title="Volume down button">-</button>
<button id="volUp" title="Volume up button">+</button>
<button id="mute" title="Mute button" ><img alt="Volume on button" src="vol2.png" /></button>
</div>
<br/>
<div id= "inputField" style="display:none;" >
<label>Type or paste a video URL: <br/>
<input type="text" id="videoFile" style="width: 300px;" title="video file input field" value="http://ie.microsoft.com/testdrive/ieblog/2011/nov/pp4_blog_demo.mp4" />
<button id="loadVideo" title="Load video button" >Load</button>
</label>
</div>
<div title="Error message area" id="errorMsg" style="color:Red;"></div>
</body>
</html>
josenovo77
New user
 
Posts: 14
Joined: 15 Dec 2017, 22:14

Re: ¿Se puede cambiar el reproductor de video?

Postby Kaneda » 04 Jan 2018, 12:14

Gracias por compartir.

Entra en https://github.com/chamilo/chamilo-lms/issues y reporta por si pueden añadirlo al código de Chamilo.

Saludos.
User avatar
Kaneda
Active User
 
Posts: 160
Joined: 18 May 2015, 16:37
Location: De aquí pa'llá

Re: ¿Se puede cambiar el reproductor de video?

Postby josenovo77 » 04 Jan 2018, 17:33

hola, si lo voy a hacer, estoy perfeccionando los archivos (agrupándolos en carpetas), cree un reproductor muy practico, rapido y 100% personalizable. con un codigo reducido (la mitad del que escribi antes) y que evita la descarga directa . Por el momento la unica forma de descarga del video es con programas (por ejemplo IDM) que aun no encontré un método para complicarles la descarga con programas.

Obviamente todo lo que esta en internet se puede descargar, pero la idea es complicarles esa tarea, vi que en netflix el IDM no funciona, asi que estoy tratando de averiguar como codificaron sus videos.
josenovo77
New user
 
Posts: 14
Joined: 15 Dec 2017, 22:14


Return to Todos los temas, todas las versiones

Who is online

Users browsing this forum: No registered users and 5 guests