Skip to content
CutePoisonX edited this page Jun 25, 2015 · 1 revision

Begin

At this stage, you should have installed PoisonConvert on your System. You may get settings-errors when you start, so go to the settings-menu and fix them. If you don't get any errors, proceed with the chapter "Creating your own configuration". After all settings are valid, type "config-file" to create your own config-file. Choose any filename you want.

Creating your own configuration

Creating the targets

If all your settings are set correctly, you can configure the program. First you should check to which format movies should be converted. If you know everything about your "target"-file, you can create a so-called target. Go into the config-menu by typing "config" in the main-menu an subsequently: "new"-"target"-"video" to specify the parameters for the video. Set all needed parameters and confirm your selection. Now do the same for "audio" and "sub" (subtitles).

Note that you can also create more than one target if you need to.

Creating the rules

Now you can create search rules or simply "rules" to identify the movies that you want to convert. There are a few things to consider when writing rules: You can assign a priority to any rule you create. Rules with higher priorities get processed first. Add all parameters, choose a priority and then assign the appropriate target. If a file matches these parameters, it will be processed with the outcome specified in the assigned target. This procedure is executed for "video"-, "audio"- and "subtitle" rules. What's important about this: if the videostream matches but the audiostream does not, no audio will be present in your target file! Therefore, you always should add a low-priority-rule where all values are "-" (which means "any") in the case that no other rules match.

Finished

If you have configured PoisonConvert you are ready to start. You can start PoisonConvert manually from within the main menu or you can start it with a command line argument by typing: poisonconvert --start. The latter is especially handy when you schedule PoisonConvert (see: https://github.com/CutePoisonX/PoisonConvert/wiki/Scheduling).

An example: the AppleTV3 config file

This section will give you a brief explanation about the configurations of the AppleTV3 file.

The first step is to identify which formats are accepted by the AppleTV. We can check this at: https://support.apple.com/kb/SP648

Basically, by looking at this document we can extract the accepted formats. The most relevant specifications are:

  • Container: m4v, mp4 and mov
  • Videocodec: h264
  • Audiocodec: AAC, MP3, AIFF, WAV and Dolby Digital which is basically AC3

So the targets should be:

Videotarget 1)

  • Container: m4v,
  • Codec: copy
  • Other things: unchanged

Videotarget 2)

  • Container: m4v,
  • Codec: h264
  • Other things: unchanged

There are two video targets because the second one will always convert the codec to h264 and the first one will copy the codec. However, if we find a movie that already has h264 as codec, we don't need to convert it, so we assign the first video-target to that rule. The audio- and subtitle targets are:

Audiotarget 1)

  • Codec: copy
  • Other things: unchanged

Audiotarget 2)

  • Codec: AC3
  • Other things: unchanged

Audiotarget 3)

  • Codec: libfaac
  • Other things: unchanged

Subtitletarget 1)

  • Codec: mov_text

Note that the subtitle codec isn't mentioned directly in the apple-document but a quick google search yields that this subtitle format is supported. Ok, we have our targets. Now lets take a look at the rules:

Videorule 1)

  • Container: is not m4v
  • Codec: is h264 -> assign to target: Videotarget 1)

So, if we find a video that has a different container than m4v, but the right codec, we only change the container without modifying the codec itself.

Videorule 2)

  • Codec: is not h264 -> assign to target: Videotarget 2)

Now we have to convert the codec, therefore we assign this rule to target 2.

Videorule 3)

  • Container: is m4v
  • Codec: is h264 -> assign to target: Videotarget 1)

This only copies the videostream in case that it already has the correct format. And now to the audio-rules:

Audiorule 1)

  • Codec: is not AC3
  • Channels: is 6 -> assign to target: Audiotarget 2)

If we have a 5.1 setup but the codec is not AC3, we want to convert it.

Audiorule 2)

  • Codec: is not AAC
  • Channels: is 2 -> assign to target: Audiotarget 3)

If we have a stereo setup but the codec is not AAC, we want to convert it.

Audiorule 3)

  • Codec: is AAC -> assign to target: Audiotarget 1)

Perfect, copy it!

Audiorule 4)

  • Codec: is AC3 -> assign to target: Audiotarget 1)

Perfect, copy it!

Audiorule 5)

  • Any stream -> assign to target: Audiotarget 2)

In case that no other rule matched, we convert the audio to AC3. And last but not least, the subtitlerules:

Subtitlerule 1)

  • Codec: is not mov_text -> assign to target: Subtitletarget 1)

This is straightforward. We only accept the codec "mov_title", so if it does not match, we convert it.

Clone this wiki locally