You are not logged in.

#1 2009-09-23 17:20:30

Mad Fish
Member
Registered: 2009-09-22
Posts: 295

[SOLVED]MKV player with linking support

Matroska container allows to link some portions of the movie from external files. It's oftenly used in TV series (specifically, anime), because opening and ending sequences are the same all the time.

However, I've failed to find any player with support of this feature in linux.

Please help.

Last edited by Mad Fish (2009-09-26 15:54:54)

Offline

#2 2009-09-24 00:07:51

Diaz
Member
From: Portugal
Registered: 2008-04-16
Posts: 366

Re: [SOLVED]MKV player with linking support

I wish there was. It is bad when i want to see my mkv's animes that are linkd and it doesn't link.

Smplayer is the player that i use, it uses the mplayer, so if it is a problem that has to be fixed it has to be fixed there. I think that gstreamer players don't support it also, neither phonon based.

Offline

#3 2009-09-24 02:04:48

skottish
Forum Fellow
From: Here
Registered: 2006-06-16
Posts: 7,942

Re: [SOLVED]MKV player with linking support

There's a Mplayer fork that apparently has some support for it:

http://tomlowshang.blogspot.com/2009/05 … rs-vi.html

Offline

#4 2009-09-24 11:27:38

Mad Fish
Member
Registered: 2009-09-22
Posts: 295

Re: [SOLVED]MKV player with linking support

I'm trying to build it this way:

git clone git://repo.or.cz/mplayer.git mplayer.git
cd mplayer.git
git clone git://git.ffmpeg.org/ffmpeg/
./configure --enable-enca
make

And I'm getting errors in libswscale:

swscale.c: In function 'sws_format_name':
swscale.c:488: error: 'PIX_FMT_YUV420PLE' undeclared (first use in this function)

Last edited by Mad Fish (2009-09-24 11:29:52)

Offline

#5 2009-09-26 14:38:22

Mad Fish
Member
Registered: 2009-09-22
Posts: 295

Re: [SOLVED]MKV player with linking support

The patch described here (more old method) works, but not ideally. Linked video segments have worse quality and drop frames eventually.
http://tomlowshang.blogspot.com/2009/05 … ers-v.html

I really need help with building the one mentioned earlier (new method - http://tomlowshang.blogspot.com/2009/05 … s-vi.html).

Offline

#6 2009-09-26 14:48:11

skottish
Forum Fellow
From: Here
Registered: 2006-06-16
Posts: 7,942

Re: [SOLVED]MKV player with linking support

I found this searching for your error. It's not for your problem specifically, but it's worth taking a look. Post #15 suggests using swscale from the FFmpeg's 0.5 branch:

http://ubuntuforums.org/showthread.php? … 449&page=2

By the way, are there any Arch forum safe example files that anyone has links to? I didn't see any that I could identify at http://samples.mplayerhq.hu/

Offline

#7 2009-09-26 14:55:43

Mad Fish
Member
Registered: 2009-09-22
Posts: 295

Re: [SOLVED]MKV player with linking support

But where can I get so old mplayer sources?
It is a bit strange method, anyway.

Offline

#8 2009-09-26 14:59:37

skottish
Forum Fellow
From: Here
Registered: 2006-06-16
Posts: 7,942

Re: [SOLVED]MKV player with linking support

Mad Fish wrote:

But where can I get so old mplayer sources?
It is a bit strange method, anyway.

You don't need the old Mplayer sources. According to the link above, you need the swscale folder from the FFmpeg 0.5 branch which is what Arch has in the official repos.

Offline

#9 2009-09-26 15:52:22

Mad Fish
Member
Registered: 2009-09-22
Posts: 295

Re: [SOLVED]MKV player with linking support

In that thread (http://ubuntuforums.org/showthread.php? … 449&page=2) there was really better method.

I've only had to apply patch from Arch's mplayer to fix gcc (?) optimization issue (change -O4 to -O2).
The patch is modified a bit to affect all gcc compilers, not only 4.4.0 as it was in abs package.

Patch contents (liba52_gcc_bug.patch):

--- mplayer/configure.old    2009-04-16 12:02:10.000000000 +0200
+++ mplayer/configure    2009-05-22 15:23:38.000000000 +0200
@@ -6410,6 +6410,7 @@
 def_liba52='#undef CONFIG_LIBA52'
 def_liba52_internal="#undef CONFIG_LIBA52_INTERNAL"
 if test "$_liba52_internal" = yes ; then
+    test "$cc_vendor" = gnu && CFLAGS=$(echo $CFLAGS|sed "s/ *-O4 */ -O2 /")
   _liba52=yes
   def_liba52_internal="#define CONFIG_LIBA52_INTERNAL 1"
   _res_comment="internal"

Build procedure:

git clone git://repo.or.cz/mplayer
cd mplayer
git checkout origin/mt
git submodule init
git submodule update
patch -p0 < liba52_gcc_bug.patch
./configure --enable-enca
make

The resulting mplayer build is able to play all my test videos. Yeah, finally.
There were some issues on the chapter borders, but, well, it works.

SMPlayer, however, doesn't calculate movie length properly with it (still thinks that there are no additional chapters), but plays.

Offline

Board footer

Powered by FluxBB