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.

 

Go Back   Doom9's Forum > Programming and Hacking > Development

Reply
 
Thread Tools Search this Thread Display Modes
Old 9th November 2013, 22:01   #21  |  Link
Jeroi
Registered User
 
Join Date: Feb 2008
Location: Finland
Posts: 141
I have started a job with the website and it currently introduces wordpress in free account at wordpress.com

Last edited by Jeroi; 23rd November 2013 at 20:22.
Jeroi is offline   Reply With Quote
Old 11th November 2013, 09:10   #22  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 7,347
Quote:
Are you planning to join development?
Nope, not enough time, already got a hobby project.
__________________
Hybrid here in the forum, homepage
Selur is offline   Reply With Quote
Old 12th November 2013, 07:09   #23  |  Link
greatdanton
Registered User
 
Join Date: Apr 2013
Posts: 13
What a wonderful project!
greatdanton is offline   Reply With Quote
Old 15th November 2013, 04:46   #24  |  Link
handaimaoh
Guest
 
Posts: n/a
Quote:
Originally Posted by Jeroi View Post
OMG qt5.1 has removed phonon and added some other medialayer protocol which means basically that I need to write my player again...
Yes, and Monarc told you on the first page that they removed it in 5.1. He even posted the link to the qt-project.org page about it.

Quote:
Originally Posted by Monarc View Post
Qt adopted Phonon at Qt 4.4. Support will remain for the Qt 4.x series, but not for Qt 5. http://qt-project.org/doc/qt-5.1/qtmultimedia/changes.html
  Reply With Quote
Old 21st November 2013, 18:22   #25  |  Link
Jeroi
Registered User
 
Join Date: Feb 2008
Location: Finland
Posts: 141
I have started to look Megui code and boy it looks good. They use standard c++ datatypes rather than microsoft __int datatypes and it really seams that only thing to do is to make all these new qt gui forms same name, same invidual textbox names and so on. Then the orginal code should work from QT forms instantly. How ever some new coding needs to be done since in unix we do not need to download new version libraries automatically since all the files are kept updated with package manager natively. In windows tho the megui download system should be kept.
Jeroi is offline   Reply With Quote
Old 23rd November 2013, 15:42   #26  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 7,347
a. Using Qt 5.1.1 and Qt Creator what should be build-able using the VSC++ compiler? (tried a few .pro files and set my normal build settings but everything I tried threw errors)
b. Why is there a 'build-Phonoplayer-Desktop_Qt_4_8_1_in_PATH_System-Debug'-folder? moc_*-files? *.user-Files?
__________________
Hybrid here in the forum, homepage
Selur is offline   Reply With Quote
Old 23rd November 2013, 16:00   #27  |  Link
Jeroi
Registered User
 
Join Date: Feb 2008
Location: Finland
Posts: 141
Quote:
Originally Posted by Selur View Post
a. Using Qt 5.1.1 and Qt Creator what should be build-able using the VSC++ compiler? (tried a few .pro files and set my normal build settings but everything I tried threw errors)
b. Why is there a 'build-Phonoplayer-Desktop_Qt_4_8_1_in_PATH_System-Debug'-folder? moc_*-files? *.user-Files?
Had bad config on windows Qt creator it made those folders while debugging. And yes, no building anything atm, code is not ported to native c++ yet. It is converter code that has replaced some functions with c++ version and so on but any qt dialogs are not implemented at the code yet. Code porting has not started and the code misses all visual studio gui files, only gui file code there which should be proted to qt ui files.

Atm core/gui/ folder is about all forms with some chages, orginal forms are split into separate files what I thinks the reason is to generate settings dialog on the fly with the code. So some things need to adjust a bit.

And no qt 5.1 I will use Qt4.8 because Phonon support that makes videoplayer so easy to code. The mediasource lib in QT5 [...] compared to phonon.

Last edited by Guest; 23rd November 2013 at 16:52. Reason: rule 4 No profanity!
Jeroi is offline   Reply With Quote
Old 23rd November 2013, 18:37   #28  |  Link
Jeroi
Registered User
 
Join Date: Feb 2008
Location: Finland
Posts: 141
Moved/moving the project information to the website and more free talk in there about this project. And this means that I have made there development status thread that will get all status updates. I don't post them here anymore because I don't live in Russia and we have free speech law in our country which prevents some calling names to others but other way free speech.

Last edited by Jeroi; 23rd November 2013 at 21:46.
Jeroi is offline   Reply With Quote
Old 8th December 2013, 16:54   #29  |  Link
Jeroi
Registered User
 
Join Date: Feb 2008
Location: Finland
Posts: 141
I added new project images.

I am adding main layout support for preview video and editor. No longer additional editor and preview windows and they are implemented directly to main window. This means you can open any kind of video to encode and if not avs file the editor is empty and when you add scripting to editor the open file will be changed to filename.avs and video is reopened when you click back to preview tab. This also means that you will get picture update always when switching from editor to preview and video is updated always.

Enjoy the image candys.

Another announce is that Editor will be supporting Qscintilla and that said, the editor is written from scratch for MeXgui. This means the editor will have AVS syntax highlighting. Later it will have an option to use Vapoursynth scritp instead and thus having Python highlight also.

Edit:
Until someone comes to say that what about 720p or 1080p material I will answer here:

By default they are scaled down to NTSC resolution for obivous reasons. The PreviewEditor will support tab detaching. That said you can detach the video player tab and move it into another screen and resize the player as you want. PreviewEditor will support double click fullscreen.

Last edited by Jeroi; 10th December 2013 at 08:18.
Jeroi is offline   Reply With Quote
Old 6th January 2014, 17:55   #30  |  Link
djcj
Registered User
 
Join Date: Jun 2013
Location: Germany
Posts: 44
Hi! I'm the guy who originally requested the multi-platform support on sourceforge. It's great to see you're still working on this project. I wish I could contribute with coding but all I can do is a bit shell scripting. Maybe I could test the app on Linux to see how it works and report bugs.

Quote:
How ever some new coding needs to be done since in unix we do not need to download new version libraries automatically since all the files are kept updated with package manager natively.
Does this only apply to the typical system packages like qt4 and libphonon4, or will MeXgui also use tools like ffmpeg, x264 and lame installed on the system, rather than downloading them from its own repo?

And do you plan to add fdk-aac, maybe even if MeGUI won't do it?

Last edited by djcj; 7th January 2014 at 23:18.
djcj is offline   Reply With Quote
Old 8th January 2014, 18:11   #31  |  Link
Jeroi
Registered User
 
Join Date: Feb 2008
Location: Finland
Posts: 141
Quote:
Originally Posted by djcj View Post
Hi! I'm the guy who originally requested the multi-platform support on sourceforge. It's great to see you're still working on this project. I wish I could contribute with coding but all I can do is a bit shell scripting. Maybe I could test the app on Linux to see how it works and report bugs.


Does this only apply to the typical system packages like qt4 and libphonon4, or will MeXgui also use tools like ffmpeg, x264 and lame installed on the system, rather than downloading them from its own repo?

And do you plan to add fdk-aac, maybe even if MeGUI won't do it?
Hello, yes MeXgui shall use every codec installed by pacgake manager through phohon for playpack and for encoding some encoder plugins like ffdshow. Also when this program matures that far that it can be downloaded from package manager then it will automatically install additional packages.
Jeroi is offline   Reply With Quote
Old 11th January 2014, 00:51   #32  |  Link
djcj
Registered User
 
Join Date: Jun 2013
Location: Germany
Posts: 44
I hope the Linux community will help you and create packages of your project for each distribution. I know a few things about creating Debian packages (for Ubuntu), but unfortunately not how to create a PPA (maybe I'll find out).

Another question: Would it be difficult to port MeGUI's bitrate calculator to a small standalone Qt application? I'm thinking of something like "Bitrate calculator by philippe734" which unfortunately is written in visual basic and therefore useless outside of Windows. It might run perfectly with wine, but I prefer native solutions.
djcj is offline   Reply With Quote
Old 16th January 2014, 14:43   #33  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 7,347
Quote:
Would it be difficult to port MeGUI's bitrate calculator to a small standalone Qt application?
no, it isn't difficult.
__________________
Hybrid here in the forum, homepage

Last edited by Selur; 16th January 2014 at 16:11.
Selur is offline   Reply With Quote
Old 8th February 2014, 16:31   #34  |  Link
djcj
Registered User
 
Join Date: Jun 2013
Location: Germany
Posts: 44
I did some testing and I couldn't really get avxsynth nor vapoursynth to work on Ubuntu. In the end I think the easiest and most reliable solution to get a working frameserver on any GNU/Linux distribution (and possibly OSX too?) is to use a script which automatically installs a pre-configured avisynth 32 bits wine prefix into the user's home folder. I wrote such a script and it works fine. To avoid license problems the archive containing the prefix comes without vcrun6sp6, instead the script downloads and installs it afterwards, which works automatically too. If I knew how MeGUI runs avisynth without needing to install it into the system directories, I might be able to get it to work on wine without a seperate prefix folder.

By the way, is this project still alive or already dead?
djcj is offline   Reply With Quote
Old 10th February 2014, 12:43   #35  |  Link
Jeroi
Registered User
 
Join Date: Feb 2008
Location: Finland
Posts: 141
Quote:
Originally Posted by djcj View Post
By the way, is this project still alive or already dead?
It's active but I have done vacation for 3 weeks and now moving little by little to new house and some electric work needed for our adsl wall sockets and so on. Life is pain at some point.
Jeroi is offline   Reply With Quote
Old 12th April 2014, 23:15   #36  |  Link
Jeroi
Registered User
 
Join Date: Feb 2008
Location: Finland
Posts: 141
I added now Development branch to the Github that has at the moment video loading and previeweditor playback somewhat working but in development atm. When I get playback done I will get to see how to implement avisynth video loading. This is the next stage. Ofcourse someone who is expert with C++ and Qt can always give help on this project.

Last edited by Jeroi; 12th April 2014 at 23:17.
Jeroi is offline   Reply With Quote
Old 15th April 2014, 17:11   #37  |  Link
Jeroi
Registered User
 
Join Date: Feb 2008
Location: Finland
Posts: 141
Slowly getting there. I have made desing choice to convert all std::strings and maps and vectors with Qt similar methods. Also unsigned long longs and long longs and such going with QT variants. I know some one may prefer c++ orginals but atleast qt communty prefers to chose qt datastream to make sure that variables are always same in every platform. And since they are default datastream so it is easier to look the code when all datatypes are named equally. At the moment I am replacing the MainGUi with QT gui. Atleast copying all the methods in orginal mainform.h to equalient qt mainform.h keeping namespace and all method names as same for supporting method files. Also need to remove some functions as they are M$ forms spesifig methods and such.

Earlier yesterday I converted quite many files to native qt files already but chosed today to make full project scale name overides to make editing a bit faster. It looks to me that there is very little work needed to done, mainly if someone knows object method in C# and how to handle those types in C++ Qt would be nice.

Here is reference for object: http://msdn.microsoft.com/en-us/library/9kkx3h3c.aspx

Currently I have drafted linux support to box. I want to first make this work in windows, compiled with mingw32 and when the orginal megui is running then probably start to take a look about the avisynth portability. Since it then could be compiled in windows with qt, it could be able to combile in Linux too, but thats then another topic.

Last edited by Jeroi; 15th April 2014 at 17:21.
Jeroi is offline   Reply With Quote
Old 18th April 2014, 12:34   #38  |  Link
Jeroi
Registered User
 
Join Date: Feb 2008
Location: Finland
Posts: 141
I have starting to have good crasp on form converting. The Creator way is to make ui file with contains all ui classes which are included with ui_classname.h. Then Need to copy the class names from gui class.h constructor and set exact same class names for components. Then this form code can be deleted form the constructutor as in Creator you can reference qui elements with ui->classname->dosomething. Also intializesintances function can be removed and disposing function can be used to propacate some custom exit code.

All and all when gui class is edited it has far less code than orginal thus having the form code in own file all together. What makes this project interesting is that quite many time you need to go and read C# references to understand how to implement same in Qt. Makes you learn both languages in same time

Addtionally I have renamed all MeGUI.core..... names into default names. Also putting ui files in folder called forms to separate them from main gui headers and implementation. NameSpace is now renamed into MeXgui and things start to look nice. I am now implementing smaller dialogs to Qt version as there is much less work than with MainForm . Also a good place to start handling QDialogs and how to handle them.

Last edited by Jeroi; 18th April 2014 at 12:40.
Jeroi is offline   Reply With Quote
Old 29th April 2014, 17:21   #39  |  Link
Jeroi
Registered User
 
Join Date: Feb 2008
Location: Finland
Posts: 141
I will soon publish my current development status. For it I shall now say that I have implemented sclitedatabse for jobs, some video codecs and for audio codecs settings. I haven't done xml parser script and any databse movement yet as I am focusing at the moment in the text editor that is mostly complete. It has all the basic funtionalitys for avs editing:
  1. Line numbers
  2. Identication
  3. AVS syntax coloring
  4. AVS autocompletation
  5. Cut/copy/paste
  6. Search and Replace
  7. New/Save/Save As
  8. Undo/Redo
  9. Video update
  10. Drag'n'Drop

Main layout is somewhat working at the moment and it includes videoplayer detaching and using at separate screen. Basically videoplayer is tied always to Preview editor child so when preview editor is killed even the separater videoplayer will be killed and the encoder remains. Detaching work with doubleclick and when closing player it well move back to the PreviewEditor widget where it stays at default.

Then I am doing video opening with lates ffmpeg libraries and using Qpainter to draw the images to the videoPlayer srceern. Basically I will use either QFFmpegDecoder or QtAV to open files. Basically ffmpeg should support Avisynth opening in windows/linux so no additinal code need for separate avisynth opening. This makes life easier. For encoding the first encoder shall be naturally ffmpeg that supports all platforms and then when time moves forward I shall add separate encoders as well. I shall be using QFFmepgEncoder lib to encode.

Any help is would be always nice to have.

Last edited by Jeroi; 1st May 2014 at 22:29.
Jeroi is offline   Reply With Quote
Old 30th April 2014, 08:59   #40  |  Link
Jeroi
Registered User
 
Join Date: Feb 2008
Location: Finland
Posts: 141
Another nice feature where I was part on adding AVS lexer to the QScintilla project. The latest snapshot now includes experimental Highlevel AVS syntax coloring and completation support.

Usage:

Code:
#INCLUDE <Qsci/QsciScintilla.h>
#INCLUDE <Qsci/QsciLexerAVS.h>
QsciLexerAVS avs = new QsciLexerAVS;
QScintilla * textEditor = new QScintilla(this);
textEditor->setLexer(avs);
Happy days for avisynth!

Last edited by Jeroi; 30th April 2014 at 10:03.
Jeroi is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 11:34.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.