Jump to content

HaveAGitGat

Members
  • Posts

    120
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by HaveAGitGat

  1. On 12/14/2019 at 6:43 PM, Spanky55 said:

    Hey

    Yes, I have the Watch Folder enabled. It is showing up in the logs with frequency (The first line I posted is the line that is repeated a lot in the log which I am assuming is the watcher). I will try turning it off and on again to see if that help :)

     

    Yup... turning it off and then back on fixed it. I have no idea why but it just ran on a file I just added.

     

    Thanks for the great plugin by the way. It's very much appreciated. Looking forward to running it on my entire library once I'm feeling brave enough

    Very pleased that resolved the issue.

     

    Great, yeah have a play around on some test files etc :)

  2. On 12/12/2019 at 6:35 PM, jpotrz said:

    I've just started messing with Tdarr, and had some questions in regards to setting up a plug in to do what I'd like it do.

     

    Ideally, I want only English audio streams in my movies (I have a billion .mkvs already). The only problem I see is that in my /movies/ folder there are a handful of Chinese/Japanese movies already where I would want to keep those in the native language (I prefer subs to dubs). So, short of seperating those out of the /movies/ folder, I'll have to resort to just keeping all English, Chinese and Japanese audio streams for mkvs found in /movies/ , correct? If so, is that possible?

     

    On the same note, I really don't need any fancy audio streams - I basically just have a TV and no soundbar/stereo setup. So I'd like to just convert any audio streams to AC3 (I think that should be sufficient?) and save a lot of file size. If so, is that possible as well?

     

    Thanks for you time!

    Yes that's possible with a custom plugin.

     

    And you can convert all audio streams to AC3 by creating a 'Standardise audio streams' plugin in the plugin creator.

  3. On 12/12/2019 at 1:16 PM, Spanky55 said:

    Hello

     

    Loving the plugin so far. I am having a problem with the Watch Folders not working. I did the initial scan and it definitely performed several transcodes as expected. I then had multiple downloads complete and copy their files into the directory. Tdarr never picked up that there were new files. After about 2 or 3 hours, I did a 'Scan (Find New)' on the library and it was able to find 12 new episodes.

     

    I checked in the MongoDB under the 'Files' table and the new episodes were missing before I hit 'Scan'. Once I hit scan, they showed up.

     

    This was the line in my log directly before I hit 'Scan'

     

    
    2019-12-12T08:07:03-0500
    Scanner Folder watcher:{"D7Wk86iYN2jdmjYbr":{"id":"D7Wk86iYN2jdmjYbr","filesToScan":[],"oldLength":0,"newLength":0}}:null

     

    This is what was visible immediately after I hit scan

    
    2019-12-12T08:07:05-0500 Scanner -SIfzvG_:vars received: /usr/bin/node,/app/Tdarr/bundle/programs/server/assets/app/fileScanner.js,-SIfzvG_,D7Wk86iYN2jdmjYbr,/home/Media/TV Shows/HD/*******,1,mkv,mp4,mov,m4v,mpg,mpeg,avi,flv,webm,wmv,vob,evo,iso,m2ts,ts,0,{"HealthCheck":"Queued","TranscodeDecisionMaker":"Queued","cliLog":"","bumped":false,"history":""},/home/Tdarr/Documents,undefined,
    
    2019-12-12T08:07:04-0500 Scanner -SIfzvG_:Online.
    
    2019-12-12T08:07:04-0500 Scanner -SIfzvG_ launched
    
    2019-12-12T08:07:04-0500 Commencing file update scan. Deleting non-existent files and adding new files.

    And then a whole bunch of files that were added and process. The IDs match between the two sections. I only have 1 library in Tdarr currently

     

    Any help as to why the Watcher wouldn't be picking up new files would be appreciated

    Just to check, have you enabled Folder Watch in the library settings?

  4. On 12/5/2019 at 1:12 AM, nickp85 said:

    Where do I put that to get the dev build?

     

    Update: I put it in the repository field and it looks to have pulled new stuff.  Went into the GUI and tried to run my transcode again and still failed with the same error.

     

    Should I see any indication somewhere in the GUI that it is the dev build?  I am looking at top right and it still says Alpha 1.008.

     

    Seeing this in the log:

    [22:16:26] CPU: Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz

    [22:16:26] - Intel microarchitecture Kaby Lake

    [22:16:26] - logical processor count: 4

    [22:16:26] Intel Quick Sync Video support: no

     

    Ran same CLI command from the log in the handbrake container (modified file locations)

    [23:24:52] CPU: Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz
    [23:24:52]  - Intel microarchitecture Kaby Lake
    [23:24:52]  - logical processor count: 4
    [23:24:52] Intel Quick Sync Video support: yes

     

    Seems handbrake isn't seeing the QSV in that container for some reason

     

    I passed device /dev/dri to the container like other container so it should be working.

     

    vainfo shows the device info

     

    Tdarr@8aa448171cb0:/dev/dri$ vainfo
    error: XDG_RUNTIME_DIR not set in the environment.
    error: can't connect to X server!
    libva info: VA-API version 1.1.0
    libva info: va_getDriverName() returns 0
    libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
    libva info: Found init function __vaDriverInit_1_1
    libva info: va_openDriver() returns 0
    vainfo: VA-API version: 1.1 (libva 2.1.0)
    vainfo: Driver version: Intel i965 driver for Intel(R) Coffee Lake - 2.1.0
    vainfo: Supported profile and entrypoints
          VAProfileMPEG2Simple            : VAEntrypointVLD
          VAProfileMPEG2Simple            : VAEntrypointEncSlice
          VAProfileMPEG2Main              : VAEntrypointVLD
          VAProfileMPEG2Main              : VAEntrypointEncSlice
          VAProfileH264ConstrainedBaseline: VAEntrypointVLD
          VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
          VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
          VAProfileH264Main               : VAEntrypointVLD
          VAProfileH264Main               : VAEntrypointEncSlice
          VAProfileH264Main               : VAEntrypointEncSliceLP
          VAProfileH264High               : VAEntrypointVLD
          VAProfileH264High               : VAEntrypointEncSlice
          VAProfileH264High               : VAEntrypointEncSliceLP
          VAProfileH264MultiviewHigh      : VAEntrypointVLD
          VAProfileH264MultiviewHigh      : VAEntrypointEncSlice
          VAProfileH264StereoHigh         : VAEntrypointVLD
          VAProfileH264StereoHigh         : VAEntrypointEncSlice
          VAProfileVC1Simple              : VAEntrypointVLD
          VAProfileVC1Main                : VAEntrypointVLD
          VAProfileVC1Advanced            : VAEntrypointVLD
          VAProfileNone                   : VAEntrypointVideoProc
          VAProfileJPEGBaseline           : VAEntrypointVLD
          VAProfileJPEGBaseline           : VAEntrypointEncPicture
          VAProfileVP8Version0_3          : VAEntrypointVLD
          VAProfileVP8Version0_3          : VAEntrypointEncSlice
          VAProfileHEVCMain               : VAEntrypointVLD
          VAProfileHEVCMain               : VAEntrypointEncSlice
          VAProfileHEVCMain10             : VAEntrypointVLD
          VAProfileHEVCMain10             : VAEntrypointEncSlice
          VAProfileVP9Profile0            : VAEntrypointVLD
          VAProfileVP9Profile0            : VAEntrypointEncSlice
          VAProfileVP9Profile2            : VAEntrypointVLD

     

    Sorry I didn't get a notification for your update/edit. I'll have another look at this. I've read that with some motherboards you have to make sure that an HDMI cable is plugged in and connected to a monitor (or use a HDMI dummy plug) for QSV to work.

  5. 18 hours ago, nickp85 said:

    Can this use Intel Quick Sync for GPU encoding?  I got it working on the Handbrake docker so I exported my preset then used the following to call the preset in tdarr as a local plugin but am getting an error.  It cycles through all my library files quick and takes no action.

     

    I confirmed the json file exported from Handbrake is in the right directory as viewed by Tdarr.  It's mapped to my appdata/tdarr-aio/ folder on host. I also passed /dev/dri as a device to the container like I do with Handbrake and Plex containers.

     

    Config:

    --preset-import-file "/home/Tdarr/Documents/myh265.json" -Z "myh265"

     

    Error in log:

    ERROR: encx265: x265_param_default_preset failed. Preset (quality) Tune ((null))

    ERROR: Failure to initialise thread 'H.265/HEVC encoder (libx265)'

     

     

    Here is my plugin:

     

    
    var fs = require('fs');
        var path = require('path');
        if (fs.existsSync(path.join(process.cwd() , '/npm'))) {
        var rootModules = path.join(process.cwd() , '/npm/node_modules/')
        } else{
        var rootModules = ''
        }
    
        const importFresh = require(rootModules+'import-fresh');
        const library = importFresh('../methods/library.js')
    
          function details() {
    
              return {
                id: "zp0Vxm70",
                Name: "myh265",
                Type: "Video",
                Operation: "Transcode",
                Description: "myh265",
                Version: "",
                Link: ""
              }
            }
    
            function plugin(file) {
    
    
              //Must return this object at some point
    
              var response = {
    
                 processFile : true,
                 preset : '',
                 container : '',
                 handBrakeMode : false,
                 FFmpegMode : true,
                 reQueueAfter : true,
                 infoLog : '',
    
              }
    
              response.infoLog += "" + library.filters.filterByCodec(file,"exclude","hevc").note + library.filters.filterByMedium(file,"video").note
    
    
              if(true &&library.filters.filterByCodec(file,"exclude","hevc").outcome === true &&library.filters.filterByMedium(file,"video").outcome === true){
    
    
                  response.preset = '--preset-import-file "/home/Tdarr/Documents/myh265.json" -Z "myh265"'
                  response.container = '.mkv'
                  response.handBrakeMode = true
                  response.FFmpegMode = false
    
                  response.reQueueAfter = true;
                  response.processFile = true
                  response.infoLog +=  ""
                  return response
    
    
                 }else{
    
                  response.processFile = false;
                  response.infoLog += ""
                  return response
    
    
                 }
            }
    
    module.exports.details = details;
    module.exports.plugin = plugin;

     

    And my json file for the preset exported from Handbrake container.  Basically used Spaceinvader's YouTube to create my preset

    
    {
        "PresetList": [
            {
                "AlignAVStart": false,
                "AudioCopyMask": [
                    "copy:mp3",
                    "copy:aac",
                    "copy:ac3",
                    "copy:dts",
                    "copy:dtshd",
                    "copy:eac3",
                    "copy:truehd"
                ],
                "AudioEncoderFallback": "fdk_aac",
                "AudioLanguageList": [],
                "AudioList": [
                    {
                        "AudioBitrate": 160,
                        "AudioCompressionLevel": -1.0,
                        "AudioDitherMethod": "auto",
                        "AudioEncoder": "fdk_aac",
                        "AudioMixdown": "dpl2",
                        "AudioNormalizeMixLevel": false,
                        "AudioSamplerate": "auto",
                        "AudioTrackDRCSlider": 0.0,
                        "AudioTrackGainSlider": 0.0,
                        "AudioTrackQuality": 1.0,
                        "AudioTrackQualityEnable": false
                    }
                ],
                "AudioSecondaryEncoderMode": true,
                "AudioTrackSelectionBehavior": "first",
                "ChapterMarkers": true,
                "ChildrenArray": [],
                "Default": true,
                "FileFormat": "av_mkv",
                "Folder": false,
                "FolderOpen": false,
                "InlineParameterSets": false,
                "Mp4HttpOptimize": false,
                "Mp4iPodCompatible": false,
                "PictureAutoCrop": true,
                "PictureBottomCrop": 0,
                "PictureChromaSmoothCustom": "",
                "PictureChromaSmoothPreset": "off",
                "PictureChromaSmoothTune": "none",
                "PictureCombDetectCustom": "",
                "PictureCombDetectPreset": "default",
                "PictureDARWidth": 0,
                "PictureDeblockCustom": "strength=strong:thresh=20:blocksize=8",
                "PictureDeblockPreset": "off",
                "PictureDeblockTune": "medium",
                "PictureDeinterlaceCustom": "",
                "PictureDeinterlaceFilter": "decomb",
                "PictureDeinterlacePreset": "default",
                "PictureDenoiseCustom": "",
                "PictureDenoiseFilter": "off",
                "PictureDenoisePreset": "",
                "PictureDenoiseTune": "none",
                "PictureDetelecine": "off",
                "PictureDetelecineCustom": "",
                "PictureForceHeight": 0,
                "PictureForceWidth": 0,
                "PictureHeight": 0,
                "PictureItuPAR": false,
                "PictureKeepRatio": true,
                "PictureLeftCrop": 0,
                "PictureLooseCrop": false,
                "PictureModulus": 2,
                "PicturePAR": "auto",
                "PicturePARHeight": 1,
                "PicturePARWidth": 1,
                "PictureRightCrop": 0,
                "PictureRotate": "disable=1",
                "PictureSharpenCustom": "",
                "PictureSharpenFilter": "off",
                "PictureSharpenPreset": "",
                "PictureSharpenTune": "",
                "PictureTopCrop": 0,
                "PictureWidth": 0,
                "PresetDescription": "",
                "PresetName": "myh265",
                "SubtitleAddCC": false,
                "SubtitleAddForeignAudioSearch": true,
                "SubtitleAddForeignAudioSubtitle": false,
                "SubtitleBurnBDSub": true,
                "SubtitleBurnBehavior": "foreign",
                "SubtitleBurnDVDSub": true,
                "SubtitleLanguageList": [
                    "eng"
                ],
                "SubtitleTrackSelectionBehavior": "all",
                "Type": 1,
                "UsesPictureFilters": true,
                "UsesPictureSettings": 2,
                "VideoAvgBitrate": 6000,
                "VideoColorMatrixCodeOverride": 0,
                "VideoEncoder": "qsv_h265",
                "VideoFramerate": "auto",
                "VideoFramerateMode": "vfr",
                "VideoGrayScale": false,
                "VideoLevel": "auto",
                "VideoOptionExtra": "",
                "VideoPreset": "quality",
                "VideoProfile": "main",
                "VideoQSVAsyncDepth": 4,
                "VideoQSVDecode": false,
                "VideoQualitySlider": 17.0,
                "VideoQualityType": 2,
                "VideoScaler": "swscale",
                "VideoTune": "",
                "VideoTurboTwoPass": true,
                "VideoTwoPass": true,
                "x264Option": "",
                "x264UseAdvancedOptions": false
            }
        ],
        "VersionMajor": 40,
        "VersionMicro": 0,
        "VersionMinor": 0
    }

     

    log.txt 9.63 kB · 0 downloads

    The tdarr_aio:dev tag container should have qsv HandBrake enabled if you want to give it a try.

  6. 7 hours ago, nickp85 said:

    Can this use Intel Quick Sync for GPU encoding?  I got it working on the Handbrake docker so I exported my preset then used the following to call the preset in tdarr as a local plugin but am getting an error.  It cycles through all my library files quick and takes no action.

     

    I confirmed the json file exported from Handbrake is in the right directory as viewed by Tdarr.  It's mapped to my appdata/tdarr-aio/ folder on host. I also passed /dev/dri as a device to the container like I do with Handbrake and Plex containers.

     

    Config:

    --preset-import-file "/home/Tdarr/Documents/myh265.json" -Z "myh265"

     

    Error in log:

    ERROR: encx265: x265_param_default_preset failed. Preset (quality) Tune ((null))

    ERROR: Failure to initialise thread 'H.265/HEVC encoder (libx265)'

     

     

    Here is my plugin:

     

    
    var fs = require('fs');
        var path = require('path');
        if (fs.existsSync(path.join(process.cwd() , '/npm'))) {
        var rootModules = path.join(process.cwd() , '/npm/node_modules/')
        } else{
        var rootModules = ''
        }
    
        const importFresh = require(rootModules+'import-fresh');
        const library = importFresh('../methods/library.js')
    
          function details() {
    
              return {
                id: "zp0Vxm70",
                Name: "myh265",
                Type: "Video",
                Operation: "Transcode",
                Description: "myh265",
                Version: "",
                Link: ""
              }
            }
    
            function plugin(file) {
    
    
              //Must return this object at some point
    
              var response = {
    
                 processFile : true,
                 preset : '',
                 container : '',
                 handBrakeMode : false,
                 FFmpegMode : true,
                 reQueueAfter : true,
                 infoLog : '',
    
              }
    
              response.infoLog += "" + library.filters.filterByCodec(file,"exclude","hevc").note + library.filters.filterByMedium(file,"video").note
    
    
              if(true &&library.filters.filterByCodec(file,"exclude","hevc").outcome === true &&library.filters.filterByMedium(file,"video").outcome === true){
    
    
                  response.preset = '--preset-import-file "/home/Tdarr/Documents/myh265.json" -Z "myh265"'
                  response.container = '.mkv'
                  response.handBrakeMode = true
                  response.FFmpegMode = false
    
                  response.reQueueAfter = true;
                  response.processFile = true
                  response.infoLog +=  ""
                  return response
    
    
                 }else{
    
                  response.processFile = false;
                  response.infoLog += ""
                  return response
    
    
                 }
            }
    
    module.exports.details = details;
    module.exports.plugin = plugin;

     

    And my json file for the preset exported from Handbrake container.  Basically used Spaceinvader's YouTube to create my preset

    
    {
        "PresetList": [
            {
                "AlignAVStart": false,
                "AudioCopyMask": [
                    "copy:mp3",
                    "copy:aac",
                    "copy:ac3",
                    "copy:dts",
                    "copy:dtshd",
                    "copy:eac3",
                    "copy:truehd"
                ],
                "AudioEncoderFallback": "fdk_aac",
                "AudioLanguageList": [],
                "AudioList": [
                    {
                        "AudioBitrate": 160,
                        "AudioCompressionLevel": -1.0,
                        "AudioDitherMethod": "auto",
                        "AudioEncoder": "fdk_aac",
                        "AudioMixdown": "dpl2",
                        "AudioNormalizeMixLevel": false,
                        "AudioSamplerate": "auto",
                        "AudioTrackDRCSlider": 0.0,
                        "AudioTrackGainSlider": 0.0,
                        "AudioTrackQuality": 1.0,
                        "AudioTrackQualityEnable": false
                    }
                ],
                "AudioSecondaryEncoderMode": true,
                "AudioTrackSelectionBehavior": "first",
                "ChapterMarkers": true,
                "ChildrenArray": [],
                "Default": true,
                "FileFormat": "av_mkv",
                "Folder": false,
                "FolderOpen": false,
                "InlineParameterSets": false,
                "Mp4HttpOptimize": false,
                "Mp4iPodCompatible": false,
                "PictureAutoCrop": true,
                "PictureBottomCrop": 0,
                "PictureChromaSmoothCustom": "",
                "PictureChromaSmoothPreset": "off",
                "PictureChromaSmoothTune": "none",
                "PictureCombDetectCustom": "",
                "PictureCombDetectPreset": "default",
                "PictureDARWidth": 0,
                "PictureDeblockCustom": "strength=strong:thresh=20:blocksize=8",
                "PictureDeblockPreset": "off",
                "PictureDeblockTune": "medium",
                "PictureDeinterlaceCustom": "",
                "PictureDeinterlaceFilter": "decomb",
                "PictureDeinterlacePreset": "default",
                "PictureDenoiseCustom": "",
                "PictureDenoiseFilter": "off",
                "PictureDenoisePreset": "",
                "PictureDenoiseTune": "none",
                "PictureDetelecine": "off",
                "PictureDetelecineCustom": "",
                "PictureForceHeight": 0,
                "PictureForceWidth": 0,
                "PictureHeight": 0,
                "PictureItuPAR": false,
                "PictureKeepRatio": true,
                "PictureLeftCrop": 0,
                "PictureLooseCrop": false,
                "PictureModulus": 2,
                "PicturePAR": "auto",
                "PicturePARHeight": 1,
                "PicturePARWidth": 1,
                "PictureRightCrop": 0,
                "PictureRotate": "disable=1",
                "PictureSharpenCustom": "",
                "PictureSharpenFilter": "off",
                "PictureSharpenPreset": "",
                "PictureSharpenTune": "",
                "PictureTopCrop": 0,
                "PictureWidth": 0,
                "PresetDescription": "",
                "PresetName": "myh265",
                "SubtitleAddCC": false,
                "SubtitleAddForeignAudioSearch": true,
                "SubtitleAddForeignAudioSubtitle": false,
                "SubtitleBurnBDSub": true,
                "SubtitleBurnBehavior": "foreign",
                "SubtitleBurnDVDSub": true,
                "SubtitleLanguageList": [
                    "eng"
                ],
                "SubtitleTrackSelectionBehavior": "all",
                "Type": 1,
                "UsesPictureFilters": true,
                "UsesPictureSettings": 2,
                "VideoAvgBitrate": 6000,
                "VideoColorMatrixCodeOverride": 0,
                "VideoEncoder": "qsv_h265",
                "VideoFramerate": "auto",
                "VideoFramerateMode": "vfr",
                "VideoGrayScale": false,
                "VideoLevel": "auto",
                "VideoOptionExtra": "",
                "VideoPreset": "quality",
                "VideoProfile": "main",
                "VideoQSVAsyncDepth": 4,
                "VideoQSVDecode": false,
                "VideoQualitySlider": 17.0,
                "VideoQualityType": 2,
                "VideoScaler": "swscale",
                "VideoTune": "",
                "VideoTurboTwoPass": true,
                "VideoTwoPass": true,
                "x264Option": "",
                "x264UseAdvancedOptions": false
            }
        ],
        "VersionMajor": 40,
        "VersionMicro": 0,
        "VersionMinor": 0
    }

     

    log.txt 9.63 kB · 0 downloads

    Thanks, it’s not possible to use quick sync at the moment. I’ll have a look at implementing it 👍

  7. On 11/12/2019 at 8:49 PM, controlol said:

    This is something I was actually looking for! Thanks so much :)

     

    Just bought a 1050ti which will arrive this week. Hope I can actually can get it running because it needs the 6-pin power connector but my server doesn't support that lol. Anyways it's working like a charm on my CPU's for now. Hope I can learn some ffmpeg in the future (is it more efficient?) for now I will stick with handbrake presets.

    Very clean UI although, sometimes I have to look around for a bit. (For me it wasn't clear I had to add different plug-ins for codec, size and handbrake preset so it still added all movies to encoding cue). I think it took me about half an hour to set up everything up.

    Again thanks a lot for the hard work!

    1.008 makes creating plugins far easier :)

  8. 3 hours ago, mattekure said:

    What exactly does the Health check do?  what is it checking?  I ran it on my entire library and they all passed, but I'm curious as to what its actually looking for.

    From the ‘Libraries’ information button:

     

    Quick health checks are done using HandBrake's --scan feature which checks file headers for errors. Thorough health checks are done using FFmpeg to go through all frames in a video file.

     

     

  9. 15 hours ago, nicksphone said:

    1.07 the last update I did not change anything. I changed db location now and it's starting now not a big deal redoing the settings but thought you might want to know as all I did was upgrade from the last version

    Sorry about that no idea what could have gone wrong. Somehow the database must have become corrupted during the update for you. I'll have a browse to see what might have caused this. At least if this happens again you can go to the 'Backups' tab, hit 'Restore' and then do a 'Find New' scan to get everything back up to speed quickly.

  10. 11 hours ago, controlol said:

    I transcode everything which is not smaller than 5 GB and not HEVC to HEVC. Keeping all audio (auto passthrough) and subtitle tracks. 

    The files I usually download are between 10 - 16 GB. It's transcoded using NVENC so files could definitely be smaller if I did it with CPU. The RF is set to 20 so files are usually around 7 GB after the transcode. Although sometimes they can be as large as 18 GB. 

     

    After I noticed that it still is sometimes larger I changed it to have a separate output folder so I can move them manually. I let it go over night expecting everything to be finished. But it only did 6 movies over and over. The "done" tab said the movies in my output folder had been transcoded. Not the movies where the original source was. This is probably why it kept redoing the same movies.

     

    Now I changed the RF to 22, to get smaller file size in general.

     

    Lastly, you were talking about adding aac audio. Did you mean this can be done automatically? This would be really cool if this is also possible with subtitles, adding it into the source folder with a particular name (so it will know witch language it is) and add it back to the queue so I don't have to fire up handbrake on my PC :)

     

    Then I have one last thing, is it normal that the transcode is only using about 60% of the CPU and GPU. I have a 1050ti in my server, but it's on pcie 2.0 and only 8 lanes. So that's essentially only 4 lanes pcie 3.0. I think this shouldn't have that much of an impact and it's almost just as fast as my 1060 6gb and ryzen 1600x (The CPU's in my server score just a bit better in cinebench).

    Adding a second worker does slow it down so much that it's not beneficial. 

     

    >The "done" tab said the movies in my output folder had been transcoded.

     

    There were some issues with the folder to folder conversion which have been fixed, will be in the update to day. However, what you describe is how Tdarr normally operates. The transcode success/error tab will show the file-path of the output file, not the input file which was transcoded.

     

    For example, without plugins, the transcode process will be:

     

    Source ---> Cache ---> Output

    Finish

     

    With plugins:

     

    Plugin 1: Source ---> Cache ---> Output

    Plugin 2: Output ---> Cache ---> Output

    Plugin 3: Output ---> Cache ---> Output

    etc

    Finish

     

    I didn't make Tdarr for folder to folder conversion as there are many programs which can do that already. Tdarr is meant to be a library manager which directly monitors your library. I added folder to folder conversion as a small extra for those who really want it but it's not the way Tdarr is set up for.

     

    >Lastly, you were talking about adding aac audio. Did you mean this can be done automatically?

     

    Yes there are already some plugins which transcode audio tracks automatically and I'm working on an option in the plugin creator so you can customise it. To be clear, it transcodes existing tracks, it does not grab completely new audio tracks.

     

    >This would be really cool if this is also possible with subtitles

     

    For subtitles you should use Bazarr. Tdarr only converts/removes subs, not add new sub tracks.

     

    >is it normal that the transcode is only using about 60% of the CPU and GPU

     

    If you're using NVENC with HandBrake then it varies but is normally around 90% for GPU. CPU is also high because "only video encoding is performed by the hardware encoder. Every stage prior to and after video encoding including decoding, filters, audio/video sync, audio encoding, muxing, etc., is performed by the CPU. As a result, it is normal to have high (even 100%) CPU utilisation during encodes." FFmpeg does not have this issue.

     

    If you use multiple workers then of course the transcode time per file will increase but rate of transcoding will increase which will also put more stress on your system and make it more sluggish so it depends what you're after.

     

     

     

     

  11. On 11/20/2019 at 6:54 AM, controlol said:

     

    It didn't transcode like you said, I must have remembered it wrong from the movies library.

     

    Now there is something else. It just transcoded a movie which was just over 9.3 GB before hand and 10 GB after the transcode. 

    It still replaced the movie, is that normal?

    I think it would be better to only replace/write the movies if the transcoded size is smaller than the original size, maybe even with a setting where you can set this to be at least 1 GB smaller for instance.

     

    Yes that's normal, Tdarr doesn't compare the new file with the old file. Keeping the original file if the new file is larger would introduce all sorts of problems - for example if someone is adding aac audio to a file then the new file will always be larger (due to the extra aac track).

     

    What types of files are you transcoding? If you're doing h264 to hevc then there must be something not quite right with your transcode settings if the new file is larger.

  12. 4 hours ago, controlol said:

    I am running into a problem with my series library, this is the second library I added.

    I set a plugin for only transcoding files that are between 1-100gb.

    In this case I let it only scan for the rick and morty season 4 folder which contains the 2 episodes that have been released. 

    Here is the plugin setup for series library and the files it has scanned.

    Both files are H264, but they shouldn't be included for the transcoding list because of the file size.

     

    For my movies library I set a minimum size of 5 gb. Here it does work.

     

    What could be the cause?

    Let me know if your files are actually transcoded even with the filter settings. 

  13. 3 hours ago, controlol said:

    I am running into a problem with my series library, this is the second library I added.

    I set a plugin for only transcoding files that are between 1-100gb.

    In this case I let it only scan for the rick and morty season 4 folder which contains the 2 episodes that have been released. 

    Here is the plugin setup for series library and the files it has scanned.

    Both files are H264, but they shouldn't be included for the transcoding list because of the file size.

     

    For my movies library I set a minimum size of 5 gb. Here it does work.

     

    What could be  the cause?

    The filters you have selected are not related to the files which are scanned. The filters are to do with which files will be transcoded.

     

    So all files which you scan will appear in the transcode queue but if they do not meet the filter settings then the files will be moved straight into the ‘Transcode: Not required’ tab without being processed. 

  14. On 11/15/2019 at 11:58 PM, the1poet said:

    Did some testing, now I've scanned my library after health checks and left it running over night. So far, so good. Thank you for the speedy response.

    Are there any plans to simplify the GUI for creating plugins? Perhaps having tick boxes for common settings or fields with descriptions and parse those as variables to the script? Just thinking of you and not getting bugged by end users as much if the process was simpler?

    Don't get me wrong, I appreciate your hard work... just a suggestion to potentially improve things.

     

    Thanks again!

    Glad it’s working! Yes the GUI is still an early version however I am keen on keeping the plugin creator as modular as possible. That way it’s easy to mix your local plugins with community plugins depending on what you’re wanting to do with your files. Wanting to try a lot of different things out though. 

  15. 2 hours ago, controlol said:

    I inserted my new 1050ti today but for some reason the hw transcoding doesn't work. For plex it does work :)

    I get this error: 

    The transcoder does work with the exact same config but with h265 cpu encoding instead of nvenc.
    The settings for my tdarr container is attached to this post.

    tdarr settings.png

    I think this is due to the imported preset bug with HandBrake, please see this:

     

    https://github.com/HandBrake/HandBrake/issues/2047

     

    Removing '"PictureRotate": "0:0"' from the JSON preset resolves the issue hopefully.

  16. 8 minutes ago, the1poet said:

    Can anyone offer advice on creating plugins?

    What I want to create seems simple enough.

    I want to convert any video file that has surround sound that isn't ac3, aac, or mp3, and transcode to ac3, and copy the rest (video, subtitles, etc).

    It's late here and I'll have another crack at it on the weekend, just thought if someone could steer me in the right direction.

     

    tl;dr, I have 10 year old surround sound that doesn't support DD+, DTS-HD, and most other modern surround sound files. As a result, I want to convert my videos with surround sound audio to something that will play on my speakers.

     

    Thanks

    Surround sound being 5.1 or 7.1 or both?

  17. 16 minutes ago, nicksphone said:

    doing it this way i would have to make separate libs so it still strips the meta from all the files?

    I've created a new community plugin for you:

     

    ID:Tdarr_Plugin_s710_nick_h265_nvenc_4K

    Desc:This plugin transcodes all 4K videos to h265 using nvenc (if not in h265 already). For 4K and files in other resolutions: If not in mkv the file is remuxed into mkv. If the English language track is not in AC3,EAC3 or DTS then an AC3 track is added.

     

    So it does exactly the same as the other one except if files aren't 4K then they aren't transcoded.

     

     

    • Like 1
  18. 12 minutes ago, nicksphone said:

    my real concern is the 720p and 1080p files that were in 264 growing in size usally 1.5x on 720 and 2-3 times the size on 1080p no point re-encoding them if its going to take up more space using the plugin is there a way for it to only do 4k files if this is the norm?

    Yes an easy way to do that is to go into the Plugin creator on the 'Plugins' tab and create a 4K filter plugin:

     

    image.png

     

    So it should look like the above. Hit 'Create Plugin'. The plugin will appear in your 'Local' plugins. Copy the ID into your plugin stack and make sure 'Local' is selected. It should look something like this:

     

    image.png

     

    Hit enter and then make sure the filter is at the top of your plugin stack.

     

     

     

     

    • Like 1
×
×
  • Create New...