Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
24th January 2007, 20:12 | #1 | Link |
Registered User
Join Date: Jan 2007
Posts: 359
|
SMPlayer - a new frontend for MPlayer
Hi!
I'm developing a new frontend for mplayer. It's multiplatform, it can run in windows and linux. About SMPlayer SMPlayer is a complete media player for Windows and Linux. It uses the award-winning MPlayer as playback engine which is capable of playing most video and audio formats (avi, mkv, wmv, mp4, mpeg...). It can also play and download Youtube videos. One of the most interesting features of SMPlayer: it remembers the settings of all files you play. So you start to watch a movie but you have to leave... don't worry, when you open that movie again it will resume at the same point you left it, and with the same settings: audio track, subtitles, volume... Some other interesting features:
Homepage: http://smplayer.sourceforge.net Last edited by rvm; 10th May 2013 at 01:10. |
24th January 2007, 20:19 | #2 | Link |
retired developer
Join Date: Oct 2002
Location: Canada
Posts: 8,978
|
cool! trying!
can I disable the "remembering for every file" and have global settings?
__________________
Detritus Software |
24th January 2007, 20:30 | #4 | Link |
retired developer
Join Date: Oct 2002
Location: Canada
Posts: 8,978
|
Seems a good start!
Could be cool to add: * Make bottom GUI smaller (buttons and bars) * Crop to ratio X * Deinterlace / IVTC Bugs: * Scroll bar doesn't work Thanks!
__________________
Detritus Software |
25th January 2007, 02:52 | #6 | Link |
Registered User
Join Date: Jan 2007
Posts: 359
|
It has some deinterlace filters, but I'm afraid I don't know what IVTC is.
Do you mean the slider under the video area? It works for me. Well, currently it doesn't work if you try to move it using keys or the mouse wheel, but it works if you drag it. It also doesn't work well when playing a dvd, but this is a problem of mplayer, which doesn't report the movie absolute current time, so the slider will always be very near of the beginning. Done in tonight release (070124-11). Last edited by rvm; 25th January 2007 at 02:56. |
25th January 2007, 02:55 | #7 | Link |
retired developer
Join Date: Oct 2002
Location: Canada
Posts: 8,978
|
Code:
ivtc[=1] Experimental ’stateless’ inverse telecine filter. Rather than trying to lock on to a pattern like the detc filter does, ivtc makes its decisions independently for each frame. This will give much better results for material that has undergone heavy editing after telecine was applied, but as a result it is not as forgiving of noisy input, for example TV capture. The optional parameter (ivtc=1) corresponds to the dr=1 option for the detc filter, and should be used with MEncoder but not with MPlayer. As with detc, you must specify the correct output framerate (−ofps 24000/1001) when using MEncoder. Further development on ivtc has stopped, as the pullup and filmdint filters appear to be much more accurate. pullup[=jl:jr:jt:jb:sb:mp] Third-generation pulldown reversal (inverse telecine) filter, capable of handling mixed hard-telecine, 24000/1001 fps progressive, and 30000/1001 fps progressive content. The pullup filter is designed to be much more robust than detc or ivtc, by taking advantage of future context in making its decisions. Like ivtc, pullup is stateless in the sense that it does not lock onto a pattern to follow, but it instead looks forward to the following fields in order to identify matches and rebuild progressive frames. It is still under development, but believed to be quite accurate. The jl, jr, jt, and jb options set the amount of "junk" to ignore at the left, right, top, and bottom of the image, respectively. Left/right are in units of 8 pixels, while top/bottom are in units of 2 lines. The default is 8 pixels on each side. Setting the sb (strict breaks) option to 1 will reduce the chances of pullup generating an occasional mismatched frame, but it may also cause an excessive number of frames to be dropped during high motion sequences. Conversely, setting it to -1 will make pullup match fields more easily. This may help processing of video where there is slight blurring between the fields, but may also cause there to be interlaced frames in the output. The mp (metric plane) option may be set to 1 or 2 to use a chroma plane instead of the luma plane for doing pullup’s computations. This may improve accuracy on very clean source material, but more likely will decrease accuracy, especially if there is chroma noise (rainbow effect) or any grayscale video. The main purpose of setting mp to a chroma plane is to reduce CPU load and make pullup usable in realtime on slow machines. NOTE: Always follow pullup with the softskip filter when encoding to ensure that pullup is able to see each frame. Failure to do so will lead to incorrect output and will usually crash, due to design limitations in the codec/filter layer. filmdint[=options] Inverse telecine filter, similar to the pullup filter above. It is designed to handle any pulldown pattern, including mixed soft and hard telecine and limited support for movies that are slowed down or sped up from their original framerate for TV. Only the luma plane is used to find the frame breaks. If a field has no match, it is deinterlaced with simple linear approximation. If the source is MPEG-2, this must be the first filter to allow access to the field-flags set by the MPEG-2 decoder. Depending on the source MPEG, you may be fine ignoring this advice, as long as you do not see lots of "Bottom-first field" warnings. With no options it does normal inverse telecine, and should be used together with mencoder −fps 30000/1001 −ofps 24000/1001. When this filter is used with mplayer, it will result in an uneven framerate during playback, but it is still generally better than using pp=lb or no deinterlacing at all. Multiple options can be specified separated by /.
__________________
Detritus Software |
25th January 2007, 02:58 | #8 | Link |
retired developer
Join Date: Oct 2002
Location: Canada
Posts: 8,978
|
oh, some PP could be cool too
thanks!
__________________
Detritus Software |
25th January 2007, 07:18 | #9 | Link | |
Registered User
Join Date: Nov 2006
Posts: 56
|
Quote:
Something like X user-selectable levels, each one corresponding to one major type of material (grainy/denoised/with blocking etc. etc.). And it should rely not only on -vf pp, but also on noise/hqdn3d, unsharp/smartblur. |
|
25th January 2007, 13:30 | #10 | Link |
retired developer
Join Date: Oct 2002
Location: Canada
Posts: 8,978
|
PP is not denoise, sharp nor blur, but freeking blocks removal
__________________
Detritus Software |
26th January 2007, 00:37 | #11 | Link |
Registered User
Join Date: Jan 2007
Posts: 359
|
I've just uploaded the source code of version 070125-11 (binary for windows, tomorrow), which adds several new video filters:
* denoise (normal) = hqdn3d * denoise (soft) = hqdn3d=2:1:2 (I find the default hqdn3d too strong) * deblock = pp=vb/hb * dering = pp=dr (in fact I don't really know what this filter does, I can't see any difference in the image) * Add noise, which adds a little bit of noise to the image. Could be useful to "cover" the blocks or after a denoise filter, so the image won't be so extremely clean. I didn't know about the unsharp and smartblur filters. Maybe I'll take a look later. I didn't add an automatic postprocessing filter, first of all because I've never used it so I don't know which are the best parameters for it (-vf pp -autoq 6 is enough?). And second because with the above provided video filters the user can use the appropriate filters according to the video image. About the ivtc filter... this is for ntsc videos, isn't it? First of all I can't test it, I don't have any. Anyway manpage says about using it along with -ofps, isn't that only for mencoder? Ah, I forgot. Yesterday release added the possibility to use the mouse wheel to move through the video. I find this feature very interesting. Last edited by rvm; 26th January 2007 at 00:43. |
26th January 2007, 01:07 | #12 | Link |
retired developer
Join Date: Oct 2002
Location: Canada
Posts: 8,978
|
there are ivtc filters (for NTSC) that don't require FPS. The last one in the list IIRC.
__________________
Detritus Software |
30th January 2007, 01:33 | #13 | Link |
Registered User
Join Date: Jan 2007
Posts: 359
|
Version 070129-2 should fix the problems with the time slider. Now besides dragging it, it should work clicking at any point of the bar. And now it will display in the status bar the time you would go while dragging it.
Source code is already available for this version, but the binary for windows won't be available until tomorrow. I also made some screenshots of smplayer. You can see them here. |
30th January 2007, 02:32 | #14 | Link | |
Registered User
Join Date: Dec 2006
Location: Heidelberg (DE), Kraków (PL)
Posts: 519
|
Quote:
Hope to test your solution within the next couple of days. Good luck with your projects!
__________________
"Only two things are infinite: the universe and human stupidity, and I'm not sure about the former."
|
|
30th January 2007, 17:03 | #16 | Link |
Registered User
Join Date: Jan 2007
Posts: 359
|
Maybe it's a little bit early to make translations, this is still an alpha version, current texts may vary, new texts could be added, and there are releases almost every day. So it could be difficult to keep a translation up to date.
Said that, yes, translations are possible and in fact they should be very easy to do. You need Linguist, which is a tool included in the Qt toolkit (I explain how to get it in smplayer web page). Here is a screenshot: To translate to French for example, you have to create a smplayer_fr.ts file (you can use the smplayer_es.ts included in the sources as a base, or in other words: open smplayer_es.ts in Linguist and save it as smplayer_fr.ts). Open that file in Linguist and translate all messages. Now you would send that file to me and I would create a smplayer_fr.qm from it, which would be automatically loaded by smplayer if the desktop language is set to French. Last edited by rvm; 30th January 2007 at 17:08. |
31st January 2007, 00:35 | #18 | Link |
Registered User
Join Date: Nov 2006
Posts: 56
|
Some filtering suggestions to think about :
deblock -vf-add pp=ha:16:39/va (light) -vf-add pp=ha:48:32/va (moderate) -vf-add pp=ha:96:8/va (strong) Might also be useful a switch for less powerful systems... Something like hb:a/vb:a and the same flatness/threshold values like above. dering I'm not very happy about it. IMO it shouldn't be used in a default configuration. autolevels That luma stretch is a valuable asset sometimes. Might be worth including as an optional switch. noise -vf-add noise=8hp:2hp Pretty conservative values. Some people would rather go for higher ones. One special case worth mentioning : movies/videos (the latter being much more frequent) with high temporal complexity. I'd suggest using a. higher values, and b. uah instead of hp. denoise -vf-add hqdn3d=2:2:3:2 (light) -vf-add hqdn3d=4:3:5:3 (moderate) scale -sws 2 (used as default) -sws 9 (user-selectable) -vf-add scale=width:-2::0:::::1 Special case : interlaced content. Toggle scale=width:-2:1:0:::::1. (de)interlace User selectable toggles : preserve interlace (and this should automatically be linked with the corresponding -vf scale switch) or deinterlace (I'd suggest pp=ci/l5). |
6th February 2007, 02:31 | #19 | Link |
Registered User
Join Date: Jan 2007
Posts: 359
|
I find very interesting your notes about the filters. I keep it for later.
But right now I don't want to add more filters. Reason: I have planned something much better for filters. Let's say for now that the user will even be able to create their own filters. That's why I don't want to add more filters now, I will have to remove that stuff later and rewrite again. I prefer to focus in develop more basic things, like the playlist or bookmarks. By the way, I don't have very clear how to do it. At first I thought to do a playlist like xmms' but I've seen that vlc implements both the playlist and bookmarks as one thing. What would you suggest? And finally announce that now the binaries for windows of smplayer are not a zip anymore, but a exe with installer. There is one package which includes a copy of mplayer, and another one without mplayer. And I also uploaded 2 versions of mplayer (stable and svn) so the user could choose which one to use. The svn version works very good with ASS subtitles. Look screenshot: Download page: http://sourceforge.net/project/showf...roup_id=185512 Last edited by rvm; 6th February 2007 at 02:45. |
6th February 2007, 07:46 | #20 | Link | |
Registered User
Join Date: Nov 2006
Posts: 56
|
Quote:
--- last played back file --- bookmark(s) You could also implement an additional field to keep user-settings for any of the files defined earlier. BTW, have a look at MPF (@ mpf.dzm.hu). To me it seems to be a very good starting point for a GUI. |
|
Thread Tools | Search this Thread |
Display Modes | |
|
|