Tiny Deathstars of Foulness

Podcast Producer works by publishing video to an RSS feed known as the Podcast Library. There are feeds for workflows, Users, Keywords, Days (the podcasts are stored in day folders within Podcast Producer) and custom feeds. When you’re first getting started with and testing Podcast Producer you are likely to create a lot of test podcasts and feeds. Content is stored in the day folders in the Podcast Producer shared file system, and can be removed based on those days. To see the root of the shared file system (and therefore find the Content folder), you can use the following command (where VOLUMENAME is the name of the volume hosting:
serveradmin settings pcast:shared_filesystem
Within the Shared folder you will see Content and within Content you will see a directory for each day that an episode was created. Within the day folders you will see a long string (which is the generated ID of the episode) followed by a prb file extension. I call the prb a podcast resource bundle, although I’m not sure that’s official. Inside that bundle are all of the assets for the episode that the bundle represents, including property lists used to associate the corresponding podcast episode with various sorts of metadata and membership. Removing the bundle for each episode alone does not remove it from the list in a feed. Therefore, to avoid broken links for episodes, you will then need to run
pcastconfig –sync_library
But if you leave the feed in place you can still see the feed itself, and even if you remove a workflow you will still see its corresponding feed listed in the Workflow Feeds, which can be pretty confusing. Feeds are defined in a pwf bundle, which I call a Podcast Workflow bundle. These can be found in the Server directory of your shared file system, within the Workflows directory. Here, you will see a number of long strings (the trend continues as these are the generated ID of the workflows) followed by the pwf extension indicating they are bundles. These will correspond to the output of the following serveradmin command to show you which workflow is associated with which ID.
serveradmin settings pcast:workflows:_array_id:*:name
Or for a more robust albeit less human readable output, you can look at using the podcast command (a front end for many common Podcast Producer tasks) along with the –listfeeds option:
podcast –listfeeds
The feeds should not be removed directly from the file system. Instead, remove them using the –removefeed option, available with the podcast command. The following would remove a feed with an ID of AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE:
podcast –removefeed –feed_uuid AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE
Still working on a way to get all assets in a feed/workflow to tar or rm. I’m trying to use a curl against the atom feed at feed://SERVERNAME:8171/podcastproducer/atom_feeds/$FEEDGUID, where the $FEEDGUID is the output from –listfeeds.

August 25th, 2010

Posted In: Mac OS X Server

  • Rob

    Wonderful information. Very easy to read and follow. The only question I still have is how to remove the User feeds. One of the feeds published automatically, similar to workflow feeds. I haven’t been able to find any other documentation on it.

    • Not sure how to remove user feeds. Once you remove the episodes then they should be empty but I can understand not wanting some users to even appear in the list. I’ll see if I can figure it out and maybe do another post.

  • Pingback: Scripting Video Changes in Lion: avconvert, pcastaction & podcast |

  • Rob: when you remove a user’s feed with –removefeed, it gets generated again automatically. What happens if you use –disablefeed? I suspect that it won’t get enabled again automatically.