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 > Video Encoding > MPEG-4 Encoder GUIs

Reply
 
Thread Tools Search this Thread Display Modes
Old 9th December 2008, 12:52   #1  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 6,018
sx264 - qt based x264 gui (Linux&Windows)

Welcome to my an alpha thread about my little hobby project: sx264
It's an alpha and I'm developing it in my free time, so don't kill me if something does not work like it should.

sx264 is a small gui ment to convert X to x264.


Windows users need:
(there's a 'small' package under Downloads)

0. the Microsoft Visual C++ 2008 Redistributable Package to run sx264:

Microsoft Visual C++ 2008 Redistributable Package (x86) - 32bit
http://www.microsoft.com/downloads/d...displaylang=en (english)

Microsoft Visual C++ 2008 Redistributable Package (x64) - 64bit
http://www.microsoft.com/Downloads/d...displaylang=en (english)

to really use sx264 you need the backend tools that sx264 uses:
1. x264.exe with mp4/mkv output and hrd patch (e.g. from http://x264.nl/)
2. MediaInfo - command line version (http://sourceforge.net/project/showf...ckage_id=90612)
3. mkvmerge (+.dlls it needs) of the mkvtoolnix package (z.B. von http://www.bunkus.org/videotools/mkv...s.html#windows)
4. mp4Box (http://kurtnoise.free.fr/index.php?dir=mp4tools/)
5. tsMuxeR (http://www.smlabs.net/tsmuxer_en.html)
6. MPlayer and Mencoder (http://sourceforge.net/project/showf...kage_id=248631)
7. FFMpeg (http://sourceforge.net/project/showf...kage_id=248632)
8. NeroAacEnc (http://www.nero.com/eng/downloads-ne...-aac-codec.php)
9. vstrip_ifo (z.B. http://www.mediafire.com/?9rvft5eet1d <- css free Version)
10. avsInfo (comes with the sx264 download)
11. sox (http://sourceforge.net/project/showf...ckage_id=10619)
12. SetPriority (http://gilchrist.ca/jeff/SetPriority/index.html)
13. current sx264 version (for download see below under Downloads)

At the end the sx264 folder should contain:
avsInfo.exe, cygz.dll, ffmpeg.exe, libcharset.dll, libebml.dll, libiconv.dll, libmatroska.dll, MediaInfo.dll, MediaInfo.exe, mencoder.exe, mkvmerge.exe, MP4Box.exe, mplayer.exe, neroAacEnc.exe, (pthreadGC2.dll <- might be needed by x264) sox.exe, sx264.exe, tsMuxeR.exe, vStrip.dll, vstrip_ifo.exe, x264.exe

Comments for Vista user:
After the first start:
1. switch to the 'Misc'-register
2. activate 'Show additional misc settings'
3. switch to the 'Misc 2'-register
4. set the default paths to paths where your user got read/write-rights (you should set: sx264 path, output path, temp path)
5. switch to the 'Misc'-register again
6. deactivate 'Show additional misc settings'
7. press 'Save Profile as Default'


General comments: (for Windows&Linux user
After the first start::
1. switch to the 'Misc'-register
2. activate 'Show additional misc settings'
3. switch to the 'Misc 2'-register
4. set the "Font Path" to your system font folder (or any other folder with .ttf files)
5. switch to the 'Misc'-register again
6. deactivate 'Show additional misc settings'
7. press 'Save Profile as Default'

For Linux users:
sx264 is OpenSource und the SourceCode can be obtained under Downloads or from me via PM.

Compiling sx264: (when not using the binary build, see below under Downloads)
0. You need a current gcc version and the current qt-dev package installed. (to use it you also need a qt runtime environment on you system, which normally comes with the dev package)
1. Download the source code (see below under Downloads)
2. extract the source code
3. inside a console: switch to the console
4. create a make-file: qmake sx264.pro
5. start the compilation: make

To use sx264:
After the compilation copy the binary to a place you like (e.g. the binary path for all users: /usr/local).
Since sx264 is 'only' a graphical frontend you need additional tools to use sx264. These tool normally need to be up-to-date and need to be available via command line without entering a path. Here's a list of the tools you need:
x264 (http://www.videolan.org/developers/x264.html)
mplayer & mencoder (http://www.mplayerhq.hu/design7/dload.html)
ffmpeg (http://ffmpeg.mplayerhq.hu/download.html)
mediaInfo (http://sourceforge.net/project/showf...ckage_id=90612)
tsMuxeR (http://www.smlabs.net/tsmuxer_en.html)
neroAacEnc (http://www.nero.com/eng/downloads-ne...-aac-codec.php)
mkvmerge (part of mkvtoolnix: )
mp4box (part of gpac: http://www.bunkus.org/videotools/mkv...downloads.html)
lsdvd (http://sourceforge.net/project/showf...roup_id=133848)
Most of these tools should be available through the package management of your distribution. Personally I would recommend to at least compile x264 on you own.
As a little help here is a link for Ubuntu Users: HOWTO: Install and use the latest FFmpeg and x264.


About feature requests:
I'll listen to feature requests but can't promise anything.

Here are some feature requests that are known but not (yet?)implemented:

General Features:
- fileCheck check if ffmpeg/mencoder/mplayer/... are installed (+version check)
- specify a separate paths for each tool
- find a way to remove maximize button and remove it (under windows)
- give a notice that Lagrinth input is not supported since, neither ffmpeg nor mplayer can handle it. (LAGS)
- MultiInputSource -> SingleInputOutput
- better m2ts - overhead/file size calculation if needed (had no dts audio stream to test)
- command line support
- support for different languages

Audio Features:
- multi audio support
- add audio stretch (for mkv)
- add stretch/shrink audio on reencode
- ogg vorbis encoding (for mkv)
- ac3 encoding (for mkv/bluray/m2ts)

Muxing Features:
- add multiple subtitles to output
- add timecodes (for vfr material)
- multi audio support
- import subtitles from external mkv/mp4 source
- import chapters from external chapter file/mkv/mp4/dvd source


Not planned features:
1. extended Avisynth-Support like with MeGui+AvsP
2. support for additional output containers like .mov, .3gp,..
3. support for other encoders
4. decrypt dvds
5. .ac3/.ogg support inside .mp4 files


Known restrictions/bugs:
1. design inherent: sources that can't be handled by the mencoder/ffmpeg version you got on you system can't be processed.
2. Avisynth support: as soon as 'Yv12 Pass-Through' is enabled in DivX-Configuration avisynth support is broken on some windows systems
3. Avisynth support: interlacted material will be recognized as progressive unless the script contains AssumeBFF or AssumeTFF


About the License:
License needs to be GPL since I use the OpenSource QT Framework atm.


Thanks:
Thanks to all the pre-alpha testers and people that helped.


Screenshots
Over at http://www.mediahump.com/gallery/3457/ are some screenshots of sx264.


Downloads
sx264 Win32: http://www.selur.info/sx264/sx264_Alpha_rev573.zip
sx264 Win64: http://www.selur.info/sx264/sx264_Al...v573_64bit.zip
sx264 Source: http://www.selur.info/sx264/sx264_Al...rce_rev573.zip
sx264 Linux32bit binary: http://www.selur.info/sx264/sx264_Al...573_binary.zip
sx264 Linux64bit binary: http://www.selur.info/sx264/sx264_Al...bit_binary.zip


Reading up on the licences I made a 'small' package for windows users containing most of the files needed.
I'll not update the package each time I update sx264, so download the package + the current windows binary to to get the most up-to-date sx264.
You still need to download NeroAacEnc and if needed the Microsoft Visual C++ 2008 Redistributable Package.
For the package:
http://www.multiupload.com/QMEUND4GN1
Please post all feedback&co about the alpha versions in this thread or via pm to me.


Have fun testing sx264.


Cu Selur

Ps.: I'll post all updates in the thread and modifiy the links in this post.

PPs.: the sx264config file and other sx264 data is located at:
win7: C:\Users\USERNAME\AppData\Roaming\sx264
winxp: C:\Documents and Settings\USERNAME\Application Data\sx264
linux: /home/USERNAME/.sx264/

Defaults are located in the sx264Config file.
__________________
Hybrid here in the forum, homepage
Notice: Since email notifications do not work here any more, it might take me quite some time to notice a reply to a thread,..

Last edited by Selur; 13th March 2010 at 10:50.
Selur is online now   Reply With Quote
Old 9th December 2008, 13:09   #2  |  Link
buzzqw
HDConvertToX author
 
Join Date: Nov 2003
Location: Cesena,Italy
Posts: 6,552
Thanks Selur!
a truly great software! (and now i can test it even under win)

thanks!!

BHH

EDIT: just a hint for windows user
MAKE SURE YOU HAVE ALL NEEDED APPLICATIONS IN SX264 FOLDER OR IN SYSTEM PATH
__________________
HDConvertToX: your tool for BD backup
MultiX264: The quick gui for x264
AutoMen: The Mencoder GUI
AutoWebM: supporting WebM/VP8

Last edited by buzzqw; 9th December 2008 at 13:15.
buzzqw is offline   Reply With Quote
Old 9th December 2008, 14:56   #3  |  Link
gswudi
Registered User
 
Join Date: Dec 2006
Posts: 31
where can i find pcrecpp.dll?
gswudi is offline   Reply With Quote
Old 9th December 2008, 15:05   #4  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 6,018
Should come with mkvmerge (part of mkvtoolnix) if it doesn't come with current mkvtoolnix and mkvmerge doesn't need it anymore, sx264 shouldn't either.
-> Just checked works fine without, will modify the first thread.
I also added a note that pthreadGC2.dll <- might be needed by x264 if x264 is statically linked sx264 doesn't need it.

Cu Selur
__________________
Hybrid here in the forum, homepage
Notice: Since email notifications do not work here any more, it might take me quite some time to notice a reply to a thread,..
Selur is online now   Reply With Quote
Old 9th December 2008, 15:10   #5  |  Link
flebber
Practising Schemer
 
Join Date: Feb 2008
Location: Newcastle, Australia
Posts: 791
Looks good. Will give it a try.
flebber is offline   Reply With Quote
Old 9th December 2008, 15:28   #6  |  Link
flebber
Practising Schemer
 
Join Date: Feb 2008
Location: Newcastle, Australia
Posts: 791
SX264 keeps crashing just after audio encoding, however I can't provide many details as I cannot find an error log or similar the program exits totally after windows reports error.

Is there a way to get crash logs so I can give you some useful info regarding crashes?
flebber is offline   Reply With Quote
Old 9th December 2008, 15:34   #7  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 6,018
enable debug output under misc sx264 will then create a sx264Debug.txt file

If you choose 1pass encoding the next step should be muxing so something might be wrong there, if you choose 2pass encoding next step would be encoding using mencoder and x264,..
-> hard to tell what exactly went wrong withoug some infos what you were doing. (and knowing if you use windows or linux)
__________________
Hybrid here in the forum, homepage
Notice: Since email notifications do not work here any more, it might take me quite some time to notice a reply to a thread,..
Selur is online now   Reply With Quote
Old 9th December 2008, 16:15   #8  |  Link
flebber
Practising Schemer
 
Join Date: Feb 2008
Location: Newcastle, Australia
Posts: 791
Got some info now. I am on Windows XP.

Quote:
- audio encoding finished --

decoderCL:
ffmpeg -i "C:\Rip\Source Video\Probot_-_Shake_Your_Blood-sic-ucv.mpeg" -v 0 -vcodec rawvideo-croptop 36 -cropbottom 44 -cropleft 18 -cropright 80 -s 352x288 -vsync 0 -an -pix_fmt yuv420p -f rawvideo -
encoderCL:
x264 --pass 1 --bitrate 950 --level 5.1 --ref 1 --keyint 250 --min-keyint 25 --scenecut 40 --bframes 3 --b-bias 0 --b-pyramid --weightb --direct auto --ratetol 1 --cplxblur 20 --qcomp 0.6 --qblur 0.5 --vbv-maxrate 300000 --vbv-bufsize 300000 --qpmin 1 --qpmax 51 --qpstep 4 --ipratio 1.4 --pbratio 1.3 --chroma-qp-offset 0 --direct-8x8 -1 --partitions i4x4,i8x8,p8x8,b8x8 --me dia --subme 2 --trellis 0 --aq-mode 1 --aq-strength 1 --deadzone-inter 11 --deadzone-intra 11 --threads auto --thread-input --sar 1067:1000 --filter -1,0 --no-psnr --no-ssim --stats "C:\Rip\Produced\Probot - Shake Your Foundation.stats" --progress --fps 25 --output NUL - 352x288
x264 [info]: using SAR=1067/1000
x264 [warning]: VBV bitrate (300000) > level limit (240000)
x264 [warning]: VBV buffer (300000) > level limit (240000)
x264 [info]: using cpu capabilities: MMX2 SSE2 Cache64
x264 [info]: profile Main, level 5.1
x264 [info]: final ratefactor: 15.34


-- video encoding 2nd pass --

encoderCL:
x264 --pass 2 --bitrate 950 --level 5.1 --ref 7 --keyint 250 --min-keyint 25 --scenecut 40 --bframes 3 --b-bias 0 --b-pyramid --weightb --direct auto --ratetol 1 --cplxblur 20 --qcomp 0.6 --qblur 0.5 --vbv-maxrate 300000 --vbv-bufsize 300000 --qpmin 1 --qpmax 51 --qpstep 4 --ipratio 1.4 --pbratio 1.3 --chroma-qp-offset 0 --direct-8x8 -1 --partitions i4x4,i8x8,p8x8,b8x8 --me umh --merange 16 --subme 6 --8x8dct --trellis 1 --psy-rd 1:0.5 --aq-mode 1 --aq-strength 1 --deadzone-inter 11 --deadzone-intra 11 --threads auto --thread-input --sar 1067:1000 --filter -1,0 --no-psnr --no-ssim --stats "C:\Rip\Produced\Probot - Shake Your Foundation.stats" --progress --fps 25 --output "C:\Rip\Produced\Probot - Shake Your Foundation.264" - 352x288
x264 [info]: using SAR=1067/1000
x264 [info]: using cpu capabilities: MMX2 SSE2 Cache64
x264 [error]: empty stats file
x264 [error]: x264_encoder_open failed
Videoencoder: Error - QProcess::Crashed
Videoencoder: exitCode: -1, ExitStatus:
Now running with mencoder and all appears to be working fine. Final ouput was good and correct for settings.

Last edited by flebber; 9th December 2008 at 16:49. Reason: tested with mencoder
flebber is offline   Reply With Quote
Old 9th December 2008, 16:24   #9  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 6,018
(iirc ffmpeg as decoder is only needed for flv/swf input, but should normally work for other input too, strange)
Thanks for the info, will try to reproduce the problem with ffmpeg as decoder here.

Found the problem:
"-vcodec rawvideo-croptop 36 "
there's a space missing -> will fix and update the download links

Cu Selur
__________________
Hybrid here in the forum, homepage
Notice: Since email notifications do not work here any more, it might take me quite some time to notice a reply to a thread,..

Last edited by Selur; 9th December 2008 at 16:41.
Selur is online now   Reply With Quote
Old 9th December 2008, 17:06   #10  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 6,018
*fixed*
- missing space in ffmpeg calls

-> updated downloads in first post

Cu Selur
__________________
Hybrid here in the forum, homepage
Notice: Since email notifications do not work here any more, it might take me quite some time to notice a reply to a thread,..
Selur is online now   Reply With Quote
Old 10th December 2008, 02:27   #11  |  Link
Pitti
Registered User
 
Pitti's Avatar
 
Join Date: Nov 2007
Location: Leipzig, Germany
Posts: 24
Hallo Selur,

thx for your software.
I'm trying to compile this on Debian_etch_AMD_64 and this errormsg pops up:
Code:
nwidget/NListWidget.cpp: In member function 'virtual void NListWidget::clear()':
nwidget/NListWidget.cpp:8: error: 'class NListWidget' has no member named 'removeItemWidget'
make: *** [NListWidget.o] Fehler 1
can you help me please? (evtl sogar in deutsch)

Pitti
Pitti is offline   Reply With Quote
Old 10th December 2008, 04:25   #12  |  Link
Adub
Fighting spam with a fish
 
Adub's Avatar
 
Join Date: Sep 2005
Posts: 2,685
There seems to be a small issues when muxing .aac files. I ran a test file that contained .aac audio. It went through all of the motions just fine, but when it said it was done, there was no output file. So, I said do not delete sources, and copy and pasted the mkvmerge line and I got this:
Quote:
mkvmerge v2.4.0 ('Fumbling Towards Ecstasy') built on Nov 24 2008 12:14:35
Error: The file '/home/****/End of the World 1.MP4 DELAY 0ms.aac' has unknown type. Please have a look at the supported file types ('mkvmerge --list-types') and contact the author Moritz Bunkus <moritz@bunkus.org> if your file type is supported but not recognized properly.
Hmm..or maybe it is complaining because my original file is named End of the World 1.MP4.m4v, and your program succesfully chopped of the last 3 characters, but MKVmerge is choking on the "End of the World 1.MP4 DELAY 0ms.aac" part with the double periods.

Otherwise, awesome program. I will mess with it some more once finals are done.

edit: nope, it seems that .aac is not supported by mkvmerge. Weird.
__________________
FAQs:Bond's AVC/H.264 FAQ
Site:Adubvideo
Adub is offline   Reply With Quote
Old 10th December 2008, 06:32   #13  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 6,018
@Merlin7777: I'll try to see if I can reproduce it. Would be cool if you could provide me a small sample of the input file you used.
It's definitely not that mkvmerge doesn't support .aac input at all, it probably just needs something.

@Pitti:tried to reproduce the problem on a 64bit Kubuntu system but sx264 compiles there without a problem. I uploaded the binary it produced here: http://stashbox.org/320350/sx264_alp...bit_binary.zip

Cu Selur
__________________
Hybrid here in the forum, homepage
Notice: Since email notifications do not work here any more, it might take me quite some time to notice a reply to a thread,..

Last edited by Selur; 10th December 2008 at 06:45.
Selur is online now   Reply With Quote
Old 10th December 2008, 08:26   #14  |  Link
Adub
Fighting spam with a fish
 
Adub's Avatar
 
Join Date: Sep 2005
Posts: 2,685
I'll get you a link to the file.

Here you go:
http://www.mediafire.com/download.php?2wmn4nzynjf
__________________
FAQs:Bond's AVC/H.264 FAQ
Site:Adubvideo
Adub is offline   Reply With Quote
Old 10th December 2008, 08:40   #15  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 6,018
Okay, something seems to be wrong with the aac audio inside the file or how I handle it since, mp4box&mkvmerge crash on it but when I reencode the stream everything works like it should.

Okay, mp4box provides some info: "Audio isn't MPEG-2/4 AAC with ADTS"
Seems like I got a bug when passing through aac audio -> will try to fix it
Found the bug and a fix will upload a fixed version.

Cu Selur
__________________
Hybrid here in the forum, homepage
Notice: Since email notifications do not work here any more, it might take me quite some time to notice a reply to a thread,..

Last edited by Selur; 10th December 2008 at 09:05.
Selur is online now   Reply With Quote
Old 10th December 2008, 09:43   #16  |  Link
Henrikx
Registered User
 
Henrikx's Avatar
 
Join Date: Aug 2005
Location: Germany
Posts: 306
@Pitti

Try to install :

libc6-amd64
libc6-dev-amd64

GCC:
gcc-4.3-multilib
lib64mudflap0

GCC++
g++-4.3-multilib
lib64stdc++6-4.3.dbg
Henrikx is offline   Reply With Quote
Old 10th December 2008, 09:43   #17  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 6,018
*fixed*
- small bug when passing through aac audio (forcing now ffmpeg for extraction of aac audio)

-> updated 1st post

Cu Selur

Ps.: also made a 'small' package for windows users
__________________
Hybrid here in the forum, homepage
Notice: Since email notifications do not work here any more, it might take me quite some time to notice a reply to a thread,..

Last edited by Selur; 10th December 2008 at 10:14.
Selur is online now   Reply With Quote
Old 10th December 2008, 18:46   #18  |  Link
Adub
Fighting spam with a fish
 
Adub's Avatar
 
Join Date: Sep 2005
Posts: 2,685
Great! Thank you.

Edit: Oh, and is there a reason why p4x4 is disabled?
__________________
FAQs:Bond's AVC/H.264 FAQ
Site:Adubvideo

Last edited by Adub; 10th December 2008 at 18:55.
Adub is offline   Reply With Quote
Old 10th December 2008, 20:53   #19  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 6,018
Quote:
Oh, and is there a reason why p4x4 is disabled?
it should only be disabled when it's not allowed by the profile@level + your options disallow it.
p4x4 is not allowed when level > 3 or when level = 3 and B-Frames are enabled. (iirc x264 doesn't check this and you should also find some info about it somewhere in the forum )
In general sx264 should not allow settings that violate a specific profile@level unless you select unrestricted as level.

Cu Selur
__________________
Hybrid here in the forum, homepage
Notice: Since email notifications do not work here any more, it might take me quite some time to notice a reply to a thread,..
Selur is online now   Reply With Quote
Old 10th December 2008, 20:59   #20  |  Link
Dark Shikari
x264 developer
 
Dark Shikari's Avatar
 
Join Date: Sep 2005
Posts: 8,689
Quote:
Originally Posted by Selur View Post
it should only be disabled when it's not allowed by the profile@level + your options disallow it.
p4x4 is not allowed when level > 3 or when level = 3 and B-Frames are enabled.
Where do people keep coming up with these things?

p4x4 is allowed at all levels. The only level-related restriction with regards to partitions is on bidirectional sub-8x8 partitions, which x264 doesn't support.
Dark Shikari 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 07:23.


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