-
Notifications
You must be signed in to change notification settings - Fork 4
video's in het fotoboek #34
base: master
Are you sure you want to change the base?
Conversation
Ik kijk er nu doorheen, maar ik heb niet veel verstand van knfotos – Jille of Bart beheren knfotos. |
`rotation` smallint(6) NOT NULL default '0', | ||
`check_tags` tinyint(1) default '0', | ||
`type` enum('photo','video') NOT NULL default 'photo', | ||
PRIMARY KEY (`id`), | ||
UNIQUE KEY `path` (`path`,`name`) | ||
) ENGINE=MyISAM DEFAULT CHARSET=utf8; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wat is de SQL nodig voor de update?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ik neem aan iets als dit:
alter table fa_photos add column type enum('photo','video');
alter table fa_photos modify column cached set('thumb','large','360p','720p','invalidated');
(niet getest! maar zou moeten werken)
Edit: de tweede regel is nu dit:
alter table fa_photos modify cached set('thumb','large','mp4_360p','webm_360p','mp4_720p','webm_720p','invalidated') NOT NULL;
Deze is wel getest (op de vorige tabelstructuur).
Edit2: extra fix.
This array may be removed in the future.
Extracted the code and put it in a separate file 'media.php', resulting in a *much* cleaner design.
Warning: when updating, these should also be applied to config.php. Otherwise, knfotos won't work (it will display a warning).
Only tested in IE9 in IE7/8 mode. But I think it should work. It uses an <object type="video/mp4"/> tag, so any plugin should work (QuickTime is most likely).
Only tested in IE9 in IE7/8 mode. But I think it should work. It uses an <object type="video/mp4"/> tag, so any plugin should work (QuickTime is most likely).
Sorry voor de dubbele commit en de merge branch commits. Opgelost:
|
@@ -3,9 +3,10 @@ CREATE TABLE `fa_photos` ( | |||
`name` varchar(64) NOT NULL, | |||
`path` varchar(255) NOT NULL, | |||
`visibility` enum('deleted','lost','hidden','leden','world') NOT NULL default 'world', | |||
`cached` set('thumb','large','invalidated') NOT NULL, | |||
`cached` set('thumb','large','360p', '720p','invalidated') NOT NULL, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Kun je die options prefixen met video-
ofzo? Zodat het duidelijk is dat het om video's gaat ipv hele grote foto's.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ja, je hebt gelijk. Zal ik dan ook een prefix/suffix maken voor de codec? Want dat hoort er denk ik eigenlijk ook in.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Converteer je elke video naar elke codec? Zo ja hoort dat er inderdaad ook in. Als je de codec prefixt kun je wat mij betreft video- weer weglaten.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ja. Dit heb ik net aangepast. Nu wordt mp4-
of webm-
als prefix gebruikt.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cool.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Net een foutje verbeterd. Blijkbaar accepteert (My)SQL geen -
in een SET
type, zonder er over te klagen. Ik heb het veranderd in een _
(mp4_360p
etc.)
<source src="large.php?foto=<?= urlencode($foto) ?>&codec=<?= $codec ?>&res=<?= $res ?>" type="video/<?= $codec ?>" data-resolution="<?= $res ?>"/> | ||
<?PHP } ?> | ||
<?PHP } ?> | ||
<p>Je browser ondersteund geen html5 video (gebruik <a href="http://windows.microsoft.com/nl-NL/internet-explorer/downloads/ie-9/worldwide-languages">IE9</a>+ of een recente versie van <a href="http://www.mozilla.org/nl/firefox/new/">Firefox</a>, <a href="https://www.google.com/intl/nl/chrome/browser/">Chrome</a>, <a href="http://www.apple.com/safari/">Safari</a> of <a href="http://www.opera.com/">Opera</a>). Toch willen we je niet in de steek laten en proberen we hieronder de video af te spelen.</p> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
s/ondersteund/ondersteunt/
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Check. Zojuist verbeterd.
Ziet er goed uit. Je hebt wel zo veel veranderd dat het niet makkelijk meer helemaal te reviewen is dus zullen we dit gewoon moeten gaan testen. |
Wat misschien nog wel een issue gaat worden nu we ook video's gaan transcoden. updatedb en updatecache worden elk uur (om xx:13) gestart. Video's transcoden zou best wel eens langer dan een uur kunnen duren en dan komen er twee processen die tegelijk bezig zijn en dat wordt alles dubbel gedaan en gaat het misschien zelfs stuk. Dit kunnen we waarschijnlijk het beste oplossen door Francisca af te maken. Zij werd een daemon tegen wie je kon zeggen dat je de foto's wou updaten ipv elk uur een nieuwe starten. |
Maar dit probleem kan ook direct opgelost worden met |
Ik heb nu net locking geïmplementeerd. Of Francisca waar je het over had er nu wel of niet komt, extra locking maakt het zaakje toch net wat stabieler lijkt me. |
Locks may not always be released when PHP runs from a webserver when there is an error. When run from the CLI (which is the case here), locks are always removed when the process exits: http://stackoverflow.com/questions/12651068/release-of-flock-in-case-of-errors
This because: 1. It makes it more clear that the formats are video resolutions, not photo resolutions. 2. It adds information about which video formats are transcoded.
Conflicts: updatedb.php
Voor webm ondersteuning (dat beter is dan ogg) is op z'n minst versie 0.8 van ffmpeg nodig. |
Jille, deze twee werken voor mij op khandhas (dit is uitgevoerd in
De eerste is letterlijk gekopieerd van toen ik een extra
config.php relevante regel: $ffmpeg = 'avconv -strict experimental -loglevel warning'; Dus ik zou niet weten waarom het bij jouw niet werkt. |
Het werkt nu op khandhas.
update fa_photos set type='photo';
Als het goed is, is dit alles. |
@Jille ping |
Fix voor issue #26. Mogelijkheid om video's in het fotoboek toe te voegen.
Dit zorgt ervoor dat video's netjes afgehandeld worden, op (vrijwel) dezelfde manier als afbeeldingen.
Extra vereisten:
'360p'
,'720p'
enum('photo','video') NOT NULL default 'photo'
Dat was het volgens mij.
Wat het oplevert:
(potentiële) issues:
Wat vinden jullie er van?