
Recherche avancée
Médias (91)
-
999,999
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
The Slip - Artworks
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Texte
-
Demon seed (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
-
The four of us are dying (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
-
Corona radiata (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
-
Lights in the sky (wav version)
26 septembre 2011, par
Mis à jour : Avril 2013
Langue : English
Type : Audio
Autres articles (83)
-
Des sites réalisés avec MediaSPIP
2 mai 2011, parCette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page. -
Le plugin : Podcasts.
14 juillet 2010, parLe problème du podcasting est à nouveau un problème révélateur de la normalisation des transports de données sur Internet.
Deux formats intéressants existent : Celui développé par Apple, très axé sur l’utilisation d’iTunes dont la SPEC est ici ; Le format "Media RSS Module" qui est plus "libre" notamment soutenu par Yahoo et le logiciel Miro ;
Types de fichiers supportés dans les flux
Le format d’Apple n’autorise que les formats suivants dans ses flux : .mp3 audio/mpeg .m4a audio/x-m4a .mp4 (...) -
Organiser par catégorie
17 mai 2013, parDans MédiaSPIP, une rubrique a 2 noms : catégorie et rubrique.
Les différents documents stockés dans MédiaSPIP peuvent être rangés dans différentes catégories. On peut créer une catégorie en cliquant sur "publier une catégorie" dans le menu publier en haut à droite ( après authentification ). Une catégorie peut être rangée dans une autre catégorie aussi ce qui fait qu’on peut construire une arborescence de catégories.
Lors de la publication prochaine d’un document, la nouvelle catégorie créée sera proposée (...)
Sur d’autres sites (6981)
-
Automatic save Printscreen video
18 février 2014, par Erik Van de VenI would like to save a screenshot of a video, as thumbnail image, as soon as someone uploads a video. They told me this is only possible on Windows servers. But now I read something about http://www.ffmpeg.org/download.html. It looks like it creates the possibility to do the same on Linux, is that possible ?
And does someone have experience with this ? -
Strange problem with inotifywait, while do and ffmpeg
27 juillet 2022, par cluelessdevLinux Mint 20.3 up to date.
I'd like to convert and rename with ffmpeg some files which appear in a folder.
When not using the ffmpeg line everything works fine (note ffmpeg is commented out here)
`


#!/bin/bash
rm flist.txt
watchdir=/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/
startdate=54
starttime=32
while read -r fullpath 
do
 echo "fullpath '$fullpath'" >> flist.txt
 lenght=${#fullpath}
 echo 'lenght ' $lenght >> flist.txt 
 basedate=${fullpath:lenght-startdate:4}${fullpath:lenght-startdate+5:2}${fullpath:lenght-startdate+8:2}
 basetime=${fullpath:lenght-starttime:2}${fullpath:lenght-starttime+3:2}${fullpath:lenght-starttime+6:2} 
 echo basedate "'$basedate'" >> flist.txt
 echo basetime "'$basetime'" >> flist.txt
 newfilename="/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/test2/recordings-convert/"$basedate"-"$basetime"-doorcam".mkv
 # ffmpeg -y -i $fullpath -c:v copy -movflags +faststart $newfilename &> /dev/null
done < <(inotifywait -m -r "$watchdir" --format '%w%f' -e create -e moved_to | grep '\.dav$' --line-buffered)



This does produce the desired result without ffmeg conversion :


$cat flist.txt
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/00/00.01.33-00.01.55[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '000133'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/00/00.29.26-00.29.48[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '002926'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/00/00.33.09-00.33.32[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '003309'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/02/02.23.35-02.23.56[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '022335'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/02/02.27.19-02.27.40[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '022719'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/04/04.08.22-04.08.43[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '040822'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/06/06.50.14-06.50.40[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '065014'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/06/06.50.43-06.51.28[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '065043'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/06/06.56.56-06.58.02[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '065656'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/09/09.18.31-09.19.09[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '091831'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/09/09.47.54-09.55.00[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '094754'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/09/09.55.00-09.55.50[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '095500'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/10/10.20.23-10.20.44[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '102023'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/10/10.24.24-10.24.44[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '102424'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/11/11.00.39-11.01.34[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '110039'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/13/13.26.22-13.26.53[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '132622'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/16/16.00.09-16.01.04[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '160009'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/16/16.38.46-16.39.15[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '163846'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/16/16.56.05-16.56.30[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '165605'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/16/16.56.30-16.57.05[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '165630'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/19/19.24.56-19.25.33[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '192456'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/19/19.51.13-19.52.00[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '195113'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/19/19.52.37-19.53.10[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '195237'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/20/20.05.29-20.06.02[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '200529'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/20/20.26.44-20.27.38[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '202644'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/20/20.35.20-20.35.41[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '203520'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/20/20.38.57-20.39.17[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '203857'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/20/20.40.49-20.41.11[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '204049'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/20/20.44.27-20.44.47[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '204427'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/20/20.49.09-20.49.46[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '204909'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/20/20.51.09-20.51.58[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '205109'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/22/22.33.25-22.33.46[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '223325'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/22/22.38.48-22.39.10[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '223848'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/22/22.50.14-22.50.35[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '225014'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/23/23.04.43-23.05.03[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '230443'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/23/23.08.18-23.08.40[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '230818'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/23/23.19.51-23.20.11[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '231951'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/23/23.23.27-23.23.48[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '232327'



`
If I remove the comment and do the ffmpeg thing it fails for some files because $fullpath is wrong :


$cat flist.txt
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/00/00.01.33-00.01.55[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '000133'
fullpath 'media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/00/00.29.26-00.29.48[M][0@0][0].dav'
lenght 118
basedate '20220611'
basetime '002926'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/00/00.33.09-00.33.32[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '003309'
fullpath 'media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/02/02.23.35-02.23.56[M][0@0][0].dav'
lenght 118
basedate '20220611'
basetime '022335'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/02/02.27.19-02.27.40[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '022719'
fullpath 'media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/04/04.08.22-04.08.43[M][0@0][0].dav'
lenght 118
basedate '20220611'
basetime '040822'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/06/06.50.14-06.50.40[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '065014'
fullpath 'media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/06/06.50.43-06.51.28[M][0@0][0].dav'
lenght 118
basedate '20220611'
basetime '065043'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/06/06.56.56-06.58.02[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '065656'
fullpath 'edia/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/09/09.18.31-09.19.09[M][0@0][0].dav'
lenght 117
basedate '20220611'
basetime '091831'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/09/09.47.54-09.55.00[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '094754'
fullpath '1/dav/09/09.55.00-09.55.50[M][0@0][0].dav'
lenght 41
basedate '][0@][].'
basetime '095500'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/10/10.20.23-10.20.44[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '102023'
fullpath 'media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/10/10.24.24-10.24.44[M][0@0][0].dav'
lenght 118
basedate '20220611'
basetime '102424'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/11/11.00.39-11.01.34[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '110039'
fullpath 'edia/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/13/13.26.22-13.26.53[M][0@0][0].dav'
lenght 117
basedate '20220611'
basetime '132622'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/16/16.00.09-16.01.04[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '160009'
fullpath 'dia/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/16/16.38.46-16.39.15[M][0@0][0].dav'
lenght 116
basedate '20220611'
basetime '163846'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/16/16.56.05-16.56.30[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '165605'
fullpath 'media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/16/16.56.30-16.57.05[M][0@0][0].dav'
lenght 118
basedate '20220611'
basetime '165630'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/19/19.24.56-19.25.33[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '192456'
fullpath 'edia/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/19/19.51.13-19.52.00[M][0@0][0].dav'
lenght 117
basedate '20220611'
basetime '195113'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/19/19.52.37-19.53.10[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '195237'
fullpath 'edia/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/20/20.05.29-20.06.02[M][0@0][0].dav'
lenght 117
basedate '20220611'
basetime '200529'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/20/20.26.44-20.27.38[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '202644'
fullpath 'edia/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/20/20.35.20-20.35.41[M][0@0][0].dav'
lenght 117
basedate '20220611'
basetime '203520'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/20/20.38.57-20.39.17[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '203857'
fullpath 'media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/20/20.40.49-20.41.11[M][0@0][0].dav'
lenght 118
basedate '20220611'
basetime '204049'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/20/20.44.27-20.44.47[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '204427'
fullpath 'media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/20/20.49.09-20.49.46[M][0@0][0].dav'
lenght 118
basedate '20220611'
basetime '204909'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/20/20.51.09-20.51.58[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '205109'
fullpath 'edia/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/22/22.33.25-22.33.46[M][0@0][0].dav'
lenght 117
basedate '20220611'
basetime '223325'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/22/22.38.48-22.39.10[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '223848'
fullpath 'media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/22/22.50.14-22.50.35[M][0@0][0].dav'
lenght 118
basedate '20220611'
basetime '225014'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/23/23.04.43-23.05.03[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '230443'
fullpath 'media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/23/23.08.18-23.08.40[M][0@0][0].dav'
lenght 118
basedate '20220611'
basetime '230818'
fullpath '/media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/23/23.19.51-23.20.11[M][0@0][0].dav'
lenght 119
basedate '20220611'
basetime '231951'
fullpath 'media/mark/d1d75ed6-f3a5-433b-9090-d95191275f6c/download/camera/2022-06-11/001/dav/23/23.23.27-23.23.48[M][0@0][0].dav'
lenght 118
basedate '20220611'
basetime '232327'



So why does it fail when ffmpeg is not commented out ?


Follow-up : found this post


https://unix.stackexchange.com/questions/241535/problem-with-ffmpeg-in-bash-loop


I think this relates to my problem but I don't know how to change my code accordingly.


Edit2, I think I found the solution


ffmpeg -y -i $fullpath -c:v copy -movflags +faststart $newfilename < /dev/null &> /dev/null;



-
Node.js asynchronous video conversion slow
9 décembre 2016, par luksteiI wrote a little website/service, which can download a video from a website (currently Youtube) and converts it on the fly to an mp3 file and sends this file back as the response.
For example, you when you request http://localhost:8000/v=http ://www.youtube.com/watch?v=HhoewflkQu0, then it will download this video and response the audio layer encoded in MP3.
This all works very well, my problem is that this is very slow and I can’t figure out why.
Simplified the script behaves like this :
Download the video and write it to the stdin of ffmpeg, and the stdout goes to the response.
Video (MP4, FLV) -> FFMPEG -> MP3I used curl to figure out how fast the script is :
$ curl http://localhost:8000/v=http://www.youtube.com/watch?v=HhoewflkQu0
I get only about 5-10k.
So why is this so slow ?
- The server, from which I am downloading the video is slow.
- The conversion is slow (because of a slow CPU).
- The data transfer between node.js -> FFMPEG is slow.
I tried to download the video in a normal download manager, and i got about 320k, which is my normal download speed, so the first point isn’t the bottleneck.
To point 2 and 3, I tried to write a local file to the stdin, and I got about 600k so that isn’t it either.
So why is my script so slow, and what can I do to make it faster ?
https://gist.github.com/1304637
Thanks in advance.