VideoHelp Forum
+ Reply to Thread
Results 1 to 24 of 24
Thread
  1. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    I have written a tentative tool mainly for enhancing poor downloaded 'crap' from the internet. It was originally designed for FLV formats but has grown into much more. I have 2 versions, one with the FLV page and one with just a tabbed editor without the first FLV editor. A quick summary of things it will do is:

    1. Play video (Directshow, FFMpeg, Indexed mpg) with displayed Frame number, Time and SMPTE
    2. Play directshowsource AVISynth files
    3. Obtain Media Info information such as Width, Height, Total Number of frames, codec info, FPS, etc.
    4. Play with Auto Crop information super imposed
    5. Check volume levels
    6. Compare videos stacked or create video from audio and compare it to video for sync purposes
    7. Delay audio or video
    8. Create an indexed or Remuxed MPG
    9. Merge and re-size videos. It can create an Anamorphic video in such as 720x480 without a lot of hassle for the unsure users.
    10. Extract and do basic Editing and enhancing.
    11. Display histograms for determining color, gamma, sharpness, etc.
    12. Preview with FFPlaybefore encoding.

    Before I actually Post it, since I am not a programmer by trade, If one of the experts here has time to download the Docx I have posted at https://files.secureserver.net/0sZrMMYqN3T1qE and tell me if it is not worth the effort, poorly designed, anything, I would appreciate it. It is designed to be used with FFMpeg, AVISynth and Potplayer although any player with AVS capability and frame by frame ability will work. Again, I am no programmer so it will not hurt my feelings if you tell me not to waste my time.

    Thank You
    Budman1

    Sample pix from program:
    Name:  ScreenHunter_96 Sep. 20 21.39.jpg
Views: 1331
Size:  21.9 KBName:  ScreenHunter_97 Sep. 20 21.41.jpg
Views: 1309
Size:  62.1 KBName:  ScreenHunter_98 Sep. 20 21.42.jpg
Views: 1251
Size:  45.5 KBName:  ScreenHunter_98 Sep. 20 21.41.jpg
Views: 1356
Size:  41.9 KBClick image for larger version

Name:	ScreenHunter_96 Sep. 20 21.38.jpg
Views:	731
Size:	68.3 KB
ID:	27594Click image for larger version

Name:	ScreenHunter_97 Sep. 20 21.39.jpg
Views:	677
Size:	45.4 KB
ID:	27595Click image for larger version

Name:	ScreenHunter_95 Sep. 20 21.38.jpg
Views:	795
Size:	57.4 KB
ID:	27596
    Last edited by Budman1; 29th Oct 2014 at 12:22. Reason: Changed link to new updated document
    Quote Quote  
  2. Nice try.
    Since you claim it as a tool to handle FLV crap, I'd expect:
    > easy access to "deblock"
    > easy access to scaling algorithms
    > BT601<>BT709 color correction (if possible)

    While the "Extract/Clean" tab is IMO overcrowded...

    I'd also concern if this tool will handle those FLV that contains only still Images+Audio+Scripts (i.e. no VPx streams), and give appropriate warning if it cannot handle such FLV.

    The dependency on PotPlayer is somewhat unusual... strongly suggest to cut this dependency unless there is a really good reason to keep it.
    Stopping development until someone save me from poverty or get me out of Hong Kong...
    Twitter @MaverickTse
    Quote Quote  
  3. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    MaverickTse , Thank you for your reply. First I should have sent the page for the FLV's to make it more apparent what it is doing. I'm a little lost about what you mean by 'Easy Acceess' to deblock and scaling algorithms... You checkbox the deblock and the scaling automatically shows the aspect for whatever you enter as dimensions. Also, ALL alterations stop at the CLI page so changes can be made to the script (if familiar with FFmpeg) or just take the default by hitting enter.

    And, yes, the Extract Tab IS overcrowded but it allows most editing to be done without switching back and forth. I can correct this though easily and appreciate your view since many others will see it the same.

    I'd also concern if this tool will handle those FLV that contains only still Images+Audio+Scripts (i.e. no VPx streams), and give appropriate warning if it cannot handle such FLV.
    The examples that were shown in my first posting were from a video that was all still images in AVC format without 'VP6/9' streams and it works on them. Basically the fixing part just does removal of the such as remove meta data including timings and reinserting corrected. I am also attempting to allow clipping damaged portions on a hex byte level, but, again I am not a programmer so while I can do this manually with a hex editor, making an intuitive method at code level is taking me a bit.

    Summary:
    First load your FLV and run FLV check
    Click image for larger version

Name:	ScreenHunter_98 Sep. 21 09.28.jpg
Views:	617
Size:	114.6 KB
ID:	27599

    Then Remove Meta Date including timings and run Check again.
    Click image for larger version

Name:	ScreenHunter_99 Sep. 21 09.29.jpg
Views:	567
Size:	116.0 KB
ID:	27600

    Then Check replace box and run check again.
    Click image for larger version

Name:	ScreenHunter_100 Sep. 21 09.37.jpg
Views:	634
Size:	121.2 KB
ID:	27601

    Media Information.
    Click image for larger version

Name:	ScreenHunter_100 Sep. 21 09.39.jpg
Views:	660
Size:	93.8 KB
ID:	27602

    Then switch to editor tab and 'enhance' the video if necessary. I will make some of the changes you suggest and try to make the appearance a little more appealing (No overcrowding). Thanks again and I appreciate your input immensely.

    Budman1
    Quote Quote  
  4. Nice.
    The "Easy access", I mean put those options in some prominent place....
    I still can't locate where the checkboxes are for the deblock and scaling...are they performed under the hood automatically?
    (ah! sorry, just found the deblock checkbox...but the Extract/Clean tab really needs cleanup...)

    The ability to convert non-VPx FLV seems to be the most valuable feature for the program, since almost no program out there can correctly handle all FLV, except Adobe itself.

    Once the Clean/Extract tab got clean up a bit, I'd suggest to release an alpha/preview inviting people to test...a lot of problem may not be found by self-testing.
    Stopping development until someone save me from poverty or get me out of Hong Kong...
    Twitter @MaverickTse
    Quote Quote  
  5. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    Ok... Rearranging, I still have everything needed for most editing on the one page with a little room and grouping making it better I think, but then we saw my first guess at this also. LOL All the codec parameters are together as well as the editing group. Subtitles and volume check( not usually used all the time are by themselves.

    The scaling is pretty automatic in that if 'Keep Aspect is checked and you try to fit a 16/9 video into a 720x480 'End Size' setting, it will Pillarbox and/or Letterbox to fit is in. If you choose 'Aspect Change' then it will fit the 16/9 (as 854x480) into the 720x480 'End Size' by making the pixel size appropriate. Deblock is now with the rest of the settings and is, at the moment, a pretty strong deblock setting. I can change this later (when I understand it better' to be selectable. If a person understands FFMpeg, they can also change it at the intermediate position in the script.

    Potplayer is not the ONLY viewer that this can use. I use because it plays everything on my machine and has frame by frame advance and back with the 'F' and 'D' keys. This program also has a built in Media player(Windows) one the Main form but I try to find the one on the machine its installed on or it is selectable for any one you like.

    This look any better?
    Thanks
    Budman1

    Click image for larger version

Name:	ScreenHunter_101 Sep. 22 14.47.jpg
Views:	670
Size:	96.7 KB
ID:	27631

    Click image for larger version

Name:	ScreenHunter_102 Sep. 22 14.47.jpg
Views:	563
Size:	38.8 KB
ID:	27632

    Click image for larger version

Name:	ScreenHunter_100 Sep. 22 14.47.jpg
Views:	564
Size:	64.3 KB
ID:	27633
    Quote Quote  
  6. Slightly better.
    have you tried putting the parameter edit boxes 1 row below the checkbox, with some indentation?
    For those numbers below "Gamma", "Cont"... are they valid range? If they are, make them up-down number boxes with automatic range checking, optionally put some tooltips over those control

    Any player should work? Have you tried MPC-HC?

    So far I see libvo_aacenc... is this your default? What other options are there?
    Stopping development until someone save me from poverty or get me out of Hong Kong...
    Twitter @MaverickTse
    Quote Quote  
  7. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    Ok... I tried what you suggested but not sure... I also went with Tooltip for mouseover limits. Those are the ones from ducumentation for FFMPEG 'mp=eq2' limits but, trying other settings and they also have an effect so... I couldn't go with drop down boxes since even a range of -1.0->+1.0 is 20 steps if by 1/10 and hundreds for .15, .16, .17, etc.

    Yes it allows any viewer you wish by setting the location in the configuration and this uses FFMPEG so any of it's audio codecs can be added. The only ones I've included so far are as shown below.
    Click image for larger version

Name:	ScreenHunter_102 Sep. 22 23.31.jpg
Views:	568
Size:	61.3 KB
ID:	27639Click image for larger version

Name:	ScreenHunter_103 Sep. 22 23.40.jpg
Views:	621
Size:	54.3 KB
ID:	27640Click image for larger version

Name:	ScreenHunter_102 Sep. 22 23.40.jpg
Views:	551
Size:	27.6 KB
ID:	27641
    Quote Quote  
  8. That looks much better IMO...

    I didn't mean "drop-down box" for the numeric input, I mean "numeric up-down": http://msdn.microsoft.com/en-us/library/system.windows.forms.numericupdown(v=vs.110).aspx

    but if you are building the form using MFC, this control seems missing (probably a .NET-only feature)

    for the audio encoder list, is it a hard-coded list? or does the program check the ffmpeg binary on start-up and populate the list?(i.e. allow the use of fdk-aac if it is there)
    Stopping development until someone save me from poverty or get me out of Hong Kong...
    Twitter @MaverickTse
    Quote Quote  
  9. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    Ok... I included the NumericUpDown boxes with the maximum and minimum on tool-tip and also limited by the arrows. I'm using Visual Studio so I have access to C++, Visual Basic 2010, Visual Basic 6, MFC, and .net. Not a programmer but I spent a lot for software. (Now if I just knew how to use it. LOL)

    Right now the audio encoders are hard coded in the collection and I just added the ones most people might want without having to be too familiar with FFMPEG. The boxes are enabled though so anything you put in them will work if FFMPEG contains those filters/encoders/bit-rate/etc. That's so if someone is familiar with Videos/codecs/FFMpeg they can alter almost anything they want to. The version I'm using does not have FDk-aac but then its an older version from when I started this project.

    Click image for larger version

Name:	ScreenHunter_103 Sep. 23 23.35.jpg
Views:	560
Size:	34.7 KB
ID:	27665
    Quote Quote  
  10. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    Ok... I included the NumericUpDown boxes with the maximum and minimum on tool-tip and also limited by the arrows. I'm using Visual Studio so I have access to C++, Visual Basic 2010, Visual Basic 6, MFC, and .net. Not a programmer but I spent a lot for software. (Now if I just knew how to use it. LOL)

    Right now the audio encoders are hard coded in the collection and I just added the ones most people might want without having to be too familiar with FFMPEG. The boxes are enabled though so anything you put in them will work if FFMPEG contains those filters/encoders/bit-rate/etc. That's so if someone is familiar with Videos/codecs/FFMpeg they can alter almost anything they want to. The version I'm using does not have FDk-aac but then its an older version from when I started this project.

    Click image for larger version

Name:	ScreenHunter_103 Sep. 23 23.35.jpg
Views:	525
Size:	34.7 KB
ID:	27666
    Quote Quote  
  11. DECEASED
    Join Date
    Jun 2009
    Location
    Heaven
    Search Comp PM
    Originally Posted by MaverickTse View Post
    I didn't mean "drop-down box" for the numeric input, I mean "numeric up-down": http://msdn.microsoft.com/en-us/library/system.windows.forms.numericupdown(v=vs.110).aspx

    but if you are building the form using MFC, this control seems missing (probably a .NET-only feature)
    Definitely not-true:
    Image Attached Thumbnails Click image for larger version

Name:	gph-config.png
Views:	385
Size:	16.0 KB
ID:	27667  

    Image Attached Images  
    Last edited by El Heggunte; 24th Sep 2014 at 01:48.
    Quote Quote  
  12. Looks great.

    For audiophiles, I bet that audio encoder list will not satisfy them. I'd strongly suggest to make a custom build of FFmpeg, and confirm the availability of FAAC and fdk-aac.
    Also according to an FFmpeg page on AAC encoding, the native AAC encoder seems better than vo-aac...
    maybe you'd better ask for more opinion on the audio part.
    Stopping development until someone save me from poverty or get me out of Hong Kong...
    Twitter @MaverickTse
    Quote Quote  
  13. Originally Posted by El Heggunte View Post
    Originally Posted by MaverickTse View Post
    I didn't mean "drop-down box" for the numeric input, I mean "numeric up-down": http://msdn.microsoft.com/en-us/library/system.windows.forms.numericupdown(v=vs.110).aspx

    but if you are building the form using MFC, this control seems missing (probably a .NET-only feature)
    Definitely not-true:
    It is in a different name:
    http://msdn.microsoft.com/en-us/library/c8z1ck76.aspx

    with less built-in features.
    Stopping development until someone save me from poverty or get me out of Hong Kong...
    Twitter @MaverickTse
    Quote Quote  
  14. DECEASED
    Join Date
    Jun 2009
    Location
    Heaven
    Search Comp PM
    Originally Posted by MaverickTse
    It is in a different name:
    http://msdn.microsoft.com/en-us/library/c8z1ck76.aspx

    with less built-in features.

    Thanks, I wasn't aware of that subtle difference ^.^;

    So it seems the "normal" programmers have to create their own full-featured controls...

    othewise, it's easier to surrender to the Borg assimilation

    Seriously though, the programmers's universe keeps sucking more and more each day
    Quote Quote  
  15. Originally Posted by El Heggunte View Post
    Originally Posted by MaverickTse
    It is in a different name:
    http://msdn.microsoft.com/en-us/library/c8z1ck76.aspx

    with less built-in features.

    Thanks, I wasn't aware of that subtle difference ^.^;

    So it seems the "normal" programmers have to create their own full-featured controls...

    othewise, it's easier to surrender to the Borg assimilation

    Seriously though, the programmers's universe keeps sucking more and more each day
    Yup. actually the commonly seen "color picker" is not something trivial at all. .Net contains some sort of it, but without that "dropper". Programmer have to either write it themselves or borrow from others' code.

    Yes it sucks, but not in the technical way. Writing GUI in WPF .NET or QT framework (or wxWidget?) is easier than using MFC alone IMO. It sucks because since doing the same job became easier, pay check ↓↓↓

    Nevertheless, making GUI is still a tedious and boring job.

    @budman1
    Since I don't know if your project was setup as a Native C++ project or CLI, Mixed or just a C#... beware when you mix Native C++ and Managed C++ code... avoid that if possible... it'd be a nightmare.
    Stopping development until someone save me from poverty or get me out of Hong Kong...
    Twitter @MaverickTse
    Quote Quote  
  16. I have found the download link for your tool very easy and tested it - it sucks....
    Quote Quote  
  17. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    -t40- No... You didn't... What you found is a Verrrryyyy old version posted for someone who needed a very limited version with old versions of the software it utilized. It did serve their purpose though. I know this because I have not posted the one with the tabs and multiple improvements on my site or anywhere else yet. And yes that one does blow because, as I mentioned, I am not a programmer by nature and it WAS a very early pre-version.

    Appreciate the comment though, whatever makes you happy. I just have fun trying to make improvements and asked for suggestions BEFORE I post the real program, because I kind of like FLV's. I know... I know....
    Thank You
    Budman1
    Last edited by Budman1; 24th Sep 2014 at 23:15.
    Quote Quote  
  18. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    MaverickTse, My favorite programming method is Visual Basic with .Net code thrown in because it's simpler most times. My c and C++ knowledge are not so great so I reserve them for making such programs as an on-screen ruler for measuring pixel distance and the like.

    Your suggestion about audio is right on so I'm trying to get a custom build that allows me to include it with my front end. That way the legal matters will be easier to get past. Most of the great software created by those that know what they are doing, have given permission to include as separately called routines if I give credit to them which I most certainly would do.

    The new FLVMeta by Marc Noirot works much better than previous versions with much improved checking and correcting.

    Thanks for all the information you have given me.
    Budman1
    Quote Quote  
  19. Remember that you cannot distribute a binary that contains fdk-aac (or anything that needs the --enable-non-free ./configure option), but you can setup an installer and call a build-script. If the user doesn't need fdk-aac, you may just grab Zeranoe's FFmpeg build.
    Making a custom build is never easy (if you've never touched linux or msys, that'd be a PITA). You may have a look at "media_autobuild-suite" on GitHub for a reference however.
    Stopping development until someone save me from poverty or get me out of Hong Kong...
    Twitter @MaverickTse
    Quote Quote  
  20. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    you cannot distribute a binary that contains fdk-aac (or anything that needs the --enable-non-free ./configure option),
    Yes, thats kind of the take I got out of it too. I Wasn't sure if FDK-aac was a free codec or not but everything I find and what you have pointed out sort of confirms that. Zeranoe's is the one I'm using now and has the Libvo_aacenc and a plain AAC codec in it only.


    I'm still looking but since my unpublished program sucks...

    I have found the download link for your tool very easy and tested it - it sucks....
    ...maybe I don't need to bother. LOL No, not really and I appreciate everyone's help, and suggestions for improvement.
    MaverickTse, It definitely looks better now! Thanks!

    Thanks
    Budman1
    Quote Quote  
  21. Originally Posted by Budman1 View Post
    you cannot distribute a binary that contains fdk-aac (or anything that needs the --enable-non-free ./configure option),
    Yes, thats kind of the take I got out of it too. I Wasn't sure if FDK-aac was a free codec or not but everything I find and what you have pointed out sort of confirms that. Zeranoe's is the one I'm using now and has the Libvo_aacenc and a plain AAC codec in it only.


    I'm still looking but since my unpublished program sucks...

    I have found the download link for your tool very easy and tested it - it sucks....
    ...maybe I don't need to bother. LOL No, not really and I appreciate everyone's help, and suggestions for improvement.
    MaverickTse, It definitely looks better now! Thanks!

    Thanks
    Budman1
    Every newbie have to learn and experiment, so take non-constructive comments with a grain of sand.
    If you want to further improve the GUI, have a reference to the popular FFmpeg GUIs that you can find on videohelp.

    Actually I would suggest you to try a few of them and test how well they handle FLVs.
    If they do as well as your program, then there is little point to develop a new GUI at all. Otherwise, you may choose to refine your program or make a feature request to other GUI developers.
    Anyhow, this is a good programming exercise.
    Stopping development until someone save me from poverty or get me out of Hong Kong...
    Twitter @MaverickTse
    Quote Quote  
  22. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    Update... Added a tab for Extracting or Adding subtitles to MP4 and MKV in SRT and ASS format. It also converts from ASS to SRT to ASS. ATM, FFMPEG has a few glitches in how it handles convertion but I'm editing that out. It likes to take some special features of ASS like color, size, font, etc., and format them into SRT.

    EXAMPLE:
    1
    00:00:15,140 --> 00:00:16,720
    <font face="Cronos Pro Light" size="20" color="#fff0cf">I feel like you're driving me to a court-martial.</font>

    2
    00:00:16,810 --> 00:00:18,850
    <font face="Cronos Pro Light" size="20" color="#fff0cf">This is crazy. What did I do?</font>

    While these work for MP4, if I take these formatted SRT subs and load directly as ASS into a video, they fail to display. There are other, more elaborate utilities to do the various functions that I am attempting to incorporate here but I tended to need several to do a simple edit/convert so now they are all in one. It works and if alterations are needed by anyone familiar with FFMPEG and AVISynth, they can be altered before conversion. I should mention FLV was the beginning need but it now covers most formats because of the use of FFMPEG/AVISynth.

    Click image for larger version

Name:	ScreenHunter_106 Sep. 30 15.01.jpg
Views:	472
Size:	63.1 KB
ID:	27776
    Quote Quote  
  23. From my limited knowledge, SRT is not supposed to have style formatting
    http://en.wikipedia.org/wiki/SubRip

    Unofficially the format has very basic text formatting, which can be either interpreted or passed through for rendering depending on the processing application. Formatting is derived from HTML tags for bold, italic, underline and color:[12][dubious – discuss]
    Also the structure of ASS and SRT are very different and a simple rename cannot trick the subtitle parser to handle SRT as ASS.
    (See Aegisub documentation for details of ASS/SSA)

    Do not mux subtitle into MP4. This is non-standard compliant and may fail completely on standalone players (I have never seen any fansub group distributing an MP4 with subs embedded)
    Stopping development until someone save me from poverty or get me out of Hong Kong...
    Twitter @MaverickTse
    Quote Quote  
  24. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    Yes the SRT have limited formatting and these only play, like ASS formatting. if the player/converter/editor interprets them. I had to work with the programmers at ConvertX2DVD because their program initially didn't handle all aspects of ASS/SSA correctly but now seems to handle all. I wasn't aware of the MP4/subtile non-standard part since I have downloaded MP4's with them in text based format. Again. thats why I referred them as 'crappy' but they are a popular format and they will accept the subtitles for those that play them in the players that display them.

    The only reason I wrote the code for this feature is they are out there but it is probably a waste of time so they are commented out easily.

    Right now ffmpeg will convert ASS subtitles to SRT and put what formatting it can into the SRT's. Problem is that if tyou take the formatted SRT and convert back to ASS with ffmpeg, it considers the formatting text and the yusually fail to show.

    Guess I just need to take out the failing parts and allow the compliant functions.
    Quote Quote  
Visit our sponsor! Try DVDFab and backup Blu-rays!