FAQ  •  Register  •  Login

ROKU Subtitles

<<

betov

Serviio newbie

Posts: 5

Joined: Thu Jan 18, 2024 7:18 pm

Post Thu Jan 18, 2024 7:40 pm

ROKU Subtitles

Good day

I have a Roku Premiere+ and I couldn't get it to work with service, the problem was that the audio of any video file could not be heard, I generally consume many .mkv files, I tried all the Roku profiles that come by default and none of them solved the problem, I read in the forum a colleague's post which I leave for reference and helped me a lot to solve the audio problem,

Fixed audio:
https://forum.serviio.org/viewtopic.php?f=7&t=30229
--
Used Profile:
  Code:
<?xml version="1.0" encoding="UTF-8"?>
<Profiles version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.serviio.org/xsd/profiles/v/1.10/Profiles.xsd">

   <!--
      ========================= DO NOT EDIT - start ====================================
   -->


<Profile id="RokuPremiere" name="Roku Premiere+" extendsProfileId="1">
      <Detection>
         <HttpHeaders>
            <User-Agent>.*ROKU.*</User-Agent>
         </HttpHeaders>
      </Detection>
      <MediaFormatProfiles>
         <MediaFormatProfile mime-type="video/mp4">AVC_MP4_MP_SD_AAC_MULT5</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">AVC_MP4_MP_SD_MPEG1_L3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">AVC_MP4_MP_SD_AC3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">AVC_MP4_MP_HD_720p_AAC</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">AVC_MP4_MP_HD_1080i_AAC</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">AVC_MP4_HP_HD_AAC</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">AVC_MP4_LPCM</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">MPEG4_P2_MP4_ASP_AAC</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">MPEG4_P2_MP4_SP_L6_AAC</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">MPEG4_P2_MP4_NDSD</MediaFormatProfile>
         <MediaFormatProfile mime-type="audio/mpeg">MP3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AAC_MULT5</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AAC_MULT5_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AAC_MULT5_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_MPEG1_L3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_MPEG1_L3_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_MPEG1_L3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AAC_MULT5</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AAC_MULT5_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AAC_MULT5_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_MPEG1_L3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_MPEG1_L3_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_MPEG1_L3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AC3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AC3_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AC3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_HP_SD_MPEG1_L2_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_HP_SD_MPEG1_L2_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_AAC_MULT5</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_AAC_MULT5_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_AAC_MULT5_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_MPEG1_L3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_MPEG1_L3_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_MPEG1_L3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_AC3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_AC3_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_AC3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_HD_DTS_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_HD_DTS_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_HD_50_LPCM_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_HP_HD_MPEG1_L2_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_HP_HD_MPEG1_L2_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_AAC</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_AAC_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_AAC_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_AC3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_AC3_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_AC3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_MPEG1_L3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_MPEG1_L3_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_MPEG1_L3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_MPEG2_L2</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_MPEG2_L2_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_MPEG2_L2_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">VC1_TS_AP_L1_AC3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">VC1_TS_AP_L2_AC3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">VC1_TS_HD_DTS_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">VC1_TS_HD_DTS_ISO</MediaFormatProfile>
      </MediaFormatProfiles>
      <Transcoding>
         <!-- Transcode if H.264 level is too high -->
         <!-- <Video targetContainer="mpegts" targetVCodec="h264" maxVBitrate="12000" forceVTranscoding="true" targetACodec="ac3" aBitrate="320" maxWidth="1920" maxHeight="1080"> -->
            <!-- for no surround passthrough -->
         <Video targetContainer="mpegts" targetVCodec="h264" maxVBitrate="12000" forceVTranscoding="true" targetACodec="aac" aBitrate="128" forceStereo="true">
            <!--cdc-->
            <Matches container="*" vCodec="h264" profile="high_10" />
            <Matches container="*" vCodec="h264" profile="high" levelGreaterThan="4.1" />
            <Matches container="*" vCodec="h264" profile="main" levelGreaterThan="4.1" />
            <Matches container="*" widthGreaterThan="1920" />
         </Video>
         <!-- Remux audio and video streams - for DivX/Xvid in AVI/Matroska -->
         <Video targetContainer="mpegts">
            <Matches container="*" vCodec="mpeg4" aCodec="aac" />
            <Matches container="*" vCodec="msmpeg4" aCodec="aac" />
            <!-- for no surround passthrough comment out the following two lines -->
            <!--<Matches container="*" vCodec="mpeg4" aCodec="ac3" />
            <Matches container="*" vCodec="msmpeg4" aCodec="ac3" /> -->
            <Matches container="*" vCodec="mpeg4" aCodec="eac3" />
            <Matches container="*" vCodec="msmpeg4" aCodec="eac3" />
         </Video>
         <!-- Remux video stream, transcode audio only - for DivX/Xvid in AVI/Matroska -->
         <Video targetContainer="mpegts" targetACodec="aac" aBitrate="128">
            <Matches container="avi" vCodec="mpeg4" />
            <Matches container="avi" vCodec="msmpeg4" />
            <!-- for no surround passthrough uncomment the following two lines -->
             <Matches container="*" vCodec="mpeg4" aCodec="ac3" />
             <Matches container="*" vCodec="msmpeg4" aCodec="ac3" />
         </Video>
         <!-- Remux supported audio, transcode H.264 video if bitrate is too high, transcode non-H.264 video -->
         <Video targetContainer="mpegts" targetVCodec="h264" maxVBitrate="12000">
            <!-- for no surround passthrough comment out the following four lines -->
            <!-- <Matches container="*" vCodec="h264" aCodec="ac3" />
            <Matches container="*" vCodec="h264" aCodec="eac3" />
            <Matches container="*" vCodec="h264" aCodec="dca" />
            <Matches container="*" vCodec="mpeg2video" aCodec="ac3" />-->

            <Matches container="*" vCodec="mpeg2video" aCodec="eac3" />
            <Matches container="*" vCodec="mpeg2video" aCodec="dca" />
            <!-- comment the following line if you have files with 5.1ch AAC, Roku only supports 2 channel AAC -->
            <Matches container="*" vCodec="h264" aCodec="aac" />
         </Video>
         <!-- Transcode all audio, transcode H.264 video if bitrate is too high, transcode all other video -->
         <!--<Video targetContainer="mpegts" targetVCodec="h264" maxVBitrate="12000" targetACodec="ac3" aBitrate="320">-->
            <!-- for no surround passthrough-->
            <Video targetContainer="mpegts" targetVCodec="h264" maxVBitrate="12000" targetACodec="aac" aBitrate="128" forceStereo="true">
            <!--cdc-->
            <Matches container="*" />
         </Video>
         <Audio targetContainer="mp3">
            <Matches container="*" />
         </Audio>
      </Transcoding>
      <OnlineTranscoding>
         <Video targetContainer="applehttp"> <!-- dont transcode to ac3 -->
            <Matches container="mp4" />
            <Matches container="flv" vCodec="h264" />
            <Matches container="applehttp" vCodec="h264" />
         </Video>
      </OnlineTranscoding>
      <AudioTrackRemux>
         <Video targetContainer="mpegts" targetACodec="ac3">
            <Matches container="*" vCodec="h264" />
            <Matches container="*" vCodec="mpeg2video" />
            <Matches container="*" vCodec="mpeg1video" />
            <Matches container="*" vCodec="mpeg4" />
            <Matches container="*" vCodec="msmpeg4" />
         </Video>
      </AudioTrackRemux>
      <GenericTranscoding>
         <Video targetContainer="mpegts" targetVCodec="h264" maxVBitrate="12000" forceVTranscoding="true" targetACodec="ac3" aBitrate="320" />
      </GenericTranscoding>
      <AutomaticImageRotation>true</AutomaticImageRotation>
      <LimitImageResolution>false</LimitImageResolution>
   </Profile>
</Profiles>


With this profile I have not had any audio problems with any file (until now), however this profile disables the options to change language, change subtitle, go forward or go back within the video files, what I discovered is that the Roku profile Media Player is the one that disables all those functions for me and said profile is the one on which the solution I had is based. If someone knew what I should add or modify to be able to have the options of my Roku (change audio, change subtitles) they would I'd be really grateful,

thanks and regards
<<

atc98092

User avatar

DLNA master

Posts: 5215

Joined: Fri Aug 17, 2012 10:22 pm

Location: Washington (the state)

Post Fri Jan 19, 2024 5:53 pm

Re: ROKU Subtitles

I am the author of the Roku profiles included with Serviio. I will say that the profiles work for me on a Premiere 3920, Ultra 4640, 4670 and 4800, and a Roku Express 4K+ 3941. I previously tested on a Sharp Roku TV 4K and an Insignia Roku TV 720p. Two of my Ultras (4640 and 4800) are connected to a Yamaha AVR while the rest all feed the audio through the TV. The TVs in use vary: Samsung, LG and Vizio.

If the media requires transcoding, you lose many features, such as selecting different audio tracks. Roku devices have limited subtitle support, meaning they will not display image based captions (which almost all DVD/BD discs use). To get image based captions through Serviio, they have to be transcoded and burned into the video stream, which means you cannot select a different track nor turn them off.

Roku devices also have some bugs in their current OS and the Roku Media Player. If your media is in the TS/M2TS container, you lose almost all functionality other than simply playing them. No pause, FF or rewind, or resume after stopping. I've been complaining to Roku for several years about this, but so far nothing. And becuse of some other internal issue with the Roku I am forced to use the TS container to transcode VC-1 video. I believe all other transcoding is done using AppleHTTP/HLS as the container, so trick play remains available with those.

To know more about what is and is not working with your Roku, I need more information. Is there an AVR processing the audio? What brand TV? What is within your MKV containers for any media that both work and not work? See the link in my sig line for determining the contents of your media container.
Dan

LG NANO85 4K TV, Samsung JU7100 4K TV, Sony BDP-S3500, Sharp 4K Roku TV, Insignia Roku TV, Roku Ultra, Premiere and Stick, Nvidia Shield, Yamaha RX-V583 AVR.
Primary server: Intel i5-6400, 16 gig ram, Windows 10 Pro, 22 TB hard drive space | Test server Windows 10 Pro, AMD Phenom II X4 965, 8 gig ram

HOWTO: Enable debug logging HOWTO: Identify media file contents
<<

betov

Serviio newbie

Posts: 5

Joined: Thu Jan 18, 2024 7:18 pm

Post Sat Jan 20, 2024 3:45 am

Re: ROKU Subtitles

Hello

Thank you very much for responding, and I will try to include as much information as possible, an apology for my English since I am not a native user,

The TV is a Sharp Aquos, and I have it connected to a Sony SRS-XB3 speaker via the 3.5mm cable. The MKV contains the following:

Image

LOG:
https://bitwarden.irrealidad.xyz/#/send/5fzeZubWSpSp8xtKy1KQyQ/kFzAbxuZvzsySZ_QlzVzPA

With profiles:

Roku1080Mediaplayer(2016+)
Roku4kMediaPlayer(2016+)
Roku4kMediaPlayer w/MPEG2
Roku4kTV
RokuTV(non4k)

Image

-WITHOUT SOUND
-EVERY OPTIONS

With the profile unchanged:

RokuMediaPlayer

-WITHOUT SOUND
-NO OPTIONS

With the modified profile:

RokuPremier+

Image

-SOUND
-NO OPTIONS

Thank you very much and greetings
<<

atc98092

User avatar

DLNA master

Posts: 5215

Joined: Fri Aug 17, 2012 10:22 pm

Location: Washington (the state)

Post Sat Jan 20, 2024 4:40 am

Re: ROKU Subtitles

Ok, my Spanish is extremely limited, but I understand the information flow that you provided so I think I can figure it out. From what I can see, the video is using the H.264 codec and is in the MKV container. Roku supports both of those, no problem. And it appears your caption tracks are text based (UTF8) which is also supported by the Roku. But here's where I see a possible problem. Your audio codec is EAC3, which is Dolby Digital+. That cannot be sent from the TV to an audio device via optical or RCA cables. I looked up the Sony speaker, and it only has the mini-cable connector, so the TV has to support the audio feed. If your TV doesn't support EAC3 (which I doubt), that is why you get no sound.

The profile you have created to use for your Premiere is transcoding the video as well as the audio, so that's why you are losing your caption options. try removing this part of your transcoding line:

"targetVCodec="h264" maxVBitrate="12000" forceVTranscoding="true""

With that section removed, your will not touch the video at all (your Premiere doesn't need the max bitrate either) and will only convert the EAC3 to AAC audio.

However, you still won't have the FF/Rewind/Pause function, because you are transcoding into the TS container, and as I mentioned Roku has a serious bug in their player that messes with TS containers. So instead, let's change the entire transcoding line with the following:

  Code:
<Video targetContainer="applehttp" targetACodec="aac" aBitrate="128" forceStereo="true">


Using AppleHTTP you will get your trick play functions back. I can't say for certain if you'll get all your caption tracks back, but I believe you will.

NOTE: before you make any changes in your working profile file, save a copy so if something goes wrong you can restore the original file.
Dan

LG NANO85 4K TV, Samsung JU7100 4K TV, Sony BDP-S3500, Sharp 4K Roku TV, Insignia Roku TV, Roku Ultra, Premiere and Stick, Nvidia Shield, Yamaha RX-V583 AVR.
Primary server: Intel i5-6400, 16 gig ram, Windows 10 Pro, 22 TB hard drive space | Test server Windows 10 Pro, AMD Phenom II X4 965, 8 gig ram

HOWTO: Enable debug logging HOWTO: Identify media file contents
<<

betov

Serviio newbie

Posts: 5

Joined: Thu Jan 18, 2024 7:18 pm

Post Sun Jan 21, 2024 1:54 am

Re: ROKU Subtitles

Hello

Sorry for responding so late but I had a problem with the .xml, apparently they are quite susceptible to spaces with tabs, anyway thank you very much for your help, I just made all the suggested modifications in the transcoding area and I have carried out tests with the following results:

-The audio still works perfectly
-The Forward, Backward, Stop, Pause and Resume options work perfectly!
-The subtitle change menu and/or language change do not work!

I attach again the profile used and the service log,

  Code:
<?xml version="1.0" encoding="UTF-8"?>
<Profiles version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.serviio.org/xsd/profiles/v/1.10/Profiles.xsd">

   <!--
      ========================= DO NOT EDIT - start ====================================
   -->


<Profile id="RokuPremiere" name="Roku Premiere+" extendsProfileId="1">
      <Detection>
         <HttpHeaders>
            <User-Agent>.*ROKU.*</User-Agent>
         </HttpHeaders>
      </Detection>
      <MediaFormatProfiles>
         <MediaFormatProfile mime-type="video/mp4">AVC_MP4_MP_SD_AAC_MULT5</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">AVC_MP4_MP_SD_MPEG1_L3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">AVC_MP4_MP_SD_AC3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">AVC_MP4_MP_HD_720p_AAC</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">AVC_MP4_MP_HD_1080i_AAC</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">AVC_MP4_HP_HD_AAC</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">AVC_MP4_LPCM</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">MPEG4_P2_MP4_ASP_AAC</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">MPEG4_P2_MP4_SP_L6_AAC</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/mp4">MPEG4_P2_MP4_NDSD</MediaFormatProfile>
         <MediaFormatProfile mime-type="audio/mpeg">MP3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AAC_MULT5</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AAC_MULT5_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AAC_MULT5_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_MPEG1_L3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_MPEG1_L3_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_MPEG1_L3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AAC_MULT5</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AAC_MULT5_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AAC_MULT5_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_MPEG1_L3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_MPEG1_L3_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_MPEG1_L3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AC3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AC3_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_SD_AC3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_HP_SD_MPEG1_L2_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_HP_SD_MPEG1_L2_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_AAC_MULT5</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_AAC_MULT5_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_AAC_MULT5_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_MPEG1_L3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_MPEG1_L3_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_MPEG1_L3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_AC3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_AC3_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_MP_HD_AC3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_HD_DTS_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_HD_DTS_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_HD_50_LPCM_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_HP_HD_MPEG1_L2_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">AVC_TS_HP_HD_MPEG1_L2_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_AAC</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_AAC_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_AAC_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_AC3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_AC3_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_AC3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_MPEG1_L3</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_MPEG1_L3_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_MPEG1_L3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_MPEG2_L2</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_MPEG2_L2_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">MPEG4_P2_TS_ASP_MPEG2_L2_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">VC1_TS_AP_L1_AC3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">VC1_TS_AP_L2_AC3_ISO</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">VC1_TS_HD_DTS_T</MediaFormatProfile>
         <MediaFormatProfile mime-type="video/vnd.dlna.mpeg-tts" name="MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO">VC1_TS_HD_DTS_ISO</MediaFormatProfile>
      </MediaFormatProfiles>
      <Transcoding>
         <Video targetContainer="applehttp" targetACodec="aac" aBitrate="128" forceStereo="true">
            <Matches container="*" vCodec="h264" profile="high_10" />
            <Matches container="*" vCodec="h264" profile="high" levelGreaterThan="4.1" />
            <Matches container="*" vCodec="h264" profile="main" levelGreaterThan="4.1" />
            <Matches container="*" widthGreaterThan="1920" />
         </Video>
         <Video targetContainer="applehttp" targetACodec="aac" aBitrate="128" forceStereo="true">
            <Matches container="*" vCodec="mpeg4" aCodec="aac" />
            <Matches container="*" vCodec="msmpeg4" aCodec="aac" />
            <Matches container="*" vCodec="mpeg4" aCodec="eac3" />
            <Matches container="*" vCodec="msmpeg4" aCodec="eac3" />
         </Video>
         <Video targetContainer="applehttp" targetACodec="aac" aBitrate="128" forceStereo="true">
            <Matches container="avi" vCodec="mpeg4" />
            <Matches container="avi" vCodec="msmpeg4" />
             <Matches container="*" vCodec="mpeg4" aCodec="ac3" />
             <Matches container="*" vCodec="msmpeg4" aCodec="ac3" />
         </Video>
         <Video targetContainer="applehttp" targetACodec="aac" aBitrate="128" forceStereo="true">
            <Matches container="*" vCodec="mpeg2video" aCodec="eac3" />
            <Matches container="*" vCodec="mpeg2video" aCodec="dca" />
            <Matches container="*" vCodec="h264" aCodec="aac" />
         </Video>
            <Video targetContainer="applehttp" targetACodec="aac" aBitrate="128" forceStereo="true">
            <Matches container="*" />
         </Video>
         <Audio targetContainer="mp3">
            <Matches container="*" />
         </Audio>
      </Transcoding>
      <OnlineTranscoding>
         <Video targetContainer="applehttp">
            <Matches container="mp4" />
            <Matches container="flv" vCodec="h264" />
            <Matches container="applehttp" vCodec="h264" />
         </Video>
      </OnlineTranscoding>
      <AudioTrackRemux>
         <Video targetContainer="mpegts" targetACodec="ac3">
            <Matches container="*" vCodec="h264" />
            <Matches container="*" vCodec="mpeg2video" />
            <Matches container="*" vCodec="mpeg1video" />
            <Matches container="*" vCodec="mpeg4" />
            <Matches container="*" vCodec="msmpeg4" />
         </Video>
      </AudioTrackRemux>
      <GenericTranscoding>
         <Video targetContainer="mpegts" targetVCodec="h264" maxVBitrate="12000" forceVTranscoding="true" targetACodec="ac3" aBitrate="320" />
      </GenericTranscoding>
      <AutomaticImageRotation>true</AutomaticImageRotation>
      <LimitImageResolution>false</LimitImageResolution>
   </Profile>
</Profiles>


LoG:
https://bitwarden.irrealidad.xyz/#/send/rwTXQcwoQgirCjLb49L_mg/-fQCr_ElXsGo72wEAH1cPw

Thank you very much and greetings,
<<

atc98092

User avatar

DLNA master

Posts: 5215

Joined: Fri Aug 17, 2012 10:22 pm

Location: Washington (the state)

Post Sun Jan 21, 2024 2:05 am

Re: ROKU Subtitles

Yeah, I wasn't really confident that the captions would come back, and since you're transcoding the audio there's no way to select a different audio language. It's only going to transcode the audio track that is labeled default. But I'm glad we got the audio and trick play working again for you. With the problems with the Roku Media Player, that's probably the best we can accomplish until they get some updates done.
Dan

LG NANO85 4K TV, Samsung JU7100 4K TV, Sony BDP-S3500, Sharp 4K Roku TV, Insignia Roku TV, Roku Ultra, Premiere and Stick, Nvidia Shield, Yamaha RX-V583 AVR.
Primary server: Intel i5-6400, 16 gig ram, Windows 10 Pro, 22 TB hard drive space | Test server Windows 10 Pro, AMD Phenom II X4 965, 8 gig ram

HOWTO: Enable debug logging HOWTO: Identify media file contents
<<

betov

Serviio newbie

Posts: 5

Joined: Thu Jan 18, 2024 7:18 pm

Post Sun Jan 21, 2024 3:46 am

Re: ROKU Subtitles

I understand that the audio cannot be selectable due to the transcode but what about the subtitles, do you think I can get them back since it would be useless to have only the audio, thank you very much.
<<

atc98092

User avatar

DLNA master

Posts: 5215

Joined: Fri Aug 17, 2012 10:22 pm

Location: Washington (the state)

Post Sun Jan 21, 2024 4:04 am

Re: ROKU Subtitles

In the Serviio console look under Delivery/Subtitles. Make sure "Enable extraction of text-based subtitles embedded in video files" is checked. Other than that, I am not aware of any setting in the Profile that might make a difference. Looking at the Serviio support page for transcoding configuration, it mentions "HardSubsTranscoding", but I really have no idea what it might do or if it has any impact on your issue. I'm not even certain how it is entered in a profile, as the support page doesn't provide an example. I searched the entire Profiles.xml file and there's no example in there.
Dan

LG NANO85 4K TV, Samsung JU7100 4K TV, Sony BDP-S3500, Sharp 4K Roku TV, Insignia Roku TV, Roku Ultra, Premiere and Stick, Nvidia Shield, Yamaha RX-V583 AVR.
Primary server: Intel i5-6400, 16 gig ram, Windows 10 Pro, 22 TB hard drive space | Test server Windows 10 Pro, AMD Phenom II X4 965, 8 gig ram

HOWTO: Enable debug logging HOWTO: Identify media file contents
<<

betov

Serviio newbie

Posts: 5

Joined: Thu Jan 18, 2024 7:18 pm

Post Sun Jan 21, 2024 7:53 pm

Re: ROKU Subtitles

I understand, I have those options already activated, I will play a little with the other profiles hoping to achieve something, thank you very much for your help and your time, have a good day

greetings

Return to Serviio Support & Help

Who is online

Users browsing this forum: Google [Bot] and 70 guests

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.