My wife decided that we need a camcorder. As I am a good husband, I do not complain (she pays 😀 ).
There was an offer in a super market nearby. Not as low as you can find in the internet, but if there is a problem, it is much more easy to complain. For something like this, I/we prefer this and am-are OK to spend a little bit more money for this convenience.
This camcorder is recording to SDHC cards. Such cards have a speed rating, and you need to take some min–speed one, to be able to record videos with a camcorder. Unfortunately Samsung does not list the speed rating somewhere. I searched on the Samsung site in the specifications and in the FAQ. Nothing. After a little bit of googling I at least found a review where the recording time for specific card-sizes where listed.
So I took the card-size in MB, divided it by the recording time in seconds, and got the data transfer rate per second for the specified resolutions. The 1080i resolution has the highest transfer rate and as such it is the most interesting one to decide what kind of card one needs.
The highest transfer rate seems to be less than 2.2 MB/s, so a class 4 SDHC card should be enough.
Tags: 1080i resolution
, little bit
, samsung camcorder
, speed one
, speed rating
I made some more tests which video resolutions my TV accepts via DLNA. While I was looking before a SD resolutions, this time I took care about some HD resolutions.
As the Sintel video in the 1024×436 resolution did not play, I tried to reencode it to 1024×720 (for the enabled x264 options see below). This did not work either. After that I went to the official resolution of 1280×720, and this works. Initially this video was encoded as High@L3.1, but with this the TV produced some artifacts on playback. After changing this to High@L4.0 (simply by remuxing instead of reencoding), the playback was fine (warning: increasing the H.264 level is OK, decreasing it if the video does not comply to the lowered level, may cause problems). I miss a setting in avidemux for the level, it would be nice if there would be the possibility to set it.
I also tested if the 1280×544 version of the Sintel video plays fine on the TV or not. It does not play fine, so there is probably a hard requirement on the complete resolution for HD video.
While doing this I noticed that tsMuxeR is truncating the audio, instead of the 6 channel audio it was before, the remuxed file has only two channels.
As I did not want to always go through all the settings to enter what I want, I made a little avidemux-script to setup (ECMA script + xml) everything for me. This was easy, I just took an existing one (the Sony PSP one) as a base and changed the encoding options and the target container (unluckily avidemux 2.5.4 does not support H.264 in MPEG-TS yet, so I have to use a MP4 container and remux it into the MPEG-TS stream afterwards).
The options I used for the x264-reencoding are –8x8dct –analyse all –mixed-refs –bime –weightb –subme 9 –b-rdo –ref 4 –b-adapt 2 –bframes 4 –direct auto –me umh (this includes b-pyramid, for which there are reports that it does not work).
, h 264
, sony psp
, target container
, video resolutions
I have a Sony Bravia TV with a network (ethernet) connection. Letting aside the fact that he is in another subnet than my NAS and as such I can not use a DLNA (UPnP-AV) server (it is using multicast and the Simple Service Discovery Protocol (SSDP) which is not traversing subnets in the WLAN-LAN-ADSL-router I use), there is no good explanation from Sony what I can feed to the TV.
When searching the net I can find some obscure suggestions and descriptions, but not all of them work for all people which try them. So it seems I have to research this myself. Luckily my router has a build-in UPnP-AV server which I can use to play around (the file size is limited to the size of the USB memory stick I have connected to the router, as he can not stream content which is available in a NAS in the network).
Sony tells the TV is able to receive MPEG2 TS and PS containers. MPEG2 PS is more or less what you have on DVD. It is able to play SD and HD content from the PS container, and the video format needs to be MPEG2. They do not explain what SD or HD means in this context (the valid resolutions), and they do not tell what kind of audio is allowed.
For the MPEG2 TS container they additionally allow H.264 video, and they specify EU, EU-T and EU-ISO as supported in this case. Again, they do not explain what those EU* parts are supposed to mean.
For the unspecified audio I assume this means AC-3, AAC and MPEG Audio Layer 2 (some people use MP2 to describe this audio format). I successfully tested AAC and AC-3, and I have read that MP2 works too. Based upon my experiences with the video part (more below) I assume the sampling rate and bitwidth matter. So far I tried with 48 kHz and 16 bit per channel.
For the EU* parts I have not found any trustworthy reference what this could mean, but it looks this refers to some aspects of DVB/DVB-T/DVB-S(2) as it is used in Europe. I guess this is a bit linked with valid resolutions the TV is able to handle.
For the video part I have found mixed reports. From hat I have read in the Wikipedia page of the H.264 video format, I assumed the failures are related to a wrong resolution and maybe the fact that some parts of the video do not conform to specific “levels” of the H.264 format. Some tell you are not allowed to use more than X reference frames, some tell you can not use advanced feature Y.
The first test I did was to take the Sintel video from Blender. I downloaded the MP4 version and remuxed it into a MPEG2-TS container (I used tsMuxeR to do this). The TV was able to play the AAC audio, but it did not show the video. When I look at the video properties, I see that it has a resolution of 1280×544 at 24 FPS. For H.264 videos which use the “High” profile and are compatible up to level 4.1, I do not see this resolution listed as valid in the Wikipedia page. Valid resolutions are 1280×720 at 30, 60 and 68.3 FPS, and 1280×1024 at 42.2 FPS. This could explain why it is not working.
As a second test I took a video resized it to 624×256 (I did not pay much attention to the scale in the program I used to test this, I just hoped it takes a good one, now that I try to summarize what I investigated so far, I see that this size is not one of the valid sizes listed in the levels for H.264) at 23.976 FPS and reencoded it with the default options of the x264 encoder. The resulting video played just fine on the TV.
My third test was to encode a resized (from 640×272 to 640×480) video at 23.976 FPS with weighted, upto 4 adaptive B-frames, mixed references, 4 reference frames, and some other options (this includes B-pyramid, which seems to be enabled by default). And again, the resulting video played just fine (despite the fact that I found comments in the net which suggest that B-pyramid needs to be disabled…).
I still have to test some HD sizes, but it looks like one key aspect for compatibility is that the video is encoded with the right resolution (I have to admit, I do not really know what this means, as one video had a resolution which was different from what the valid sizes for the H.264 levels are) and complies to only level 4.1 (or 4) and below (basically this means to obey some bitrate limitations and the number of max. reference frames for the given resolution). The 23.976 FPS I mentioned above are not listed as one of the valid FPS in the levels for H.264, so I do not think the FPS have to strictly conform to what is specified for the levels. It looks more this is just an upper limit so that the video could also use some lower FPS.
So far I took the sintel video and added some black borders on top and below to get to the 1080×720 resolution. I used avidemux 2.5.4 for this. The version I tried can only produce a MP4 container with this video/audio combination, and my hope was to remux it with tsMuxeR to a MPEG2-TS, but tsMuxeR does not find a valid video or audio stream inside the MP4 container. I am still searching for a program which is able to remux the resulting MP4 into a MPEG2-TS. I found a tool which extracts the streams from the MP4 container, but the only free MPEG2-TS muxer seems to be tsMuxeR, which I was not able to convince to mux the two streams into a MPEG2-TS file. It seems I have either to wait until avidemux knows how to generate MPEG2-TS streams with H.264 and AAC, or until it generates a MP4 container with H.264 and AAC which tsMuxeR is able to handle.
What I also want to test is, if I can use the open-gop options (either in “normal” or in “bluray” mode), but I did not took the time to test this.
The only think I can tell definitively ATM is, that despite to all the information I found in the net about this, nothing can be told about the hard requirements except, that the video encoding can not exceed level 4.1 (or 4), because so far no hardware decoder chip seems to support a higher level. It seems I can use more or less all options available for the H.264 encoding, and the resolution and FPS does not seem to matter that much. I looks more that you have to find a version of an H.264 encoder which works for you, and after that you can more or less do what you want.
Tags: ac 3
, h 264
, network ethernet
, sampling rate
, service discovery protocol
, sony bravia tv
, usb memory stick