• 1
  • 2
  • 3(current)
  • 4
  • 5
  • 7
Interlaced output without conversion?
#31
hello, i'm also looking forward a support of proper interlaced content in xbmc.
there are a few things i dont get clearly here so i try to make things more clear for me and hopefuly for those interested in this problem as well...
unfortunately i have to do with my weak knowledge so i apologise in advance for any mystake or erroneous thinking i might have in the next lines;-)

i read a few things here:
"the other thing, i understand you want interlaced output:
as far as i know this is not possible with mplayer"
1. mplayer deinterlaces the video stream
2. mplayer outputs full fields(non-interlaced) to gfx card
2. the nvidia card itself converts it to interlaced video again using its video output chip"

"mplayer works with deinterlaced video internally"

"however since we recieve a progressive stream from mplayer it's not possible to actually do that"

well what i dont get is that when i play one of these interlaced pal sequences in my mplayer build in windows :nothing is deinterlaced: both fields are perfectly weaved. (so not very pretty on a computer screen of course)
so "for me" it is not exactly true to say that mplayer "deinterlaces video streams"  or "mplayer works with deinterlaced video internally" because with my very normal build i have on screen what i expect: a video with 2 weaved fields creating an interlaced frame.
now what i understand from progressive/interlaced stuff is that whatever the video you are watching the tv encoder is being sent a 720*576/480 frame every 1/25th s.
and every 1/50th s it sends a field (even or odd) of that frame to the tv,
once both fields have been sent the video buffer is updated with a new frame etc.(every 1/25 s)

so if your signal is interlaced then wonderful:
every 1/25th s, the tv encoder receives a (720*576\480) frame made of 2 weaved fields (720*288\240), it sends the even field to the tv then 1/50th s later it sends the odd field and on tv you ve got the original smooth movement of the original video. no processing has been done as the tv encoder does the job.

now if your video is progressive then well it works all the same way except that the tv encoder creates two fields where there were none in the progressive frame. but nevermind there are much less differences between these two created fields than in two real fields from an interlaced video so that playing them at 50 hz on a tv it will look like a 25fps film. adding some flicker reduce function might help getting the picture more stable as well in case we deal with gui gfx etc...

so what do you mean "however since we recieve a progressive stream from mplayer it's not possible to actually do that"
what do you mean by a progressive stream? a 25fps 720*579/480 stream?
that's what a tv encoder has to receive in order to work no? but that 720*576/480 signal can contain either a progressive 720*576 frames video or an interlaced field based video at 50hz.

now as for interlaced video display, xbmc/mplayer has to output one original line of video for one line on the tv other wise we have those combing effect, so we cant use the user-input screen boundaries, instead we have to output one line for one line with no resize (or as sneals said a field based resize has to be applied but i too think it's not necessary unless we deal with 16/9 video to 4/3 tv)

well i dont know how wrong i am now but i hope someone can understand me and/or correct me if i,m all wrong
thx for this great player anyway!
Reply
#32
xbmc scales all videos due to the overscan compensation. unless we get mplayer to split the fields for us (or we do that ourselves) you're not going to get a field based rescale, so you're get combing artefacts).

i'm not sure how tv encoders do it, but the xbox output hardware can be used in field rendering mode, where you draw each interlaced field separately. this in theory means we can render interlaced source video with rescaling very well, but only if the source is split into fields.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#33
ok, i'm talking here as a novice of mplayer, but the last time i played with this, i was experimenting with the 'il' filter to '-vf'

i really don't want to seem patronising, but this seems utterly perfect.

il=[d|i][s][:[d|i][s]]
(de)interleaves lines. the goal of this filter is to add the ability to process interlaced images pre-field without
deinterlacing them. you can filter your interlaced dvd and play it on a tv without breaking the interlacing. while
deinterlacing (with the postprocessing filter) removes interlacing permanently (by smoothing, averaging, etc) deinter­
leaving splits the frame into 2 fields (so called half pictures), so you can process (filter) them independently and
then re-interleave them.
d deinterleave
i interleave
s swap fields (exchange even & odd lines)

when i tried this on my desktop pc with vga output, i ended up with a two pictures, each half the normal height - i'm assuming they are 1/25th of a second 'away' from each other - my eyes aren't *that* sensitive!

surely this is the exact facility you've been looking for? a way to extract each field seperately, so that it can be rendered separately?

again, apologies if i have misunderstood something very basic and ended up sounding condescending!

cheers,
gavin.
Reply
#34
worth looking into at the least. i haven't poked around in mplayer's setup extensively myself - frodo did most of that - but i'll certainly look into this after 1.0 (sorry it's too big a job to implement before that).
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#35
yep no worries, i understand very well the need to freeze the features - just so long as i know it's "in the pipeline."

would this be worth sticking into the 'official' todo list, so that i don't have to keep nagging the devels every month or two? :)

cheers,
gavin.
Reply
#36
i think billou2k is right. it should result in a perfect picture if we feed the gfx buffer with (unscaled(!Wink/weaved) frames (so fields are in sync with tv fields). for this to achieve the conexant chip should be in 720x576/no_flicker_filter mode.
i tested this with my old nvidia/conexant card and it worked (dvd-s, overscan).

another way would be to bob the material, double lines (scale y*2) and send 50fps to gfx buffer (one field will be grabbed every 1/50th second). with this you can even scale the picture but maybe needs too much power...
as an alternative bob/scale/weave could be used by sending 25fps to buffer.
Reply
#37
the playback of field-based video in mplayer hasn't been handled correctly, giving choppy playback to things like video recorded from a tv source (interlaced, field-based video). is there anything in the works to get this working? thanks for any info.
Reply
#38
just wondering...
Reply
#39
since we use mplayer, it's mplayer that needs this fixed. try ask them if they are gonna adress it :lol:
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#40
i know - they don't have a proper way for requests, just a mailing list. it's hard to get a handle on where they are with things w/o a list of upcoming features and such.

just wondering if anyone here communicates w/ them and knew anything about their desire to address this one. thanks.
Reply
#41
the support for this is already present in mplayer with the 'il' filter, xbmc is simply not using it.

please see this thread:

http://www.xboxmediaplayer.de/cgi-bin....8;st=30

cheers,
gavin.
Reply
#42
don't need to weave or bob, the xbox supports proper interlaced output.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#43
if i play a avi interlaced or a dvd with interlaced coding (not progressive), xbmc plays it interlaced but with the order of field (odd, even or upper, lower) inverted, so the play results with the motion parts of the picture that flash a lot.
to verify this issue, you have to remove all the smoothing options in the 'my video' preferences.

if i play the same dvd interlaced with the xbox dvd player software all goes normal, with the field in the right order.

i thinks this is a problem with mplayer, maybe an option in the preferences have to be inserted.

any idea?.
thanks
xenio
Reply
#44
i did some try with the option in mplayer.conf:
il=s (for swap the field)
lavdopts=bug=5 (the xvid bug for interlace)
but there is no change...

please investigate i think this is a major issue.

xenio.
Reply
#45
Sad 
hmm, have you activated force deinterlace in xbmc?, or are you asking/wanting xbmc to pass on the interlace video as is to the tv?
...if the later then you should read this thread to see if same => http://www.xboxmediaplayer.de/cgi-bin....4;t=668

ps! you might also want to look at this suggestion => http://www.xboxmediaplayer.de/cgi-bin....;t=4507
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
  • 1
  • 2
  • 3(current)
  • 4
  • 5
  • 7

Logout Mark Read Team Forum Stats Members Help
Interlaced output without conversion?0