HEVC = H265

High Efficiency Video Coding (HEVC) is a video compression standard, a successor to H.264/MPEG-4 AVC (Advanced Video Coding), currently under development by a Joint Collaborative Team on Video Coding (JCT-VC) of the ISO/IEC Moving Picture Experts Group (MPEG) and ITU-T Video Coding Experts Group (VCEG), defined as ISO/IEC 23008-2 MPEG-H Part 2 and ITU-T H.265. HEVC is said to improve video quality, double the data compression ratio compared to H.264/MPEG-4 AVC, and can support 8K Ultra high definition television (UHD) and resolutions up to 8192×4320.

Dance your PhD Contest

Dance your PhD contest is an idea of the Gonzo Scientist, the alter ego of John Bohannon. John Bohannon is a biologist, science journalist and dancer, based at Harvard University. He is the owner of the Gonzolabs and the protagonist of a regular column in Science magazine. He writes also for Discover Magazine and Wired Magazine.

The GonzoLabs are a virtual research institution where scientists play with art and artists play with science. The dance experiment began back in October 2008 with a challenge to scientists to interpret their Ph.D. theses in dance form, capture the dances on video, and upload them onto YouTube. Six weeks later, a panel of expert judges chose four winners, coming from Australia, Germany, Canada, and the United States. Each scientist was paired with a choreographer who studied in depth a peer-reviewed research article of the scientist. A few months later a four-part dance called THIS IS SCIENCE was performed in front of an audience in Chicago, Illinois, during the AAAS (American Association for the Advancement of Science) annual meeting.

Here are the results :

Scientist Choreographer Dance Video
Sue Lynn Lau Jenn Liang Chaboud science_dance1
Miriam Britt Sach Christopher M. McCray science_dance2
Vince J. LiCata Helena Reynolds science_dance3
Markita Landry Chloe Jensen science_dance4

The dance contest was repeated in 2010, 2011 and 2012.

John Bohannon is also one of the creators of the Science Hall of Fame (see former post).

Responsive video

Last update : June 27, 2014

Responsive webdesign needs not only adaptive images, but also fluid videos. The pioneers in emdedding responsive videos in webpages are Chris Coyier and Dave Rupert. They created in 2011 FitVids, a lightweight, easy-to-use jQuery plugin for reactive width video embeds. FitVids automates the Intrinsic Ratio Method by Thierry Koblentz to achieve fluid width videos in your responsive web design. The source code is available at Github.

Here is a list of more useful links to contributions about responsive video :

MEDION Combirecorder DVD & Video

Dernière mise à jour: 24 février 2020

Medion Combirecorder DVD – VHS

J’utilise l’enregistreur DVD (Digital Versatile Disc) & magnétoscope VHS (Video Home System) MD 83425 de MEDION pour copier des cassettes VHS sur un DVD et ensuite le convertir en format mpeg 4.

Le mode d’emploi est le suivant (avec télécommande) :

  1. Insertion de la cassette vidéo à copier
  2. Insertion d’un DVD-R vierge
  3. Position STOP en poussant 2 fois sur la touche Stop
  4. Ouverture du menu SETUP et sélection de l’option REGLAGES GENERAUX
  5. Sélection de l’option ENREGISTREMENT > MODE DUPLICATION > VCR -> DVD
  6. Fermeture du menu pricipal en poussant sur la touche Setup
  7. Sélection du mode VCR
  8. Position de la cassette avec Play, Forward ou Backward à l’endroit du début de la copie
  9. Position de la cassette en mode PAUSE
  10. Sélection du mode DVD
  11. Sélection de la qualité d’enregistrement avec REC SPEED (entre 1 heure et 8 heures, 2 heures est la durée standard DVD)
  12. Lancement de la copie en poussant sur la touche DUBBING
  13. Arrêt de l’enregistrement en poussant sur la touche Stop
  14. Répétition des actions 7 à 13 pour copier d’autres séquences
  15. Finalisation du DVD-R en sélectionnant l’option FINALISATION dans le menu SETUP > DVD (un DVD-RW n’a pas besoin d’être finalisé pour le lire sur un autre lecteur)

Pour parcourir une cassette VHS en vitesse, on peut activer F.FORWARD pendant le PLAY.

Media Centers (MC), Media Managers and online media databases

Ember Media Manager

A Media center, also called Home Theater PC (HTPC) or Home Cinema, refers to a home entertainment system that seek to reproduce a movie theater experience and mood, with the help of video and audio equipment, in or outside a private home.

A list of some renowned media centers is shown hereafter :

A Media Manager is  an application that catalogs your media and writes images and metadata to the directory the media is stored in so that the media center can access that data in order to display the correct information for the media files. Most media centers do have some sort of scraper built in to look for media matches in Internet online media databases. Media Managers usually provide extended and more reliable tools to catalog your media.

A list of some renowned media managers is given below :

The most renowned online media databases usually scraped by media centers and by media managers are listed herafter :

 

Serviio DLNA media server

Last update : May 8, 2013

Serviio is a free media server allowing you to stream media files (music, video or images) to DLNA renderer devices on your connected home network. Serviio is based on Java technology and therefore runs on most platforms. A pro version was launched in July 2012 when the 1.0 version was released.

The relevant features of Serviio are :

  • streams audio, video (SD & HD) and image files in their native format or transcoded in real-time
  • streams content from online sources (RSS feeds, live audio/video streams, web page content, …)
  • streams your PC desktop
  • includes a plugin system, based on the Groovy language, to support streaming from non-trivial online sources or to create playlists
  • supports different editable renderer profiles
  • supports external subtitles

Serviio uses a priority-based metadata extraction to describe your media files :

  • embedded metadata into the media files
  • locally stored metadata files (.nfo sidecar files)
  • scraped online metadata

The performance and high quality of the Serviio DLNA server has been documented by the fact that Sony UK first recommended Serviio for Sony devices and recently licensed Serviio to create their own customized Homestream server. Sony started the DLNA initiative in 2003.

Serviio is developed by the freelance Java consultant Petr Nejedly (alias ZIP). The current version 1.2.1 was released on March 22, 2013. Serviio is supported by a strong on-line community, active on the main forum and on the numerous sub-forums. There are also various third party tools available, for example a web user interface in php or AJAX, consoles (ServiiDroid, …), a database for storing information about online sources (ServiiDB).

Patters created a DSM package to install Serviio on a Synology NAS.

Here is a small list of some other DLNA servers to allow you to compare the Serviio features with other projects.

HTML5 Video

Last update : January 30, 2013
The HTML5 video specification and the various browser implementations are in constant evolution. LongTail Video has spend a signficant amount of time understanding the limitations of the technology, testing playback across various browsers and devices, and optimizing the jwplayer for HTML5 playback.

Today LongTail Video published a State of HTML5 Video Report to share with other developers and users in the industry just what HTML5 can and cannot support.

Other useful informations about HTML5 Video are available at the following websites :

CBR and VBR in mp4 H264 video files

CBR versus VBR in video encoding

When referring to codecs, CBR (constant bitrate) encoding means that the rate at which a codec’s output data should be consumed is constant. As opposed to constant bitrate, VBR (variable bitrate) vary the amount of output data per time segment. VBR allows you to set a maximum and minimum bitrate. The advantages of VBR are that it produces a better quality-to-space ratio compared to a CBR file of the same data. The bits available are used more flexibly to encode the sound or video data more accurately, with fewer bits used in less demanding passages and more bits used in difficult-to-encode passages.

The disadvantages are that it takes more time to encode, as the process is more complex. VBR may  pose problems when streaming over a  web connection since it is the maximum bit rate that matters, not the average.

The generally accepted best practice is to use CBR when producing for streaming delivery, and VBR when producing for progressive download.

 

Indexing (MOOV atom) in H264 video files

Last update : July 8, 2013

MOOV atom

QTIndexSwapper 2 (to move MOOV atom)

When a streaming mp4 H264 video file won’t play immediately in a Flash video player, the reason could be a quicktime (QT) Index problem. This index is called MOOV atom. The moov atom, also referred to as the movie atom, defines the timescale, duration, display characteristics of the movie, as well as subatoms containing information for each track in the movie.

Often the moov atom is located at the end of the video file and the Flash player needs to load the entire file to read this information. The solution is simple: Move the moov atom from the end of the file to the beginning. Renaun Erickson, Developer Evangelist for Adobe Systems Inc., created a simple tool called QTIndexSwapper 2 (version 2.3.8) to do this job. This AIR application can be downloaded from his blog. Another tool to move the moov atom is MP4 FastStart (version 1.0.0). A tool with a similar name qt-faststart is available for ffmpeg :

qt-faststart old.mp4 new.mp4

Because the moov atom uses absolute file sizes in its format, putting at the beginning of the file before the entire file has been created isn’t possible. The only way to move it to the beginning is to generate the entire file with the moov atom at the end, and then re-process the entire file to move it to the beginning. This is done by Handbrake. If you use this tool to convert videos, the moov atom is set correctly if you select “web optimized”.

To see if the moov atom is at the beginning of a video, you can open the file in a text editor and look for “moov” string in the raw output:

^@^@^@ ftypisom^@^@^B^@isomiso2avc1mp41^@^Eï moov^@^@^@lmvhd

More informations about atoms in mp4 files are available at the following links :

AVC (H264) video settings

Last update : August 21, 2013

It’s not easy to configure an AVC (H264) codec to create videos which will play on different devices and stream from various servers on the web, including Amazon S3 Cloudfront. Some basic informations about the different frame types of AVC are given at the post Smart editing of MPEG-4/H264 videos. The following list gives some informations about the common H264 parameters :

CABAC : stands for Context Adaptive Binary Arithmetic Coding. Improves encoding efficiency at the expense of playback/decoding efficiency. The default option is on, unless the encoded video is to be played back on devices with limited decoding power (for example iPod). CABAC is only supported by the main and higher profiles.

Trellis : Trellis is only available with CABAC on. It improves quality, while maintaining a small file size but it will increase conversion time slightly. The default value is on.

Encoding mode :

  • Single Pass – Bitrate: encodes the video once  with a set constant bitrate for each frame
  • Single Pass – Quantizer: encodes the video with a set quantizer (higher quantizer => lower quality) for each frame. The default value is 26, the maximum value  is 51.
  • Single Pass – Quality: encodes the video with a set quality rating for each frame
  • Two Pass:  encodes the video twice (once to determine it’s properties, another to ensure the selected output file size is reached with maximum efficiency). This is the most common setting.
  • Multi Pass: Same as Two Pass except for extra encoding passes to ensure even better quality/accurate file size. During multipass encoding, the video results of the first pass are saved into a log file. In a second step the encoding is done based on the logfile data.

Bit Rate : the average bitrate varies between 0 and 5000 Kbits/s; the default values are 800 Kbits/s for low quality, 1000 Kbit/s for medium quality and 1200 Kbits/s for high quality.

  • Keyframe Boost  : High values give better visual quality but also bigger file sizes. The default value for I-Frames is 40%. Values vary from 0 to 70.
  • B-Frame reduction : these frames are responsible for the interpretation of motion in the video. This setting determines the reduction of quality in B-frames in favor of P-frames (predicted picture). The default vallue is 30%, the range varies from 0 to 60%. For cartoons higher values are recommended.
  • Bitrate variability : This attribute indicates in how far the bitrate is allowed to vary in relation to what is set as target bitrate. A variable bitrate tells the encoder to vary bitrate as needed, based on the information in the frames. The default value is 60%, the range varies from 0 to 100%.

Quantization limits : these values are only used when the Single Pass – Quantizer encoding mode is selected.

  • Min QP : Values vary from 0 to 50, the default value is 10.
  • Max QP : Values vary from 0 to 51, the default value is 51
  • Max QP step : Values vary from 0 to 50, the default value is 4.

Scene cuts : this option sets how H264 determines when a scene change has occurred and hence when a key frame is needed.

  • Scene cut threshold : The default value is 40. A higher value will allow H264 to be less sensitive to scene changes. A lower value is recommended for dark videos.
  • Min IDR frame interval : IDR means Instantaneous Decode Refresh, a parameter to indicate the amount of frames in between before the encoder can detect a new scene change. Setting this to high will result in not detecting enough scene changes. Setting it too low results in an unnecessary high bitrate. The range varies from 0 to 100.000, the default value is 25.
  • Max IDR frame interval : Setting this too low results in too many keyframes and as such wasting bitrate for nothing. The range varies from 0 to 100.000, the default value is 250.

Partitions : During the encoding process, the encoder will break down the video into so-called Macroblocks. Then it will search for similar blocks in order to discard redundant data. The macroblocks can be subdivided into 16×8, 8×16, 8×8, 4×8, 8×4, and 4×4 partitions. The partition searches increase accuracy and compression efficiency. As a general rule, the more search types are performed, the better and stronger the compression will be while maintaining a high quality output.

  • 8×8 transform : the 8×8 Adaptive DCT transform is a very powerful compression technique but it is not compatible with every device. It makes the video High Profile AVC.
  • 8×8, 8×16 and 16×8 P-Frame search : This settings enables the 8×8 partitions on P-Frames and thus improves the visual quality of these frames.
  • 8×8, 8×16 and 16×8 B-Frame search : This settings enables the 8×8 partitions on B-Frames and thus improves the visual quality of these frames.
  • 4×4, 4×8 and 8×4 P-Frame search : This settings enables the 4×4 partitions on P-Frames, but usually the quality improvement will be negligible. Therefore this option is not worth the additional encoding time and thus can safely be turned off.
  • 8×8 intra search : This settings enables the 8×8 partitions on I-Frames and thus improves the visual quality of these frames, but it requires the 8×8 Adaptive DCT Transform.
  • 4×4 intra search : This settings enables the 4×4 partitions on I-Frames and thus improves the visual quality of these frames.

B-Frames :

  • Use as a reference : alows a B-Frame to reference another B-Frame to provide better quality. Only useful when using more than 2 consecutive B-Frames.
  • Adaptive : Turns on adaptive B-frames, which allows H264 to determine the number of B-frames to use. The default value is on. This option is only available when at least 1 B-frame has been set.
  • Bidirectional ME :  allows predictions based on motion both before and after the B-frames. Default value is on.
  • Weighted bipredictional :  allows B-Frames to be predicted more heavily from P-Frames which results in improved accuracy and therefore a more efficient encoding. Default value is on. This option is only available when at least 1 B-frame has been set.
  • Direct B-Frame mode : temporal or spatial : The default value is temporal. The spatial mode handles better animated content.
  • Max consecutive : the number of consecutive B-Frames. The values vary from 0 to 5, the default value is 3.
  • Bias : Sets how much bias H264 should give the usage of B-frames (higher means more use of B-frames). Setting this to 100 is the equivalent of not selecting the “Adaptive” option.The default value is 0, possible values vary from -100 to +100.

Motion estimation :

  • Partition decision : This controls the precision with which the motion in the video is estimated. Values range from 1 to 6. The default value is 5. A setting of 6 is even better but it strongly increases the amount of time needed for the conversion.
  • Method : The better the method, the more efficient compression and high quality output. Hexagonal Search is the default setting. Uneven Multi-hexagon is meant for powerful computers, while Exhaustive search works only on super computers.
  • Range : this field is disabled when you select Hexagonal Search. It only works with the powerful methods and it specifies the motion search in the pixels. The more pixels are examined, the more processor power is needed, but the better the outcome. The values vary from 0 to 64, the default value is 16.
  • Max Ref Frames : This value indicates how many previous frames can be referenced by a P-frame or B-frame. The higher this value, the better the quality at the expense of speed. The values vary from 0 to 16, the default value is 0.
  • Mixed references : offers the codec greater freedom to make references on a smaller scale. This option is only available when the Max Ref Frames value is greater than 1.
  • Chroma ME : uses the color information in the video to estimate motions, which increases the visual quality. It is recommended to set this option on.

Misc. options :

  • Threads : This sets the number of CPU threads to use in encoding. Default value is 1.
  • Noise reduction : this setting depends if there is noise in the video images or not. Videos with noise appear grainyNoise Reduction filters out that noise and the more noise you have, the higher you need to set the value. Varies from 0 to 65535. Default value is 0.
  • Deblocking filter : A deblocking filter is a video filter applied to blocks in decoded video to improve visual quality and prediction performance by smoothing the sharp edges which can form between macroblocks when block coding techniques are used. The strength (values from -6 to +6) and threshold (values from -6 to +6) of the filter are set. The default values are 0 and 0.

The AVC specifications define a number of different profiles specifying which compression features of H.264 are allowed or forbidden. In addition to the profiles, the AVC specifications also define a number of levels  putting further restrictions on other properties of the video. These restrictions include the maximum resolution, the maximum bitrate, the maximum framerate. The common notation for Profiles and Levels is “Profile@Level”, for example Main@3.1.

The most common profiles for webstreaming are baseline (BP) and main (MP). Some differences in the features for these profiles are shown hereafter :

Compression features Baseline Profile Main Profile
B-Frames no yes
CABAC no yes
FMO, ASO, RS yes no
PicAFF, MBAFF no yes

The next table shows the maximum values for some common levels :

Level Number Video bitrate Resolution & frame rate
1.3 768 Kbit/s 352×288 ; 30 fps
2.2 4 Mbit/s 352×576 ; 25 fps
3.1 14 Mbit/s 720×576 ; 25 fps
4.0 20 Mbit/s 1920×1080 ; 30 fps

To display mp4 videos in all browsers and devices, especially in IE9, it’s necessary to include the right MIME type. If the videos are stored on Amazon AWS S3, the default content type is “application/octet-stream”. It’s easy to change the content type in video/mp4 in the properties-Metadata menus.

Further informations about AVC are available at the following websites :