web-dev-qa-db-fra.com

Comment créer le fichier XML pour le podcasting?

Je m'intéresse au podcasting. Mon seul souci est de savoir comment créer un fichier XML pour donner toutes les informations sur le fichier audio.

2
Daniel P Bartolo

Si vous essayez de le rendre compatible avec le format iTunes, vous avez besoin d’une espèce de RSS XML. Le site Web d’Apple en donne une description aussi précise que nécessaire: regardez ici .

Ici, je vais vous donner un modèle. Le fichier XML commence par quelque chose comme ceci:

 <?xml version="1.0" encoding="utf-8"?>
 <rss xmlns:iTunes="http://www.iTunes.com/dtds/podcast-1.0.dtd" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
 <channel>
 <atom:link href="http://PATH-TO-RSS/XML/FILE" rel="self" type="application/rss+xml" />
     <title>PODCAST TITLE</title>
     <link>http://PATH-TO-WEBPAGE</link>
     <description>DESCRIPTION OF PODCAST (SHORT)</description>
     <lastBuildDate>Mon, 27 Dec 2010 17:16:55 GMT</lastBuildDate>
     <language>en-us</language>
     <copyright>Copyright 2010 © WHOEVER</copyright>
     <iTunes:subtitle>PODCAST SUBTITLE</iTunes:subtitle>
     <iTunes:author>PODCAST AUTHOR</iTunes:author>
     <iTunes:summary>PODCAST SUMMARY (LONGER)</iTunes:summary>
     <iTunes:owner>
         <iTunes:name>PODCAST MAINTAINER</iTunes:name>
         <iTunes:email>[email protected]</iTunes:email>
     </iTunes:owner>
     <iTunes:image href="http://PODCAST-IMAGE-URL/something.jpg" />
     <iTunes:category text="Category1" />
     <iTunes:category text="Category2">
            <iTunes:category text="Subcategory" />
     </iTunes:category>

Voici un certain nombre d'éléments, qui ressemblent à ceci:

<item>
    <title>ITEM TITLE</title>
    <link>http://link.for.this.item</link>
    <iTunes:author>Item Author</iTunes:author>
    <description>Item description</description>
    <iTunes:summary>Item summary</iTunes:summary>
    <Enclosure url="http://link-to.media.file.mp3" length="filesize-in-bites" type="audio/mpeg"/>
    <guid>http://link-to-media/file.mp3</guid>
    <pubDate>Current Date (same format as above)</pubDate>
    <iTunes:duration>4:21</iTunes:duration>
    <iTunes:keywords>Keywords</iTunes:keywords>
    <category>Podcasts</category>
    <iTunes:explicit>no</iTunes:explicit>
</item>

Et le fichier se termine après tous les éléments comme ceci:

     <iTunes:explicit>no</iTunes:explicit>
 </channel>
 </rss>

Vous vous demandez peut-être comment extraire les informations dont vous avez besoin du fichier lui-même. En supposant que sa balise de métadonnées id3v2 soit en bon état, vous pouvez également utiliser la ligne de commande id3v2 pour une partie de celle-ci, par exemple, j'utilise:

songtitle="$(id3v2 --list "$file" | grep "TIT2" | sed 's%TIT2.*:\s*%%')"

pour obtenir le titre de la piste. (où $ fichier est défini sur le nom du fichier).

Pour obtenir la taille du fichier, j'utilise:

filesize=$(stat -c %s "$file")

Pour obtenir la durée, j'utilise:

fileduration=$(exiftool -S -Duration "$file" | sed 's/Duration: //' | sed 's/ (approx)//')

Pour obtenir la date actuelle dans un format approprié pour les champs de date:

currdate=$(date -u -R | sed 's/\+0000/GMT/')

2
frabjous

fichiers xml: Puis-je utiliser openoffice pour créer un tel fichier? Si oui lequel? Comme je peux enregistrer dans deux formats XML différents.

0
Daniel P Bartolo

Si tout ce que vous voulez faire, c'est mettre en place un podcast et non pas écrire votre propre logiciel d'hébergement de podcast, vous pouvez envisager un service d'hébergement du type libsyn ou créer votre propre WordPress = installation avec le plug-in PodPress ou PowerPress .

0
Darcy Casselman