Julien Vega was born in Provence in 1982. He studied piano, harmony, orchestration, arrangement, and analysis at various national conservatories (Aix en Provence, Montpellier, Nice) and obtained a 1st prize in piano and musical training, then a State diploma as a piano teacher.
A multifaceted musician, versatile arranger, and sensitive orchestrator, he can be found at the piano in various classical, jazz and contemporary music groups, sometimes on trumpet, and even floating on the sea (Compagnie La Rumeur / Marseille).
Since 2011, he has signed numerous television, radio and advertising packages with his major partner Cézame Music Agency, notably for UNICEF, Dior, Korkenkorva, and the soundtrack of "Le divan de Staline" with G. Depardieu.
He is also a winner of the competition for the best-animated film music (CIMFA - Annecy 2013).
Julien Vega was born in Provence in 1982. He studied piano, harmony, orchestration, arrangement, and analysis at various national conservatories (Aix en Provence, Montpellier, Nice) and obtained a 1st prize in piano and musical training, then a State diploma as a piano teacher.
A multifaceted musician, versatile arranger, and sensitive orchestrator, he can be found at the piano in various classical, jazz and contemporary music groups, sometimes on trumpet, and even floating on the sea (Compagnie La Rumeur / Marseille).
Since 2011, he has signed numerous television, radio and advertising packages with his major partner Cézame Music Agency, notably for UNICEF, Dior, Korkenkorva, and the soundtrack of "Le divan de Staline" with G. Depardieu.
He is also a winner of the competition for the best-animated film music (CIMFA - Annecy 2013).
Album | Titel | Vers. | Länge | Komponist/Autor | Beschreibung | Suchbegriffe | Key | BPM |
|
|
---|---|---|---|---|---|---|---|---|---|---|
|
Where Dreams Begin [CEZ4644 - 8] |
5 | 1'55 | Julien Vega | Orchestral. Catchy, rousing & uplifting. Full orchestra with piano, ... | Liebeskomödie zuversichtlich begeisternd fantastisches Kino ... | Bb | 120 |
|
|
|
Where Dreams Begin Alternate [CEZ4644 - 47] |
0 | 1'55 | Julien Vega | Version without percussion | Liebeskomödie zuversichtlich begeisternd fantastisches Kino ... | Bb | 120 |
|
|
|
Where Dreams Begin True Edit ...
[CEZ4644 - 48] |
0 | 0'15 | Julien Vega | 15 seconds cut | Liebeskomödie zuversichtlich begeisternd fantastisches Kino ... | Bb | 119 |
|
|
|
Where Dreams Begin True Edit ...
[CEZ4644 - 49] |
0 | 0'30 | Julien Vega | 30 seconds cut | Liebeskomödie zuversichtlich begeisternd fantastisches Kino ... | Bb | 120 |
|
|
|
Where Dreams Begin True Edit ...
[CEZ4644 - 50] |
0 | 1'00 | Julien Vega | 60 seconds cuit | Liebeskomödie zuversichtlich begeisternd fantastisches Kino ... | Bb | 120 |
|
|
|
Where Dreams Begin Edit 4 ...
[CEZ4644 - 51] |
0 | 0'06 | Julien Vega | Sting | Liebeskomödie zuversichtlich begeisternd fantastisches Kino ... | Bb | 119 |
|
|
|
The Third Star [CEZ4644 - 4] |
5 | 2'01 | Julien Vega | Orchestral. Magical, bright & wonderous. Orchestra with piano, ... | zuversichtlich begeisternd feenhaft Liebeskomödie ... | Gm | 106 |
|
|
|
The Third Star Alternate [CEZ4644 - 28] |
0 | 2'01 | Julien Vega | Version without percussion | zuversichtlich begeisternd feenhaft Liebeskomödie ... | Gm | 106 |
|
|
|
The Third Star Edit 1 (15s) [CEZ4644 - 29] |
0 | 0'15 | Julien Vega | 15 seconds cut | zuversichtlich begeisternd feenhaft Liebeskomödie ... | G | 107 |
|
|
|
The Third Star Edit 2 (30s) [CEZ4644 - 30] |
0 | 0'30 | Julien Vega | 30 seconds cut | zuversichtlich begeisternd feenhaft Liebeskomödie ... | G | 106 |
|
|
|
The Third Star Edit 3 (60s) [CEZ4644 - 31] |
0 | 1'00 | Julien Vega | 60 seconds cuit | zuversichtlich begeisternd feenhaft Liebeskomödie ... | Gm | 106 |
|
|
|
The Third Star Edit 4 (sting) [CEZ4644 - 32] |
0 | 0'07 | Julien Vega | Sting | zuversichtlich begeisternd feenhaft Liebeskomödie ... | Bb | 93 |
|
|
|
Lost Expectation [CEG5048 - 11] |
2 | 2'06 | Julien Vega | Solitary, suspended, misty, trembling & insidious. Layers of synth, ... | trostlos Abwartend abwartend mysteriös ... | Fm | 60 |
|
|
|
Lost Expectation Alternate 1 [CEG5048 - 26] |
0 | 2'03 | Julien Vega | Alternate minimalist version | trostlos mysteriös sozialkritisch abwartend ... | Fm | 60 |
|
|
|
Lost Expectation Alternate 2 [CEG5048 - 27] |
0 | 2'06 | Julien Vega | Alternate minimalist version | trostlos abwartend mysteriös schlicht ... | Fm | 118 |
|
|
|
Hanging Time [CEG5048 - 5] |
2 | 1'55 | Julien Vega | Atmospheric, dreamy, anticipating & peaceful. Piano, electronics & ... | Abwartend geduldig fragend Zeit (Ticken) ... | E | 106 |
|
|
|
Hanging Time Alternate 1 [CEG5048 - 20] |
0 | 1'55 | Julien Vega | Alternate minimalist version | introspektiv Soundtrack bewegend Abwartend ... | E | 71 |
|
|
|
Hanging Time Alternate 2 [CEG5048 - 21] |
0 | 1'55 | Julien Vega | Alternate minimalist version | Abwartend geduldig fragend Zeit (Ticken) ... | E | 106 |
|
|
|
Inexplicable Events [CEZ4614 - 5] |
1 | 1'48 | Julien Vega | Light Dramedy. Intro "on tip toe". Intriguing light tension, ... | Dramedy investigativ mysteriös amüsant ... | Em | 80 |
|
|
|
Inexplicable Events Alternate [CEZ4614 - 17] |
0 | 1'49 | Julien Vega | Alternate without percussion. | Dramedy investigativ mysteriös amüsant ... | Em | 80 |
|
|
|
Life in Decline [CEZ4613 - 2] |
0 | 2'29 | Julien Vega | Post-modern. Cyclical, lyrical, punctuated & moving. Constant ... | post-classical Filmmusik Schicksal bewegend ... | Em | 80 |
|
|
|
The Sands of Time [CEZ4613 - 6] |
0 | 2'21 | Julien Vega | Melancholic, cyclical, narrative & calm. Nu piano, electronics, pizz ... | geduldig Zeit (Ticken) Daylife Handwerk ... | Bm | 80 |
|
|
|
Machination [CEZ4613 - 18] |
0 | 2'16 | Julien Vega | Comedy/dramedy suspense. Worrying, punctuated, cyclical. Ascendant @ ... | mysteriös beunruhigend eindringlich Spannung ... | Cm | 120 |
|
|
|
On the Edge of Dreams [CEZ4613 - 16] |
0 | 2'30 | Julien Vega | Cyclical, peaceful, suspended & inspired. Electronics, strings & ... | introspektiv bewegend vertraut geduldig ... | Cm | 100 |
|
|
|
Towards the Inevitable [CEZ4613 - 10] |
0 | 2'26 | Julien Vega | At once mechanical & exotic, cyclical & unstable. Suspended break @ ... | Spannung heimtückisch mysteriös Abwartend ... | G | 124 |
|
|
|
On the Far Side [CEZ4613 - 13] |
0 | 2'28 | Julien Vega | Cyclical, strange, slightly disturbing & surreptitious. Break @ 1'40. ... | neo-klassische Musik Abwartend beunruhigend eindringlich ... | Dm | 100 |
|
|
|
Golden Valors [CEZ4612 - 14] |
1 | 1'52 | Julien Vega | Emotional score. Soft & gentle piano intro evolving with gracious ... | zuversichtlich engagiert triumphierend Sportevent ... | G | 110 |
|
|
|
Golden Valors Alternate [CEZ4612 - 43] |
0 | 1'52 | Julien Vega | Alternate no percs. | triumphierend zuversichtlich Sportevent Filmmusik ... | G | 110 |
|
|
|
Resilient Athletes [CEZ4612 - 16] |
1 | 2'02 | Julien Vega | Emotional score. Resilient & determined intro evolving with staccato ... | Abenteuerkino Filmmusik Sportevent kraftvoll & imposant ... | Gbm | 136 |
|
|
|
Resilient Athletes Alternate [CEZ4612 - 45] |
0 | 2'02 | Julien Vega | Alternate no percs. | Abenteuerkino Filmmusik Sportevent kraftvoll & imposant ... | Gbm | 127 |
|
|
|
Where Does It Go? [CEZ4603 - 7] |
1 | 2'00 | Julien Vega | Investigative indie track. Mysterious, suspenseful, foggy but ... | investigativ mysteriös fragend Underscore ... | Dm | 81 |
|
|
|
Where Does It Go? Alternate [CEZ4603 - 26] |
0 | 1'59 | Julien Vega | Alternate no perc. | investigativ mysteriös fragend Underscore ... | Dm | 81 |
|
|
|
Celluloid Dreams [CEZ4603 - 4] |
1 | 2'15 | Julien Vega | Indie soundtrack. Melancholic, majestic, deep, timeless & nostalgic. ... | independent cinema introspektiv melancholisch electronic score ... | Dm | 80 |
|
|
|
Celluloid Dreams Alternate [CEZ4603 - 24] |
0 | 2'14 | Julien Vega | Alternate no perc. | independent cinema electronic score introspektiv melancholisch ... | Dm | 80 |
|
|
|
Cherry Blossom Time [CEZ4553 - 8] |
0 | 2'13 | Julien Vega | Easy listening/ lounge music. Sensual, exotic & old-fashioned in a ... | charmant altmodisch easy listening (alle) raffiniert ... | Em | 120 |
|
|
|
Aisha the Belly Dancer [CEZ4553 - 12] |
0 | 2'09 | Julien Vega | Easy listening/ lounge music. Exotic, kitsch, old-fashioned & sensual ... | easy listening (alle) altmodische Filme fröhlich & heiter beschwingt ... | G | 86 |
|
|
|
Shall We Dance [CEZ4553 - 20] |
0 | 1'52 | Julien Vega | Cha cha cha. Easy listening/lounge music in the spirit of the 50s & ... | Animationsfilme Tierwelt kitschig & cheesy amüsant ... | D | 116 |
|
|
|
Panama City Beach [CEZ4553 - 14] |
1 | 2'12 | Julien Vega | Mambo. Easy listening/ lounge music. Danceable, exotic & retro. Theme ... | schwungvoll beschwingt easy listening (alle) Mambo ... | Dm | 115 |
|
|
|
Panama City Beach Alternate [CEZ4553 - 22] |
0 | 2'12 | Julien Vega | Alternate version without female vocal. | easy listening (alle) altmodisch kitschig & cheesy zuversichtlich ... | Dm | 115 |
|
|
|
Hold The Elevator [CEZ4553 - 1] |
0 | 2'44 | Julien Vega | Easy listening / lounge music in the spirit of the 50 & 60. Exotic, ... | Exotica Cocktailbar sorglos entspannt ... | G | 140 |
|
|
|
Sultry Arabian Nights [CEZ4553 - 21] |
0 | 3'12 | Julien Vega | Old-fashioned, sensual & melancholy in the spirit of Middle Eastern ... | mysteriös nächtlich melancholisch altmodisch ... | D | 110 |
|
|
|
Chinese Party [CEZ4553 - 5] |
0 | 2'26 | Julien Vega | Easy listening/ lounge music. Exotic, kitschy, quirky & fun. Far ... | amüsant daytime TV schwungvoll fröhlich & heiter ... | Gm | 162 |
|
|
|
The Wild Bunch [CEZ4575 - 11] |
0 | 1'57 | Julien Vega | Cinematic / Western Americana. Suspenseful intro with piano, banjo & ... | Filmmusik episch mysteriös begeisternd ... | Em | 81 |
|
|
|
The Dust and the Sweat [CEZ4575 - 1] |
1 | 1'40 | Julien Vega | Cinematic / Western Americana. Suspenseful, arid & dusty intro ... | Abenteuerkino Filmmusik Westernfilme energisch ... | Dm | 92 |
|
|
|
The Dust and the Sweat ...
[CEZ4575 - 18] |
0 | 1'40 | Julien Vega | Alternate without choir. | Westernfilme Filmmusik Panorama Trailer ... | Dm | 92 |
|
|
|
Friendly Farming Folk [CEZ4562 - 11] |
0 | 1'55 | Julien Vega | Easy going, bucolic, confident & refined. Cartoon orchestra with ... | sorglos Weihnachten Daylife Animationsfilme ... | A | 100 |
|
|
|
It's Cartoon Time [CEZ4562 - 1] |
0 | 1'19 | Julien Vega | Cartoon theme tune. Cavalcade. Parodic, fun, lively, burlesque & ... | amüsant Animationsfilme Outtake Kindheit ... | Am | 164 |
|
|
|
Cheeky Bird [CEZ4562 - 2] |
0 | 1'43 | Julien Vega | Comical march. Casual, bouncy & mocking. Cartoon orchestra & cartoon ... | Animationsfilme ironisch & schelmisch amüsant Outtake ... | Gbm | 124 |
|
|
|
Ragtime Pursuit [CEZ4562 - 3] |
0 | 1'48 | Julien Vega | Pursuit. Ragtime in the style of silent movies. Burlesque, bouncy & ... | Outtake Ragtime burlesk Stummfilme ... | C | 136 |
|
|
|
Elephant on a Wire [CEZ4562 - 4] |
0 | 2'00 | Julien Vega | Clumsy, perilous, unstable, indolent & hesitant. Cartoon orchestra, ... | Animationsfilme betrunken plump komisch ... | Fm | 110 |
|
|
|
Speedy Wacky Train [CEZ4562 - 5] |
0 | 2'02 | Julien Vega | Cartoon chase. Crazy, fun, urgent & ironic. Cartoon orchestra, banjo ... | Eisenbahn Animationsfilme exzentrisch Banjo ... | Bm | 140 |
|
|
|
Cat in a Trap [CEZ4562 - 6] |
0 | 1'52 | Julien Vega | On tiptoes. Fun, bouncy & on the prowl. Cartoon orchestra, xylophone, ... | Animationsfilme ironisch & schelmisch amüsant Kindheit ... | B | 120 |
|
|
|
Not-so-dumb Dog [CEZ4562 - 7] |
0 | 1'32 | Julien Vega | Clumsy, hesitant, questioning & patient. Cartoon orchestra & ... | komisch Zirkustiere plump Animationsfilme ... | Gm | 80 |
|
|
|
Eyes Full of Dreams [CEZ4562 - 9] |
0 | 1'40 | Julien Vega | Fairylike, sentimental, delicate & charming. Vibraphone, strings, ... | Animationsfilme charmant Soundtrack nächtlich ... | Eb | 60 |
|
|
|
Toons on Parade [CEZ4562 - 10] |
0 | 1'18 | Julien Vega | An amused stroll. Confident, positive & tender. Cartoon orchestra, fx ... | sorglos fröhlich & heiter amüsant Animationsfilme ... | Dm | 96 |
|
|
|
Smart as a Bunny [CEZ4562 - 12] |
0 | 1'56 | Julien Vega | Bouncy, urgent & spirited. Cartoon orchestra & fx cartoon. Break @ ... | amüsant ironisch & schelmisch Animationsfilme mitreißend ... | Em | 140 |
|
|
|
The Dinky Donkey [CEZ4562 - 13] |
0 | 2'15 | Julien Vega | Almost childish. Naïve, scandé & comical. Piano, strings, brass, fx ... | burlesk Kindheit Animationsfilme Outtake ... | Bbm | 150 |
|
|
|
My Little Chickadee [CEZ4562 - 14] |
0 | 1'18 | Julien Vega | Swing movement. Relaxed, tender, confident & joyful. Small bells, ... | sorglos Animationsfilme Kindheit zuversichtlich ... | Fm | 150 |
|
|
|
Not-so-dumb Dog Variation [CEZ4562 - 8] |
0 | 0'56 | Julien Vega | Variation of the tr-7. Proud, confident & festive. Cartoon orchestra ... | plump Animationsfilme stolz amüsant ... | Gm | 110 |
|
|
|
Sweet Dramedy Time [CEZ4536 - 6] |
0 | 1'34 | Julien Vega | Peaceful, dreamy, shy & tender. Pizz, guitar, piano & percussions. ... | zuversichtlich Küche & Deko Dramedy sorglos ... | Gm | 120 |
|
|
|
Tubby Tabby Cat [CEZ4536 - 2] |
0 | 1'30 | Julien Vega | Bouncy, mischievous & fun. Pizz, piano, strings, marimba & ... | Dramedy Kindheit naiv Outtake ... | C | 110 |
|
|
|
Running After Gooses [CEZ4536 - 3] |
0 | 1'36 | Julien Vega | Fun, confident & positive. Pizz, piano, percussion, guitar & ... | Dramedy amüsant Haustiere naiv ... | Gm | 90 |
|
|
|
Gardening Dramedy [CEZ4536 - 5] |
0 | 1'50 | Julien Vega | Light suspense. Confident, questioning & naive. Pizz, guitar, piano, ... | amüsant Dramedy zuversichtlich Haustiere ... | A | 140 |
|
|
|
The Giddy Giraffe [CEZ4536 - 7] |
0 | 1'30 | Julien Vega | Suspenseful. Carefree, confident & tragi-comic. Pizz, piano, ... | mysteriös Dramedy Spannung tragikomisch ... | Bbm | 89 |
|
|
|
Cute Little Being [CEZ4536 - 4] |
0 | 1'37 | Julien Vega | Light suspense. Waiting, mysterious & tender. Guitar, piano, pizz, ... | Dramedy ironisch & schelmisch mysteriös Abwartend ... | Am | 96 |
|
|
|
Dramedy's Fluffy Behaviour [CEZ4536 - 8] |
0 | 2'00 | Julien Vega | Carefree, relaxed & tender. Guitar, pizz, piano & percussions. ... | Animationsfilme ironisch & schelmisch mysteriös Basteln ... | Bb | 118 |
|
|
|
Dramedy in the Zoo [CEZ4536 - 10] |
0 | 1'59 | Julien Vega | Suspenseful. Jerky, clumsy, nostalgic & ironic. Pizz, piano, guitar, ... | Kindheit ironisch & schelmisch tragikomisch fragend ... | Dm | 110 |
|
|
|
When the Dog Snitches [CEZ4536 - 9] |
0 | 1'24 | Julien Vega | Waltz movement. Mischievous, jerky, suspenseful & tragi-comic. Pizz, ... | Animationsfilme Dramedy Daylife Haustiere ... | D | 110 |
|
|
|
The Steelworker [CEZ4511 - 20] |
0 | 1'40 |
Julien Vega John Greaves |
Text ... Joyful, smiling, bouncy & carefree. Male singer, music hall ... | fröhlich & heiter sorglos amüsant einprägsam ... | Cm | 130 |
|
|
|
We May Fall in Love [CEZ4511 - 9] |
0 | 2'04 |
Julien Vega John Greaves |
Text ... Romance in waltz time. Melancholic, loving & sentimental. Male & ... | Variété-Theater Romanzen sentimental Liebesfilme ... | Cm | 118 |
|
|
|
The Golden Boy [CEZ4511 - 30] |
0 | 2'32 |
Julien Vega John Greaves |
Text ... Jazzy show song in the spirit of Broadway musicals of the 30s é 40s. ... | zuversichtlich charmant schwungvoll Jazz Song ... | Em | 163 |
|
login
password
Nom
Loading ' + file.name + ' ' + (file.size ? (file.size/1024|0) + 'K' : ''); fichier=file.name; } } //--- //- recog readfiles //--- readfiles = function(files) { var formData = tests.formdata ? new FormData() : null; for (var i = 0; i < files.length; i++) { if (tests.formdata) formData.append('file', files[i]); // previewfile(files[i]); en commentaire pcq nom du fichier pas important et pas beau } formData.set('lang','de'); // now post a new XHR request if (tests.formdata) { var xhr = new XMLHttpRequest(); xhr.open('POST', '/recog/upload.php'); xhr.onload = function() { progress.value = progress.innerHTML = 100; }; xhr.onloadend = function() { JSONreponse= xhr.responseText.trim(); if(JSONreponse=="ERR"){ spinnerStopCancellable(); $('#progress_external_recommendation_file').hide(); document.getElementById('file_external_recommendation').files = null; document.getElementById('file_external_recommendation_lbl').innerHTML = 'Choose file from your computer'; getAlertDanger("An error has occured, please try again with another file"); }else if(JSONreponse=="ERR_NOT_CONNECTED"){ //jQuery('#infoBoxListePage_connect').show(); TipNotConnected(); }else{ $('#fichiercharge').remove(); $('#chargementde').remove(); $('progress').hide(); spinnerStop(); reponses = JSON.parse(JSONreponse); reponsesMots = reponses.mots; suggestiontitres(files[0].name, 'mp3'); /** SG 21/10/2021 : POUR CACHER LA BOX QD RESULTAT AFFICHÉ **/ if($('.external_recommendationbox').length){ /** SG 22/10/2021 : POUR PROGRESS BAR EXTERNAL_RECOMMENDATION **/ $('#progress_external_recommendation_file').width('100%'); $('.external_recommendationbox').hide(); $('#progress_external_recommendation_file').width('0%'); $('#progress_external_recommendation_file').hide(); $('#file_external_recommendation').val(''); document.getElementById('file_external_recommendation_lbl').innerHTML = 'Drop your file here.'; } } }; if (tests.progress) { $('progress').show(); $('#progress_external_recommendation_file').show(); spinnerStart(); xhr.upload.onprogress = function (event) { if (event.lengthComputable) { var complete = (event.loaded / event.total * 100 | 0); if(complete!=100){ $('#recogdiv').each(function(){$(this).remove();}); } /** SG 22/10/2021 : PR PROGRESS BAR EXTERNAL_RECOMMENDATION **/ if($('#progress_external_recommendation_file').length){ $('#progress_external_recommendation_file').width((event.loaded/event.total*100)+'%'); } progress.value = progress.innerHTML = complete; } } } xhr.send(formData); } } //--- //- recog readfiles //--- readfiles_image = function(files) { var formData = tests.formdata ? new FormData() : null; for (var i = 0; i < files.length; i++) { if (tests.formdata) formData.append('file', files[i]); // previewfile(files[i]); en commentaire pcq nom du fichier pas important et pas beau } formData.set('lang','de'); // now post a new XHR request if (tests.formdata) { var xhr = new XMLHttpRequest(); xhr.open('POST', '/ajax/get_keywords_from_brief.php'); xhr.onload = function() { progress.value = progress.innerHTML = 100; }; xhr.onloadend = function() { JSONreponse= xhr.responseText.trim(); if(JSONreponse=="ERR"){ spinnerStopCancellable(); $('#progress_external_recommendation_file').hide(); document.getElementById('file_external_recommendation').files = null; document.getElementById('file_external_recommendation_lbl').innerHTML = 'Choose file from your computer'; getAlertDanger("XXXXXAn error has occured, please try again with another file"); }else if(JSONreponse=="ERR_NOT_CONNECTED"){ //jQuery('#infoBoxListePage_connect').show(); TipNotConnected(); }else{ $('#fichiercharge').remove(); $('#chargementde').remove(); $('progress').hide(); spinnerStop(); var parsedRes = JSON.parse(JSONreponse); var div_error = document.getElementById('external_brief_errors'); if ( parsedRes.error !== undefined ) { var txt_error = "Error : "; if ( parsedRes.error == "brief_empty" ) { txt_error += "Your brief is empty"; } else if ( parsedRes.error == "brief_too_long" ) { txt_error += "Your brief is too long, it must be 1000 characters long maximum"; } div_error.innerHTML = txt_error; div_error.style.display = 'block'; spinnerStop(); } else { div_error.innerHTML = ''; div_error.style.display = 'none'; var responseJSON = parsedRes; var response = responseJSON; var url = "/liste_resultats.php?"; var params = []; var tab_mots = []; for( var valou of response ) { params.push("mot[]=" + encodeURI(valou + "@@@@" + valou + "@@@@" + valou)); tab_mots.push(valou); } if ( params.length == 0 ) { div_error.innerHTML = 'No results found, please try again later.'; div_error.style.display = 'block'; spinnerStop(); return; } url += params.join("&"); xajax_check_multiple_words(tab_mots.join(' '), [], false, true, false, ''); //window.location.href = url; } } }; if (tests.progress) { $('progress').show(); $('#progress_external_recommendation_file').show(); spinnerStart(); xhr.upload.onprogress = function (event) { if (event.lengthComputable) { var complete = (event.loaded / event.total * 100 | 0); if(complete!=100){ $('#recogdiv').each(function(){$(this).remove();}); } /** SG 22/10/2021 : PR PROGRESS BAR EXTERNAL_RECOMMENDATION **/ if($('#progress_external_recommendation_file').length){ $('#progress_external_recommendation_file').width((event.loaded/event.total*100)+'%'); } progress.value = progress.innerHTML = complete; } } } xhr.send(formData); } } //--- //- afficherPanneauEntree //--- afficherPanneauEntree = function(){ var zeObj = $('#header-search-query'); if(zeObj.val()!=""){ $('#boiteAdviceRico').show(500); } } //--- //- jelancenoresult //--- jelancenoresult = function(){ in_search=false; $('#msgdbg').text($("#header-search-query").attr('value')); spinnerStart(); //xajax_check_multiple_words($("#header-search-query").attr('value'), xajax.getFormValues('search_form')); }; var mytimeoutrb; var randomPercent = 0 randomBar = function( ){ randomPercent = randomPercent + 5 if(randomPercent > 100) { randomPercent = 0 } progress = document.getElementById('uploadprogress'); progress.value = progress.innerHTML = randomPercent; mytimeoutrb = setTimeout( function(){randomBar( );} , 300); } todoOnKeyDown = function(zeObj,e){ $carousel_gallery_home.flickity('pausePlayer'); /** le moteur suggest est désactivé quand on tape une touche, cela empeche le masque "Entrée" de s'afficher, et lance le timeout de 3 secondes pour l'ouvrir **/ spinnerStop(); clearTimeout(timeoutAfficherPanneauEntree); in_search=true; timeoutAfficherPanneauEntree = setTimeout(function(){afficherPanneauEntree();},3000); //var kc=e.keyCode; var kc = e.key || e.code; if(kc=="Enter" || kc==13 || kc==37 || kc==38 || kc==39 || kc==40 || zeObj.value=='' || zeObj.value.indexOf('?+')!=-1){ spinnerStop(); } if($('#btn_external_recommendation').length > 0){ /** SG 21/20/2021 : POUR CACHER BOUTON external_recommendation QD QQUE CHOSE DE TAPER **/ if((zeObj.value).length>0){ /////16/04/2024 Eric / on ne le retire plus. : document.getElementById('btn_external_recommendation').style.display = 'none'; }else{ document.getElementById('btn_external_recommendation').style.display = 'flex'; } } if(( kc==13 || kc=='Enter') && zeObj.value!='' ){ var r = $(".text-tags .text-label").map( function(){return $(this).text();}).get().join(' '); if(r!=''){ var phrase=r + ' ' + zeObj.value; }else{ var phrase=zeObj.value; } $.ajax({ type: "POST", url: "/ajax/check_is_prompt.php", data: { phrase: phrase, langue: 'de' } }).done(function(reponse) { if (reponse === "OK") { /**vider le formulaire de recherche**/ empty_search_form(); /**appeler la fonction de recommandation par brief**/ searchExternalRecommendationFromBrief(phrase); } else { //bouton entrée tappé fct_menuzonehidden(); spinnerStart(); clearTimeout('jelancelenoresultdansxsecondes'); xajax_check_multiple_words(phrase, xajax.getFormValues('search_form')); } }); }else if(( kc==13 || kc=='Enter') && zeObj.value==''){ fct_menuzonehidden(); } } todoOnBlur = function(zeObj,e){ var v = zeObj.value; $carousel_gallery_home.flickity('pausePlayer'); spinnerStop(); clearTimeout(timeoutAfficherPanneauEntree); in_search=true; timeoutAfficherPanneauEntree = setTimeout(function(){afficherPanneauEntree();},3000); spinnerStop(); /** SG 24/10/2023 : POUR CACHER BOUTON external_recommendation QD QQUE CHOSE DE TAPER **/ if($('#btn_external_recommendation').length > 0){ if((zeObj.value).length>0){ /////16/04/2024 Eric / on ne le retire plus. : document.getElementById('btn_external_recommendation').style.display = 'none'; }else{ document.getElementById('btn_external_recommendation').style.display = 'flex'; } } if(v!=''){ fct_menuzonehidden(); spinnerStart(); clearTimeout('jelancelenoresultdansxsecondes'); zeObj.value = ''; var r = $(".text-tags .text-label").map( function(){return $(this).text();}).get().join(' '); var phrase = ''; if ( r!='' ) { phrase = r + ' ' + v; } else { phrase = v; } $.ajax({ type: "POST", url: "/ajax/check_is_prompt.php", data: { phrase: phrase, langue: 'de' } }).done(function(reponse) { if (reponse === "OK") { /**vider le formulaire de recherche**/ empty_search_form(); /**appeler la fonction de recommandation par brief**/ searchExternalRecommendationFromBrief(phrase); } else { //bouton entrée tappé fct_menuzonehidden(); spinnerStart(); clearTimeout('jelancelenoresultdansxsecondes'); xajax_check_multiple_words(phrase, xajax.getFormValues('search_form')); ////////show_bpm_key_zone("search"); } }); } else { //fct_menuzonehidden(); //remettre cette ligne si problème sur le onblur //SG 03/11/2023 : afin que la cartouche ne se ferme plus au onblur de l'input et que le bouton ai search se cache quand des mots sont présents dans l'input var r = $(".text-tags .text-label").map( function(){return $(this).text();}).get().join(' '); if ( r!="" ) { /////16/04/2024 Eric / on ne le retire plus. : $("#btn_external_recommendation").hide(); } else { if (document.getElementsByClassName('recogbutton').length == 0) { fct_menuzonehidden(); } } } } //Tooltip sur liste track search v4 pour les recommandations tooltip_menu_media = function(button,id_media,content){ //CONTENT:: id="tooltiprecommandation_80081" const $tooltip = $("#"+content+"_" + id_media); if ($tooltip.length === 0) { console.error("Tooltip element not found:", "#" + content + "_" + id_media); return; } jcAlertTT($tooltip.html(), {boxWidth: 'calc(600px + 10%)',theme: 'cez-tooltiprecommandation', draggable: true, backgroundDismiss: false} ); $(document).on("mousedown", function (e) { const modalBackdrop = $(".jconfirm-cez-tooltiprecommandation .jconfirm-cell"); // Cible uniquement le backdrop de la modale if (modalBackdrop.is(e.target)) { // Vérifie que le clic est strictement sur le backdrop $tooltip.find('.Ttr_timingdebut').val(''); $tooltip.find('.Ttr_timingfin').val(''); fctclearRegions(); } }); //on charge pour ce contenu le code pour la region if(content === "tooltiprecommandation"){ from_last_click ="recommandationedit"; if (!myPlaylist || typeof myPlaylist.playlist !== 'object') { //console.error("myPlaylist.playlist n'est pas un objet valide."); return; } //console.log("",myPlaylist.playlist); //! Cas ajaxify surtout, où le titre du player ne fait pas parti de la liste de lecture de la page nouvellement affichée // Vérifier si l'id_media est présent dans la playlist const idExistsInPlaylist = myPlaylist.playlist.some( item => String(item.id_media) === id_media ); if (!idExistsInPlaylist) { // Récupérer les IDs dans l'attribut onclick du bouton Tl_play let $parentTr = $(button).closest('tr'); let $parentUl = $parentTr.find('td:first ul.boxcontroleplayer'); let id_mediaAttr = $parentUl.attr('id_media'); let positionAttr = $parentUl.attr('position'); let onclickAttr = $parentUl.find("button.Tl_play").attr("onclick"); console.log(id_mediaAttr+" pos"+positionAttr); // Extraire les IDs avec une expression régulière let match = onclickAttr.match(/PlayPauseUnTitreButton\('([^']+)'/); if (match && match[1]) { let idsList = match[1]; xajax_load_player_playlist(idsList,0,positionAttr,from_last_click,"oui"); } }else{ //! Si le titre existe dans la playlist, c'est que la page a été rechargé. Ici 2 problematiques, soit on a cliqué sur un bouton de lecture de la liste de titre et on a prechargé une playlist contenant les alernates, ou bien c'est une version playlist allegée //--playlist avec les alernates if (String(id_media).startsWith("0")) { id_media_alt = String(id_media).slice(1); // Supprime le premier caractère pos = $('#boxcontrol_'+id_media_alt).attr('curposition'); //--sinon c'est la playlist allegée }else{ const playlistValues = Object.values(myPlaylist.playlist); // Rechercher l'index const index = myPlaylist.playlist.findIndex( item => String(item.id_media) === id_media ); //console.log("Index trouvé :", index, "Données :", playlistValues); if (index !== -1) { const currentItem = playlistValues[index]; pos = index; } } window.setCurrentSongLOAD(pos); } setTimeout(() => { let dureetrack = $("#time-total").html(); let [minutesDT, secondsDT] = dureetrack.split(':').map(Number); let newseconds = (minutesDT * 60) + secondsDT; window.createRegion('0', newseconds, 'false', 'false', '', 'recommandation_' + id_media); jQuery('.wavesurfer-handle-start').css('width','4px').css('background-color','#222222'); jQuery('.wavesurfer-handle-end').css('width','4px').css('background-color','#222222'); }, 150); $(document).on("click", ".Ttr_validate", function (e) { let timingdebut = $tooltip.find('.Ttr_timingdebut').val(); let timingfin = $tooltip.find('.Ttr_timingfin').val(); //console.log(timingdebut+" "+timingfin+" Suivant"); //launch_recommendation('https://stream.cezamemusic.com/albums/CEZ4511/mp3/128/30_CEZ4511.mp3','80081');" }); $(document).on("click", ".Ttr_cancel", function (e) { $tooltip.find('.Ttr_timingdebut').val(''); $tooltip.find('.Ttr_timingfin').val(''); $('.jconfirm-cez-tooltiprecommandation .jconfirm-closeIcon').trigger("click"); fctclearRegions(); }); } } launch_recommendation = function(localurl,last_item_played, debut=null, fin=null){ let logged_in = false; jQuery.ajax({url: "/ajax/check_conn.php", type: "GET", async: false, success: function(JSONreponseFromAjax){ logged_in = JSONreponseFromAjax; }} ); var cookiepubai = document.cookie.match('(^|;) ?no_pub_ai=([^;]*)(;|$)'); var test_pubai = false; if ( cookiepubai !== null ) { test_pubai = cookiepubai[2]; } //SG 14/11/2023 : si pas connecté, on affiche la popup de pub pour les fonctionnalités complémentaires de l'IA // if ( logged_in != "OK" && !test_pubai ) { ///pour l'instant on met ça de côté ... TipNotConnectedPubAi(false); // } $('progress').hide(); spinnerStart(); /**on supprime le div de recog, vu que l'on va en charger un nouveau**/ jQuery('#recogdiv').remove(); if ( !$('body').hasClass('mobile') ) { randomBar( ); } if (debut !== null && fin !== null && Number.isFinite(debut) && Number.isFinite(fin)) { paramjson = {localurl: localurl, id_media: last_item_played,lang:'de', debut: debut, fin: fin}; }else{ paramjson = {localurl: localurl, id_media: last_item_played,lang:'de'}; } jQuery.ajax({url: "/recog/upload.php", type: "POST", data : paramjson, success: function(JSONreponseFromAjax){ if(JSONreponseFromAjax=="ERR"){ $('progress').hide(); spinnerStop(); }else if(JSONreponseFromAjax=="ERR_NOT_CONNECTED"){ TipNotConnected(); $('progress').hide(); spinnerStop(); }else if(JSONreponseFromAjax.match(/^ERR_/) ){ $('progress').hide(); spinnerStop(); clearTimeout(mytimeoutrb); }else { clearTimeout(mytimeoutrb); if ( !$('body').hasClass('mobile') ) { progress = document.getElementById('uploadprogress'); progress.value = progress.innerHTML = 0; } jQuery('progress').hide(); spinnerStop(); reponses = JSON.parse(JSONreponseFromAjax); reponsesMots = reponses.mots; JSONreponse = JSONreponseFromAjax; suggestiontitres(last_item_played,'equal'); } } }); } // Fonction pour obtenir le début et la fin d'une région spécifique function getRegionTiming(idMedia) { // Supposons que votre instance WaveSurfer est dans la variable 'wavesurfer' const regionId = 'recommandation_' + idMedia; const regionKey = hasRegionStartingWith(); let region = null; //ne jamais clear les (climax[0-9]) //if(regionKey.some(item => item.startsWith('climax'))){ if(regionKey){ regionKey.forEach(key => { if(key==regionId){ region=myPlaylist.regions.list[key]; } }); } if (region!=null) { return { start: region.start, // Début en secondes end: region.end // Fin en secondes }; } return { start: null, // Début en secondes end: null // Fin en secondes }; } //--- //- changeScrollHeight //--- changeScrollHeight = function() { var h = parseInt(window.prompt('Please type new scroll height (number in pixels):', jQuery.Autocompleter.defaults.scrollHeight)); if(h > 0) { $("#suggest1").setOptions({ scrollHeight: h }); } } //--- //- focus_header_search_query //--- focus_header_search_query = function(){ //$("#header-search-query").trigger("activate.autocomplete"); $("#header-search-query").click(); } //--- //- RemoveAccents //--- RemoveAccents = function(strAccents) { var strAccents = strAccents.split(''); var strAccentsOut = new Array(); var strAccentsLen = strAccents.length; var accents = 'ÀÁÂÃÄÅàáâãäåÒÓÔÕÕÖØòóôõöøÈÉÊËèéêëðÇçÐÌÍÎÏìíîïÙÚÛÜùúûüÑñÿý'; var accentsOut = "AAAAAAaaaaaaOOOOOOOooooooEEEEeeeeeCcDIIIIiiiiUUUUuuuuNnSsYyyZz"; for (var y = 0; y < strAccentsLen; y++) { if (accents.indexOf(strAccents[y]) != -1) { strAccentsOut[y] = accentsOut.substr(accents.indexOf(strAccents[y]), 1); } else strAccentsOut[y] = strAccents[y]; } strAccentsOut = strAccentsOut.join(''); //return strAccentsOut.replace(/ +/,"-"); strAccentsOut=strAccentsOut.replace(/'/g,"-").replace(/&+/g," ").replace(/ +/g,"-").replace(/\-+/,'-'); return strAccentsOut; } //--- //- addAlbumAndLaunch //--- addAlbumAndLaunch = function(id_album,e,f){ e.after(""); f.submit(); } //--- //- launchSearch //--- launchSearch = function(){ jQuery('.loupe').click(); } /**tout ce qui se rapoporte au filtrage par bpm et key**/ load_bpm_key_slider = function(){ jQuery('#slider').slider({ range: true, min: 10, max: 300, step: 1, values: [ 10, 300 ], slide: function( event, ui ) { jQuery('.slider-min').html(ui.values[ 0 ]); jQuery('.slider-max').html(ui.values[ 1 ]); }, change: function( event, ui ) { var min = ui.values[ 0 ]; var max = ui.values[ 1 ]; jQuery('#customFilterBpm').val(''); jQuery.ajax({ url: '/ajax/ajax_search_filters.php?minbpm='+min+'&maxbpm='+max} ).done(function(){ var only_word_search = jQuery('#search_form').serialize().replace('search_external_recommendation_youtube=&search_external_recommendation_brief=', ''); const url_params = new URLSearchParams(window.location.search); const id_media_str = url_params.get('id_media_str'); var tmp_url = ""; if ( id_media_str !== null ) { tmp_url = '/liste_resultats.php?id_media_str='+id_media_str+'&randkeybpm='+Math.random().toString(36).substring(7); }else if(only_word_search!=''){ tmp_url = '/liste_resultats.php?'+jQuery('#search_form').serialize()+'&randkeybpm='+Math.random().toString(36).substring(7); } goLaunchAjaxify(tmp_url,'#searchlink','search_' + Math.random().toString(36).substring(7)); }); } }); } -->