Here’s a video showcasing robotics innovation and the power of a unified operating system. Check out more of what the folks at Willow Garage are doing or explore some of the features of ROS.
I recently discovered the wonders of ffmpeg, a command line based utility designed to convert media. Instead of messing around with online converters, or trying to use some “free” program that doesn’t quite do what you want — you just plug in your input and output and ffmpeg does all the work. As I’ve used Ubuntu more and more I have discovered that though people have come up with a number of good interfaces and programs, there is real power in the peculiar, off-putting syntax of the command line. Once an adjustment to accept the command line is made, things can progress smoothly. If you have any problems let me know in the comments and I will answer you and amend this guide. It should be noted that this guide is designed with Ubuntu in mind. Now, on with the brief ffmpeg guide.
Installing
- Open a terminal window (when you don’t know where to find a program, hit the Windows button (known as the super button by Ubuntu) and type the name into the box that appears).
- Type
sudo apt-get install ffmpeg.sudomeans do this as root a.k.a. administrator.apt-getis a program,installis a function of the program, andffmpegis the parameter to theinstallfunction telling it what program we want installed. Terminal will print some text, it might say that you already have it, excellent continue onwards. Else, if it gives you the option to install it, typeYand let it continue on its merry way. - Type
sudo apt-get install libavcodec-extra-53. This is an library that has additional codecs that you’ll probably want. - Now you should be all set up to start converting
ffmpeg Commands and Structure
ffmpeg has a lot of commands for manipulating media. The program is controlled through the command line. A basic command that you might enter into terminal looks like this:
ffmpeg -ss 00:00:10 -i gold.mp4 -t 00:03:33 -acodec copy -vcodec copy gold.mp4
Notice that you always start the line with the program you want to use (except when you are treating the running of the program in a certain way, such as with sudo. Next comes a series of option-argument pairs, options for the program followed by the value of that option: -option arguement. One example is the input option followed by the name of the input file -i gold.mp4. At the very end of the command is the output file name. Notice that there is no -option preceding it, it is simply the parameter entered into ffmpeg (like ffmpeg was the parameter for apt-get install). It’s not necessary to specify every option as most have default settings if nothing is specified. In ffmpeg Here’s a list of some of the options for ffmpeg:
-ss hh:mm:ssSpecify the start location. Note that this should come before-i-i xxxxx.yyyThe input file ffmpeg will base this operation on.-t hh:mm:ssSpecify the duration of the output file (relative to the start location). Note that this should come after-i.-acodec codec-vcodec codec-ar xxxSpecifies the audio sample rate. If unspecified it will use the default of the codec or the same as the input file (I'm not quite sure which). You do no good specifying a sample rate higher than that of the input, because it will yield no better quality. On the other hand, a lower sample rate will make for a smaller file (at the cost of quality).-vnDisable video recording.
The output audio codec. Most of the time ffmpeg will guess this parameter automatically based on you output file. For example if the output file is gold.mp3, then ffmpeg will automatically use libmp3lame as audio codec, no input required. The only time I've needed this option is to specify something other than what ffmpeg was automatically guessing, or to specify -acodec copy, which makes ffmpeg use the exact same audio codec as the source.
Used for specifying the video codec to use. All the usage rules of the -acodc apply to this one. Don't forget -vcodec copy if you want the output video to be the same as the input.
Converting
ffmpeg -i -ss 00:00:10 gold.mp4 -vn -t 00:03:33 gold.mp3
The above line takes the input file gold.mp4, starts ten seconds in and records for a total of three minutes and thirty-three seconds, before outputting the file as an mp3.
I am still pretty new to this. One thing I can't understand is if you enter something such as ffmpeg -i gold.mp4 gold.avi you get a resultant video that is of really low quality. Perhaps this is just due to codec limitations and/or ffmpeg's automatic guessing, I'm really not sure.
Trimming
ffmpeg can be really useful if you have a video and just want a section of that video. In that case, type:
ffmpeg -ss 00:00:10 -i gold.mp4 -t 00:03:33 -acodec copy -vcodec copy gold_trimmed.mp4
This line will take the input file gold.mp4, start ten secods in and capture a total of three minutes and thirty-three seconds, then output to gold_trimmed.mp4 using the exact same audio and video codec settings as the source. Note that the input file extension is the same as the output, and the -ss parameter comes before the -i and the -t come after the -i (I'm not sure why that order must be obeyed, but if you mix things up the results are off). Make sure that -acodec copy and -vcodec copy are specified, else you get a lower quality result (maybe just because of encoder defaults).
I have been told by a number of people that my logo is too complex, whimsical, abstract, and/or scary. I am beseeching anyone who reads this to submit their idea for a new logo. The person who provides the best new logo will be awarded food (Lunch, Dinner, Chipotle, something of that sort). I’m going to find some good third parties to look over the logos so as to make things fair.
Rules/Guidelines and Such:
- I have the right to remove inappropriate logos
- You can submit your logo to me however you like
- I would like the logo to include the letter ‘W’, but it’s not required
If you have any questions let me know.
The second in my language related series of found videos. This one is purely about making a point, but I also really like how Matthew Rogers arranged it. Good words and excellence of design.
Stephen Fry Kinetic Typography – Language from Matthew Rogers on Vimeo.
Today I am in a language related mood. Here’s the first of two videos I find entertaining and, if you’re in the mood, it may produce some discussion.
The new home for this website is WorldWideWilly.net, the old site is WorldWideWilly.ImmortalKeep.com. Many of you probably never knew WorldWideWilly.ImmortalKeep.com existed, this is the official announcement that it is deprecated. For the time being the two sites will most likely look similar. I’m starting a complete code overhaul on WorldWideWilly.net. I’ve learned a lot since the inception of this site, time to apply it. Most likely there will be another grand update when I learn php, I plan to convert my site over to that before the year is out.
I came up with these ramblings about half a year ago. I haven’t organized them into anything coherent. Take what you will from this, it’s just raw ideas. If you have any thoughts reply in the comments. I would like to flesh some of these out… some day.
Google Chrome is Internet Explorer
All Programs will be sold, traded, distributed, etc. online
The iPad is the future, but not yet, this is the beginning
Why hasn’t Mac developed a layer to process Windows
Separate keyboards, mouses, etc. should no longer be required
We need a new form of Wireless network, on which all peripherals operate
iPad can be either the main monitor, or you can connect it to other monitors and it becomes a tablet (like what graphic artists use) but also beyond an ordinary tablet
We should be able to use all our fingers for manipulation/in programs, not just two (for the mouse)
Microsoft is doomed if Windows 8 doesn’t begin redesigning the way in which we work
Most people don’t need a laptop, they just need an iPad with better extensibility
Notice that Google is testing fiber optic cables to individual households
What is beyond the interface of the iPad, can we just skip there or do we need to do things in a progressive order (maybe in order for society to adopt and cause money to be put towards further developments)
All games can run if given a layer between the game and the iPad, this layer makes gestures, actions, and overlays on the screen that are translated into mouse and keyboard inputs.
We are entering a realm where there are programs and their are apps. Apps are for small screens, programs are for big screens.
No longer do we have desktops, we begin having workspaces
The Macintosh and Linux organizational schemes are best suited towards the coming interfaces.
Explorer.exe and the like will begin to disappear, the command line will resurface with origins in spotlight search and ubiquity.
Can everything be done with an index of the computer and the command line, no explorer.exe
Computer manufacturers must change their interfaces, or they will be replaced by apple’s 2.0 interfaces (touch)
Apple, Microsoft, Google, etc. might do too much in house product construction. Whenever one of them makes a physical product they design the product, then have a large number of companies make the components and put it together. If they used the wider world more they could produce products faster and with much greater polish. But do we have enough individual software developers out there. The answer is getting to be a yes, Songbird is both open source and doing things for Philips. Ubuntu is an example, they design the interface, then pick what third party programs go in. But now parts of the interface need to become more outsourced. Precedent shows outsourcing works.
Styles:
Microsoft- Allows greater extensibility, one system for many hardwares, closed source
Apple- Smooth integration between hardware and software, allows innovation on both sides, closed source, closed environment
Google- Free, no hardware, web deployment, open source
Market Cycle:
Innovator -> Flooder -> Open Source-er, becomes a right, given to everyone (normally the government, but now Google and Co. are stepping into this role also)
We are always in a progressively more socialist society, but the socialism is not pervasive because we need the market system to innovate. Things we take for granted today are the socialism of yesterday. Socialism is the natural state of society once the market is saturated with that product. Just as software development needs to further diversify, hardware development needs to approach open-source. The disconnect (why we can have open source software, but not open source hardware) is we can give time from anywhere to anything without measuring its value, while physical stuff is limited (this is not quite it, think more). Is time a form of energy?
Transportation system that does away with much of the need for cars, must be feasible, start out in a few cities, takes a lot of capital, expand from there. Replace RTD. We don’t really need cars anymore and we don’t really need houses, just apartments coupled with really good city planning.
I recently had an idea for improving the forum system. Many websites have forums where conversation can take place. The problem is, many times the same question is repeatedly asked and the forum is generally hard to search. My idea transitions forum content to a more concise reference format, the wiki. For the most part, this only applies to forums trying to solve a problem or address an objective fact.
b. Discussion
c. Question Solved (when marked “solved” a summary of the original question and solution is provided for Q&A)
b. Contributors for the wiki can mark a Q&A relevant or not to the wiki page, after reading it. If not relevant, the Q&A is no longer associated with that article. If relevant the Q&A moves up in the queue for that page.
c. The Q&A can be marked “included” for the wiki. It then ceases to be part of the queue, and becomes part of a source material list.
d. All changes and processes kept in a page history so other contributors can have oversight, just like in Wikipedia.
The discussion has become a document
Willy's Disconnected Thoughts on Randomness









