I usually use XBMC on a PC hooked up to the TV with HDMI, usually for streaming or local TV shows.
But with the lull over the summer, I'm popping in a few DVDs from the library.
My first impression with XBMC playing DVDs was
'Great, a new menu option just appeared to watch DVDs'
and my second impression was
'This is so slow and choppy it's unwatchable'.
After some internets searching I stumbled across this XBMC forum.
And the solution of changing the audio settings also worked for me.
I had Audio Output set at HDMI and it needed to be Analog.
I did also set the Audio output device to WASAPI - HDMI.
All was well with the world again.
Well other than the fact that I ended up playing DVDs on the PC because the DVD player is only pushing sound and not video.
Sunday, July 7, 2013
Wednesday, July 3, 2013
Latest Distractions
Got back to reading more of the Star Wars Legacy comics, finished volume 8.
I've had this on hold for months at the library and didn't get it shipped until I cancelled and re-requested.
Now back to waiting for the remaining issues in the series.
I also finished the Blackest Night hardcover collection, which was just awesome.
Zombified and revived characters, spectrums of rings/corps including black and white lanterns, and well tons of characters.
Gaming on my iphone with Dead Ahead. Outrun and shoot zombies on a scooter.
I'm working on rank 15 savior and just did 18,440m on bridge/nightmare location.
I'm was using just the upgraded super scooter, except for the one challenge i needed to use the quad. Same thing with always using the grenade launcher except for rank challenges where i need to use others (like submachine). The double ammo and fast reload definitely help along with the 2nd chance.
Finished getting caught up in Game of Thrones, Being Human and Californication.
Now watching Defiance on Hulu and starting into Arrow.
I've had this on hold for months at the library and didn't get it shipped until I cancelled and re-requested.
Now back to waiting for the remaining issues in the series.
I also finished the Blackest Night hardcover collection, which was just awesome.
Zombified and revived characters, spectrums of rings/corps including black and white lanterns, and well tons of characters.
Gaming on my iphone with Dead Ahead. Outrun and shoot zombies on a scooter.
I'm working on rank 15 savior and just did 18,440m on bridge/nightmare location.
I'm was using just the upgraded super scooter, except for the one challenge i needed to use the quad. Same thing with always using the grenade launcher except for rank challenges where i need to use others (like submachine). The double ammo and fast reload definitely help along with the 2nd chance.
Finished getting caught up in Game of Thrones, Being Human and Californication.
Now watching Defiance on Hulu and starting into Arrow.
Thursday, June 20, 2013
Amazon EC2, Bash, Python, Cloud-Init
I've been messing with Amazon Free Tier services,
spinning up a t1 micro EC2 instance using the Amazon AMI and dumping files in S3.
Originally I was writing up some bash deployment scripts, but today I rewrote that in Python (using the 2.6 version on the AMI). And I tested out running this Python script on startup using cloud-init and pulling the latest version of the script from S3.
This involved setting a bash script as User Data that would download the python script from S3 (aws s3 get-object) and run it as a specific user (with su and -c).
I'm not much of a Python programmer, so I ended up needed to read through the docs a lot, and then re-read through them for the older 2.6 version.
I had intended to use subprocess.check_output, but when this wasn't available I had to switch back to subprocess.Popen. I also found out that the recommendation of sending in a string command (instead of array) for shell=True is more of a requirement.
Although I'm sure the Amazon SDK is available in Python, it's super easy to call from the shell (aws s3 get-object --bucket bname --key kname fileout). This is especially true with a S3 read access IAM role associated with the EC2 instance (so no access/secret keys are needed).
I also found out that zipfile.extractall does not preserve file permissions, so I had to reset with os.chmod.
All in all, just minor issues. And I really appreciated the error handling over writing in bash.
Not that I really got away from bash completely.
I was going to use the #include with S3 HTTP url to the py script in the user-data, until I realized I could just call the same shell Amazon SDK as a bash script. This let me customize where to install the script, setting its owner/permissions, and running it as a specific user.
Now the final hurtle was getting this script to actually run on every boot, which was not the case at first. When I would stop/start the instance, nothing happened.
My impression was that cloud-init was supposed to handle this, parsing the user-data and running scripts there.
I tried to wade through the documentation on cloud-init, but really was getting nowhere until I traced back from the /etc/init.d/cloud-init* scripts.
First I changed the /usr/bin/cloud-init, changing "once-per-instance" to "always" for "consume_userdata".
This didn't work until I noticed the file at /var/lib/cloud/sem/consume_userdata.<instance>. Once I removed that file and restarted, it was recreated with the .always extension.
This at least caused my user-data to be downloaded as a script and stored in the new scripts dir in /var/lib/cloud/data,
But still it wasn't run.
I also had to edit /etc/init.d/cloud-init-user-scripts, again changing "once-per-instance" to "always" but this time for /usr/bin/cloud-init-run-module and user-scripts.
And removed /var/lib/cloud/sem/user-scripts.<instance>.
Finally after stop/start, my Python script was downloaded from S3 and run on startup. Deploy success!
spinning up a t1 micro EC2 instance using the Amazon AMI and dumping files in S3.
Originally I was writing up some bash deployment scripts, but today I rewrote that in Python (using the 2.6 version on the AMI). And I tested out running this Python script on startup using cloud-init and pulling the latest version of the script from S3.
This involved setting a bash script as User Data that would download the python script from S3 (aws s3 get-object) and run it as a specific user (with su and -c).
I'm not much of a Python programmer, so I ended up needed to read through the docs a lot, and then re-read through them for the older 2.6 version.
I had intended to use subprocess.check_output, but when this wasn't available I had to switch back to subprocess.Popen. I also found out that the recommendation of sending in a string command (instead of array) for shell=True is more of a requirement.
Although I'm sure the Amazon SDK is available in Python, it's super easy to call from the shell (aws s3 get-object --bucket bname --key kname fileout). This is especially true with a S3 read access IAM role associated with the EC2 instance (so no access/secret keys are needed).
I also found out that zipfile.extractall does not preserve file permissions, so I had to reset with os.chmod.
All in all, just minor issues. And I really appreciated the error handling over writing in bash.
Not that I really got away from bash completely.
I was going to use the #include with S3 HTTP url to the py script in the user-data, until I realized I could just call the same shell Amazon SDK as a bash script. This let me customize where to install the script, setting its owner/permissions, and running it as a specific user.
Now the final hurtle was getting this script to actually run on every boot, which was not the case at first. When I would stop/start the instance, nothing happened.
My impression was that cloud-init was supposed to handle this, parsing the user-data and running scripts there.
I tried to wade through the documentation on cloud-init, but really was getting nowhere until I traced back from the /etc/init.d/cloud-init* scripts.
How I got Cloud-Init to run User-Data on every startup:
First I changed the /usr/bin/cloud-init, changing "once-per-instance" to "always" for "consume_userdata".
This didn't work until I noticed the file at /var/lib/cloud/sem/consume_userdata.<instance>. Once I removed that file and restarted, it was recreated with the .always extension.
This at least caused my user-data to be downloaded as a script and stored in the new scripts dir in /var/lib/cloud/data,
But still it wasn't run.
I also had to edit /etc/init.d/cloud-init-user-scripts, again changing "once-per-instance" to "always" but this time for /usr/bin/cloud-init-run-module and user-scripts.
And removed /var/lib/cloud/sem/user-scripts.<instance>.
Finally after stop/start, my Python script was downloaded from S3 and run on startup. Deploy success!
Labels:
dev
Wednesday, May 8, 2013
Chiptunes
So I was linked to this awesome song, I heard it previously playing Zombie Master.
Now it has made its way onto my phone as a ringtone.
That got me wanting to mod out the old original GameBoy I have sitting around collecting dust.
Since I'm not ready for that yet, I found this cool website PulseBoy to emulate and allow creating tunes online.
Here is my testing mp3 and the source file (for reloading and editing).
It exports as wav, I just made the mp3 using a really old version of Cool Edit Pro I had lying around.
Now it has made its way onto my phone as a ringtone.
That got me wanting to mod out the old original GameBoy I have sitting around collecting dust.
Since I'm not ready for that yet, I found this cool website PulseBoy to emulate and allow creating tunes online.
Here is my testing mp3 and the source file (for reloading and editing).
It exports as wav, I just made the mp3 using a really old version of Cool Edit Pro I had lying around.
Labels:
music
Saturday, April 20, 2013
DC IPhone Game
I'm hooked on the Injustice: Gods Among Us game for IPhone.
I know I look like a madman playing it, furiously tapping the screen, as I was earlier at a craft fair.
It's free to play, a pretty simple matchup fighting game.
Starts off as 3 vs 3 for various DC comics characters.
I have Green Lantern, Sinestro, Nightwing, Catwoman, and Cyborg so far.
At levels between 10 and 13.
And only about 30k credits so far.
I'd like to have Batman and Superman, but I don't feel like dropping the $20-50 to have enough credits for them.
If I played long enough, I should build up enough credits, but that sounds like a while.
Looks like the game is really popular right now, and is making some good money on the style of pay system.
Can't argue that it's fun and well done, nice graphics and released on a variety of platforms (except Android).
I never imagined I'd be gaming so much on my phone, but that changed with SpaceTeam and now this.
UPDATE 4/23:
So my continued playing finally paid off with about the best outcome I could have hoped.
I've been playing a few of the same rounds over, building up my credits and experience.
Then I finally went back and finished the first bonus round.
I'd skipped it once I saw the health on Grundy was too much for me (when teamed up with two other chars).
But I came back and won, getting a bunch of credits (7K) in the process.
It also gave me a new card, the Flash.
I played a few rounds, building up experience for Flash and the remaining credits I needed.
Then I had enough to get the daily discounted Gold booster pack for 75K.
Which gave me one of my top Gold picks of Batman!
UPDATE 4/29:
Picked up my second 25% off (75k) Gold pack today, got Wonder Woman. Not my top pick (I agree her model looks weird). But still a Justice Leaguer, and she can help me advance through the 2nd level. Would be good if I ended up getting Superman as a third. Now to level her up first, which should go fast. Batman is on level 19 now.
NOTE: I had to restart the app to have the discounted Gold pack option reappear.
I know I look like a madman playing it, furiously tapping the screen, as I was earlier at a craft fair.
It's free to play, a pretty simple matchup fighting game.
Starts off as 3 vs 3 for various DC comics characters.
I have Green Lantern, Sinestro, Nightwing, Catwoman, and Cyborg so far.
At levels between 10 and 13.
And only about 30k credits so far.
I'd like to have Batman and Superman, but I don't feel like dropping the $20-50 to have enough credits for them.
If I played long enough, I should build up enough credits, but that sounds like a while.
Looks like the game is really popular right now, and is making some good money on the style of pay system.
Can't argue that it's fun and well done, nice graphics and released on a variety of platforms (except Android).
I never imagined I'd be gaming so much on my phone, but that changed with SpaceTeam and now this.
UPDATE 4/23:
So my continued playing finally paid off with about the best outcome I could have hoped.
I've been playing a few of the same rounds over, building up my credits and experience.
Then I finally went back and finished the first bonus round.
I'd skipped it once I saw the health on Grundy was too much for me (when teamed up with two other chars).
But I came back and won, getting a bunch of credits (7K) in the process.
It also gave me a new card, the Flash.
I played a few rounds, building up experience for Flash and the remaining credits I needed.
Then I had enough to get the daily discounted Gold booster pack for 75K.
Which gave me one of my top Gold picks of Batman!
Picked up my second 25% off (75k) Gold pack today, got Wonder Woman. Not my top pick (I agree her model looks weird). But still a Justice Leaguer, and she can help me advance through the 2nd level. Would be good if I ended up getting Superman as a third. Now to level her up first, which should go fast. Batman is on level 19 now.
NOTE: I had to restart the app to have the discounted Gold pack option reappear.
Labels:
gaming
Thursday, April 18, 2013
Highs and Lows of being a Developer
As happens at any job, things change and quite unexpectedly at times.
For most of the last year I've enjoyed working with a great group of developers on a project I enjoy.
It was the best I could ask for.
A complete rewrite of an aged and troubled application. It was a frankenstein mix of technologies and libraries from partial rewrites over the years, being handed down among devs.
Finally, it was being given the time needed to move in the right direction. To cut out the sections of code that were unused or little understood or simply caused problems.
To dig inside it and understand it all, to be able to rewrite almost every line of code.
In the process, fixing tons of bugs just by doing things right.
Sure there were hacks needed here and there, but at least it was maintainable and consistent. It was a foundation for the future, using new technologies.
And we had worked through almost every issue (some were grueling) to finally get within a month of our release.
It felt good, it was fun, it was exciting.
But then about a month ago, the edict comes down from high in the chain.
The current work is on hold indefinitely, the team is moving to a different department, and we are losing team members who are staying behind.
This was the result of merging two teams who were working on the same website but managed separately for the last year (and hoping to align goals/schedules and avoid wasted work).
It hurt. I understand the goal and it may be the right decision, but that was hard, really hard.
And at the time I didn't understand it technically (I may not still either).
It has taken me a while to cope with the loss, I probably still am.
But it's how the pieces had to fall, with politics and all.
Decisions are easy to make from that high level, ignoring the details.
In this case, that's the only way to correct a mistake from the start.
The teams never should have been separate, so one of them had to move.
Really it all comes down to marketing and the power involved. That can give a new project with potential possibilities more power than an existing in-heavy-use aged system (even if the existing system was about to be reconstructed as a new foundation for everything, which doesn't matter, that's too technical).
So quite a fall.
From being so close to releasing a proud achievement. No, it was no perfect and it would have been months of bug fixes, but I would have been happy to work on those. And happy to work on any new features to follow.
To now being in a limbo state, a code purgatory at the moment. Unsure what is to come.
For now, back working on the legacy system, fixing defects that were already fixed in the newer code.
And trying not to think of the dream that drifted away. Letting go.
For most of the last year I've enjoyed working with a great group of developers on a project I enjoy.
It was the best I could ask for.
A complete rewrite of an aged and troubled application. It was a frankenstein mix of technologies and libraries from partial rewrites over the years, being handed down among devs.
Finally, it was being given the time needed to move in the right direction. To cut out the sections of code that were unused or little understood or simply caused problems.
To dig inside it and understand it all, to be able to rewrite almost every line of code.
In the process, fixing tons of bugs just by doing things right.
Sure there were hacks needed here and there, but at least it was maintainable and consistent. It was a foundation for the future, using new technologies.
And we had worked through almost every issue (some were grueling) to finally get within a month of our release.
It felt good, it was fun, it was exciting.
But then about a month ago, the edict comes down from high in the chain.
The current work is on hold indefinitely, the team is moving to a different department, and we are losing team members who are staying behind.
This was the result of merging two teams who were working on the same website but managed separately for the last year (and hoping to align goals/schedules and avoid wasted work).
It hurt. I understand the goal and it may be the right decision, but that was hard, really hard.
And at the time I didn't understand it technically (I may not still either).
It has taken me a while to cope with the loss, I probably still am.
But it's how the pieces had to fall, with politics and all.
Decisions are easy to make from that high level, ignoring the details.
In this case, that's the only way to correct a mistake from the start.
The teams never should have been separate, so one of them had to move.
Really it all comes down to marketing and the power involved. That can give a new project with potential possibilities more power than an existing in-heavy-use aged system (even if the existing system was about to be reconstructed as a new foundation for everything, which doesn't matter, that's too technical).
So quite a fall.
From being so close to releasing a proud achievement. No, it was no perfect and it would have been months of bug fixes, but I would have been happy to work on those. And happy to work on any new features to follow.
To now being in a limbo state, a code purgatory at the moment. Unsure what is to come.
For now, back working on the legacy system, fixing defects that were already fixed in the newer code.
And trying not to think of the dream that drifted away. Letting go.
Labels:
dev
Monday, April 15, 2013
Star Wars Reading
Finished reading Revan (Star Wars: The Old Republic)
This is mostly about Revan post-Sith, trying to remember after having his memory wiped by the Jedi, and trying to understand his visions for impending danger hiding out on another world.
Started slow but once it got going, I flew through it in a few days.
It's mostly two parallel stories, Jedi Revan and Sith Lord Scourge and their eventually meeting and story merging relating to the Sith Emperor.
I didn't know where it was going to end, so I was surprised.
Glad to know some of this story continues into the SWTOR game.
I also picked up the Old Republic comics related to the SWTOR game.
First one look okay, but art in second comic looks horrible. Can't stand to look at the faces, they all look the same.
Continuting Legacy, still good.
and finishing Knights of Old Republic.
I really liked the Zayne story, but not so much the Jarael second half.
But the ending was great, as it should have.
This is mostly about Revan post-Sith, trying to remember after having his memory wiped by the Jedi, and trying to understand his visions for impending danger hiding out on another world.
Started slow but once it got going, I flew through it in a few days.
It's mostly two parallel stories, Jedi Revan and Sith Lord Scourge and their eventually meeting and story merging relating to the Sith Emperor.
I didn't know where it was going to end, so I was surprised.
Glad to know some of this story continues into the SWTOR game.
I also picked up the Old Republic comics related to the SWTOR game.
First one look okay, but art in second comic looks horrible. Can't stand to look at the faces, they all look the same.
Continuting Legacy, still good.
and finishing Knights of Old Republic.
I really liked the Zayne story, but not so much the Jarael second half.
But the ending was great, as it should have.
Tuesday, April 9, 2013
XBMC Free Cable
I really like XBMC and especially the Free Cable plugin.
Most tv stations have deals with Hulu so I watch a bunch there, but CBS doesn't.
So I've used the Free Cable plugin to catch those shows.
Until recently when it stopped working.
The menu options were empty for those shows.
Thats the problem with web scraping code, it can break whenever the website changes.
I was at a loss util I stumbled upon this forum, which is just awesome.
There was a fix posted within the last 2 days.
It included a pastebin with replacement python code for cbs.py.
I reviewed it a bit (here's a good motivator to learning python better).
I gave it a try, replacing my file in appdata/XBMC/addons/plugin.video.free.cable/resources/lib,
and it worked!
I can see the episodes list again and watch shows.
So much better than trying to view them on the CBS site.
I'm not sure exactly why but it's better quality, plays smoother, and no commercials. Pretty amazing.
But even Hulu was having problems today.
Twice while I was trying to watch a show on Hulu, I was bumped to its 404 page. Random.
Oh the woes of internets tv. first world problems.
UPDATE 4/18:
Another fix to replace the cbs.py with another pastebin from same forum, and back to working again.
UPDATE 4/27:
Again, another pastebin from the same forum to replace cbs.py. Fixed viewing shows.
UPDATE 9/19:
I haven't seen a new script yet and the latest one I have is broken since the CBS site changes. I decided to hack up the script myself, more details here.
Most tv stations have deals with Hulu so I watch a bunch there, but CBS doesn't.
So I've used the Free Cable plugin to catch those shows.
Until recently when it stopped working.
The menu options were empty for those shows.
Thats the problem with web scraping code, it can break whenever the website changes.
I was at a loss util I stumbled upon this forum, which is just awesome.
There was a fix posted within the last 2 days.
It included a pastebin with replacement python code for cbs.py.
I reviewed it a bit (here's a good motivator to learning python better).
I gave it a try, replacing my file in appdata/XBMC/addons/plugin.video.free.cable/resources/lib,
and it worked!
I can see the episodes list again and watch shows.
So much better than trying to view them on the CBS site.
I'm not sure exactly why but it's better quality, plays smoother, and no commercials. Pretty amazing.
But even Hulu was having problems today.
Twice while I was trying to watch a show on Hulu, I was bumped to its 404 page. Random.
Oh the woes of internets tv. first world problems.
UPDATE 4/18:
Another fix to replace the cbs.py with another pastebin from same forum, and back to working again.
UPDATE 4/27:
Again, another pastebin from the same forum to replace cbs.py. Fixed viewing shows.
UPDATE 9/19:
I haven't seen a new script yet and the latest one I have is broken since the CBS site changes. I decided to hack up the script myself, more details here.
Labels:
tv shows
Saturday, March 30, 2013
Old Republic Gaming
So after finishing a couple more Knights of the old Republic comics from the library,
I saw an ad for the free-to-play Star Wars Old Republic game.
It's been out for a while but recently became a free play model. The Bioware story is interesting.
So I downloaded it. Well just the installer at first.
And then I waited and waited and waited for all the content to download (took over a day, almost 20 Gigs averaging around 500K/s).
Annoying that its not on Steam since most of my games are.
First thing to notice is the awesome content integrated into the game including the movies and music, especially the intro clip for each character type. That made me feel a little better about the long download time.
First I started out my character as a Sith bounty hunter. I started a mission but in the middle of combat it had an error and crashed (must have been a fluke since it hasn't happened since).
So I decided to start fresh. I wasn't really digging the bounty hunter anyway. I couldn't feel the purpose for the missions.
So for the second character I went with a Jedi Knight. And after flipping through a bunch, picked out a random name. After another cool intro movie, I was on Tython, fighting against flesh raiders, traveling to the Jedi temple, and especially trying to get myself a damn real lightsaber.
For controls, I wasn't really enjoying them at first, felt a bit like Second Life except with story/movies and character progress and a purpose. I don't see a way to change the key bindings and there is no strafing (but I can recreate it with moving left/right and holding the mouse button for the camera angle).
Another weirdness was that the characters are tied to a server. Took me a few tries of logging in and not finding my characters (being prompted to create a new one) before it hit me.
UPDATE (4/3):
Finally made it to level 10 and built my lightsaber, then traveled off world to Coruscant.
This level was the first time i saw reasons for subscribing, to level up faster and have more freedom to travel. I'm sure there are other reasons as well.
I've really enjoyed the game so far using just the free play and i think it would be worth paying for. There's a lot of effort and details put into the game.
I've commented about the videos before, but also the story and character building/skills and environment deserve praise. It really feels big especially now that i'm moving between planets.
It's definitely been successful consuming a ton of my time lately. I'm hooked.
UPDATE (4/10):
Went to go play for a short bit, but there's a content update of 2+ gigs.
I'll just leave it overnight, it'll be as slow as the original download.
Ugg.
I saw an ad for the free-to-play Star Wars Old Republic game.
It's been out for a while but recently became a free play model. The Bioware story is interesting.
So I downloaded it. Well just the installer at first.
And then I waited and waited and waited for all the content to download (took over a day, almost 20 Gigs averaging around 500K/s).
Annoying that its not on Steam since most of my games are.
First thing to notice is the awesome content integrated into the game including the movies and music, especially the intro clip for each character type. That made me feel a little better about the long download time.
First I started out my character as a Sith bounty hunter. I started a mission but in the middle of combat it had an error and crashed (must have been a fluke since it hasn't happened since).
So I decided to start fresh. I wasn't really digging the bounty hunter anyway. I couldn't feel the purpose for the missions.
So for the second character I went with a Jedi Knight. And after flipping through a bunch, picked out a random name. After another cool intro movie, I was on Tython, fighting against flesh raiders, traveling to the Jedi temple, and especially trying to get myself a damn real lightsaber.
For controls, I wasn't really enjoying them at first, felt a bit like Second Life except with story/movies and character progress and a purpose. I don't see a way to change the key bindings and there is no strafing (but I can recreate it with moving left/right and holding the mouse button for the camera angle).
Another weirdness was that the characters are tied to a server. Took me a few tries of logging in and not finding my characters (being prompted to create a new one) before it hit me.
UPDATE (4/3):
Finally made it to level 10 and built my lightsaber, then traveled off world to Coruscant.
This level was the first time i saw reasons for subscribing, to level up faster and have more freedom to travel. I'm sure there are other reasons as well.
I've really enjoyed the game so far using just the free play and i think it would be worth paying for. There's a lot of effort and details put into the game.
I've commented about the videos before, but also the story and character building/skills and environment deserve praise. It really feels big especially now that i'm moving between planets.
It's definitely been successful consuming a ton of my time lately. I'm hooked.
UPDATE (4/10):
Went to go play for a short bit, but there's a content update of 2+ gigs.
I'll just leave it overnight, it'll be as slow as the original download.
Ugg.
Sunday, March 17, 2013
Star Wars comics
Still really digging my Star wars comic reading from the library.
continuing the Legacy and Knights of the old Republic issues.
continuing the Legacy and Knights of the old Republic issues.
Labels:
comics
Subscribe to:
Posts (Atom)