Active
Project:
Media Mover
Version:
5.x-0.3-6
Component:
Code
Priority:
Normal
Category:
Feature request
Assigned:
Unassigned
Reporter:
Created:
25 Mar 2008 at 20:28 UTC
Updated:
2 Jul 2008 at 18:58 UTC
Jump to comment: Most recent file
Hi Arthur,
I integrated the code to move video to blip.tv (from Media Actions) to Media Mover. I am submitting a new submodule, mm_bliptv, and a patch to mm_content to save data to a cck field (this is really a patch; I think you'll want to integrate this with a more general scheme for saving data to cck fields).
I hope this will be useful.
Patrick
| Comment | File | Size | Author |
|---|---|---|---|
| #24 | create_content.jpg | 69.3 KB | latest1999 |
| #22 | create_embed.jpg | 45.59 KB | latest1999 |
| mm_bliptv.tar_.gz | 2.92 KB | pfournier | |
| mm.content.module.patch | 3.78 KB | pfournier |
Comments
Comment #1
arthurf commentedHey Patrick-
1) Totally awesome that you're working on this. I've been asked about this a few times about blip and it's great to know the support is there!
2) I think your patch (while workable) illustrates the poverty of the solution that I put in place :) I think I need to make a hook system that allows you to register data and where it needs to be saved and let the node save module take care of it. I'll commit it for now, but I'd like to work on making a more sustainable solution for the 1.0 release
3) Do you want to just maintain the blip module out side of the core of media mover? Not that it isn't worthy, but it might be easier to deal with issue queues etc. I'm happy to pull it in, but it might be more workable in the long run.
thanks again, I'm really excited to see this.
Comment #2
mlncn commentedSubscribing...
Unrelated note: for LivingConversations.com we've implemented a bit of a hack in the theme layer that gets the information from Blip-hosted videos necessary to play videos through the Blip.TV provided player (which offers very flexible branding) ... we will be following all things Blip and trying to contribute.
benjamin, Agaric Design Collective
Comment #3
pfournier commentedOk, no problem.
I created a new module, MM BlipTV (http://drupal.org/project/mm_bliptv) to hold and maintain this code.
Comment #4
arthurf commentedAwesome! I'll get to work this weekend on creating the hooks in media_mover_api so we can straighten out the data issues
Comment #5
alex ua commentedHoly Mackerel! This is AWESOME!
Arthur - maybe it would be a good idea to create a non-provider-specific plugin/stand alone module for media mover, so that YouTube could get added to the mix if the SoC project gets picked up (which it is almost certainly going to).
Patrick- I was procrastinating like crazy on trying to make something just like this. I owe you a beer or 10!
Comment #6
pfournier commentednonsie asked me to add support for YouTube to Media Actions. I think she may work on this over the week-end.
To stop duplicating code all over, I am thinking about extracting bliptv code (and eventually YouTube and other providers) to some kind of API module that would be used by Media Mover and Media Action (and other modules). I need to think about this more thoroughly, though.
Comment #7
aaron commentedsubscribing. great work!
Comment #8
arthurf commented+ 1 for having an abstracted api module. Definitely think that will help in the long run!
Comment #9
dipen chaudhary commented@pfournier
I have put up a soc application on integrating new Youtube API with drupal and providing profile which can turn drupal into a video portal, I didn't know much of media_mover untill Alex UA stumbled on my application and adviced me to contact you .. My application is located here http://groups.drupal.org/node/10295 ... It will be great if you can find some time and review it and tell me how it can be conceptually more robust and flexible .. I am playing with media_mover till then and Planning to update my application based on my findings although today is the last date ..
Comment #10
arthurf commentedDipen-
You might also want to talk with Roger from the Asset module- he's done quite a bit of work on this previous to the API. I'd love to see some level of support for YouTube in Media Mover- storage is an obvious place to start. If you're interested in that at all, please let me know.
Comment #11
dipen chaudhary commented@arthurf
Thanks for your inputs, Right now I am thinking of the best possible integration scheme of drupal with new Youtube API so that we can get a out of the box video portal platform.. I am thinking if mine should be a totally new module or I can use some of the existing modules to achieve my task .. If you got a chance to read my application I was considering only emfields out of the existing modules coz of my ignorance of other modules, that too for displaying videos (which doesn't need authentication) .. Do you have ideas as to how media mover can help this project achieve its task as it takes care of storage and I saw it interacting with S3 of amazon as well ..
My understanding of media_mover is on its 4 pillars harvest, process, storage, Complete
Harvest: For my project, harvesting is usually uploading file from your own computer, Yes I can use getting it from e mail attachment but I see it as a rare case and kind of fancy support which is good to have but not a show stopper, From ftp again is a cool way and can be useful if administrator wants to put his collection of videos in a batch mode or something ..
Process: flv conversion is done at youtube end and I think we should be happy about it .. Adding metadata is again cool but then if conversion is happening at youtube, then I dont see much flexibility offering in this regard ..
Storage: this is rather interesting as media_mover already have support for S3 which is a cool webservice for storing data, We can do same for youtube and makes perfect sense to do it ..
Complete: Once everything is complete insert appropriate links, like the link to newly uploaded video or any updates to our local drupal installation ..
I would want to hear more of your thoughts over my approach, writing this felt good :) .. Can you please reply at my application node so that we dont spoil it for pfournier as the topic of discussion is something else and we are spamming it .. Also your reply at my application will make more people review it ..
My application is located here : http://groups.drupal.org/node/10295
And yes I will try to get roger talking as well .. I need all your inputs so that I can update application .. Needless to say that I am gonna work on it even If it doesn't get accepted as I have already invested my thoughts in it ..
Thanks again ..
Comment #12
dipen chaudhary commentedI am copying my reply over my application node, and will delete it from here once you have read it :)
Sorry pfournier for all the spamming , I would be glad if you gave some reaction as well ...
thanks
Comment #13
alex ua commentedDipen-
I actually think there are two harvests here, though you might not always need both. First, you could upload to the site via a field. Second, you could harvest videos that are already on youtube (check out what Arthur does with the XPSF playlist and MM here for an example of pulling videos using a term: http://www.24b6.net/?p=223 ). Check out the latest version of asset to see how Roger uses emfield and youtube's feeds to pull vidoes from a feed, it's pretty cool and also may hold some clues on how to do this. So, in the case that you are uploading a file and want to automatically pull back to your site I'd see a two-step harvest process, not sure if that can be automated, but if it can it would be awesome. Also, these sites need time to process your files, assuming you're using their conversion services, so you'll need to pull the file back only after it's ready. Patrick can give you some insights on how this works for the mm_bliptv module.
Do you know if YouTube is going to allow for multiple formats? If so you'll also need to figure out a way to allow people to harvest a specific, or a few specific, file formats.
Comment #14
dipen chaudhary commentedhi Alex
Straight forward things first :)
1> This is what is given on youtube in terms of formats, there is not a exhaustive list but then I think its something I will need to test, but the video cant be more than 100Mb
2> I think the process can be automated via cron or batch (effectively same), As for video being showed and indexed on youtube it takes time and can take upto one day .. We get a unique Id for each uploaded video which can be accessed through user's video feed and <app:control> tag can be read to see what is the status of video ... Quoting from dev docs
Whenever a user uploads a video we mark that event as something to be processed via cron, When Its available we pull it from youtube
3> Harvest as a two way process .. I can use a paper and pen to understand this and put my understanding forward .. I will scan my understanding in some hours .. But in a nutshell as I see it
http://www.24b6.net/?p=223 -- this will be applicable in R of CRUD (btw its very cool and is it wordpress :P ? ) As I understand harvesting, its a way to get media. When a user is uploading a video, I think he will either do it from a field (his own computer) or a ftp (if he has some repo of videos) so as far as CU (create, update) are concerned how can youtube be a source of harvesting (or you meant for displaying) ? Youtube will be a source of harvesting, when Displaying of videos happen (either user's previously updated videos or via feed like the example you gave), More on this when I scribble some workflows on paper ...
Again thanks a lot :)
Btw why do you all hate to post on my application page :( ? I appreciate all your inputs and I am enjoying it a lot :)
Thanks again ..
Comment #15
alex ua commentedAight- lets move this onto the SoC thread, where it belongs!
Comment #16
latest1999 commentedHi,
First of all, this is a fantastic project... thank you.
Once the file is uploaded to Blip, will you be able to embed and view from within Drupal rather than linking directly to Blip?
Comment #17
pfournier commentedYes, with CCK + emfield.
Comment #18
alex ua commentedI'm having some trouble figuring out how to pull the data back from Blip. Can you describe the steps you need to take to harvest from there?
Comment #19
bflora commentedyes, how can this be done?
Comment #20
latest1999 commentedI finally got the video to be pushed to Blip, but don't understand how to get it to show the blip url in the emfield...
I see that the Media Mover field shows the proper url to blip, but not sure how to get the data to populate into the emfield.
thanks
Comment #21
pfournier commentedSorry for the long response time, I have been quite busy lately...
I am not sure to understand what is the problem with storing blip data...
See the last lines of mm_bliptv.module (from line 235) to see how I extract dat from blip response. Basically, after uploading a file, blip sends an XML answer that is parsed into an array; I extract the file url and file id from this array, and put it in the $file variable, which contains information needed by media mover to go on.
To save the data in a emfield, just create a config with Save data to a CCK field in the storage config, and select the appropriate field. Do not forget to enable bliptv support in the emfield configuration page.
Comment #22
latest1999 commentedI guess the part I am confused about is the Save data to a CCK field part. I'm a newby, and a bit confused how this is done.
I attached a couple screenshots to show how I currently have it setup.
Any help would be greatly appreciated.
Thanks
Comment #23
latest1999 commentedHere is another screenshot of when content is created. Notice that in the Media Mover files section that the blip URL is created.
So the question is how to get this value to be populated in the embed field.
Thanks!
Comment #24
latest1999 commentedSorry, here is the screenshot
Comment #25
mlncn commentedHello letest1999, all.
mm_bliptv currently sends the file to blip.tv twice, once on storage and again on the fourth and final step. The second time around seems unnecessary and I commented out any action in the module, and think that would be the place to work on presentation. Currently I have hacked presentation into the theme layer, as described here: http://drupal.org/node/256773
I also grab the thumbnail from Blip.tv -- again in a horribly hacked-into-the-theme way.
If people could post their presentation needs on that thread maybe I can help provide a general, module-based solution.
benjamin, Agaric Design Collective
Comment #26
Doktor.Science commentedHas there been any attempt to upload directly to Blip.TV instead of using Media Mover?
Comment #27
arthurf commented@pfournier - I'm finally back and in development mode again. I've done some serious cleanup on some of the API issues already and will be rapidly honing in on this issue. Is the patch here still valid for what you need for Blip, or are there other adjustments that you might need?
Comment #28
pfournier commentedHi Arthur,
I have to check is the patch still works with the current code base.
I am pretty busy right now, but I am adding this to my todo list.
Patrick