beens 9 Posted March 2, 2025 Author Posted March 2, 2025 22 minutes ago, yocker said: Been Googling for ways to get the HEVC extension without an account. 1) From powershell run: winget install --id Microsoft.HEVCVideoExtension 2) From powershell run: Add-AppxPackage -Path "https://store.rg-adguard.net/vcl/9n4wgh0z6vhq" 3) You can also install the K-Lite codec pack: https://codecguide.com/download_kl.htm I believe this is a custom version but i used this one my self for years before i stopped needing it. I'm not sure my self how effective this is with browsers and such as they will still need hardware acceleration to support H265. So might not be of much help if you just want to watch in browsers. Those are the options i could find. USE AT YOUR OWN RISK! Look them up your self to see if you trust them before trying would be my advice! Option 1 pretty sure Winget won't work without having logged into a microsoft account at least once since it's part of Windows but worth a try. Sure fire way to get the extension is to just use a trow away email address for the store, buy the extension and log off. This is what i did to get it. I actually did something similar, but I didn't need a MS account. I was able to get the "Microsoft.HEVCVideoExtension_2.2.9.0_neutral_~_8wekyb3d8bbwe.AppxBundle" file and install it, and it even shows up in my Add/Remove programs now, and appears to be installed. However, this didn't make any change in my case. If all browser-based h.265 decoding is dependent on hardware acceleration, I may just be SOL. I'm starting to feel like this is probably the case. I've also tried the K-Lite codec pack. It installed everything, and it obviously can decode h.265 files, but it didn't provide the needed browser support. @yockerI appreciate your efforts to find solutions and share it here. If I find something that works for me, I will definitely be sharing it here. I can't help but think I'm not the only one out there with this issue. 1
yocker 1247 Posted March 2, 2025 Posted March 2, 2025 Forgot to say. Any Chrome based browser should support HEVC/H.265 natively as long as you have hardware acceleration available. Firefox supports software decoding of HEVC but does not handle HDR colors so any HDR video will have very dull colors. 1
beens 9 Posted March 2, 2025 Author Posted March 2, 2025 32 minutes ago, bakes82 said: There are already replacements to hevc. Av1 vc1 vp8 and vp8. All will have same issues iirc. Plus if you don’t have hardware to decode them your cpu will choke usually. Interesting. I was investing in h.265 because it felt to me like it was more prominent and popular and more widely supported. It appears I was wrong. I just did a test and produced a few short videos with both AV1 and VP9, and they both play just fine in Chrome. My goal here is absolute highest perceived video quality with the smallest file size. I don't have unlimited disk space, so I'm having to be as conservative as possible. Transcoding time doesn't really matter that much to me. I might regret asking this... But does anyone have any strong opinions on which codec would best fit my use case? I'm going to run it by ChatGPT and see what I can find out. @bakes82This might be the solution if I can achieve similar compression with another codec that can be decoded by my client's non-hardware-accelerated Chrome.
beens 9 Posted March 2, 2025 Author Posted March 2, 2025 It may or may not be relevant, but a large part of my library is NTSC SD, and there are no higher quality sources available. I'm able to get very good results with h.265, where an entire episode of a TV show often takes up < 100 MB.
pwhodges 2012 Posted March 2, 2025 Posted March 2, 2025 33 minutes ago, beens said: I might regret asking this... But does anyone have any strong opinions on which codec would best fit my use case? I'm going to run it by ChatGPT and see what I can find out. I wouldn't trust ChatGPT to take sufficient account of how fast this field is moving.... If you look for comparisons in articles, be careful to check the dates. I think VP9 is considered well behind AV1 in the open-source world. HEVC and AV1 are close, but my impression is that AV1 is now widely considered to have the edge, even if only by a modest margin. Now that hardware support for AV1 is becoming readily available, the main advantage of HEVC in this battle has been significantly eroded. Paul 1
Happy2Play 9780 Posted March 2, 2025 Posted March 2, 2025 Well there are lots of test sites. codec support HTML5test - How well does your browser support HTML5? Media MIME Support But in the end you will need newer hardware for all the newer codecs as they are a lot more resource heavy. 1
beens 9 Posted March 3, 2025 Author Posted March 3, 2025 (edited) Well, I've done some testing, and I think I've made my decision. I've confirmed that files using AV1 or VP9 will both play without server transcoding ("direct play") on my Win10/Chrome client, and I am very pleased with how lightning fast loading and scrubbing and resuming are working. I know my client machine is older (i7-4790) and may get bogged down on higher resolutions, but both codecs are performing extremely well with my testing thus far. It's often frustrating when it just hangs for about 30-60 seconds before showing the "no compatible streams available" error message (when the content is h.265), but then the video loads fine when I click on it again. The load times and scrub latency when using AV1 or VP9 are significantly lower than when the server is transcoding everything. It's bordering on immediate. Not to mention the fact that it seems to correctly load/resume/scrub successfully every single time now. Taking server transcoding out of the picture is going to improve my Emby experience tenfold. I'm autistic, so my sensory experiences tend to differ from most people. But I'm leaning heavily towards AV1 over VP9, primarily because my system transcodes to AV1 much faster than VP9, almost by a factor of 3. I'd even dare to say that AV1 at the same bitrate of my h.265 files is roughly identical. I have definitely noticed more compression artifacts in VP9 compared to AV1 at the same bitrate. I'll probably want to allocate more bitrate for content that is 59.97 FPS or for content that has a higher quality source. TL;DR: AV1 FTW. Edited March 3, 2025 by beens 1 1
pwhodges 2012 Posted March 3, 2025 Posted March 3, 2025 I didn't mention above, but AV1 was specifically developed to replace VP9, so should be expected to have advantages over it. Paul 1
beens 9 Posted March 3, 2025 Author Posted March 3, 2025 I've done another round of more thorough testing, and I can again confirm that AV1 is ideal for my use case, and is superior to VP9 in efficiency. Even on HD content, playback/resume/scrubbing are 100% reliable, and everything is showing direct play in stats for nerds. CPU usage on my client hovers around 9% during playback. Server CPU is basically idle. I'm getting excellent results with low bitrates just like with h.265. Scrubbing HD content is still more responsive than even starting an SD video when the server is transcoding everything. I'm used to waiting multiple seconds for updates when scrubbing. I think I've found the sweet spot for bitrates and file sizes and quality and encoder presets, and I'm gearing up to transcode my entire library to AV1. My primary viewing device is an NTSC CRT TV, so having high resolution video files is kindof pointless. I've chosen to transcode to 720p on some titles just because the source material is good, but most of it is 720x480. I'm using 512 kbits/sec for animation, and 1024 kbits/sec for everything else, and there are barely any compression artifacts noticeable. I've only noticed them when I'm actively looking for them. The first pass when using 2-pass encoding goes by a lot faster for some reason when transcoding to AV1. The encoder preset default is 6, and I've found that setting it to 5 is a good balance between time to transcode and perceived quality of the video output. I'd probably set it lower if I had better hardware, but this is more than acceptable. Thanks so much to everyone who chimed in, and thanks to the Emby team for creating and maintaining this software. Keep up the good work. 1
Carlo 4561 Posted March 3, 2025 Posted March 3, 2025 If you don't have a GPU card that has built in AV1 encoding it may not be the right choice to use as it can take a long time to transcode your existing media using CPU only. Even having multiple Dual XEON Gold & Platinum Dell servers or my 4 Supermicro 8 XEON Superservers, I wouldn't transcode existing media to AV1 using CPU cores. A good GPU could do this at 5x speed or more using NVENC. The desktop Geoforce RTX 4070 TI and RTX 5070 TI all have 2 NVENCs with the exception of: GeForce RTX 5070 Ti Laptop having 1 NVENC chips GeForce RTX 5090 having 3 NVENC chips GeForce RTX 5090 Laptop having 3 NVENC chips These high-end GPUs run a lot faster than real-time even transcoding to AV1 using the equivalent of fast profile while producing better quality then you'd get using medium profile in software regardless of how many times slower it is. The quality gets even better with medium/slow equivalent GPU profiles and still run faster than real-time speed. No doubt these GPU are pricey, which is why the Intel BattleImage GPUs should be looked at as well as they can be 1/4 or less the price of RTX GPUs and be able to encode using AV1. Assuming you were to go strictly software-based conversions you do want to test your Emby Server to make sure it can transcode both AV1 video, and a couple audio tracks to AVC with 2 channel stereo audio in real-time, otherwise your AV1 videos will be playable only on devices that can direct play the files.
Lessaj 467 Posted March 3, 2025 Posted March 3, 2025 But if you're going to buy a GPU to transcode everything to AV1 (it will take forever with CPU encoding, especially both of your ancient CPUs) that GPU is going to support hardware acceleration of HEVC anyway so you just need some more modern hardware and you can enjoy your content in its current HEVC format but you can also work on transcoding it to AV1 if you wanted using that same hardware. Two birds with one stone there. Nvidia cards support AV1 encoding as of the 4000 series, I think 3000 had decoding but not encoding.
beens 9 Posted March 3, 2025 Author Posted March 3, 2025 (edited) @Carlo& @Lessaj, thanks for the good info. However, as my budget is currently $0, I am forced to make due with the ~10-15 year old hardware that I have. Purchasing even a $50 video card is simply out of the question. Mine is probably something of an edge case, because they only devices in my client environment are a modern Android phone and a Win10 PC using Chrome, both of which are able to direct play all of the AV1 media that I've tested with thus far. Using CPUs to transcode video really isn't ideal, but it's all I've got. I've got a small network of old CPUs transcoding video around the clock, and, even though it's the least efficient option, it accomplishes what I need in the end. It's actually impressive what one can do if such a task is parallelized and managed effectively. It's also notable that if I had hardware that supported any modern video decoding, I wouldn't be in this spot to begin with. Edited March 3, 2025 by beens
Carlo 4561 Posted March 4, 2025 Posted March 4, 2025 3 hours ago, beens said: I've got a small network of old CPUs transcoding video around the clock, and, even though it's the least efficient option, it accomplishes what I need in the end. It's actually impressive what one can do if such a task is parallelized and managed effectively. Normally, the older the PC, the more it costs to transcode files. By this I mean the cost of electricity used. Let's say you have a PC using only 200 watts while doing this software transcoding. 200 watts/hour * 24 hours/day = 4,800 watts/day or 4.8 kWh per day or 146 kWh per month. If you had 3 PC doing this for a month that's 438 kWh. In NJ where I live the combined usage and distribution costs is 39.5 cents plus other small taxes per kWh. Let's call it $040 per kWh. 438 x $0.40 = $175.2 per month. That can quickly add up to the point of making an Intel ARC GPU cheaper than pure electric cost in 3 months or so. Of course, you can figure this out yourself by looking at the total monthly electric bill divided by total kWh used. This will be the all-in price for use, distribution, taxes, etc which is what you want to know for your true kWh cost. Then it's a matter of knowing what your PC wattage is during the AV1 software transcoding. Getting the PC wattage is the hard part but can be done cheap or at no cost. $9.99 https://www.amazon.com/Electricity-Monitor-Electrical-Consumption-Voltage/dp/B0BR7Y5PYW?th=1 $4.42 https://www.aliexpress.us/item/2255799909805938.html?src=google&pdp_npi=4%40dis!USD!5.20!4.42!!!!!%40!10000000252266633!ppc!!!&gatewayAdapt=glo2usa Many ioT Devices used to turn on/off devices have power meters built right in. Many clamp style multimeters have this as a built-in function as well. In this case you push the side button to open the clamp, then close it around/not on the PCs power cable. https://m.media-amazon.com/images/I/41z+a6Sba3L._SX466_.jpg You may already own something like this and if not, I bet if you ask a couple friends, one of them will have one and could measure your PC(s) to see what wattage is being used when transcoding. If you're not so lucky and the older PCs being used for this pull 400+ watts each then you could be spending $250+ a month for transcoding! 1
beens 9 Posted March 4, 2025 Author Posted March 4, 2025 1 hour ago, Carlo said: Normally, the older the PC, the more it costs to transcode files. By this I mean the cost of electricity used. Let's say you have a PC using only 200 watts while doing this software transcoding. 200 watts/hour * 24 hours/day = 4,800 watts/day or 4.8 kWh per day or 146 kWh per month. If you had 3 PC doing this for a month that's 438 kWh. In NJ where I live the combined usage and distribution costs is 39.5 cents plus other small taxes per kWh. Let's call it $040 per kWh. 438 x $0.40 = $175.2 per month. That can quickly add up to the point of making an Intel ARC GPU cheaper than pure electric cost in 3 months or so. Of course, you can figure this out yourself by looking at the total monthly electric bill divided by total kWh used. This will be the all-in price for use, distribution, taxes, etc which is what you want to know for your true kWh cost. Then it's a matter of knowing what your PC wattage is during the AV1 software transcoding. Getting the PC wattage is the hard part but can be done cheap or at no cost. $9.99 https://www.amazon.com/Electricity-Monitor-Electrical-Consumption-Voltage/dp/B0BR7Y5PYW?th=1 $4.42 https://www.aliexpress.us/item/2255799909805938.html?src=google&pdp_npi=4%40dis!USD!5.20!4.42!!!!!%40!10000000252266633!ppc!!!&gatewayAdapt=glo2usa Many ioT Devices used to turn on/off devices have power meters built right in. Many clamp style multimeters have this as a built-in function as well. In this case you push the side button to open the clamp, then close it around/not on the PCs power cable. https://m.media-amazon.com/images/I/41z+a6Sba3L._SX466_.jpg You may already own something like this and if not, I bet if you ask a couple friends, one of them will have one and could measure your PC(s) to see what wattage is being used when transcoding. If you're not so lucky and the older PCs being used for this pull 400+ watts each then you could be spending $250+ a month for transcoding! @Carloyou make a valid point. However, another part of my situation is that I'm not responsible for the electricity bill here. While I'm sure it does add significantly to the bill, it's probably negligible compared to the cost to heat and cool this building. Also, here in OK, I believe it's ~10 cents per KW/H, which minimizes the impact. Also also, I expect to have this project completed in ~1 month, give or take. I whole-heartedly agree that the cost of a graphics card with the appropriate support for hardware encoding would be the cheaper option. But sometimes it just is what it is.
Neminem 1518 Posted March 4, 2025 Posted March 4, 2025 10 hours ago, beens said: project completed in ~1 month Ohh wow transcoding into AV1 via CPU in a month, hope you only have 100 movies.
beens 9 Posted March 5, 2025 Author Posted March 5, 2025 (edited) And if you really want your head to explode, here are the specs of my NAS: Supermicro server with two Dual Core AMD Opteron(tm) Processor 285, 8 GB RAM 15 external SATA bays, each with 500 GB 5400 RPM used laptop drives of various manufacturers OS is OpenMediaVault 7.4.16-1 (Sandworm) All 15 drives are part of a LUKS encrypted RAID-Z3 pool, totaling 4.83 TB Dual gigabit NICs Triple redundant power supplies I am not using this machine to transcode. I don't even want to know how long it would take. I'm quite sure it would be painful. Edited March 5, 2025 by beens Forgot to include RAM
Carlo 4561 Posted March 8, 2025 Posted March 8, 2025 On 3/4/2025 at 12:27 AM, beens said: Also, here in OK, I believe it's ~10 cents per KW/H, which minimizes the impact. Also also, I expect to have this project completed in ~1 month, give or take. You're referring to the Supply Charge or base cost which averages 13 cents right now for OK. Besides the base cost is Delivery Charges sometimes called Transmission and/or Distribution Charge. Supply and Delivery are usually the 2 largest Charges but there are usually these additional charges as well: Infrastructure, Customer, Public Benefits, Demand, Regulatory and of course local and/or state taxes. I just looked up the OK average "all-in" pricing and was surprised it's only 18 cents per kWh which is among the cheapest in the country! On 3/5/2025 at 1:07 AM, beens said: And if you really want your head to explode, here are the specs of my NAS: Supermicro server with two Dual Core AMD Opteron(tm) Processor 285, 8 GB RAM 15 external SATA bays, each with 500 GB 5400 RPM used laptop drives of various manufacturers OS is OpenMediaVault 7.4.16-1 (Sandworm) All 15 drives are part of a LUKS encrypted RAID-Z3 pool, totaling 4.83 TB Dual gigabit NICs Triple redundant power supplies I am not using this machine to transcode. I don't even want to know how long it would take. I'm quite sure it would be painful. Wow, didn't' know they had a dual 2 core CPU server. I remember the dual quad cores they used in some of the A+ Serve lines.
Enndy 0 Posted March 25, 2025 Posted March 25, 2025 (edited) In case someone is interested, I fixed the issue of having to transcode my HEVC (H.265), AV1, and VVC (H.266) video files by following the instructions given here in an earlier post, plus Emby App, plus Emby Premier, as explained below. 1.- Disabling transcoding per user in their settings page. 2.- By downloading the Emby app from the Microsoft Store (on my Windows 11 computer). Unfortunately, the Emby app was able to play all formats without transcoding. This was confirmed by checking Emby server - Win2025 Task Manager performance being normal=very low - By checking Stats for Nerds on videos being played 3.- The new Emby app plays any video, but only for 1 minute unless you have Emby Premiere, which allows you to play videos without time limits. All other browsers I tried (Firefox, Chrome, MS Edge) were unable to play videos at all after disabling Transcoding. RESULTS Before fix: HVEC (H.265) + Chrome + "Transcoding=ON" + Direct Play Left: Google Chrome | Right: Emby host server Task Manager Before fix: VVC (H.266) + "Transcoding=ON" + Direct Play Left: Google Chrome | Right: Emby host server Task Manager After fix: AV1 + Emby App + "Transcoding=OFF" + Direct Play Left: Emby App | Right: Emby host server Task Manager After fix: VVC (H.266) + Emby App + Transcoding=OFF + Direct Play Left: Emby App | Right: Emby host server Task Manager After fix: HEVC (H.265) + Emby App + Transcoding=OFF + Direct Play Left: Emby App | Right: Emby host server Task Manager PS: Please note: - This is my first post here. I hope these screenshots come out well and do not confuse or drive people crazy. - Even when Transcoding is ON, and other browsers trigger Emby Server to use all CPU power on the host server, the Emby App does not force transcoding, instead it uses Direct Play keeping the host server CPU utilization very low, as shown below. But the computer where the player is running, on the other hand, will, you might say, suffer the consequences by having to use more CPU than usual. I am OK with this since even a low end laptop I use for testing, is capable of playing most videos, except for the one shown below, which it has a bit of a difficult time processing it, pausing the video for a fraction of a every now and then, but that video is unnecessarily high quality, very heavy in storage space, and used only for testing. Left: Emby App | Right: Emby host server Task Manager | Below: low end test laptop performance while playing this video Edited March 25, 2025 by Enndy
visproduction 315 Posted March 25, 2025 Posted March 25, 2025 (edited) I would avoid a variable bit-rate encoding of the video. This can cause stuttering if any packets are received out of order across a TCP connection. Also, the user's CPU needs to work harder to combine TCP packets that probably do not aline with the variable bit rate I frames. This means info inside a single TCP packet will most of the time not include an I Frame. So, any follow-up packets have to be stored in cache waiting for the I-Frame info on what variable bit-rate is needed for the next 8 seconds or so. With Internet, packets can get out of order, fail and need to be requested again. This happens mostly with remote connections. If the I frame and following B frames have to wait to be processed to make the variable bit rate work, then you will get agressive stuttering on video playback, depending on the Internet connection to a remote user. The user's mobile or computer usually can wait a while for out of order packets. At some point if they don't show up, the end user's mobile or computer discards the previous packets and asks for all of them again. Variable bit rates (VBR) make this happen more often while constant bit rate (CBR) dosn't have this issue. CBR is much eaiser to handle with a TCP packet delivery. Out of order packets are not so critical. I hope that makes sense. This is why social media video platforms are not, I believe, using VVC with a variable bit rate, rather everything is sent with a constant bit rate, CBR. In order to get the best look on a CBR encoded video, it is best to make the encoding settings very high - Example for MP4 h.264 encoding with AVIDemux 1080P at 1920 x 1040 (1.85) original 25 fps, 24 fps or 23.976 fps Constant Bitrate (Single Pass) Target Bitrate 2400 kbit/s Frametyp look ahead 40 frames Motion Estimation Hexagonal Subpixel Refinement 11 best Direct predicition Spatial Weighted Prediction for P -frames: Weighted references + duplicates Partition Search 8x8 DVT Spatial Transfor, 4x4, 4x8 and 8x4 P-Frame Intra-predicted Blocks, 8x8 Intra-predicted Blocks, 4x4 Intra predicted Blocks (these higher settings for blocks helps reduce pixel artifacts in moving action, but take a lot longer) Frame Encoding CABAC B-frames Maximum consecutive b-frames 3 Adaptive B-frame Decision Optimal B-frames as References - Non-strict (Not Blu-ray Compatible) I Frames GOP size Minimum 16, Maximum 120 I-Frame threshold 40 Analysis: Mixed References Chroma Motion Estimation Trellis Qauntization - Always On Fast Skip Detection on P-frames DCT Decimation on P-Frames Psychovisual Rate Distortion Optimisation 1, Psychovisual Trellis 0 Luma Quantisation Deadzone: Intra Luma Quantisation Deadzone 11, Inter Luma Quantisation Deadzone 21 Quantiser control, Minimum 10, Maximum 51 Maximum Quantiser Step 4 Average Bitrate Tolerance 100% I and P-Frame Quantiser ratio 1.4 P and B-frame Quantiser ratio 1.3 Chroma to Luna Quantiser offset 0 Adaptive Quantisation Variane AQ Auto Variance, Strength 1. This config takes a lot longer to encode. Without hardware, encoding can easily take 4 to 5 hours for 1080P typical 90 minute film on an average Intel Core 7. The thing I have noticed, is that everyone tends to set the encoding level to go faster and this results in much large file sizes for a similar quality. High quality .mp4 1080P at around 2200 kbps, looks very nice and will be around 1.3 GB per hour. If you have high end hardware encoding, you might be able to reach that live, but usually not. As a result, most all hardware encoding that goes live tends to make larger file sizes in .mp4 and this is why people have preferred storage in h.265 .mkv. AV1 looks good. I have not used. I would still try to set it for highest quality encoding and a CBR, if possible. It does take more CPU power to playback compared to H.264. Here is a nice comparison page: https://www.fastpix.io/blog/av1-vs-h-264-vs-h-265-best-codec-for-video-streaming I think a better answer is slower, high quality encoding, CBR and get the file size down and not try to make it happen live. When you store the results that can play back direct, the video will look good, constant bit rate has less sutttering issues and direct play works for all users. Hope that made sense. Ha... Edited March 25, 2025 by visproduction 2
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now