flash ios air certificate password issues

Today I had to publish an iOS app written in actionscript. There are a number of almost good guides like this one, which would be good if they just had more pictures.At first I used Flash Builder 4.5.1, which didn’t do the trick. I then used CS 5, and had everything building and running fine via the emulator. But when it came time to publish after generating the provisioning profile it just wouldn’t work. CS 5 kept saying “could not access the digital certificate. could not load keystore file (password may be incorrect)”. I recreated the .p12 file over and over and checked that I was using the distribution certificate instead of the dev one.
Eventually I thought maybe that my password was too complex, having characters like ‘!’ and ‘$’, but these are normal password chars, so I just stupidly assumed that this was not the issue. An hour later after still having no solution I changed the password to simple alphanumeric chars, and it worked. I didn’t see any google links from my searches that lead me to this fix, but I’m posting it here. This is a pretty lame bug, adobe.

Berlin Japanese Music in Review


After almost exactly two years, I’m moving out of Berlin, back to Hawaii before my probable return to Japan. When I first got here I didn’t know a single person. I came here expecting to work at my academic affiliation, but perhaps because of the school’s financial problems or the change in management upon my arrival, it was hard to even get a desk at the studio (a commodity I had been taking for granted all along.) I worked at a public computer in the lab until classes started — in the same room — which is about the time when I gave up trying to be regularly present at the studio. As a result I did most of my work independently. Perhaps because of this I met a range of people that extended far outside the academic circle that were doing music or art. I met almost no Germans doing music in this adventure – the vast majority were foreigners like myself who came to Berlin for reasons similar to my own. This combined with my interest in Japan (being Japanese, and not being Japanese,) led me to meet a high ratio of Japanese doing music or art.

When I first got here I googled the Japanese in Berlin subject a bit and found Momus’s blog post to be insightful and helpful. In case my own experiences might help others I would like to go over my impressions and findings with respect to the Japanese communities in Berlin over the past two years. Incidentally, (as opposed to the method of tracking and stalking,) after taking a second look at it, I now realize that I came to know and work with about half the people on that click opera post. This validates Momus’s statement about the size and consciousness of the Japanese community. By consciousness I am referring to the recognition between Japanese artists here. This is in stark contrast to the humorous observation I have heard several Japanese people report on how Japanese try as hard as they can to ignore other Japanese when overseas.

One thing struck me immediately upon arrival was the educational bias towards the arts. The Japanese I befriended (many who were at a university for arts) cannot be used as a sample, so take this next example as more objective evidence. I I went to Berlin’s TU (Technical University) orientation, where they had a graph of new students by nationality. There were many Europeans (over a thousand), Chinese (hundreds), and Koreans (tens), but only 1 Japanese was listed. This is in stark contrast to my studies at UW and Dartmouth, where there were more Japanese in Business or Engineering than in Music/Art departments. Essentially, in my makeshift psuedo-statistical analysis, the Japanese were more biased towards the geographical specialty than other nationalities. Germany is a country who’s engineering programs are probably quite good, but not the best, so those seeking a phd in engineering would rather apply to MIT or Stanford. I don’t know enough to say anything about German art programs, but regardless, if the previous claim is true, then you can understand why such a mentality would bring more Japanese doing arts to Berlin. A Japanese guy recently told me (somewhat jokingly) that there are so many Japanese guys doing music that if you see one, you can assume he’s doing music until told otherwise. (Also if it’s a girl she’s probably doing art). Of course this is an over generalization. There are many Japanese who just come here on a working holiday visa to experience life in a foreign country without any particular modus operandi.

The range of music in Berlin is wide yet bound. I really have no way of determining if this is just a result of my subjective experience, but I can say that I expect certain types of music in certain areas. For example, I have been to probably around 70 shows in Kreuzberg/Neukoelln, and the number of bands with guitar and drums that I have seen can be counted on one hand. Computer Music, Noise, Electronics, Minimal Techno. These come to the top of my head first.

In December 2009 I went to a concert that Daisuke Ishida organized. I went because the lovely folks at NK said it would be worth my time, and indeed, it was a well done concert. There Steim’s DJ Sniff (takuro mizuta lippit) and EVOL performed, along with Alberto DeCampo, who is a very nice guy as well as a professor at the UdK and develops tools that big noise names like (Florian) Hecker and Karkowski use. What I know of Daisuke’s own music suits my tastes quite well. On one piece I heard the technical synthesis layer focuses on timbre at the signal level (with probably custom oscillators,) and refreshingly crisp control over the movement and development of the piece. Daisuke also does installations including one with digital/media artist Akitoshi Honda, whom I’ve worked on several projects with.

Later I began to work more with Shintaro Miyazaki, who focuses on media theory and also does performances using sonification. Most of these projects are already discussed in other pages, so I won’t go into them here. But it is worth mentioning that Shintaro also put together the organization ‘la condition japonaise’, which has put on a lot of events from music to dance to art exhibitions that involve members of the Japanese community. Seeing an organization that is tied to a culture or nationality is nothing new, but usually the focus in such a case is on ‘ethnic’ or ‘cultural’ events, whereas ‘la condition japonaise’ put on events that were essentially exhibiting the artists for what they were, providing a support base for the community. It was through events like these that I met many non-musician Japanese artists and dancers.

I’ve written about Tatsumi Ryusui quite a bit on some of our collaborations. I met Tatsumi at a concert at staalplaat where a french noise musician (can’t remember his name) destroyed a turntable, and computer musician Tetsuya Hori performed just after my arriving in Berlin. Tatsumi looked like a guy that I should talk to, so I did it, and now I’m his flatmate. I think it is generally true that when you are new to a city you are more willing to talk to people that you don’t know. I’ve moved cities about 6 times now so I understand this feeling. But at Berlin concerts there is something in the atmosphere that makes it even easier to do then it was for me in Japan or the US. I’m not exactly sure what to call it, but I still feel that is easier in general to communicate between groups. That’s not to say the politics and competition in the arts don’t exist – on the contrary, there have also been awkward moments. But I’m an awkward and shy guy to begin with, so maybe this qualifies me just a bit more to be a metric of the ‘openness’ of a city. Anyway, explaining Tatsumi is a very complicated. He is a professional Itallian chef and has a natural knack for understanding certain things that are difficult to explain. Food is one of them. (I still don’t really understand how food works, but Tatsumi has taught me how to make pizza with out explaining it to me). His view on music is also quite mysterious. I could never ask him what it is, and if I did, I don’t expect I would get the answer. But by observing him over two years I can feel that he has the ability to strongly believe in a musical idea without the necessity to explain it. This is in contrast to the academic viewpoint, where analysis and explanation comes before belief, or at least should follow it. But at the same time it is not at all containing the type of anti-academic sentiment I sometimes see in ‘rebellious’ academic musicians seeking to topple the ivory tower. I’ve mostly seen Tatsumi work with guitar pedals and found objects to achieve a certain target, but lately he has been working on some electronics work via circuit bending of preamps that looks promising and reminded me of some David Tudor neural network type sounds.

I’ve also seen a few of Seiji Morimoto‘s concerts at staalplaat. In the shows I’ve seen he uses small and fun gadgets/trinkets, which individually do not create the most interesting music, and manipulates them to cause a dynamic musical texture to emerge, while not being afraid of silence. The visual manipulation of the objects is also very entertaining. In this regard I found some of the elements similar to Kanta Horio’s work.

Shingo Inao is a former student of Takayuki Rai, whose music I am fond of. He performs with a very unique interface to his computer music. The instrument is very large, causing the performance to cover a significant amount of space. The performance is very intimate, and I don’t mean this in a sappy way. If you’ve read my other blog posts you know this concept of understanding the interface is one that I am always blabbering about. The intimacy I’m referring to here lies between Shingo and his instrument – he seems to really understand how it works and what needs to happen next.

There is experimental electronics/computer music, and there is also the club/DJ scene which does overlap. Iku Sakan is a great example of this, as a DJ who uses brave techniques, while also doing shows that use various instruments including his voice or computer based synthesis/modification to yield emotionally rich performances. I actually met Iku in Japan at a concert we both were doing, arranged by some friends from Berlin. At that concert Iku was playing the steel drum. At first I had a hard time figuring out what was so different about Iku. He’s not an academic, and he’s very humble about himself, referring to himself as a ‘record collector’ and ‘just an appreciator of music’, but at the same time he is willing to undertake the challenge of performing with such a wide range of instruments. Bushisms aside, being able to shoot from the gut is a great ability that sometimes I feel like academia can take out of computer music for certain individuals (me). This just makes it all the more hard to pin Iku down as a certain type of performer or artist. This combined with his fluidity between different mediums is what makes his performances interesting.

At first I was planning to talk more in general about the Japanese community, but I feel this post has been come long enough already. For this reason the Japanese visual artists and dancers that make up the community are not described here, but I should say that I find it quite remarkable how interconnected everyone is, between disciplines, with hubs that extend outside of the art venues into Japanese restaurants such as smartdeli. Not speaking very good Japanese, and not growing up in Japan, I feel somewhat like an outsider in this community, but after asking a couple people in the Japanese community about their thoughts on the community and hearing that they felt also like they are outsiders, I now feel like that might just ironically be the way the average ‘community member’ feels within a well-connected community, in the same sense that a fully connected network is an inefficient usage of resources. There are of course many more people I could write about, but I chose to write about the ones I have interacted with or seen most in the light of this feeling, hopefully providing a more or less honest slice of the community space instead of a snapshot, which I should not be trusted to take.

Justin.tv desktop streaming in linux

You should see the 'live' icon on your stream after you finish this tutorial

There are really no good tutorials for this that I could find, so here’s a tutorial on how to get justin.tv up on ubuntu. This should work with other linux distros. Before you start calculating the millions you’ll be making from ad revenue, lets first get you working with a stream. Then you can broadcast your sick rts skills or live coding sessions, as you see fit and rake in the dough.

http://apiwiki.justin.tv/mediawiki/index.php/Linux_Broadcasting_API
is the main site for how to do this, but it isn’t very detailed and doesn’t go over desktop streaming.

We’re going to use ffmpeg to stream the desktop and capture our audio as well.

1. First you need a justin.tv account, so go create one.

2.Then go to this page (while logged in) and click the ‘show’ link to view your stream key. This is sort of like a password, so don’t give it out.

3. Install ffmpeg if you don’t have it (you probably do,) but if you don’t for debian/ubuntu it’s the following:

sudo apt-get install ffmpeg libavcodec-extra-52

4.Start the stream.

INRES="1920x1080" # input resolution
OUTRES="1024x576"
FPS="20" # target FPS
QUAL="fast"  # one of the many FFMPEG preset
STREAM_KEY=live_231xxxxxxxxx #get your stream key as described above.

Then run ffmpeg with

ffmpeg -f x11grab -s "$INRES" -r "$FPS" -i :0.0  -f alsa -ac 2 -i hw:0,0 -vol 4096 -vcodec libx264 -vpre "$QUAL" -s "$OUTRES"  -acodec libmp3lame -ab 128k -threads 0   -f flv "rtmp://live.justin.tv/app/$STREAM_KEY flashver=FMLE/3.0\20(compatible;\20FMSc/1.0)" 

I modified this command from a forum post that used the one below. My changes were to not use pulseaudio and to boost the volume to twice as much (256 is default, so adjust accordingly)
some people had success with pulseaudio, but my ubuntu/wine config must not be setup to use it.
If audio fails, try this command instead.

ffmpeg -f x11grab -s "$INRES" -r "$FPS" -i :0.0  -f alsa -ac 2 -i hw:0,0 -vcodec libx264 -vpre "$QUAL" -s "$OUTRES"  -acodec libmp3lame -ab 96k -vol 4096 -ar 22050 -threads 0   -f flv "rtmp://live.justin.tv/app/$STREAM_KEY flashver=FMLE/3.0\20(compatible;\20FMSc/1.0)" 

The above command uses your audio output (what comes out of your speakers) as the audio to be streamed. To record from a mic, you can use pulse (I think it is installed by default):

ffmpeg -f x11grab -s "$INRES" -r "$FPS" -i :0.0  -f alsa -ac 2 -i pulse -vcodec libx264 -vpre "$QUAL" -s "$OUTRES"  -acodec libmp3lame -ab 96k -vol 4096 -ar 22050 -threads 0   -f flv "rtmp://live.justin.tv/app/$STREAM_KEY flashver=FMLE/3.0\20(compatible;\20FMSc/1.0)" 

This command should start your stream on justin.tv.
I am not sure why my audio is 1/16th what it should be and I need to scale the volume that much.

Next tutorial will be about how to integrate a webcam into a desktop streaming setup.

Update: I installed the pulse audio device/volume selector, and then ran the second command which uses pulse. While the stream is open I need to change from duplex stereo to output analog only, then change back. It’s weird that this fixes the filtering/low volume issue, but it does get around it. I only needed to make the swap once and it all works great.

sudo apt-get install padevchooser

I have recently switched to youtube because justin.tv/twitch tv doesn’t support saving or transfering videos to youtube if the content is not games. So while I may still use twitch for starcraft 2 and live streaming, I now use the following very similar command to record to mp4, then upload. I find I get much better framerates like this.
This command records the file to my videos folder with a timestamp attached. It wouldn’t take much more work to automate this upload process.

ffmpeg -f x11grab -s "$INRES" -r "$FPS" -i :0.0  -f alsa -ac 2 -i pulse -vcodec libx264 -vpre "$QUAL" -s "$OUTRES"  -acodec libmp3lame -ab 96k -vol 4096 -ar 22050 -threads 0 "$HOME/Videos/JLPTN1/cast720-$(date +%Y_%m_%d_%k_%M).mp4"

For some reason I needed $HOME instead of ~ to get the filepath to work.

Update2: I recently installed FFmpeg 0.8.10 which uses libavcodec 53.8.0, and this works for the mp4 capture, but fails silently with the rtmp output to justin.tv not going anywhere (Even after I take out the no longer valid -vpre and flashver=FMLE/3.0\20(compatible;\20FMSc/1.0) – if you leave the flashver in you get an error that says [rtmp @ 0x9be5fc0] Server error: Authentication Failed.
. My solution was to have two versions of ffmpeg – one compiled from source in /usr/local/bin/ and one using the safe libavcodec 52.72.2 – this is the one that apt-get gave me in /usr/bin/, and whenever I need justin.tv I use the older one.

Linux Audio Conference 2011

I did a performance a few weeks ago at the Linux Audio Conference in Maynooth, Ireland. I had no idea that the cars run their like in Japan – on the left side. I guess this is the urban equivalent of galapagos island evolutionary theory.

The performance was done as a 4 hour long installation in front of the main concert hall. This was nice because it made the whole thing really informal and people would come up and talk. It’s probably the only performance where I got multiple requests for specific sorting sonifications (e.g. ‘Please do mergesort on a size 30 array with 5 discrete values next’). It had the techy-conference problems of having the entire audience being male except for a few wives.

One of the nice things about LAC was that it was very low on expenses. This is something I have been thinking a lot more since my gradual departure from the academic ivory tower while still doing some experimental music and living like a cheap bastard in Berlin. LAC was completely free to register, and my total transportation (inc. airfare), food, and hostel costs were less than 200 EUR. For comparison, I’ve been accepted to ICMC the last two years but decided it wasn’t worth going to as they generally charge around $300 or more just to register. I don’t quite get this as they should be using university venues and funding to host. LAC is much smaller and they still manage to pull it off. Sometimes I wonder if ICMC does this specifically to keep non-academics who won’t have institutions to fund them out. ‘Pay to play’ kind of is a stupid model at any rate.

I was hoping that FFmpeg folks would be there, but they weren’t. I mean to work more on a seeking API for them over the next few months.
Instead, I met up with a friend from my Tokyo Denki University lab, Rennick Bell, who did a presentation on using haskell as an interface for livecoding with supercollider. Rennick also came to Berlin after which gave me a much needed reason to visit the SuperCollider meeting at NK.

I also met some interesting new folks working on new and interesting things.

Flávio Luiz Schiavoni and Giuliano Obici were fun Brazilians (apologies if this is a stereotype) who did a pretty nice installation called Concerto para Lanhouse:

Flavio also has created a system for networking music called medusa (pdf) which I am kind of interested in to use with someone for livestreaming performances.

I also met Daniel Mack there, who is working on writing a OS X version of pulseaudio. This sounds great because then I finally pipe audio between my linux and mac boxes (I have four). Apparently JACK works on mac, but I have never gotten it to. On the bus ride home from the airport I also met him again, meaning that we both live in Berlin so maybe there will be some work we can do together or I can help test.

Tim Blechmann of SuperCollider also presented a new system called ‘Supernova’ that uses parallelization in SC for better performance. I’m interested in that from a code standpoint. Apparently the work from Supernova is being or going to be used in boost libraries. Once we get the stable release of Audacity out I’m going to look at our on-demand engine, so it was nice to be able to talk to Tim about these ideas.

As far as my own musical work I’ve been modifying lstn somewhat – now there is some 8-bit visualization that actually looks kind of cool. But for the most part I have been focusing on Audacity and contract work. The stable release seems as always 2-3 months away despite my crunching about 8 bugs last month. God damn those P2 bugs. Since I’m not doing summer of code this year I hope I can pound it out.

To keep contributing to the music community though, I think I am going to do some writeups of the environment (both musical and japanese) in Berlin next.

gg.

Workshop and Concert in the Netherlands

Last month I did a concert in Den Haag at Loos Foundation. This was part of a series organized by Marie Guileray. Last year I did a concert there as a part of the Wonderwerp series, and the energy there was amazing, giving me one of the best memories I have of a performance. (I am not usually as excited about performance as I am about making the tools and presenting them.) Last month was also very nice, with a good number of people with genuine interest in the sonification tools.
One guy was even nice enough to record the performance and put it up on youtube:

Something about Den Haag is very special when it comes to atmosphere in experimental music. The city is home to the Royal Conservatory, where a number of notable people have taught, including Louis Andriessen. The conservatory also contains the sonology department, which has been a home to Gottfried Michael Konig and a large number of students focusing on some type of computer music. The city itself is not that big, so the experimental music scene revolves around the students of the school. This makes for a very knowledgeable audience. The level of focus the audience has feels very high there. It’s interesting that such a thing can be different for two audiences that are silent and watching the performance, but it really feels this way to me. I’m not getting spiritual on you; I think there are subtle cues that give this away, such as the breathing patterns of the room. It’s also a very positive place, preferring synergy over competition, which is important in an educational environment.

Three weeks later I did a program sonification workshop in Amsterdam at STEIM. I wasn’t sure what to expect for turnout, but it sold out two weeks before the workshop date. The people that showed up had a wide range of backgrounds. I would say most did not know programming per se, which was great, because the sonification of program concepts are not really about code at all, but rather about behavior, something which should be able to make sense to everyone that uses a computer. We did go into xcode a bit, to recompile programs to sonify themselves. While some people didn’t know how to code, it wasn’t so important since the steps to do this using my libraries were quite simple. Also because this was a workshop, and you’re supposed to learn things, everyone was open to the idea. To be honest there were a few bumps, but everyone came through in the end. I am thinking to polish the workshop up a bit and give it another shot.