Personal View site logo
Shutter Encoder free professional converter design by video editors
  • Hello everyone,

    There is a while i didn't came here, and i always loved this place.

    Long story short i made a free video converter based on FFmpeg which can converter to professional and standards codecs with hardware acceleration (Nvenc, QSV, AMF...)

    Works on Windows, Mac and Linux.

    I started this project in 2013 developing with video editor (that i am also) in broadcast companies.

    Here is a link to the website & downloads : https://www.shutterencoder.com

    Hope you will enjoy the software.

    Happy encoding !

    Paul.

  • 50 Replies sorted by
  • Glad to see a developer around here. Can you speak on the catch or compromises of using your tool VS using ffmpeg directly or industry-standards like handbrake?

    Thanks for the reminder about shutterencoder.

  • @paulpacifico

    Can you add some screenshot and also make some demo video?

    Benchmarks can be also nice.

  • Just converted a 1080p30 XAVC-S 50Mbps MP4 from a Sony camera to XAVC 422 10bit at around 400Mbps MXF file. It took a while but it works. Converting to DNxHR was faster than real-time. The result looks about the same as XAVC, with a smaller file size and still 10bit. Thanks Paul

  • @paulpacifico first of all thanks for your effort and the decision to give it for free! It is not an obvious choice and we should all be thankful, regardless of the level of performance of the tool. I do lots of conversions so I'll try it soon and will give you my feedback.

  • This a simple video trimmer as well.

  • One more update. I converted an XAVC-S file to a variety of formats: ProRes, DNxHD, DNxHR, XAVC, H.265, AV1, AVC-Intra 100x XDCAM, etc and it all worked perfectly. I was surprised that even H.265 didn't take long on my old system.

    A couple of things: in DNxHD for example, NTSC presets appear to be missing, and only PAL (25, 50fps) are available judging by the the codec specifications http://operationalportal.com/wp-content/uploads/AVID_DNxHD_Codec.pdf 45, 145, 220, and 220x presets are missing for example (1080p30 and 720p60). Also 110 and 110x for 720p30

    The remaining time and elapsed time are rarely accurate. For example: With XAVC the progress bar reached 100% but the elapsed time kept going because the conversion was not done, until a minute+ later. But to be fair, most conversion programs behave the same.

    AV1 took the longest by far, and there were glitches in the resulting file (playback with VLC and MPV, glitch happened in the same position).

    Sometimes is hard to tell which codec preset is really putting out 10-bit files, so I will suggest using MediaInfo to identify the correct presets if you need 10-bit. For example: DNxHR HQ is 8-bit, but HQX is 10-bit with the same bitrate/file-size.

    Great program Paul, thank you for sharing. I can finally get rid of my text files with ffmpeg commands for different conversions.

  • Thanks everyone for your feedbacks,

    • @jleo thanks for posting the main demo.
    • @jazzroy keep me informed and feel free to ask me anything about Shutter.

    • @theusualeditor for a quick explanation :

    Using FFmpeg is really powerfull and you get control of everything available, but as you said writing scripts for everything can be very long.

    Also the main advantage from Shutter, it used a lot FFprobe to get all metadata needed for conversion (fps, timecode, fields, audio channels, Apple metadata and everything possible). It's more a research job i did, to get the most of every codecs related to their command.

    About Handbrake, they shared the same library, if you only use H.264/H.265 conversion use the one you prefer, but Shutter get some usefull codecs especially for editing, and it's also a good toolbox.

    So nothing faster than FFmpeg simply a much usefull usage of this great tool that i made for my self. People asked me to use it so i decide to share this work for everyone.

    • @Vitaliy_Kiselev i didn't get the time to make some benchmarks, but as i said above it's at the speed of what FFmpeg can do. Here is some additionnals screenshots :
    Player.png
    646 x 629 - 258K
    Overlay.png
    665 x 525 - 402K
    BurnSubtitles.png
    685 x 520 - 197K
    Image.png
    675 x 555 - 448K
    Color.PNG
    1080 x 656 - 717K
    Logo.png
    675 x 491 - 423K
    wetransfer_ftp.png
    574 x 269 - 85K
    settings.png
    657 x 669 - 86K
  • @theusualeditor

    Usage of DNxHD bitrates is a bit weird with FFmpeg, because if you choose for instance 120Mbits with a 24fps input source you will get 115Mbits ouput, that's why most of NLE decided to use LB,SQ,HQ even for DNxHD. But i will add the other bitrates for the next release.

    Remaining time should be very accurate, the main thing is at the end FFmpeg has to complete the file by writing MOOV atom and other metadatas which take a bit of time, but the encoding has been reached 100% of conversion.

    AV1 still a new codec, and glitch probably happens from decoder also. I try to upgrade everytime FFmpeg to get the most recent codecs update.

    You have Mediainfo embedded in Shutter Encoder, use right-click on file then "Informations..."

  • @Vitaliy_Kiselev also you can use FFmpeg directly by writing a command in "Choose function" combobox WITHOUT providing input and ouput, for instance : ffmpeg -c:v libx264 -b:v 5000k -an

    And use the second combobox to choose your extension.

  • @paulpacifico I really like that the encoding queue shows the full ffmpeg command. It would be great if there was a copy/paste function to reuse it in a terminal or script, and if it even could be editable in the queue to hand-tweak parameters, such as adding ffmpeg parameters that aren't supported by the GUI.

    Is my assumption correct that Shutter Encoder uses a patched version of ffmpeg with the SVT-AV1 encoder? This worked for me once, but later attempts of encoding AV1 via the queue resulted in truncated output files with only a few seconds length.

  • Thanks @cantsin for your feedback,

    You can double click on render queue text to re-use or edit the command line, also CTRL+S (or CMD+S) save your settings for Shutter as .enc (=xml) file.

    For SVT-AV1, I use the latest builds for Zeranoe which include it, for Linux i compile myself FFmpeg with SVT-AV1. I will take a look with AV1 from render queue but i know it's a not perfectly stable codec.

    Because Zeranoe is closing the 18th september i will try to build FFmpeg for Windows and Mac myself, but that's a lot of work...

    I'll keep you informed.

  • @paulpacifico I made some conversions (mainly MXF and DNxHR outputs) and everything went smooth. I really appreciate the way you organized the presets, it is a great time saver. Still need to test the advanced functions (especially trim/LUT/stabilize), I'd like to finalize some clips libraries without using an NLE.

  • Thanks a lot, if you have any advise i'm very listenning to people recommandations.

  • Finally something better than AnotherGUI! THANK YOU! (for reference: http://www.stuudio.ee/anothergui/ )

  • Hi there been using your software for a while now very good, love the simple and easy to use interface, the option to easily update, all formats the ability to overlay image, and make simple cuts, etc...

    The only thing I steel use Xmedia recode for is for adding subtitles, they support .ass files flawlessly, .srt can be a pain to retain styles. If shutter encoder support that feature I would probably change completely.

    THANKS keep the amazing work.

  • @leonbeas thanks a lot !

    That's a very intersting thing, because Shutter use FFmpeg which is 100% compatible with .ass subtitles.

    So why you can't ? Because .ass files works totally differenlty, i cannot fully change subtitles options. But most of settings (font, color etc.) are embedded inside.

    Well, i will add the ability to use .ass file into Shutter by limiting settings options from subtitles window.

    Thanks for your feeback.

  • @paulpacifico WOW amazing this will be a game changer for me at least.

    If possible add the option to hard-burn or just embed subs. I will gladly test it for you, for this or other features. Thanks amazing work.

  • @leonbeas i finally added .ass subtitles support to Shutter Encoder. I'm still working for the v14.3 so please let me know if you want a pre-release. It will also helps me to have some beta testers.

    Thanks, Paul.

  • @paulpacifico count me in, glad to help if I can.

  • please add levels and full range video 16-235 and 0-255 and gamma tags. this will help translating across different NLE's! additionally adding 10 bit h.264. 265 support would be cool. or even .266 when it comes out. btw, this is selling like hotcakes.

  • @leonbeas on which OS you are?

    @hardimpact you can change levels from "Advanced features" -> "Force output" with H.264/H.265 Also you can use 10bits from "Colorimetry" -> "Colorspace" I"m keeping ready to add H.266 conversion when it's stable.

  • Feedback Thanks for sharing i do not use converters but just wanted to try. Hardware acc is not seen and crash when videobox is set (whatever it is) M. encoder works correct with Cuda and Mercury atm :) OSX 13.6 Nvidia 980TI Web driver for Cuda

    Screen Shot 2020-10-15 at 12.39.04.png
    639 x 539 - 46K
  • @konjow could you please click on "Show console" and send me the log at: paulpacifico@free.fr Thanks.

  • Nvidia is there at first but despairs when click on advance.

    Log:

    Command: -i "/Volumes/3 Export/PG911907_1.mov" -map v -c:a aac -ar 48k -b:a 256k -map a:0 -c:v h264_videotoolbox -profile:v high -level 5.1 -b:v 20000k -pix_fmt yuv420p -sws_flags bicubic -y "/Volumes/3 Export/PG911907_1_H.264.mp4"

    ffmpeg version git-2020-08-28-ccc7120 Copyright (c) 2000-2020 the FFmpeg developers built with Apple clang version 11.0.0 (clang-1100.0.33.8) configuration: --disable-static --enable-shared --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libsrt --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libgsm --enable-librav1e --enable-libsvtav1 --enable-appkit --enable-avfoundation --enable-coreimage --enable-audiotoolbox libavutil 56. 58.100 / 56. 58.100 libavcodec 58.101.100 / 58.101.100 libavformat 58. 51.101 / 58. 51.101 libavdevice 58. 11.101 / 58. 11.101 libavfilter 7. 87.100 / 7. 87.100 libswscale 5. 8.100 / 5. 8.100 libswresample 3. 8.100 / 3. 8.100 libpostproc 55. 8.100 / 55. 8.100 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/Volumes/3 Export/PG911907_1.mov': Metadata: major_brand : qt
    minor_version : 537199360 compatible_brands: qt
    creation_time : 2020-10-22T19:42:26.000000Z Duration: 00:09:30.88, start: 0.000000, bitrate: 161924 kb/s Stream #0:0(eng): Video: prores (LT) (apcs / 0x73637061), yuv422p10le(tv, bt709, progressive), 1920x1080, 160373 kb/s, SAR 1:1 DAR 16:9, 50 fps, 50 tbr, 50 tbn, 50 tbc (default) Metadata: creation_time : 2020-10-22T19:42:26.000000Z handler_name : Apple Video Media Handler encoder : Apple ProRes 422 LT timecode : 00:00:00:00 Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, stereo, s16, 1536 kb/s (default) Metadata: creation_time : 2020-10-22T19:42:26.000000Z handler_name : Apple Sound Media Handler timecode : 00:00:00:00 Stream #0:2(eng): Data: none (tmcd / 0x64636D74) (default) Metadata: creation_time : 2020-10-22T19:42:26.000000Z handler_name : Time Code Media Handler timecode : 00:00:00:00 Stream mapping: Stream #0:0 -> #0:0 (prores (native) -> h264 (h264_videotoolbox)) Stream #0:1 -> #0:1 (pcm_s16le (native) -> aac (native)) Press [q] to stop, [?] for help [h264_videotoolbox @ 0x7f899c001e00] Error: cannot create compression session: -12908 [h264_videotoolbox @ 0x7f899c001e00] Try -allow_sw 1. The hardware encoder may be busy, or not supported. Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height Conversion failed!

    Screen Shot 2020-10-15 at 15.23.39.png
    333 x 163 - 19K
    Screen Shot 2020-10-15 at 15.23.18.png
    317 x 192 - 17K