Converting MP4 with subtitles for Roku

28 Oct 2015 06:37

I recently bought a HiSense Roku TV and it's awesome (I've never had a Roku device before).

The problem is that even though the TV has an USB port and Roku has a "Roku Media Player" channel that allows you plan video and audio files from the USB disk, not all formats are accepted.

Interestingly Roku has support for subtitles, but the support is quite limited. I found out that one of the options that work nicely is to have the subtitles embedded into the movie itself, given the movie uses Matroska container (.mkv files).

On a side note, if the files are not encoded "properly" (Roku only supports a selection of video and audio codecs), you'll need to re-encode the video using ffmpeg or avconv, but how to do it is much simpler to Google than how to deal with the subtitles. In this post I'll only show you how to deal with the subtitles.

So let's see what we have:

quake@quake-laptop:~/movies$ ls
movie.mp4 movie.txt

There's a MP4 file and subtitles in a separate file.

quake@quake-laptop:~/movies$ avconv -i movie.mp4 -f microdvd -sub_charenc cp1250 -i movie.txt -c:v copy -c:a copy movie-with-subs.mkv

Let's look at this command part by part:

  • avconv — the tool we're using
  • -i movie.mp4 — the movie to convert
  • -f microdvd — format for the subtitles (this part is actually optional)
  • -sub_charenc cp1250 — the encoding of the subtitles (optional if UTF-8)
  • -i movie.txt — the subtitles
  • -c:v copy -c:a copy — copy the audio and video stream (rather than re-encode)
  • movie-with-subs.mkv — the output file

Which is very nice is this command will not do any re-coding, it will only repackage the movie from MPEG to Matroska container and convert the subtitles. This means there's no quality lost and it only takes a few seconds.

As noted above if the file is not playable on Roku (or there's audio missing) you may actually need to transcode the file (omitting or modifying the -c:v copy -c:a copy line).

Comments: 0

Inea Mistrzowie

08 Jun 2015 13:21

Jak pewnie wiecie, Lech, którego stadion sponsoruje Inea zdobył tytuł mistrza Polski w piłkę kopaną.

Ale Inea to nie tylko mistrzowie w piłkę, również mistrzowie czytania ze zrozumieniem.

Oto moja komunikacja z nimi. Muszę przyznać, że byłem nieco wkurzony podniesieniem ceny Internetu i zwalanie tego na klientów ("odpowiadając na zapotrzebowanie klientów na szybszy Internet podnieśliśmy jego prędkość do 100 Mbit/s, ale żeby zrównoważyć poniesione koszty podnieśliśmy też jego cenę o 5 złotych na miesiąc"):

Dzień dobry,

Od kilku dni obserwujemy niepokojąco wolno działający Internet. Dzisiaj postawiłem przetestować prędkość korzystając z narzędzi typu speedtest.pl oraz http://speedtest.inea.pl/ i uzyskane wyniki oscylowały w granicach 20-50 Mbit/s. Testy przerowadziłem w odpowiednich warunkach (połączenie po kablu, nieobciążony komputer, brak innych korzystających z Internetu urządzeń). Ściąganie testowego 1GB pliku z serwerów Inea trwało ponad 3 minuty:

user@debian:~$ curl http://speedtest.inea.pl/1GB.test > /dev/null
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed
100 1024M 100 1024M 0 0 5610k 0 0:03:06 0:03:06 ::— 5573k

Jak widać raportowana prędkość to 5.6*8 ~ 50 Mbit/s. Ściąganie testowego pliku 10 MB z "zewnątrz" sieci Inea:

user@debian:~$ curl http://lastlook.pl/~quake/test10mb.html > /dev/null
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed
100 9.9M 100 9.9M 0 0 2262k 0 0:00:04 0:00:04 ::— 2262k

Prędkość jeszcze gorsza: około 20 Mbit/s. Proszę o poprawienie przepustowości do zgodnej z umową (100 Mbit/s).

Dziękuję, Piotr Gabryjeluk

Odpowiedź Inei:

Dotyczy: problemy techniczne
Reklamacja została rozpatrzona przez: Dział Korespondencji i Reklamacji
Podstawa prawna rozstrzygnięcia: § 25 ust. 1 Regulaminu Świadczenia Usług Telekomunikacyjnych
Rozstrzygnięcie reklamacji: odmowa

Szanowny Panie,
działając w imieniu INEA S.A. (dalej „Dostawca usług”) z siedzibą w Poznaniu, ul. Klaudyny Potockiej 25, 60-211, adres do korespondencji: Wysogotowo, ul. Wierzbowa 84, 62-081 Przeźmierowo; niniejszym, na podstawie art. 106 ustawy z dnia 16 lipca 2004 roku – Prawo telekomunikacyjne (Dz. U. 2014 poz. 243 – „Ustawa”) w odpowiedzi na reklamację złożoną w dniu 19 marca 2015 roku chciałabym opisać wynik postępowania reklamacyjnego w przedstawionej sprawie.

W odpowiedzi na Pana uwagi dotyczące problemów technicznych z działaniem usługi dostępu do sieci Internet uprzejmie informuję, że przeprowadzona diagnostyka nie wykazała występowania u Pana opisanych problemów z działaniem łącza. Opisane nieprawidłowości wskazują na nieprawidłową konfigurację Państwa sieci wi-fi. Jednocześnie w przypadku połączenia bezprzewodowego Regulamin Świadczenia Usług Telekomunikacyjnych § 12 ust. 3 określa, iż jakość oraz prędkość transmisji danych jest zależna od licznych czynników zewnętrznych niezależnych od Dostawcy Usług (maksymalna prędkość obsługiwana przez terminal abonencki, obciążenie sieci etc.). Ponadto, sygnał doprowadzony do Państwa lokalu jest prawidłowy, a opisane nieprawidłowości są charakterystyczne dla zewnętrznych zakłóceń sieci wi-fi. Modem oferowany przez Dostawcę usług oferuje możliwość właściwej konfiguracji Państwa sieci bezprzewodowej, tak, aby zminimalizować wpływ zakłóceń zewnętrznych na parametry działania sieci bezprzewodowej.

Mając na uwadze powyższe okoliczności, nie odnajduje podstaw do uznania wniesionej reklamacji, którą tym samym należy uznać za niezasadną i udzielić odpowiedzi odmownej.

Ufam, iż udzielona odpowiedź spotka się z Pana uznaniem, a nasza dalsza współpraca będzie przebiegała pomyślnie dla obu Stron.

Z wyrazami szacunku

Agnieszka Marczak
Specjalista ds. Korespondencji

Trochę się zdziwiłem, że piszą o konfiguracji wi-fi jeśli wyraźnie zaznaczyłem, że piszę o problemach na kablu, więc pociągnąłem temat:

Dzień dobry,

Dlaczego w odpowiedzi na moją reklamację, sugerują Państwo, że problem był związany z nieprawidłową konfiguracją sieci wi-fi, jeśli w treści reklamacji wyraźnie napisałem, że:

"Testy przerowadziłem w odpowiednich warunkach (połączenie po kablu, nieobciążony komputer, brak innych korzystających z Internetu urządzeń)."

Czy mam rozumieć, że nikt nie przeczytał nawet treści reklamacji?

Dziękuję,
Piotr Gabryjeluk

Na to oni:

Dotyczy: problemy techniczne

Reklamacja została rozpatrzona przez: Dział Korespondencji i Reklamacji

Podstawa prawna rozstrzygnięcia: § 25 ust. 1 Regulaminu Świadczenia Usług Telekomunikacyjnych

Rozstrzygnięcie reklamacji: odmowa

Szanowny Panie,

działając w imieniu INEA S.A. (dalej „Dostawca usług”) z siedzibą w Poznaniu, ul. Klaudyny Potockiej 25, 60-211, adres do korespondencji: Wysogotowo, ul. Wierzbowa 84, 62-081 Przeźmierowo; niniejszym, na podstawie art. 106 ustawy z dnia 16 lipca 2004 roku – Prawo telekomunikacyjne (Dz. U. 2014 poz. 243 – „Ustawa”) w odpowiedzi na reklamację złożoną w dniu 13 kwietnia 2015 roku chciałabym opisać wynik postępowania reklamacyjnego w przedstawionej sprawie.

Odnosząc się do zgłoszonych przez Pana uwag uprzejmie informuję, że szczegółowa odpowiedź została udzielona w odpowiedzi na reklamację z dnia 30 marca 2015 roku numer 0235176. Wskazuję, iż Dostawca usług nie będzie się ponownie odnosił do poruszanych przez Pana kwestii, oraz stanowisko Dostawcy usług we wniesionej sprawie pozostaje niezmienione.

Jednocześnie informuję, że przeprowadzona diagnostyka nie wykazała występowania u Pana opisanych problemów z działaniem łącza jak i opisane nieprawidłowości wskazują na nieprawidłową konfigurację Państwa sieci wi-fi.

Mając na uwadze powyższe okoliczności, nie odnajduje podstaw do uznania wniesionej reklamacji, którą tym samym należy uznać za niezasadną i udzielić odpowiedzi odmownej.

Jednakże, jeżeli opisywane przez Pana nieprawidłowości nadal występują, uprzejmie proszę o kontakt poprzez Infolinie Dostawy usług, a Pana sprawa zostanie ponownie rozpatrzona.

Ufam, iż udzielona odpowiedź spotka się z Pana uznaniem, a nasza dalsza współpraca będzie przebiegała pomyślnie dla obu Stron.

Z wyrazami szacunku

Agnieszka Marczak

Specjalista ds. Korespondencji

Dużo (za dużo?) pustych słów. Zero konkretów, a zatem ja:

Dzień dobry!

Informuję, że nie w obecnej chwili problemy z usługą nie występują.

Czy mają Państwo coś na przeciwko, żebym opublikował naszą korespondencję (tj. oryginalną reklamację, następnie Waszą odpowiedź, potem moje pytanie o to, czy ktokolwiek przeczytał treść oryginalnej reklamacji, a potem niniejszą odpowiedź), na moim blogu?

Jeśli nie wyrażają Państwo zgody, proszę o informację z informacją dlaczego.

Dziękuję,
Piotr Gabryjeluk

Odpowiedzi (w przewidzianym na odpowiedź czasie 14 dni) brak, a zatem notka na blogu jest!

Comments: 0

Svn2github problems (May update)

24 May 2015 16:23

UPDATE2: The service is now resumed.

UPDATE: The server is now replicated with no data loss. RAID is still recovering though (copying data from one disk to another), so to not overwhelm the whole system I'll re-enable svn2github syncing only after that is done.

After migrating svn2github.com (and several other services) to a new server everything was going smoothly for a month or two, until recently I received an alert regarding RAID degradation.

One of the disk in the RAID failed (reading /dev/sda just fails) and in order to prevent the other disk from failing I disabled any write operation (read: updates) for the svn2github-controlled repos.

A new server is on the way, but unfortunately, due to the weekend, it will be back only on Monday. Once the data is migrated I'll re-start updating the repos again.

Expect an update on this on Tuesday :-)

Comments: 2

Svn2github problems

12 Dec 2014 18:31

I'm the one behind the svn2github.com service. The service was started a few years ago to help me and my team start a PHP project that we wanted to host in Git. The PHP libraries we wanted to use were hosted in Subversion. Given the Composer was not too popular we decided to put the links to the libs into the repo using git submodules.

Given how basic the git-svn is, and how easy it is to have a Git repo in GitHub, we thought, hey, there must be an automatic mirroring tool to clone publicly available SVN repos to GitHub. The service would be probably called svn2github.com.

Such service was not there and we struggled looking for one, but again, since this was so easy to set up, I decided that I can do it myself! So I did.

Svn2github.com operated with only minor administration from my side, but at some point I realized there are over 500 repos mirrored by it, which was fine.

But recently the server svn2github is hosted on started to experience some problems, mostly with I/O throughput and I connected them directly to the operation of the svn2github processes.

Basically with so many repositories stored at the disk, the periodical task to do just git svn rebase and git push if there were any changes might be challenging due to just the number of IO operations needed to accomplish this. Also at some point the (most important) data just stops fitting in cache and the disk IO needs to be requested each time an FS operation is needed.

The problem became apparent to me, because of the other services that I run on the same hardware, mainly the database. It started to be terribly slow meaning all the other apps would take forever to do even a basic task.

I needed to suspend the svn2github operation to let the more important services continue to run, but I planned to bring this useful service back to life. As often in such cases I want to add more features while doing that and make the updates more clever, so they don't consume so much server "life" as they were.

The first step though is restarting svn2github, which means you can now add more SVN repos to be mirrored to GitHub and the repos will be synchronized with one small exception. Any repository that contains more than 2000 files (including the .git files) will not be automatically updated.

I'll update the GitHub descriptions of those "paused" mirrors and if you want them to be "resumed", I'll ask you to contact me and let me know. This way the service will continue to work for the small repos (which are the majority), which don't cause so much trouble for the machine, while the big repos would be only updated when requested (I assume most of them were needed "once" and now no-one really needs them in place).

Happy SVN mirroring! See you on svn2github.com!

UPDATE: Some svn2github stats

To give a notion of scale this project is at here are some stats:

Repositories with less than 2000 files each (including the .git files):

Number of them: 482
Total size of them on disk: 19G
Total number of files on disk: 954321
The biggest one: 635M (DevIL)
The smallest one: just 208k (aszip)

Repositiories with over 2000 files in each:

Number of them: 231
The total size: 308G (took 133m58.527s to compute that)
The biggest one: 42G (testingazuan)

Comments: 7

page 1 of 42123...4142next »
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License