Page 1 of 1

Hitachi 42HXT12U [ Resolved ]

PostPosted: Sun Dec 28, 2014 6:30 pm
by half26
Hi,

I have been using Serviio 1.4.1.2 with a Hitachi 42HXT12U smart tv and for the most part the generic profile works okay. However I have problems with mp4 file and some avi files, the files work correctly when I view them with VLC so I know the files are not corrupt. After a recent software upgrade to the Hitachi TV about half the previously working mp4 files no longer work.

Details of the Hitachi TV can be found here https://estadoc.hitachi.eu/servlet/File ... %20QSG.pdf

I have performed a Wireshark capture on my DNLA server to figure out what is going on, when it tries to play an mp4 which the TV reports as an unsupported file.

Examing the Wireshark capture the HTTP headers appear to indicate the following

Server: NFLC/3.0 UPnP/1.0 DNLADOC/1.50\r\n


Update 1

I have looked in detail at 8 mp4 files that can successfully play using VLC. Of these files only three with correctly play on the Hitachi TV.
All the files that do not play share a common feature as do all the files that do play correctly.

VLC Reported Codec Information

File1 : Video Codec H264 - MPEG-4 AVC (part 10) (avc1), Resolution 720x424, Frame rate: 25, Decode format: Planar 4:2:0 YUV
Audio Codec MPEG AAC (Mp4a), Stereo. Sample Rate 48000 Hz
Audio Codec A52 Audio (aka AC3) (a52), Sample Rate 48000 Hz, Bitrate 448 Kb/s

File2 : Video Codec H264 - MPEG-4 AVC (part 10) (avc1), Resolution 720x424, Frame rate: 24.999, Decode format: Planar 4:2:0 YUV
Audio Codec MPEG AAC (Mp4a), Stereo. Sample Rate 48000 Hz
Audio Codec A52 Audio (aka AC3) (a52), Sample Rate 48000 Hz, Bitrate 448 Kb/s

File3 : Video Codec H264 - MPEG-4 AVC (part 10) (avc1), Resolution 720x424, Frame rate: 24.999, Decode format: Planar 4:2:0 YUV
Audio Codec MPEG AAC (Mp4a), Stereo. Sample Rate 48000 Hz
Audio Codec A52 Audio (aka AC3) (a52), Sample Rate 48000 Hz, Bitrate 448 Kb/s


File7 : Video Codec H264 - MPEG-4 AVC (part 10) (avc1), Resolution 720x428, Frame rate: 24.999, Decode format: Planar 4:2:0 YUV
Audio Codec MPEG AAC (Mp4a), Stereo. Sample Rate 48000 Hz
Audio Codec A52 Audio (aka AC3) (a52), Sample Rate 48000 Hz, Bitrate 384 Kb/s

File8 : Video Codec H264 - MPEG-4 AVC (part 10) (avc1), Resolution 720x426, Frame rate: 24.999, Decode format: Planar 4:2:0 YUV
Audio Codec MPEG AAC (Mp4a), Stereo. Sample Rate 48000 Hz
Audio Codec A52 Audio (aka AC3) (a52), Sample Rate 48000 Hz, Bitrate 384 Kb/s

The common feature appears to be the Audio Bitrate, the files that play all have an Audio Bitrate of 384Kb/s and those that do not have a 448Kb/s rate.

Is there an easy way to modify the profiles.xml file to automatically transcode the audio bit rate to 384Kb/s assuming that this is the cause of the problem?

Update

The following Profile works for all video and audio files.

<Profile id="HITACHITV" name="HITACHITV" extendsProfileId="1">
<ContentDirectoryMessageBuilder/>
<Detection>
<UPnPSearch>
<FriendlyName>^HITACHITV.*</FriendlyName>
</UPnPSearch>
</Detection>
<MediaFormatProfiles>
<MediaFormatProfile mime-type="video/mp4" name="AVC_MP4_BL_CIF15_AAC_520">AVC_MP4_MP_SD_AAC_MULT5</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mp4" name="AVC_MP4_BL_CIF15_AAC_520">AVC_MP4_MP_SD_MPEG1_L3</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mp4" name="AVC_MP4_BL_CIF15_AAC_520">AVC_MP4_MP_SD_AC3</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mp4" name="AVC_MP4_BL_CIF15_AAC_520">AVC_MP4_MP_HD_720p_AAC</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mp4" name="AVC_MP4_BL_CIF15_AAC_520">AVC_MP4_MP_HD_1080i_AAC</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mp4" name="AVC_MP4_BL_CIF15_AAC_520">AVC_MP4_HP_HD_AAC</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mpeg">MPEG_TS_SD_NA_ISO</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mpeg">MPEG_TS_SD_EU_ISO</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mpeg">MPEG_TS_SD_KO_ISO</MediaFormatProfile>
<!-- <MediaFormatProfile mime-type="video/mpeg">MPEG_TS_HD_NA_ISO</MediaFormatProfile> not supported -->
<!-- <MediaFormatProfile mime-type="video/mpeg">MPEG_TS_HD_KO_ISO</MediaFormatProfile> not supported -->
<MediaFormatProfile mime-type="video/x-ms-wma" name="WMABASE">WMA_BASE</MediaFormatProfile>
<MediaFormatProfile mime-type="video/x-ms-wma" name="WMAFULL">WMA_FULL</MediaFormatProfile>
</MediaFormatProfiles>
<Transcoding>
<Video targetContainer="mpeg" targetVCodec="mpeg2video" targetACodec="ac3">
<Matches container="matroska" />
<Matches container="mp4" />
<Matches container="asf" />
<Matches container="avi" />
<Matches container="ogg" />
<Matches container="flv" />
<Matches container="3gp" />
<Matches container="rm" />
<Matches container="mpegts" />
</Video>
</Transcoding>
<OnlineTranscoding>
<Video targetContainer="mpeg" targetVCodec="mpeg2video" targetACodec="ac3">
<Matches container="*" />
</Video>
</OnlineTranscoding>
</Profile>

Re: Hitachi 42HXT12U smart tv using NFLC/3.0

PostPosted: Tue Dec 30, 2014 4:56 pm
by half26
Hi,

I found that using the Samsung TV ( B Model) allowed more of the MP4 to be played. The key difference between one of the files which does play and the others which do not appears to be file size. The file that plays is 2.0GB the others are 2.3GB and greater.
I created the Hitachi TV profile based on the Samsung TV but Serviio does not assign this automatically.

<Profile id="HITACHITV" name="HITACHITV" extendsProfileId="1">
<Detection>
<UPnPSearch>
<FriendlyName>HITACHITV.*</FriendlyName>
<Server>NFLC.*</Server>
</UPnPSearch>
<HttpHeaders>
<friendlyName.dlna.org>HITACHITV</friendlyName.dlna.org>
</HttpHeaders>
</Detection>
<MediaFormatProfiles>
<MediaFormatProfile mime-type="video/x-mkv">MATROSKA</MediaFormatProfile>
<MediaFormatProfile mime-type="video/x-msvideo" name="">AVI</MediaFormatProfile>
</MediaFormatProfiles>
<H264LevelCheck>FILE_ATTRIBUTES</H264LevelCheck>
<Transcoding>
<!-- Transcode all h264 video with HIGH/MAIN > Level 4.1 on MPEG-TS stream with MPEG2VIDEO and ac3 audio transcoding -->
<Video targetContainer="m2ts" targetVCodec="mpeg2video" targetACodec="ac3" aBitrate="384">
<Matches container="*" vCodec="h264" profile="high_10" />
<Matches container="*" vCodec="h264" profile="high" levelGreaterThan="4.2" />
<Matches container="*" vCodec="h264" profile="main" levelGreaterThan="4.2" />
</Video>
<!-- transcode MKV with DST/FLAC audio to AC3, remux into mpeg2ts -->
<!-- transcode H264 MP4 files with LPCM audio -->
<Video targetContainer="m2ts" targetACodec="ac3">
<Matches container="matroska" vCodec="h264" aCodec="dca" />
<Matches container="matroska" vCodec="h264" aCodec="dts-hd" />
<Matches container="mp4" vCodec="h264" aCodec="lpcm" />
<Matches container="matroska" vCodec="h264" aCodec="flac" />
<Matches container="matroska" vCodec="h264" aCodec="vorbis" />
<Matches container="matroska" vCodec="h264" aCodec="truehd" />
<Matches container="mpegts" vCodec="h264" aCodec="truehd" />
<Matches container="matroska" vCodec="vc1" />
<Matches container="avi" vCodec="h264" />
<Matches container="mpegts" aCodec="mp2" />
<Matches container="flv" vCodec="h264" />
<Matches container="ogg" vCodec="mpeg4" />
<Matches container="3gp" aCodec="amrnb" />
<Matches container="wtv" vCodec="h264" />
</Video>
<!-- transcode unsupported codec/container combinations into mpeg2ts -->
<Video targetContainer="m2ts" targetACodec="ac3" targetVCodec="mpeg2video">
<Matches container="asf" vCodec="wmv2" />
<Matches container="matroska" vCodec="mpeg2video" />
<Matches container="matroska" vCodec="vp8" />
<Matches container="avi" vCodec="mjpeg" />
<Matches container="avi" vCodec="dvvideo" />
<Matches container="mp4" vCodec="dvvideo" />
<Matches container="mp4" vCodec="mjpeg" />
<Matches container="flv" />
<Matches container="ogg" />
<Matches container="rm" />
</Video>
<!-- For dvr-ms files force mpeg2video transcoding to fix monotone timestamps problems-->
<Video targetContainer="m2ts" targetACodec="ac3" forceVTranscoding="true">
<Matches container="asf" vCodec="mpeg2video" />
<Matches container="asf" vCodec="mpeg1video" />
</Video>
<Video targetContainer="m2ts">
<Matches container="wtv" />
</Video>
<!-- transcode audio only for wmv with wmapro -->
<Video targetContainer="asf" targetACodec="ac3" aBitrate="384">
<Matches container="asf" aCodec="wmapro" />
</Video>
<Audio targetContainer="lpcm">
<Matches container="asf" />
<Matches container="mp4" />
<Matches container="flac" />
<Matches container="ogg" />
<Matches container="adts" />
<Matches container="mp2" />
<Matches container="wavpack" />
<Matches container="mpc" />
<Matches container="ape" />
</Audio>
</Transcoding>
<OnlineTranscoding>
<Video targetContainer="mpeg" targetVCodec="mpeg2video" targetACodec="ac3" aBitrate="384">
<Matches container="mp4"/>
</Video>
</OnlineTranscoding>
</Profile>

Re: Hitachi 42HXT12U smart tv using NFLC/3.0

PostPosted: Sun Jan 04, 2015 6:04 pm
by half26
Hi,

I installed Upnp Inspector on a Linux VM and used it to discover the capabilities of the Hitachi 42HXT12U, so I just need to convert the info below into a profile for the unit.

http-get:*:image/jpeg:DLNA.ORG_PN=JPEG_SM
http-get:*:image/jpeg:DLNA.ORG_PN=JPEG_MED
http-get:*:image/jpeg:DLNA.ORG_PN=JPEG_LRG
http-get:*:audio/L16;rate=44100:channels=1:DNLA.ORG_PN=LPCM
http-get:*:audio/L16;rate=44100:channels=2:DNLA.ORG_PN=LPCM
http-get:*:audio/L16;rate=48000:channels=1:DNLA.ORG_PN=LPCM
http-get:*:audio/L16;rate=48000:channels=2:DNLA.ORG_PN=LPCM
http-get:*:audio/mpeg:DNLA.ORG_PN=MP3
http-get:*:audio/mp4:DNLA.ORG_PN=AAC_ISO_320
http-get:*:audio/3gpp:DNLA.ORG_PN=AAC_ISO_320
http-get:*:audio/x-ms-wma:DNLA.ORG_PN=WMABASE
http-get:*:audio/x-ms-wma:DNLA.ORG_PN=WMAFULL
http-get:*:video/mp4:DNLA.ORG_PN=AVC_MP4_BL_CIF15_AAC_520
http-get:*:video/mpeg:DNLA.ORG_PN=MPEG_PS_NTSC
http-get:*:video/mpeg:DNLA.ORG_PN=MPEG_PS_PAL
http-get:*:video/vnd.dlna.mpeg-tts:DNLA.ORG_PN=MPEG_TS_SD_NA
http-get:*:video/vnd.dlna.mpeg-tts:DNLA.ORG_PN=MPEG_TS_SD_NA_T
http-get:*:video/mpeg:DNLA.ORG_PN=MPEG_TS_SD_NA_ISO
http-get:*:video/vnd.dlna.mpeg-tts:DNLA.ORG_PN=MPEG_TS_SD_EU
http-get:*:video/vnd.dlna.mpeg-tts:DNLA.ORG_PN=MPEG_TS_SD_EU_T
http-get:*:video/mpeg:DNLA.ORG_PN=MPEG_TS_SD_EU_ISO
http-get:*:video/vnd.dlna.mpeg-tts:DNLA.ORG_PN=MPEG_TS_SD_KO
http-get:*:video/vnd.dlna.mpeg-tts:DNLA.ORG_PN=MPEG_TS_SD_KO_T
http-get:*:video/mpeg:DNLA.ORG_PN=MPEG_TS_SD_KO_ISO
http-get:*:video/vnd.dlna.mpeg-tts:DNLA.ORG_PN=MPEG_TS_HD_KO
http-get:*:video/vnd.dlna.mpeg-tts:DNLA.ORG_PN=MPEG_TS_HD_KO_T
http-get:*:video/mpeg:DNLA.ORG_PN=MPEG_TS_HD_KO_ISO
http-get:*:video/vnd.dlna.mpeg-tts:DNLA.ORG_PN=MPEG_TS_HD_NA
http-get:*:video/vnd.dlna.mpeg-tts:DNLA.ORG_PN=MPEG_TS_HD_NA_T
http-get:*:video/mpeg:DNLA.ORG_PN=MPEG_TS_HD_NA_ISO
http-get:*:video/mp4:*
http-get:*:video/x-matroska:*
http-get:*:video/avi:*
http-get:*:audio/mpeg:*
http-get:*:video/mpeg:*


Getting the TV information below was obtained using http://<tv_ip_address:2869/dmr.xml

<root>
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<device>
<dlna:X_DLNADOC>DMR-1.50</dlna:X_DLNADOC>
<deviceType>urn:schemas-upnp-org:device:MediaRenderer:1</deviceType>
<friendlyName>HITACHITV:00:09:DF:3B:5E:84</friendlyName>
<manufacturer>ACCESS CO., LTD.</manufacturer>
<manufacturerURL>http://www.access-company.com/</manufacturerURL>
<modelDescription>IPI Media Renderer</modelDescription>
<modelName>-</modelName>
<modelNumber>1.0</modelNumber>
<modelURL>http://www.access-company.com/</modelURL>
<UDN>uuid:13da314c-874b-1c4e-8000-0009df3b5e84</UDN>
<serviceList>
<service>
<serviceType>urn:schemas-upnp-org:service:RenderingControl:1</serviceType>
<serviceId>urn:upnp-org:serviceId:RenderingControl</serviceId>
<SCPDURL>/dmr_rcs.xml</SCPDURL>
<controlURL>control/RenderingControl</controlURL>
<eventSubURL>event/RenderingControl</eventSubURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:ConnectionManager:1</serviceType>
<serviceId>urn:upnp-org:serviceId:ConnectionManager</serviceId>
<SCPDURL>/dmr_cms.xml</SCPDURL>
<controlURL>control/ConnectionManager</controlURL>
<eventSubURL>event/ConnectionManager</eventSubURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:AVTransport:1</serviceType>
<serviceId>urn:upnp-org:serviceId:AVTransport</serviceId>
<SCPDURL>/dmr_avts.xml</SCPDURL>
<controlURL>control/AVTransport</controlURL>
<eventSubURL>event/AVTransport</eventSubURL>
</service>
</serviceList>
</device>
</root>

Update 2014-01-08

I have created the following profile which has increased the number of .mp4 files that can be played but not all. The bulk of the media format profile already exist in the generic profile, so those below uncommented were added and serviio did not report an error in the serviio.log file. Those that are commented out did generate a error condition which stopped the server from running.

<Profile id="HITACHITV" name="HITACHITV" extendsProfileId="1" alwaysEnableTranscoding="true">
<ContentDirectoryMessageBuilder/>
<Detection>
<UPnPSearch>
<FriendlyName>^HITACHITV.*</FriendlyName>
</UPnPSearch>
</Detection>
<MediaFormatProfiles>
<!-- <MediaFormatProfile mime-type="video/mp4">AVC_MP4_BL_CIF15_AAC_520</MediaFormatProfile> AVC_MP4_BL_CIF15_AAC_520 not supported -->
<MediaFormatProfile mime-type="video/mpeg">MPEG_TS_SD_NA_ISO</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mpeg">MPEG_TS_SD_EU_ISO</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mpeg">MPEG_TS_SD_KO_ISO</MediaFormatProfile>
<!-- <MediaFormatProfile mime-type="video/mpeg">MPEG_TS_HD_NA_ISO</MediaFormatProfile> MPEG_TS_HD_NA_ISO not supported -->
<!-- <MediaFormatProfile mime-type="video/mpeg">MPEG_TS_HD_KO_ISO</MediaFormatProfile> MPEG_TS_HD_KO_ISO not supported -->
<MediaFormatProfile mime-type="video/x-ms-wma" name="WMABASE">WMA_BASE</MediaFormatProfile>
<MediaFormatProfile mime-type="video/x-ms-wma" name="WMAFULL">WMA_FULL</MediaFormatProfile>
</MediaFormatProfiles>
</Profile>

Re: Hitachi 42HXT12U smart tv using NFLC/3.0

PostPosted: Sat Jan 10, 2015 2:05 pm
by half26
Hi,

Using the profile below I have been able to significantly improve the ability of the Hitachi TV to play content from the Serviio 1.4.1.2 server.
All video files are now playing correctly when in the Console the audio is left to play best and not downmix to stereo. All the MP3 are playing correctly.
The profile below does work but the TV type is not automatically detected but if manually assigned does work.

<Profile id="HITACHITV" name="HITACHITV" extendsProfileId="1">
<ContentDirectoryMessageBuilder/>
<Detection>
<UPnPSearch>
<FriendlyName>^HITACHITV.*</FriendlyName>
</UPnPSearch>
</Detection>
<MediaFormatProfiles>
<MediaFormatProfile mime-type="video/mp4" name="AVC_MP4_BL_CIF15_AAC_520">AVC_MP4_MP_SD_AAC_MULT5</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mp4" name="AVC_MP4_BL_CIF15_AAC_520">AVC_MP4_MP_SD_MPEG1_L3</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mp4" name="AVC_MP4_BL_CIF15_AAC_520">AVC_MP4_MP_SD_AC3</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mp4" name="AVC_MP4_BL_CIF15_AAC_520">AVC_MP4_MP_HD_720p_AAC</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mp4" name="AVC_MP4_BL_CIF15_AAC_520">AVC_MP4_MP_HD_1080i_AAC</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mp4" name="AVC_MP4_BL_CIF15_AAC_520">AVC_MP4_HP_HD_AAC</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mpeg">MPEG_TS_SD_NA_ISO</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mpeg">MPEG_TS_SD_EU_ISO</MediaFormatProfile>
<MediaFormatProfile mime-type="video/mpeg">MPEG_TS_SD_KO_ISO</MediaFormatProfile>
<!-- <MediaFormatProfile mime-type="video/mpeg">MPEG_TS_HD_NA_ISO</MediaFormatProfile> not supported -->
<!-- <MediaFormatProfile mime-type="video/mpeg">MPEG_TS_HD_KO_ISO</MediaFormatProfile> not supported -->
<MediaFormatProfile mime-type="video/x-ms-wma" name="WMABASE">WMA_BASE</MediaFormatProfile>
<MediaFormatProfile mime-type="video/x-ms-wma" name="WMAFULL">WMA_FULL</MediaFormatProfile>
</MediaFormatProfiles>
<Transcoding>
<Video targetContainer="mpeg" targetVCodec="mpeg2video" targetACodec="ac3">
<Matches container="matroska" />
<Matches container="mp4" />
<Matches container="asf" />
<Matches container="avi" />
<Matches container="ogg" />
<Matches container="flv" />
<Matches container="3gp" />
<Matches container="rm" />
<Matches container="mpegts" />
</Video>
</Transcoding>
<OnlineTranscoding>
<Video targetContainer="mpeg" targetVCodec="mpeg2video" targetACodec="ac3">
<Matches container="*" />
</Video>
</OnlineTranscoding>
<Video targetContainer="mpeg" targetVCodec="mpeg2video" targetACodec="ac3">
<Matches container="*" />
</Video>
</OnlineTranscoding>
</Profile>

Update 20150111

I have found with this profile the buttons on the remote control do not permit pausing of video, nor permits the ability to jump to a point within the file by specifying a time.
I have also found that the ffmpeg version I am using can crash or return an error state will results in serviio making the file as "unsupported file"