nextcloud / ios

📱 Nextcloud iOS App
https://itunes.apple.com/us/app/nextcloud/id1125420102
GNU General Public License v3.0
1.96k stars 881 forks source link

Video codec H265 support #1478

Open HeyWatchOutDude opened 3 years ago

HeyWatchOutDude commented 3 years ago

Hi,

currently it's not possible to play videos with codec H265. (Buffering issues, black screen on web ui etc.)

After changing in the camera settings the format to "maximal compatibility" instead of "high efficiency" the playback works fine.

When will be the codec "H265" supported?

marinofaggiana commented 3 years ago

For now don't exists nothing news, sorry.

HeyWatchOutDude commented 3 years ago

Ok :(

HeyWatchOutDude commented 3 years ago

Any update on this? (Is it on the "roadmap"?)

marinofaggiana commented 3 years ago

No. Sorry

eibex commented 3 years ago

The black screen on the web UI will never be fixed as it is not a Nextcloud issue. No web browser (bar Safari on MacOS/iOS) supports H265 as it was too expensive to license, and they will not support it in the future since they are now working towards the AV1 codec.

HeyWatchOutDude commented 3 years ago

I need that codec support for the nextcloud iOS app.

Because I mainly use nextcloud on my iPhone/iPad.

HeyWatchOutDude commented 3 years ago

Any update on this?

HeyWatchOutDude commented 2 years ago

Any update on this?

HeyWatchOutDude commented 2 years ago

Any update on this?

HeyWatchOutDude commented 1 year ago

Still not on the roadmap?

berezovskyi commented 1 year ago

I was able to produce an HEVC/h265 file that plays on Nextcloud for iOS (v4.7.0.23, HW has Apple A12 processor/SoC) with the following command:

ffmpeg -i input.mp4 -c:v libx265 -crf 23 -preset veryfast -c:a aac -b:a 128k -pix_fmt yuv420p -color_primaries 1 -color_trc 1 -colorspace 1 -movflags +faststart -tag:v hvc1 -t 00:01:00 output.mp4

The key part is -tag:v hvc1 and is explained in https://aaron.cc/ffmpeg-hevc-apple-devices/. -t 00:01:00 will do a test encoding run for 1 minute, remove it to convert fully. -pix_fmt yuv420p ensures a 10-bit HEVC video is downcoded to a regular 8-bit HEVC w/o HDR.

HeyWatchOutDude commented 1 year ago

The codec "H265" seems like still not supported even with the new "VLC-library Media viewer".

HeyWatchOutDude commented 2 weeks ago

Any update on this? I can't be the only person who is facing that kind of issue.

.mp4 files are playback is working fine. .mov files are playback is laggy.

berezovskyi commented 1 week ago

@HeyWatchOutDude I switched to Android so can't help any further than that ffmpeg command (it produced mp4 H265 files that played without a problem on iPhone XR/Apple A12) and some general hand-waving below.

But as a general advice, you should put as much info to describe a problem and the context (file info, phone info) as you reasonably can. If a developer looks at your problem description and does not know how to go further to test your issue, they will likely look at another issue (as you see, this repo has 800+ open issues). At the root, the problem is that the player fails to get your processor to decode the video using hardware acceleration and falls back to decoding in software. That is slow and consumes more power.

Would help if you provide the model of your phone/tablet, ideally with the processor model like I did. Also, you would need to provide some info about the video files (use this, for example: https://mediaarea.net/en/MediaInfo) or better yet, the video files themselves. The reason for this is that if Marino (who wrote iOSClient/Viewer/NCViewerMedia/NCViewerMedia.swift from what I see) wants to reproduce your issue and to report it to the VLC folks, he would need to provide them with the kind of information this ticket does: https://code.videolan.org/videolan/VLCKit/-/issues/286 (just an example, not saying this is your issue).