How to force framerate conversion during transcoding if above 30fps?

You can try and create a custom device profile for Plex, which has a restriction to 30 fps.
(This used to work, but I am nactually not sure if it still does.)

OK, according to the log, Plex is using the device profile Samsung.xml (line 882).

You can find this device profile in the folder where the executables of Plex server are stored, in a subfolder Resources/Profiles.
Copy this file to your Plex data folder

See Synology FAQ - Questions, Answers, and a few How-To's for how to get access to the data folder.

In the data folder, create a subfolder named Profiles
Now modify the Samsung.xml file.
Go to line 30

    <CodecProfiles>
        <VideoAudioCodec name="ac3,wmav2,dca,aac,mp3">
            <Limitations>

insert a blank line directly under <CodecProfiles> and insert

    <VideoCodec name="mpeg2video">
      <Limitations>
        <UpperBound name="video.width" value="1920" isRequired="true" />
        <UpperBound name="video.height" value="1080" isRequired="true" />
        <UpperBound name="video.frameRate" value="30" />
        <UpperBound name="video.bitrate" value="30720" />
      </Limitations>
    </VideoCodec>
    <VideoCodec name="mpeg4">
      <Limitations>
        <UpperBound name="video.width" value="1920" isRequired="true" />
        <UpperBound name="video.height" value="1080" isRequired="true" />
        <UpperBound name="video.frameRate" value="30" />
        <UpperBound name="video.bitrate" value="8192" />
      </Limitations>
    </VideoCodec>
    <VideoCodec name="h264">
      <Limitations>
        <UpperBound name="video.width" value="1920" isRequired="true" />
        <UpperBound name="video.height" value="1080" isRequired="true" />
        <UpperBound name="video.frameRate" value="30" />
        <UpperBound name="video.bitrate" value="37500" />
        <UpperBound name="video.level" value="41" />
      </Limitations>
    </VideoCodec>
    <VideoCodec name="wmv2,wmv3,vc1">
      <Limitations>
        <UpperBound name="video.width" value="1920" isRequired="true" />
        <UpperBound name="video.height" value="1080" isRequired="true" />
        <UpperBound name="video.frameRate" value="30" />
        <UpperBound name="video.bitrate" value="25600" />
      </Limitations>
    </VideoCodec>

Save the file and make sure it has the same UNIX access permissions as all the other files and folders inside of the Plex data folder.

Restart the Plex Media Server.
The repeat the procedure from above for getting the logs.

If you later want to revert the change (for instance because you have bought a newer Samsung TV), simply delete the edited Samsung.xml file.

1 Like