Closed walt93 closed 1 year ago
Hi
I got one video as a sample from you and I saw this source:
https://conspyre-1.s3.us-west-1.wasabisys.com/video_221001230624_vee58_400.mp4
how come you have a video resolution of 400p?
I am not 100% but I think the resolutions should follow the Encoder resolution
did you use the Encoder on those videos or direct upload?
Daniel, everything goes through the encoder - we never use direct upload (ever), but not every video has a source resolution at 480, 540, 720 or 1080p. I believe I read somewhere about ffmpeg that by default it isn't going to upsample.
Can Roku not handle odd resolutions? We've got a lot of videos to up-and-or-downsample if so.
Is it possible to tell AVideo to re-encode a video? I suspect I have to turn on some lower resolutions, like 360P here so that 400P video gets downsampled to a common resolution (in this case 360P).
Looking into this more, I had turned off 360p/480p/540p - thinking this is a "do not care" situation.
It seems that if I had left these on, for example, those 400P videos would have a 360P available & would work on Roku.
I've gone through and gotten a list of ≈360 videos that I need to re-encode.
Is there any workflow that has me scripting these into the encoder? Otherwise this is a daunting amount of work to re-encode.
Edited: I see the script reencodeAllVideos.php, but there are more than 11,000 of them - need to make this thing use just a list of IDs so I can re-encode those 360 vids…
Ok so it looks like it's just setting the state to "queued" for every video where id > 0
, so, if it accepts the "in (...)" syntax here we can give it a list of IDs?
<?php
//streamer config
require_once '../videos/configuration.php';
if (!isCommandLineInterface()) {
return die('Command Line only');
}
$sql = "UPDATE {$global['tablesPrefix']}encoder_queue SET status = 'queue' where id > 0";
echo $sql . PHP_EOL;
$insert_row = $global['mysqli']->query($sql);
if ($insert_row) {
echo "All set to queue" . PHP_EOL;
} else {
die($sql . ' Error : (' . $global['mysqli']->errno . ') ' . $global['mysqli']->error);
}
echo "Bye";
echo "\n";
die();
...but doing this, it doesn't seem that it is adding any videos to the encoder queue, no matter which of my encoders I run this script from.
the thing is, it always saves the original resolution.
your video is probably a 400p video. and there is no lower resolution than that to convert. so the video has only 400p (which is a non-standard resolution).
the problem is, the streamer script check for all standard resolutions in a video, and I cannot make it search for all non-standard resolutions 1,2,3,4...200,201,...400,... If I do that, this will slow down the script a lot.
maybe you should try to enable the 240p at least, so this will guarantee you will have at least this resolution.
or maybe I will update the encoder, and force it to encode at least 1 lower resolution
Update: even with 240P turned on, files that are >240P and <360P are not being transcoded. I used Handbrake to conform them, but I think there's a bug here.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Describe the bug I am looking at my Roku channel wondering "why is there missing media?"
I am looking at the program id 74478. It has 18 videos. https://conspyre.tv/program/74478
I am looking at the Roku JSON. It has 3 videos. https://conspyre.tv/roku.json?program_id=74478
To Reproduce Steps to reproduce the behavior:
Expected behavior There should be 18 videos in this Roku JSON.
Logs I cleared the cache and generated the Roku JSON. It's tripping on some videos files. No idea what it's tripping on, they're there, I just ran through the playlist and all files play.