Audio Player: divisione mp3 in capitoli
Autor: Alessandro W.
Visited 988,
Followers 1,
Udostępniony 0
In alternativa alla divisione fisica di un file mp3 in capitoli e il caricamento dei capitoli nella track list dell'oggetto "Audio player", è possibile caricare nell'Audio Player un unico file mp3 e passare a una specifica posizione tramite un link all'interno di un oggetto "Codice HTML"?
Tipo:
var chapter = document.getElementsByTagName('audio');
chapter.currentTime = 72;
chapter.play();
Se questo è possibile, qualcuno avrebbe un esempio?
Ale
Posted on the
non so se ho capito...
e probabilmente ci sono anche altri metodi...
ma se usi il tag audio così col #t=X dopo il nome del file , il play parte dai secondi che imposti...
<audio controls>
<source src="https://file-examples-com.github.io/uploads/2017/11/file_example_MP3_2MG.mp3" type="audio/mpeg">
</audio>
<audio controls>
<source src="https://file-examples-com.github.io/uploads/2017/11/file_example_MP3_2MG.mp3#t=10" type="audio/mpeg">
</audio>
<audio controls>
<source src="https://file-examples-com.github.io/uploads/2017/11/file_example_MP3_2MG.mp3#t=20" type="audio/mpeg">
</audio>
<audio controls>
<source src="https://file-examples-com.github.io/uploads/2017/11/file_example_MP3_2MG.mp3#t=30" type="audio/mpeg">
</audio>
Autor
Grazie per la tua risposta, Claudio.
*.mp3#t=n va benissimo per far partire l'audio in un nuovo player. Intendevo invece far partire da una certa posizione il mp3 caricato nel WebSiteX5 Audio Player presente nella pagina.
Nel frattempo ho trovato la seguente soluzione funzionante:
<a id="chapter01" onclick="gotochapter01()">Chapter #01 (00:00-01:29)</a><br>
<a id="chapter02" onclick="gotochapter02()">Chapter #02 (01:30-02:29)</a>
<script>
function gotochapter01() {
const audio = document.querySelector("#pluginAppObj_14_31_audio_control");
audio.currentTime = 0;
audio.play();
}
function gotochapter02() {
const audio = document.querySelector("#pluginAppObj_14_31_audio_control");
audio.currentTime = 90;
audio.play();
}
</script>
Scomodo rimane che "querySelector" richiede di inserire un valore che cambia da pagina a pagina, nello specifico codice d'esempio "#pluginAppObj_14_31_audio_control".
Avrei preferito un'espressione applicabile su tutte le pagine come ad es. "const audio = document.getElementsByTagName('audio');" ma questo da me non funziona.
Effettivamente è strano perché nella specifica pagina HTML entrambi, sia querySelector("#pluginAppObj_14_31_audio_control") sia getElementsByTagName('audio'), portano a un solo risultato che è <audio style='display:none' id='pluginAppObj_14_31_audio_control' controls preload='auto'></audio>.
Ale
... per questo, ... basterebbe usare il TAG HTML5 <AUDIO> ...
... poi, secondo me(!) sarebbe da preferire per ovvie ragioni la prima ipotesi del primo post che si è esclusa...
... tempo fa avevo inventato in mio personale ed esclusivo codice che se non ricordo male era valido sia per sezioni video che audio con valori minimo e massimo della traccia per le varie tracce da considerare, e mi sembra che era riferito ad un testo che andava evidenziato durante la lettura (derivato dal mio SwishMax!), ma(!) il Topic non si trova o è stato chiuso(!)(*)↓ ...chiave di ricerca usata: "traccia audio"...
... ovviamente come al mio solito mi ero orientato/basato sull'esempio/test che era stato pubblicato online a suo tempo...
... comunque non dovrebbe essere difficile; ... risalendo per logica a quella che penso di aver usato io, basterebbe intercettare e condizionare il currentTime() nei valori min-max, usando il medesimo player HTML5...
... oppure, sempre come mia idea e con un solo player, assegnare all'attributo SRC-AUDIO le VAR MIN/MAX al CLICK sul collegamento per i vari collegamenti per le varie tracce della stessa pista audio...
...
... (*) ... a questo proposito, se lo STAFF leggesse per caso il mio POST, non lo pretendo, ma gradirei se fosse possibile, che, per i POST CHIUSI cui ho partecipato io con IMPORTANTI miei codici personali ed esclusivi, ...che mi fosse mantenuta la possibilità di poter almeno consultare quei POST per risalire al mio codice sorgente; ...varie decine di miei interventi con codici esclusivi dedicati al Programma sono andati persi a causa di utenti che dopo averne usufruito hanno chiuso il Topic senza condividere, e che a saperlo ci avrei almeno pensato!!! ...!... ...grazie comunque!...
.