Nate Aune Managing Multimedia Content And Podcasts With Plone - Presentation Transcript
Multimedia and Podcasting
with Plone
Plone Conference 2007
Naples, Italy
Nate Aune
www.jazkarta.com
1
What is podcasting?
• Simplified distribution
• audio/video files as enclosures in an RSS/
Atom feed
• Subscribe once and forget about it
• On-demand
• Users can listen/watch your multimedia
content on their device of choice
• Don’t need to visit your website
2
What is Plone’s answer?
• Plone out-of-the-box
• File content type (no metadata, no play)
• Syndication is only RSS 1.0 (need RSS 2.0)
• PloneMultimedia suite of add-on products
• ATAudio, ATVideo, ATPhoto
• qRSS2Syndication for podcasting
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
12
3
What is Plone4Artists?
• Grassroots project to build an out-of-the-box
portal solution for artist communities
• Built on top of the core Plone product
• Leverages Zope 3 component architecture
• Doesn’t introduce new content types
• Easy to extend to support new media types
• Easy to install and pre-configured
4
Features
• Drag-n-drop addition of content (WebDAV)
• Extraction of audio/video metadata (ID3)
• Playback of audio and video in browser (Flash player)
• Podcasting and vodcasting (RSS 2.0)
• Calendaring (import/export of iCal)
• Assigning Creative Commons licenses
• Improved uploading using Flash, Java applet, Tramline
• Community features: tagging, rating, commenting
5
Plone4Artists
Core Components
• Plone4ArtistsSite
• Plone4ArtistsAudio (upload mp3 or ogg)
• Plone4ArtistsVideo (upload video or embed)
• Plone4ArtistsCalendar (month & listing view)
SVN at http://plone4artists.org/svn/projects
6
Plone4Artists
Additional components
• Plone4ArtistsNewsletter (by Malthe Borch)
• PloneFlashUpload (bulk uploads in browser)
• ContentLicensing (assign licenses to content)
Not released
• ContentRating (rate any piece of content)
• ContentTagging (tag any piece of content)
• Plone4ArtistsPodcast (embed audio in blog)
• Plone4ArtistsRevverVideo (by Alec Mitchell)
• Plone4ArtistsSubtyper (subtype any content)
7
A natural evolution
• CMFAudio (CMF-based)
• ATAudio (Archetypes-based)
• Plone4ArtistsAudio (Zope 3)
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
19
8
Why Zope 3?
• Usability - user uploads File and system
figures out how to handle it. Easier with Z3
• Pluggability - easily extend to support other
formats besides MP3 and Ogg
• Reusability - abstracting the code into Zope
3 components means it is easier to reuse
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
20
9
No more new content types
Old approach New approach
• ATAudio
• ATVideo
• ATPhoto
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
54
10
No more new content types
Old approach New approach
• ATAudio
• ATVideo
• ATPhoto
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
54
11
No more new content types
Old approach New approach
• ATFile
• ATAudio • Plone4ArtistsAudio
• ATVideo • Plone4ArtistsVideo
• ATPhoto • ATImage
• Plone4ArtistsImage
• ATLink
• Plone4ArtistsLink
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
54
12
Pure Zope 3
components
with
Plone
wrappers
13
Example sites
• talk.bmc.com - blogs and podcasts
• engagemedia.org - social justice videos
• thedailyreel.com - online guide to videos
• bilive.it - online community for musicians
• phonogen.com - mp3s for artists
• plone.tv - aggregated audio/video/screencasts
14
talk.bmc.com
15
engagemedia.org
16
TheDailyReel.com
17
bilive.it
18
ID3 Metadata in iTunes
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
21
19
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
22
20
Add a normal File
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
23
21
Add new file form
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
24
22
Audio view page
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
25
23
Demo tool icons
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
26
24
Edit audio
• ID3 metadata is auto-
extracted
• Modified metadata is
written back to the file
• Cover art image field
• Genre vocabulary
• Comment field
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
27
25
Add blob file
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
28
26
Normal file listing
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
29
27
Activate audio container
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
30
28
View is now track listing
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
31
29
Add via WebDAV
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
32
30
Connect to server
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
33
31
Mounted Plone folder
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
34
32
Drag-n-drop copy to Plone
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
35
33
Track listing after upload
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
36
34
Uploading video
35
Embedding video
1. 2.
3.
36
Podcasting
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
37
37
Podcast feed
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
38
38
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
39
39
Subscribe to podcast
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
40
40
Smart Folders
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
41
41
Activate media container
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
42
42
Smart Folder as podcast
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
43
43
RSS 2.0 Syndication
• Using basesyndication (Zope 3 adaptors)
• also used to provide RSS feeds for Quills
• Support iTunes metadata
• targeted for Plone4ArtistsAudio 1.0 final
• Syndication of other media files
• Vodcasting (videos), Photocasting (photos)
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
44
44
Challenges of large files
Uploading and Storing
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
45
45
Pain points
• Uploading large files is tedious
• ZODB is currently not designed to store
large files
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
46
46
Making upload less tedious
• WebDAV/FTP
• gives you progress bar but it can be buggy
• PloneJUpload - java applet
• not all browsers have Java support
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
47
47
PloneJUpload
48
Preferred upload
solutions
• ZipFileTransport
• upload a Zip file and it’s extracted on the
server
• PloneFlashUpload
• upload multiple files using Flash widget in
browser
• Tramline
• bypass Zope and use Apache
49
Buildout makes it easy
Check out the buildout, bootstrap and run buildout
$ svn co http://plone4artists.org/svn/projects/
p4a.buildout
$ cd p4a.buildout
$ python bootstrap.py
$ bin/buildout -v (go get a coffee)
Start the instance
$ bin/instance fg
52
Community feedback
• Commenting
• easycommenting, zc.comment
• Ratings
• lovely.rating, contentratings, RatingsEngine
• Tagging
• lovely.tag, tagger, topicwidget
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
57
53
Demo
plone.tv
54
What’s next
plone4artists.org/products/plone4artistssite/roadmap
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
53
55
More info
• Product pages:
• plone4artists.org/products
• SVN repository:
• plone4artists.org/svn/projects
• Mailing list:
• groups.google.com/group/p4a-user
• IRC:
• #plone4artists on irc.freenode.net
56
Idea: Plone4ArtistsLink
• Existing new content types
• ATGoogleVideo
• ATOdeoAudio
• ATYouTubeVideo?
• Activate remote media on an ATLink
• Identifies remote service (Google, Odeo,YouTube)
• Applies an appropriate view (Flash player)
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
55
58
Why store media on FS?
• Avoid ZODB bloat
• Expose to 3rd party streaming software
• Easier to backup or move to another system
• Transcode video files
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
50
59
Alternative storage layers
• FileField(‘mediafile’, storage=...)
• ExternalStorage
• used on plone.org’s PloneSoftwareCenter
• FileSystemStorage
• used by Andreas Jung for large media project
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
51
60
Alternative file field
• BlobFile
• dependent on blob
• ATTramline
• dependent on Tramline
• AttachmentField
• new version has FlexStorage
• PLIP #154 - Large File Handling
• http://plone.org/products/plone/roadmap/154
Multimedia and Podcasting with Plone (10/27/06) www.jazkarta.com 866.864.4918
52
61
Preferred solutions
• ZODB with blob support
• Now working on Zope 2.9 / 2.10 / 2.11
• Use with ATBlobField from Enfold Systems
• Amazon S3
• scalable storage solution
• pay for what you use
62
With the rise of podcasting and sharing multimedia more
With the rise of podcasting and sharing multimedia content online, there is a growing need for tools that help content producers publish multimedia to their website. We will discuss the Plone4Artists suite of products which streamline the process of publishing audio, videos and images on your Plone site. After installing the Plone4Artists add-ons, Plone will be able to extract the metadata from uploaded audio, video and image files, make this metadata editable and searchable and playback the audio/video files in the browser. Using RSS syndication, you can also make collections of this multimedia content available to your users as a podcast/vodcast/photocast feed. We will also discuss some of the challenges of handling large files in Plone, including tools to improve the uploading process and how to store large files outside of the ZODB and instead on the file system. less
0 comments
Post a comment