Monday, November 30, 2020

Concatenate two MP4 files using ffmpeg

Note to self: to concatenate two (or more) MP4 files using ffmpeg, using the following.

First, create a list of files to concatenate:
echo file file1.mp4 >  mylist.txt
echo file file2.mp4 >> mylist.txt
echo file file3.mp4 >> mylist.txt


The contents of mylist.txt should be something like this:
file file1.mp4
file file2.mp4
file file3.mp4 
For long filenames, I think they can be included within single quotation marks:
file 'file name 1.mp4'
file 'file name 2.mp4'
file 'file name 3.mp4' 

Then, run ffmpeg to concatenate the list of files:
ffmpeg -f concat -i mylist.txt -c copy output.mp4

The list of files should contain the files to be joined together in order.

Thursday, November 26, 2020

Weapons carried by light novel Violet Evergarden

After watching the anime series and the movies, I am now reading (slowly) the Violet Evergarden light novels. Still in volume one, which is covered quite extensively in the anime series. Volume one has the stories of Oscar the playwright, Anne and her mother Clara, Aiden the soldier, and Leon the astronomy scholar. Not covered in the anime series is Edward the prisoner. The last chapter of volume one is about Major Gilbert.

While working as an Auto Memories Doll, the anime Violet is not depicted as carrying weapons, but in the light novel, she is well armed. The reason being that she was told it is dangerous for a woman to travel all over the world alone, which is why she carries weapons for self-defence. For example, Ann saw a firearm in Violet's suitcase. In the story of Aiden the soldier, Violet was depicted as fighting off Aiden's attackers with a huge battleaxe. In a later part of the light novel, it was revealed that the battleaxe is named Witchcraft and has a chain attached to its shaft for attacking from range.

(Picture source: Violet Evergarden Wikia page on Aiden Field)

In the story of Edward the prisoner, it was revealed that Violet is very very well armed. In addition to whatever she may have in her suitcase, she carries weapons on her body. She has knives hidden under the insoles of her boots. A pistol is strapped to her thigh. Another pistol is kept in her jacket. Hidden in her hair are three metal spikes for stabbing at neck arteries. And finally, she herself is a weapon, but this was made known in the anime (and 2020 movie) too.

Reading the light novel, it is apparent that the anime adaptation (anime series and two movies) is quite different from the light novels. Some stories from the light novels were more or less adapted into anime as they were. Some parts were changed (like the train attack, which was the reunion between Violet and Gilbert in the light novel but not so in the anime series). Some parts were totally changed. For example, in the light novels, after their reunion, Violet continued to work at CH Postal Company and traveled extensively. In the anime, though, she moved to Ekarte Island and stayed there, taking over the post office work while continuing to work as an Auto Memories Doll for the people of the island. Once I finish the light novels, I will try to give a proper breakdown on the differences between the light novels and the anime adaptations.
 
Fan translations of the light novels:
Violet Evergarden on lightnovel.site (has popups which I hate)

Or you can wait for KyoAni to commission me to do a full translation of the light novels. 😅

Sunday, November 22, 2020

More homemade Violet Evergarden bookmarks and book cover

There are official Violet Evergarden bookmarks and book cover on Kyoto Animation's online store. I even placed my order for them, but due to the flood of orders, it looks like it will be quite a while before they ship out my order.

Meanwhile, I made my own book cover and bookmarks.

And while waiting for the order to arrive, I decided to make more... 😅

The book cover, which is actually just a piece of A4 paper printed with some scenes and other visuals from Violet Evergarden.

This is how it looks when wrapped around a bunkobon. One of the books is a Violet Evergarden light novel, the other is a short story take was handed out when I watch Violet Evergarden the Movie.

These are the bookmarks, before being cut out from the A4 card.

And here they are, cut to size. I even punched a hole in one of them and tied a deep red ribbon to it (not shown here).

 
Actually, I faced an issue with printing. I created the templates using a JPEG file sized to A4 at 150 dpi. But whenever I printed the files, there was always a small margin. It turns out that in Linux, the CUPS printer driver has various paper settings, and selecting A4 paper size for me defaults to a hard-coded margin that cannot be removed. It may even scale the picture to fit within that border, resulting in inaccurate sizes after printing. But there is a "A4.borderless" papersize (I think it appeared after I installed gutenprint) which removes that border. I guess I will be more careful from now to make sure I don't waste paper. Especially if the picture size is critical.
 
My review of Violet Evergarden the Movie (2020) can be found here.

Update November 29, 2020: I used a piece of B5 laminating film to laminate six bookmarks, then cut them to size. Looks so much nicer now!
 



Saturday, November 21, 2020

What makes Episode 10 of Violet Evergarden special

Recently, I wrote about Episode 10 of Violet Evergarden. Recently, Episode 5 of The Day I Became a God (ç„žæ§˜ă«ăȘăŁăŸæ—„) aired with a similar concept. In Episode 10 of Violet Evergarden, a dying mother wrote letters to her young daughter (7 years old), with a letter to be delivered each year on her daughter's birthday for 50 years. In Episode 5 of The Day I Became a God, a dying mother recorded a video message for her daughter, one message to be shown each year until she turns 18 (she was 8 years old at the time her mother died).

Here is the excerpt from Episode 10 of Violet Evergarden.

Here is the excerpt from Episode 5 of The Day I Became a God.

The basic concept is the same: a message from the dying mother every year on the daughter's birthday, for many years after the mother is dead. This concept itself is touching enough.

But what makes Episode 10 of Violet Evergarden special is the story of the writing of those letters. Clara is the dying mother, and Ann is the daughter. Ann knew her mother was dying, but she could not understand why her mother was spending so much time writing letters. Time which she could be spending with Ann instead. Time that Ann wanted to spend with her mother, because Ann knew there was little time left. Ann even asked Clara if there was someone even more important to Clara than Ann, because if not, why is she so bent on writing those letters instead of spending time with Ann. It is this part of the story that adds so much more depth to the concept of "a message on every birthday". This inner conflict in the dying mother Clara, who wanted to spend time with her daughter Ann, yet could not do so because she needed to spend time writing those letters to that same daughter. Ann was jealous of herself, yet she did not know it at that time.

The other beauty of the letters from Clara to Ann: Clara wrote each letter imaging how Ann would be like at each year in the future. Clara, who would never get to see Ann grow up with her own eyes, had to imagine what she would see if she got to live. 😭

Anyway, here's the first 10 minutes of Violet Evergarden the Movie, made available by KyoAni, which references Episode 10.

Episode 10 of Violet Evergarden is in a class of its own.

Homemade Violet Evergarden bookmarks

Following from the book cover, I printed out some bookmarks using scenes from Violet Evergarden.



I kind of like the washed look when a 50% white transparent layer is placed on top of the pictures. At normal, the colours are more prominent but you will need to print on special inkjet paper to get the best effect.

I printed them on postcards and then cut them out. I will need to work on the printer settings, though, to get the correct. It seems to be doing some weird scaling on its own.

My review of Violet Evergarden the Movie (2020) can be found here.

Friday, November 20, 2020

Limiting GPU memory use in Tensorflow

I am interested in deep learning, and even built my own PC recently with a GTX 1660 Super card so that I can do a bit of simple deep learning. But as I use the same PC for other stuff, I can't have the GPU using all the memory for deep learning. So here is what I do in Tensorflow to limit the amount of memory being used.

import tensorflow as tf

gpus = tf.config.experimental.list_physical_devices('GPU')
if gpus:
  try:
    # Currently, memory growth needs to be the same across GPUs
    for gpu in gpus:
      tf.config.experimental.set_memory_growth(gpu, True)
    logical_gpus = tf.config.experimental.list_logical_devices('GPU')
    print(len(gpus), "Physical GPUs,", len(logical_gpus), "Logical GPUs")
  except RuntimeError as e:
    # Memory growth must be set before GPUs have been initialized
    print(e)

MEMORY_LIMIT=4096
gpus = tf.config.experimental.list_physical_devices('GPU')
if gpus:
  # Restrict TensorFlow to only allocate 1GB of memory on the first GPU
  try:
    tf.config.experimental.set_virtual_device_configuration(
        gpus[0], [tf.config.experimental.VirtualDeviceConfiguration(memory_limit=MEMORY_LIMIT)])
    logical_gpus = tf.config.experimental.list_logical_devices('GPU')
    print(len(gpus), "Physical GPUs,", len(logical_gpus), "Logical GPUs")
  except RuntimeError as e:
    # Virtual devices must be set before GPUs have been initialized
    print(e)

This sets memory use to grow as required, and limits the maximum memory use to whatever MEMORY_LIMIT (in megabytes) is set to.
 
Anyway, the 1660 Super is not exactly the best card for deep learning. The new RTX 30xx cards are definitely better and they are cheaper (relative to RTX 20xx cards). For those who can afford it, I think the RTX 30xx cards would be better for any serious work in deep learning. I am just using this budget build for my own learning.

Thursday, November 19, 2020

Violet Evergarden bunkobon book cover

I realised I don't have a lot of bunkobon book covers, so I decided to make some of my own. The size is essentially A6, so a sheet of A4 paper is more than adequate to form a cover.

And what better way then to make a Violet Evergarden-themed book cover of my own?

For the illustrations, I used what I could find on the official movie site, anime series site, and Twitter account.

Then, it was just a matter of selecting the illustrations, placing them on a PowerPoint presentation sized to A4. Finally, I placed a 50% transparent white box over the illustrations to tone down the colours, making it easier to print and also less eye-catching. Saves ink too! 😅

And here is the result, wrapped around volume 1 of the Violet Evergarden light novel.



I think it turned out quite nice. Maybe I should make a few more with different designs. After all, there are four volumes to the light novel series. 😅

My review of Violet Evergarden the Movie (2020) can be found here.

Tuesday, November 17, 2020

Why I still use traditional news media

Today, we can get news feeds which gives us articles from the Internet that may be of interest to us. For example, unlike tradition newspapers which have gone online, Google News can show us a wide selection of news articles that is not limited to a certain outlet. Which sounds really great, until you think about it a bit deeper.

First, Google News is a free service. But it is not actually free, since it is actually sustained by ads. Ads from the articles that you visit. Which also means that, most likely, it is showing you articles that have ads. Not really a problem, except this means that articles without ads may somehow get "censored" from your feeds. So you are not going to see those great academic articles on university sites unless you scroll down all the way to the end of the feed (if it shows up at all).

Another thing about such news feeds is that they want you to read the articles, because it generates ad revenue. So they will select articles that you are likely to read. This means that while, technically, the news feed can gather articles widely from many many sources, you are only going to see a limited range of articles on your news feed, based on what you have clicked on before. Instead of widening our perspective with the vast amount of information available on the Internet, we may end up limiting the information we receive into a very narrow perspective.

Compare this with traditional news media, which seeks to provide a wide range of news. We can skim through the newspapers looking at the article titles and only read what interest us. Maybe we only read five articles out of the 200 found in the newspaper. But at least we will be given the headlines. We may actually discover something interesting outside what we usually read. Because it is there. Unlike a news feed, which may contain 2,000 articles, but all of them based on what we have read before.

This is why I continue to visit Japan Today. It has news related mainly to Japan and a mix of world news. I used to read it because my mentor was active in posting comments on articles, but I find the selection of articles quite fitting for my needs. Sometimes, I discover articles outside what I usually read.

And that is also why I turn on the news at night. I may not be paying attention to it, but once in a while, a piece of news may pop up that is interesting to me, and I stop what I am doing to watch it.

There is something to note for traditional news media about the way they select articles, but that is a topic for another day. Until then, happy reading/watching/listening to the news! 😉

Saturday, November 14, 2020

Decoding the Violet Evergarden postcard

For the ninth week of Violet Evergarden the Movie's screening in theatres, they are giving out a postcard from Ecarte Island.

I am not really good at this, but I am going to give it a try to decode what it says, at least the main text. First, the alphabet/language of Violet's world is called Nunkish by fans. Nunkish is actually Tamil, with some of the alphabets switched. So, to translated Nunkish to English (actually, Japanese, since that is what the original script was written in), first, Nunkish characters need to be replaced with the correct ones in Tamil. Then, translate Tamil to Japanese (or English). Since I am not proficient in Tamil, all the necessary translation from Tamil was through Google Translate.

Here goes.
 
 
The side with the stamp reads:
On unmarrakicu gukarra (Nunkish)
-> En anpukkuriya varukku (Tamil)
-> èŠȘ愛ăȘるèšȘć•è€…ăž (Japanese)
-> To my dear visitor (English)

The picture side reads:
On ihucuhhi uhimmurahiciq ikanha nunki (Nunkish)
but I think there is a spelling mistake, it should be "ihucuhhin" (with a "n" at the end) instead of "ihucuhhi".
On ihucuhhin uhimmurahiciq ikanha nunki (Nunkish)
-> En itayattin atippakutiyil iruntu nanri (Tamil)
-> 私た濃たćș•ă‹ă‚‰æ„ŸèŹă—ăŠă„ăŸă™ (Japanese)
-> Thank you from the bottom of my heart (English)
 
At the bottom is
Ecartehiga (Nunkish)
and"higa" in Nunkish is "tivu" in Tamil, which means island. Ecarte Island (ă‚šă‚«ăƒ«ăƒ†ćł¶) is the name of the remote island. 
 
My review of Violet Evergarden the Movie (2020) can be found here

By the way, officially, the language used on the Tellsis continent, where the story is set, is the Tellsis language (ăƒ†ăƒ«ă‚·ă‚čèȘž). A Python script that translates this language into English can be found here.

Note: As an after note for the production staff event at Shinjuku, Suzuki Takaaki, who designed the world setting, disclosed the process of how the language used on the Tellsis continent was created. First, he translated the Japanese text to English. Then, he converted the English text to another language (he did not specify that language, but we know it is Tamil). Then, he did a bit of cryptography work, basically, used a substitution cipher. Finally, the text is rewritten in the alphabet of the Tellsis continent.

Update January 15, 2021: Bidirectional Tellsis language translator can be found here.
 

Watching Violet Evergarden the Movie at a Dolby Cinema

Violet Evergarden the Movie is the first new anime movie to ever be screened at Dolby Cinemas in Japan. "New" as in the movie is still showing in normal theatres. There have been other anime movies screened at Dolby Cinemas, but they are not new, being screened in Dolby Cinemas after their runs at normal theatres ended. Naturally, I had to see what is so special. So I booked a ticket for this morning (it started showing yesterday, but the morning and afternoon shows were both fully booked then).
 

To commemorate this screening, they were handing out special "tickets".

You know it is a Dolby Cinema because this is the screen that greets you inside.

I must say, I am impressed. Before the movie started, there was a short video that showed the difference between normal theatres and Dolby Cinema. One is the range of colours. The other is the fidelity of the sound source.
 
And watching the movie, I must say, it was impressive. I have watched the movie five times before this, so this is my sixth viewing. But you can really notice the difference. The colours were really rich and dynamic, and the sound was superb. The visual and audio experience further enhanced a masterpiece that is already great in normal theatres. If you ever have a chance to choose between watching Violet Evergarden the Movie in a normal theatre or Dolby Cinema, choose the Dolby Cinema. You will not regret it.

By the way, starting from yesterday, viewers get a postcard from the remote island featured in the movie.

I will decode the text in another post.
 
Six times... go watch it. It is that good. I really envy the fan who watched the movie 43 times in 56 days. His or her 43rd viewing was in Kyoto at the first Dolby Cinema screening with a staff talk event after the screening.


He/she even traveled all the way from Yokohama to Kyoto just for this...

My review of Violet Evergarden the Movie (2020) can be found here.
 
Update (January 8, 2021): On the movie's official website, an article has been published talking about the production of the Dolby Cinema version of the movie. The original version was made in HD (aka 1080p) but was converted to 4K for screening in Dolby Cinemas. Work was done to make sure that the Dolby Cinema version conveyed the same impression as the original version, with attention paid to the portion between scenes and the darker areas. This is especially because Dolby Vision allows much sharper colour contrast, which may not be what is actually intended in the movie itself. Personally, I think they managed to strike the right balance in the conversion process. The Dolby Cinema version retains the original flavour while making use of the greater visual details allowed by 4K and the high fidelity Dolby Atmos sound.

Friday, November 13, 2020

Violet Evergarden the Movie (2020) review

-----------------------
After watching Violet Evergarden the Movie five times, and going to watch it a sixth time tomorrow, I decided to write my own review of this movie. This review is filled with spoilers, so please do not read if you don't want to know how the story turns out. I will keep updating this review as I watch it (as of December 31, 2021, I have watched it 14 times in the theaters and several other times since the Blu-ray was released, including three times for the audio commentaries). Links to other posts on the movie can be found at the end of the post.
November 14, 2020: Updated after watching the movie for the sixth time.
December 4, 2020: Updated after watching the movie for the seventh time.
February 12, 2020: Updated after watching the movie for the twelfth time
-----------------------

Violet Evergarden the Movie (2020) is about Violet Evergarden, an orphaned girl with superb fighting skills who was used as a weapon by the army during the war. The war is now over, and Violet is working as an Auto Memory Doll, a ghostwriter who writes letters on behalf of others using a typewriter, as she seeks to learn what the words "I love you"--told to her by her superior officer, Major Gilbert Bougainvillea at their final battle--means. The anime series was 13 episodes with an OVA episode, followed by a feature-length side story film. This movie continues the story of Violet Evergarden, who has since learnt human emotions and what "I love you" means.
 
Before going any further, a reminder to watch the movie until the end of the credits. There is a final cut after the credits finish rolling.
 
Here's the Hong Kong trailer, which has Chinese and English subtitles.
 
 
First, visually, the movie is stunning. You can see the waves moving, the slight sway of trees, how the hair of the characters move. How the camera angle moves, the blurring of the camera lens depending on the focus, these are all the small little details that add so much realism to the movie. You can feel the painstaking work put in by the animators at Kyoto Animation. It is really amazing. For example, in a rain scene, you can see the blades of grass in the foreground moving very slightly as they get hit by the rain drops. Wow! Even the reference books used by Violet were carefully drawn and the words clearly printed, even if it was only a passing shot. Most animation studios would just use gibberish, but you can clearly see that the text was properly written in Nunkish (the name given by fans to the language used on the Tellsis continent).
Visuals: 10/10
 
The sound was masterfully blended into the movie too. One very memorably scene that moved me to tears was during Violet's final letter to Gilbert. She said Gilbert's words were her michishirube (signpost), and after that, the song Michishirube (used during the anime series) came on. There are quite a few scenes at sea, and I am truly amaze (being from the navy) that they even managed to throw in sound effects for the sound of ropes being tensioned by the waves when onboard a ship tied alongside. Wow! There are also many sound effects of the surroundings which may be difficult to catch without a good sound system. This really made watching the movie at a Dolby Cinema worth it. The creaking of wooden floors as people go about their lives on them... amazing!
Audio: 10/10


As an animation work, this audio-visual blend makes this the best anime of the year, if not the decade. Maybe of all time. Just this alone makes me recommend this movie to everyone. Whether you like anime or not, go watch this. It is a movie that has transcended the realm of anime.
Animation value: 10/10

For the story, it is a continuation of Violet's growth and her search for Gilbert. We all know that Gilbert is alive; that much is know just from watching the trailers. And we all know there will be a happy ending, that much was hinted at. Yet Kyoto Animation has managed to come up with a story that continues to bring me to tears even though I knew full well how the story was going to end. That, I think, is the amazing part. To be able to take the expected, and portray it in such a way that it still becomes highly emotional and touching. However, the story can be a bit slow at times, and on close scrutiny, I am sure there are parts which can be left out so that this movie is closer to 2 hours (instead of its 2 hours and 20 minutes).

Still, this is a movie that will move you to tears. Again and again. Many times throughout the movie, and many times when you rewatch the movie.

Next, I am going to go into more details about the movie, which is going to contain lots of spoilers.

The movie opens several decades after the anime series, with the daughter and granddaughter (Daisy) of Ann Magnolia (the little girl whose mother wrote her letters for 50 years in Episode 10 of the series). The progress of the movie is through Daisy, who wanted to find out more about Violet Evergarden, the person who wrote all those moving letters that her grandmother (Ann) treasured. At one of the related events, it was mentioned that Daisy's story takes place 60 years after the events in Violet's story featured in this movie.

This opening scene itself was a wonderful tribute to the most touching episode of the anime series. Fan will immediately recognise the Magnolia house, with its glass-paned room. The letters used in Episode 10 were again read out during the movie, and that is sure to move anyone to tears. Three minutes into the movie, I was already crying. When the letters were read (around minute 7), it was more tears. Kyoto Animation has released the first 10 minutes of the movie, you can see for yourself.


Irma, the opera singer from the OVA, also made an appearance in the movie as the person chosen to read the tribute poem during a festival celebrating the sea. The staff of CH Postal Company is still there, except Erica who has become an apprentice under Oscar, the writer in Episode 7. The opening shows that people have moved on with their lives after the war, and Violet has grown considerably (to be selected as the one writing the tribute poem shows that she has since gained recognition for her writing skills).

The story of Yuris, a boy who is suffering from a terminal illness, is used to show has Violet has grown. The scene when she tricked Yuris with the special "child discount" after seeing how disappointed Yuris was when told that his meager savings would not pay for the letters. How she could not hold back her tears when listening to Yuris (even though she could in Episode 10, only crying after returning to the postal company). Violet is also shown as a person of her word, as shown by how she was ready to give up meeting Gilbert because she wanted to keep her promise of writing all those letters that Yuris requested. In a way, this is probably a reflection of her military background, about her determination to fulfill any mission given to her. We can also see that Violet has grown by how she understood when Hodgins asked her to wait outside the school, because while she may be ready to see Gilbert, Gilbert may not be ready to see her. She understood that, Gilbert, having lost an arm and eye, may also be facing an inner turmoil.

The story of Gilbert after the war shows that his perfect image during the anime series was viewed through the lens of Violet, who worshipped him. But Gilbert is not a perfect person, and has been living with the guilt of war and the guilt of using Violet, a young girl, as a weapon of war. Causing Violet to lose her arms. Never giving Violet the childhood she deserved, and probably causing her to have to live with the guilt of killing once she realises what that means (which she did, in Episode 9). He ends up living on a remote island, where all the adult men had been sent to war. As an atonement for his actions, he is doing what he can for the people on the island, becoming a teacher for the children as well as helping out in farm work.
 
There is this detail I noticed after watching the movie seven times. I appreciate the length that KyoAni went to make sure there is consistency in the story. A key part of the story depended on Gilbert's handwriting. It was his handwriting on a letter that prompted Hodgins and Diethard to think Gilbert may be alive. But for that to happen, Gilbert's handwriting needs to remain the same before and after the war. Which means he needs to be left-handed, since he lost his right arm in the last battle. If he was right-handed, his handwriting after the war would be different. The letter that prompted Hodgins and Diethard was written by a left-handed person. I should know. I am one. And in a flashback scene, when Gilbert was teaching Violet to read, he was shown writing with his left hand. đŸ€Ż That blew my mind away. They made sure this detail was properly reflected.

The inner conflict of Gilbert is portrayed superbly. Yes, he loves Violet, but at the same time, he feels guilty about what he has done to her, and his guilt is holding him back from meeting Violet. But the words in Violet's final letter to Gilbert allowed him to understand that Violet has grown, that Violet now understands the world better, that she understands what "I love you" means, and in spite of that, she continued to look for him. In a way, she has forgiven him for what he has done to her, and it is time for him to forgive himself and move forward so that both he and Violet can be happy. He knew this from Violet's final letter, where the last line read, "I love you Major." (ç§ăŻć°‘äœæźżă‚’æ„›ă—ăŠă„ăŸă™) It was this line that spurred him to chase after Violet, who was on her way back to the postal company after Gilbert's refusal to see her.
 
(That chase scene is a bit exaggerated, though. I mean, the ship Violet is on has left for quite a while and was a distance off the coast when Gilbert shouted "Violet!" It is highly unlikely that Violet could have heard him. And while Violet possesses superb physical skills, jumping off a moving ship and swimming to shore is not an easy task. Instead of standing in the sea with Gilbert as they finally reunited, she should have been exhausted from the swim. But for the sake of emotional value, I guess artists should be given a bit of leeway. 😅)

And Violet's decision to return to the postal company after failing to meet Gilbert was another sign of her growth. She understood why her existence was causing pain to Gilbert. This is something that she would not have understood before, a war orphan used as a weapon to kill. But she now understands what her actions meant, what Gilbert must be feeling for making her kill people, and the guilt Gilbert has for causing her to lose her childhood and her arms. You know she understands, and she was trying hard to convince herself that she was happy just being able to hear Gilbert's voice.

While the movie did not touch on the lives of Violet and Gilbert after their reunion, there are lots of hints. The biggest hint is the final scene after the end of the credits, which show Violet and Gilbert sitting on a bed in front of a window, with Violet's bag and stuffed toy dog at one side. They two of them have locked their little fingers (pinkies), which I think symbolises their promise to each other. I think it is KyoAni's way of saying they got married. When Daisy visited the remote island and places linked to Violet, you can see signs of Violet too. Her signature red ribbon could be found tied to the gate of the school and also to a plant outside the post office. The school being a symbol of Gilbert (he was a teacher there) and the post office of Violet (it was said she took over the post office job on the island after moving there). And the guy working at the post office gave a thumbs-up sign, something that Yuris taught Violet, and the colour of his eyes, being grayish green, could well be a sign that he is Violet's and Gilbert's son (blue eyes + emerald eyes). Anyway, Violet is about 10 years older than Anne, so if Anne just passed away at the start of the movie, Violet is likely to have died too. Gilbert, who is about 15 years older than Violet, would probably have been long gone. (A note about age. At the talk event in Kyoto by the production staff, it was revealed that Daisy's part of the story is supposed to be 60 years after Violet's reunion with Gilbert. Given that Violet was 18 years old then, she should be 78 years old when Daisy visited Ekarte Island. Gilbert would be 93 years old if alive.)


Personally, I am amazed at how Kyoto Animation was able to capture a broad range of human emotions in this one movie. We have that family tie between mother and daughter. A mother's love for her daughter, watching over her daughter from heaven. A daughter's estranged relationship with her mother, who was always busy with work. The love-hate relationship between siblings, shown by Diethard and Gilbert as well as between Yuris and his younger brother. About friendship. About a parent who cannot help being overly protective. And loving someone, yet feeling guilty. And loving someone, and forgiving someone. Human emotions are really complex, and words can never fully capture them. So it is really amazing that Kyoto Animation managed to capture them with words, visuals, and music in a medium known as anime.

Kyoto Animation has created a masterpiece.

And that is why we know there will not be any sequel to Violet's story. The story has ended on a bang, and it is time to move on. Just like how Kyoto Animation is moving on from the arson attack. The fireworks in the movie was a celebration of the completion of the radio tower, but it also symbolises the celebration of the completion of this great masterpiece, and a tribute to those lost to the fire. But life goes on after the fireworks, and life will go on at Kyoto Animation. This can also be seen in how Hodgins looked to his left, where Violet would have been, only to see that Violet is not there. A person who should have been there is no longer around (although Violet is not around because she is with Gilbert). The opening and closing scenes of the movie, which shows a dimly lit path, is also KyoAni's way of saying that while the things look bleak and the future cannot be seen, just like Violet walking down that path in the closing scene, step by step, KyoAni will continue to walk forward into the future, one step at a time.

I look forward to their next piece of work.
 
By the way, to find out what happened to Violet and Gilbert after the movie, you can read my unofficial translation of the booklet by author Kana Akatsuki, "Gilbert Bougainvillea and the Fleeting Dream".

Events:
 
Translations of short stories:
Gilbert Bougainvillea and the Fleeting Dream (unofficial translation of "ă‚źăƒ«ăƒ™ăƒ«ăƒˆ・ăƒ–ăƒŒă‚ČンビăƒȘスず愚い怹")
The Starry Night and the Lonely Two (unofficial translation of æ˜Ÿé™ă‚Šăźć€œăšă•ăżă—ă„ă”ăŸă‚Š)
Diethard Bougainvillea's If (unofficial translation of ăƒ‡ă‚ŁăƒŒăƒˆăƒ•ăƒȘăƒŒăƒˆ・ăƒ–ăƒŒă‚ČンビăƒȘケIf) 
The Tailor and the Auto-Memories Doll (unofficial translation of 仕立お汋ずè‡Șć‹•æ‰‹èš˜äșșćœą)
 
Tellsis (Nunkish) translation:
Last line of Violet's final letter to Gilbert
 
Insights on the movie:
 
Audio commentary notes:

 
All posts related to Violet Evergarden.

Wednesday, November 11, 2020

In translation, it is all about context

I noticed a weird translation of an anime scene recently.
 
ăƒ€ăƒă„、ă“ă‚Œæ•ăŸă‚‹ă‚„ă€ă !
-> Oh, wow! These make great hand rests!
(æ•ăŸă‚ŠăŻă—ăŸă›ă‚“。)
-> (That's not what those are for.)



The problem is, that's not what that scene meant. The actual meaning:
ăƒ€ăƒă„、ă“ă‚Œæ•ăŸă‚‹ă‚„ă€ă !
-> Oh no! This is what gets people arrested!
(æ•ăŸă‚ŠăŻă—ăŸă›ă‚“。)
-> (They won't arrest him.)

æ•ăŸă‚‹ means to hold, to catch, to grasp. So I can understand the wrong translation, most likely because the translator was only given the text/script without actually seeing the actual video. But in this case, the scene is of the protagonist hugging his new wife from behind as she was sleeping, and he was grabbing on her breasts. Without context, the original translation might have been acceptable. But given the context of the scene, he thought he was doing something wrong (well, yes, you can get arrested for grabbing breasts like that). The text in brackets is to tell people the protagonist won't get arrested since they are married. (Okay, there are countries in the world where, married or not, such behaviour on a sleeping woman will get any person arrested... but Japan is not one of those countries...)

This is why context is always so important when translating something. In my work as a translator, I always try to understand the context so that I can fully convey the meaning of whatever text I am translating. For anime translation, I think the issue is that anime translators are unlikely to be given prior access to the episodes. So they end up with a script in Japanese, and have to imagine what they are trying to translate. This is why we end up with such weird translations sometimes.

Personally, I have done such video subtitling before too, but it is usually with the source video, or at least a storyboard, so that I can understand the context. Those who contract out subtitling work need to realise that they need to provide us translators with the context: either the source video, or at least a storyboard. Otherwise, we may end up translating something totally out of context. So if you notice weird subtitles in the future, remember, it may not be the fault of the translator. And if you are the one contracting out such work, do everyone a favour, provide the source video or a storyboard. 😉

Episode 10 of "Violet Evergarden"

Many share the same feeling that episode 10 of Violet Evergarden is the saddest and most touching episode of the entire series, and probably the entire decade. For a series that is all about human emotions, that is quite an achievement.

A dying mother spends a week writing 50 letters for her 7-year-old daughter, to be delivered on her daughter's birthday for the next 50 years. Each time I watch this, I turn out like this. 😭 Even recalling the story. đŸ„ș😱
 
Don't believe me? See it for yourself. The series is available on Netflix. And below is a short clip that is sure to bring anyone to tears. At least, anyone with a mother and a heart.


And Violet Evergarden the Movie (2020) opens with scenes from this episode. How not to cry?
 
The letters in the anime are truncated versions of the letters that appear in the original light novel. The letters in the light novel are slightly longer, and you can really feel the thought that went into writing them, as Ann's mother tried to imagine how Ann would be like in the future. As I read the letters, I ended up like 😭 again...
 

😭😭😭
 
My post on what makes Episode 10 so special is here.

Tuesday, November 10, 2020

Video playback on Raspberry Pi 4

Yet another note to self on how to get video playback on the Raspberry Pi 4.

First, it seems that the micro HDMI socket nearer to the USB-C connector is the primary HDMI, and that should be the one you use if you only have one monitor. It has something to do with audio.

Also, the default GPU memory allocation of 64MB is too little for video playback, so that needs to be changed in /boot/config.txt to 256MB by:
gpu_mem=256

Next is DRM. This is a bit tricky. If you are running Raspberry Pi OS or something similar, you can easily install what is known as Chromium Media Edition (it is Chromium browser, with ChromeOS's Widevine library) by using pi-apps. Just clone the repo and run it.
git clone https://github.com/Botspot/pi-apps
~/pi-apps/install
By the way, TwisterOS comes with pi-apps and Chromium Media Edition already installed.
 
However, for 64-bit OS, this is not going to work since the ChromeOS Widevine library is 32-bit. One way to get a 32-bit version of Chromium with the 32-bit Widevine library running on a 64-bit OS is to use docker, and there is such a docker container called docker-chromium-armhf. The repo has the instructions on how to get it up and running.

Monday, November 09, 2020

Something to think about after the U.S. elections

After a few days of counting, it seems that Joe Biden has managed to secure enough votes on the electoral college to be voted as the next U.S. President when the electoral college votes in December. He has secured the most votes in history too. You see people celebrating on the streets after four years of Trump, more than 230,000 deaths due to COVID-19 in the United States, and protests all over the United States about police violence.

But I hope everyone will also take a moment to think about this: more than 70 million U.S. citizens votes for Trump in 2020. These people cared enough for what Trump represents to actually take the trouble to go and vote, be it filling in their ballots and mailing it, or queuing up during a pandemic to cast their votes at a voting center. This is about one-third of the population that can voted. And slightly less than half of those who actually voted. If you have three adult friends in the United States, statistically, one of them voted for Trump and everything that he stands for. And this is after four years of Trump. After so many scandals involving sex. After it has been made know that Trump is heavily in debt. After an impeachment. After a mishandling of the response to COVID-19 that has resulted in deaths and unemployment. After separating kids from parents. And a lot more.

Do you think these people will disappear overnight? Change their thinking overnight? Unlikely. Which means that while people are celebrating that Trump is likely to be gone from the White House come next January, what he represents is still very much a part of what the United States actually is. That while we may see the United States returning to advocate environmental friendliness, democracy, equality, equal rights, the rule of law, and open trade, a significant portion of the United States believes in white supremacy, misogyny, being above the law, and barriers to trade. They don't believe that global warming is real. And the rest of the world, as well as their own neighbours within the country, will need to learn how to live with them and their ideals, which won't be going away for a while.
 
I just hope their ideals don't spread.

Sunday, November 08, 2020

Japanese keyboard and input on Raspberry Pi

This is just a quick note for myself on how to configure the Raspberry Pi for Japanese keyboard and input. It should work on Raspberry Pi OS (I am using TwisterOS, which is built on top of that) and other Linux distributions based on Debian.

For keyboard, the easiest is to run raspi-config using
sudo raspi-config
Then, under Localization options -> Keyboard -> Generic 105-key PC (int'l) -> Japanese -> No AltGr key -> No compose key -> Yes to Ctrl-Alt-Backspace to terminate X server

For Japanese input:
sudo apt install ibus-mozc
im-config -n ibus
Then reboot.
After rebooting, there should be an icon in the system tray for ibus, right click on that and select Preferences. Then go to the Input Method tab, and add a new input method "Japanese - Mozc". If it is already there, there is no need to do anything else.




Saturday, November 07, 2020

Chinese manufacturer releases ESP32-based 3D printer control board

Previously, I mentioned that it is only a matter of time before Chinese manufacturers start pushing out ESP32-based 3D printer control boards. I guess that time is here. FYSETC has recently released the FYSETC E4 which is based on the ESP32. It comes with 4 x TMC2209 stepper drivers already soldered. It does not use the I2S stepper stream.

The repository does not contain the Gerber, schematics, or PCB layout files, but I think these should be available soon, since FYSETC has made such files available on their repos for other boards.

It will run Marlin and a pull request has already been sent. Given that it looks to be the same as the MRR ESPA, it should be able to use Marlin with ESP3DLib with no issues. The new Marlin webUI should run too, though I have yet to test that out.

I am not a fan of stepper drivers being soldered onto the board, but that is a personal preference. The position of the ESP32 module is not in the recommended position, so if you intend to get one, get the one with the external antenna since the module's position is not optimal for using the PCB antenna variant. It seems the controllable fan is being controlled by a transistor rather than a MOSFET, so that means it should not be used to control a laser or something that requires more current. And with a 15A fuse for the heated bed, I think that means using 12V heated beds may be... challenging. Stick with 24V systems if you intend to use this board.

Otherwise, I like the small footprint design. And I guess it will be a matter of time before designs using the I2S stepper stream, like the MRR ESPE, will get their own Chinese versions. The I2S stepper stream actually expands the ESP32 greatly, I really don't understand why Chinese manufacturers don't just adopt this design from the start. Maybe FYSETC will pay me to improve the MRR ESPE's basic design for them to sell. 😁 I really want to redo the TMC CS pin header to allow for easy TMC SPI and UART configuration, but there isn't really any motivation to do so, especially when I know that any improvement I make will eventually just get cloned.

Anyway, a few MRR ESPE boards are still available for those who are interested.

Update November 11, 2020: Just saw the FYSETC E4 board being posted on the Facebook pages related to ESP32 and Marlin. Guess they have launched it.

Thursday, November 05, 2020

Rewatching "14-sai no Haha" (14æ‰ăźæŻ)

 14-sai no Haha poster.jpg
(Source: http://www.ntv.co.jp/14/, Link via Wikipedia)
 
Many years ago, I wrote this post after watching a few episodes of 14-sai no Haha (14æ‰ăźæŻ; 14-year-old Mother). Since then, I have watched the full series. And recently, I rewatched it again, and cried every episode. I don't remember crying so much when I watched the series back then (like, more than 10 years ago).

It is the same story, same acting, and I am the same person. Except that I have grown older by more than a decade, with a lot more life experience now. I think that makes me better able to empathise with the entire range of emotions being presented in the story, much better than back when I was still much younger. They say a person sheds tears more easily as he or she grows older. I guess that is true. Because I can now better understand what a person is going through. I can empathise, I can sympathise.

And I am no longer trying to suppress my own feelings, I am no longer trying to put up a false front. Maybe that is why too.

My thoughts on the implications of the U.S. 2020 elections

As I write this post, the results of the U.S. elections for 2020 are still being tabulated, with votes (mostly mail-in ballots) still being counted.

But while we still do not know who will be the next U.S. President, and how the seats will be filled in the U.S. Senate and House of Representatives, the votes that have been counted show that a significant portion of U.S. citizens actually voted for Trump and the Republicans.

A significant portion of U.S. citizens have actually voted for racism, nepotism, voter suppression, misogyny, xenophobia, homophobia... they voted against science, against compassion for their fellow human beings, against basic decency.

Is this the United States that we know?

Is this what the United States has become?

Or is it what the United States has been all along, just hidden from our eyes because we chose to look away?

Whatever the results, with this significant portion of the U.S. population actually supporting such ideologies... can the United States still be expected to maintain legitimacy in world leadership?

Four years ago, the rest of the world tried to convince ourselves that it was an anomaly, that we just have to ride out the next four years. But today, the rest of the world has been shown a very different view... what lies ahead? Can we ever trust the United States again, knowing that, no matter who the U.S. President is, a significant portion of Americans tout a very different kind of ideology from what it used to represent?

Wednesday, November 04, 2020

濘れるは難しい Forgetting is difficult

濘れるは難しい
生きどいる限り
濘れるこべは、ă§ăăŸă›ă‚“
 
Forgetting is difficult
As long as I am alive
Forgetting is... impossible

(Photo taken when I went to watch Violet Evergarden the Movie for the fifth time.)

Raspberry Pi 4B change USB boot order and hostname

This is really more a note to self so that I remember how to do things.

To change the boot order for a Raspberry Pi 4B:
sudo -E rpi-eeprom-config --edit
This opens up the current configuration.
Add in:
BOOT_ORDER=0xf14
to try to boot from USB first, then SD card.
BOOT_ORDER=0xf41
is the default, which will try to boot SD card, then USB.

On Ubuntu systems, to change the hostname:
sudo hostnamectl set-hostname newNameHere
Also,
/etc/hosts
should be edited to replace any occurrences of the old hostname with the new one. Then reboot. (Read about this method here.)

Tuesday, November 03, 2020

Raspberry Pi 400 launched

By now, most people would know that the Raspberry Pi 400 has been launched.


The Raspberry Pi 400 is similar to the Raspberry Pi 4B in terms of hardware, except that it has a higher clock speed of 1.8GHz instead of 1.5GHz. Unlike the RPi4B which comes with 2GB, 4GB, or 8GB of RAM, the Raspberry Pi 400 comes with 4GB of RAM. It houses the hardware inside a keyboard, like older computers of the 1980s. All that is needed is power supply, monitor (or even TV with HDMI input) and a mouse (or not...).

Personally, I like the concept. However, the keyboard layouts are limited right now, and I do like having the convenience of a JP106 keyboard layout (but I can live with US keyboard layout) as I need to enter Japanese. My only gripe is that the Raspberry Pi 400 continues to use micro HDMI... on the RPi4B, I can understand using micro HDMI because you need to squeeze two ports onto the small board. But the Raspberry Pi 400 has a lot more space now, so there is no real reason not to use full-size HDMI ports.

I also hope they can make 8GB RAM versions too. This will really make the Raspberry Pi 400 a serious contender for mini desktop PC replacements. Let's see if they make such a move in the coming months.

Sunday, November 01, 2020

Trying to install XFCE on Ubuntu 20.10 using a Raspberry Pi 4B

Note: This was about a failed attempt to install Twister UI in Ubuntu 20.10 on the Raspberry Pi 4B. Don't waste your time reading if you want a working solution.
 
Twister OS is a desktop OS for the Raspberry Pi 4B that allows the user to change between various themes that look like Windows and MacOS. It also comes with BOX86 which allows the Raspberry Pi 4B to run Linux x86 programs on ARM. The easiest way to get it up and running is to download the current release and flash it onto a SD card or USB drive.

However, as of November 1, 2020, Twister OS is still based on 32-bit Raspberry Pi OS. But there are 64-bit OSes for the Raspberry Pi 4B now, like Ubuntu. Ubuntu 20.10 even has a desktop version that works on the Raspberry Pi. At the same time, the creators of Twister OS recently developed Twister UI, which allows the themes of Twister OS to be easily installed on XFCE-based desktops like Linux Mint XFCE and Xubuntu.

So I thought, why not install Ubuntu 20.10 Server, then install XFCE desktop on that, and then try to install Twister UI to see if I can get a 64-bit version of Twister OS?

First, I downloaded Ubuntu 20.10 Server from here and flashed it onto a 128 GB USB flash drive. My Raspberry Pi 4B's EEPROM has already been previously updated to allow USB boot.

Then, I followed the instructions here to log in and install a desktop. For first boot, the username is ubuntu and password is ubuntu, and you will be prompted to change the password after logging in. To install the desktop, first update the system:
sudo apt update
sudo apt upgrade
Then, use the following to install XFCE desktop.
sudo apt install xubuntu-desktop
It will take a while. During the installation, I was asked about display manager, I chose lightdm which is supposed to be the default display manager for xubuntu.

Once the desktop has been installed, I rebooted the system. I was going to follow the instructions on the Twister UI page to install it. Which was to run the following command in a terminal window:
wget https://raw.githubusercontent.com/FlameKat53/Twister-UI-Patcher/main/install.sh && chmod +x ./install.sh && ./install.sh && rm install.sh

Instead, I was greeted with a black screen as lightdm failed to start. It seemed I had to follow something here. Basically, delete the file
/usr/share/lightdm/lightdm.conf.d/50-unity-greeter.conf
Then, create a file called
/usr/share/lightdm/lightdm.conf.d/50-xfce-greeter.conf
with the following contents:
[SeatDefaults]
greeter-session=unity-greeter
user-session=xfce
To do this, I had to remove the USB flash drive, plug it into my PC, then use my PC to delete/create the files.

Booting again from the USB flash drive now allowed me to get into the graphical login page and I was able to start the desktop. But it greeted me with a big error window on entering the desktop and asked me if I wanted to report the crash. At this point, I basically decided to stop trying stashed this idea away.
 
Update November 2, 2020: I am going to give it another try again when I have time. The next method would be to install Ubuntu 20.10 Desktop, then use
sudo apt install xubuntu-desktop
to install XFCE.