scientist-softserv / atla_digital_library

0 stars 0 forks source link

[5] Media Player #195

Open DiemBTran opened 1 year ago

DiemBTran commented 1 year ago

Updated Summary and QA Instructions April 2023:

Videos are still not playing because there is an error in the manifest. Make sure they can display correctly

Acceptance Criteria April 2023:

Error

Image

in network preview tab of inspector console:

Image

Testing Instructions

Notes

Old video works may need to be reingested if derivatives are created on ingest

summary (old)

https://gitlab.com/notch8/atla_digital_library/-/merge_requests/322

Example work with a video with a non-standard aspect ratio: https://dl-staging.atla.com/concern/works/h702q639b?locale=en

Implementation (old)

THIS IS FOR DEFAULT HTML5 VIDEO PLAYER

DiemBTran commented 1 year ago

Related MRs:


Better Video Encoding !322

DiemBTran commented 1 year ago

Alisha - Aug 2021


atla currently has "universalviewer": "^3.0.16" installed.

according to the readme from tag 3.0.1, this version ought to be able to use video as is.

in looking at the sample video manifest above, and the sample image manifest linked on that page.... it appears that what determines to show a video or image is the "type" property. found at "items[index].items[index].items[index].body.type".

DiemBTran commented 1 year ago

Rob - August 2021


working example http://54.186.85.161/concern/works/m900p2445?locale=en

DiemBTran commented 1 year ago

Rob - August 2021


note for future - needed at least uv 3.0.31

DiemBTran commented 1 year ago

Crystal - August 2021:


Passes Internal QA:

Uploaded a mp4 file. In metadata selected use IIIF Viewer. Video is playing on this work: http://dl-staging.atla.com/concern/works/2801pr232?locale=en

DiemBTran commented 1 year ago

Christy August 2021:


@orangewolf I made a test with an mp4 and it works. It took a minute to show up.

DiemBTran commented 1 year ago

Rob Sept 2021:


Codecs:
 D..... = Decoding supported
 .E.... = Encoding supported
 ..V... = Video codec
 ..A... = Audio codec
 ..S... = Subtitle codec
 ...I.. = Intra frame-only codec
 ....L. = Lossy compression
 .....S = Lossless compression
 -------
 D.VI.S 012v                 Uncompressed 4:2:2 10-bit
 D.V.L. 4xm                  4X Movie
 D.VI.S 8bps                 QuickTime 8BPS video
 .EVIL. a64_multi            Multicolor charset for Commodore 64 (encoders: a64multi )
 .EVIL. a64_multi5           Multicolor charset for Commodore 64, extended with 5th color (colram) (encoders: a64multi5 )
 D.V..S aasc                 Autodesk RLE
 D.VIL. aic                  Apple Intermediate Codec
 DEVI.S alias_pix            Alias/Wavefront PIX image
 DEVIL. amv                  AMV Video
 D.V.L. anm                  Deluxe Paint Animation
 D.V.L. ansi                 ASCII/ANSI art
 DEV..S apng                 APNG (Animated Portable Network Graphics) image
 DEVIL. asv1                 ASUS V1
 DEVIL. asv2                 ASUS V2
 D.VIL. aura                 Auravision AURA
 D.VIL. aura2                Auravision Aura 2
 ..V.L. av1                  Alliance for Open Media AV1
 D.V... avrn                 Avid AVI Codec
 DEVI.S avrp                 Avid 1:1 10-bit RGB Packer
 D.V.L. avs                  AVS (Audio Video Standard) video
 DEVI.S avui                 Avid Meridien Uncompressed
 DEVI.S ayuv                 Uncompressed packed MS 4:4:4:4
 D.V.L. bethsoftvid          Bethesda VID video
 D.V.L. bfi                  Brute Force & Ignorance
 D.V.L. binkvideo            Bink video
 D.VI.. bintext              Binary text
 D.VI.S bitpacked            Bitpacked
 DEVI.S bmp                  BMP (Windows and OS/2 bitmap)
 D.V..S bmv_video            Discworld II BMV video
 D.VI.S brender_pix          BRender PIX image
 D.V.L. c93                  Interplay C93
 D.V.L. cavs                 Chinese AVS (Audio Video Standard) (AVS1-P2, JiZhun profile)
 D.V.L. cdgraphics           CD Graphics video
 D.VIL. cdxl                 Commodore CDXL video
 D.V.L. cfhd                 Cineform HD
 DEV.L. cinepak              Cinepak
 D.V.L. clearvideo           Iterated Systems ClearVideo
 DEVIL. cljr                 Cirrus Logic AccuPak
 D.VI.S cllc                 Canopus Lossless Codec
 D.V.L. cmv                  Electronic Arts CMV video (decoders: eacmv )
 D.V... cpia                 CPiA video format
 D.V..S cscd                 CamStudio (decoders: camstudio )
 D.VIL. cyuv                 Creative YUV (CYUV)
 ..V.LS daala                Daala
 DEV.L. mpeg2video           MPEG-2 video (decoders: mpeg2video mpegvideo )
 DEV.L. mpeg4                MPEG-4 part 2
 D.V.L. msa1                 MS ATC Screen
 D.VI.S mscc                 Mandsoft Screen Capture Codec
 D.V.L. msmpeg4v1            MPEG-4 part 2 Microsoft variant version 1
 DEV.L. msmpeg4v2            MPEG-4 part 2 Microsoft variant version 2
 DEV.L. msmpeg4v3            MPEG-4 part 2 Microsoft variant version 3 (decoders: msmpeg4 ) (encoders: msmpeg4 )
 D.V..S msrle                Microsoft RLE
 D.V.L. mss1                 MS Screen 1
 D.VIL. mss2                 MS Windows Media Video V9 Screen
 DEV.L. msvideo1             Microsoft Video 1
 D.VI.S mszh                 LCL (LossLess Codec Library) MSZH
 D.V.L. mts2                 MS Expression Encoder Screen
 D.VIL. mvc1                 Silicon Graphics Motion Video Compressor 1
 D.VIL. mvc2                 Silicon Graphics Motion Video Compressor 2
 D.V.L. mxpeg                Mobotix MxPEG video
 D.V.L. nuv                  NuppelVideo/RTJPEG
 D.V.L. paf_video            Amazing Studio Packed Animation File Video
 DEVI.S pam                  PAM (Portable AnyMap) image
 DEVI.S pbm                  PBM (Portable BitMap) image
 DEVI.S pcx                  PC Paintbrush PCX image
 DEVI.S pgm                  PGM (Portable GrayMap) image
 DEVI.S pgmyuv               PGMYUV (Portable GrayMap YUV) image
 D.VIL. pictor               Pictor/PC Paint
 D.VIL. pixlet               Apple Pixlet
 DEV..S png                  PNG (Portable Network Graphics) image
 DEVI.S ppm                  PPM (Portable PixelMap) image
 DEVIL. prores               Apple ProRes (iCodec Pro) (encoders: prores prores_aw prores_ks )
 D.VI.S psd                  Photoshop PSD file
 D.VIL. ptx                  V.Flash PTX image
 D.VI.S qdraw                Apple QuickDraw
 D.V.L. qpeg                 Q-team QPEG
 DEV..S qtrle                QuickTime Animation (RLE) video
 DEVI.S r10k                 AJA Kona 10-bit RGB Codec
 DEVI.S r210                 Uncompressed RGB 10-bit
 DEVI.S rawvideo             raw video
 D.VIL. rl2                  RL2 video
 DEV.L. roq                  id RoQ video (decoders: roqvideo ) (encoders: roqvideo )
 D.V.L. rpza                 QuickTime video (RPZA)
 D.V..S rscc                 innoHeim/Rsupport Screen Capture Codec
 DEV.L. rv10                 RealVideo 1.0
 DEV.L. rv20                 RealVideo 2.0
 D.V.L. rv30                 RealVideo 3.0
 D.V.L. rv40                 RealVideo 4.0
 D.V.L. sanm                 LucasArts SANM/SMUSH video
 D.V.LS scpr                 ScreenPressor
 D.V..S screenpresso         Screenpresso
 DEVI.S sgi                  SGI image
 D.VI.S sgirle               SGI RLE 8-bit
 D.VI.S sheervideo           BitJazz SheerVideo
 D.V.L. smackvideo           Smacker video (decoders: smackvid )
 D.V.L. smc                  QuickTime Graphics (SMC)
 D.V... smvjpeg              Sigmatel Motion Video
 DEV.LS snow                 Snow
 D.VIL. sp5x                 Sunplus JPEG (SP5X)
 D.VIL. speedhq              NewTek SpeedHQ
 D.VI.S srgc                 Screen Recorder Gold Codec
 DEVI.S sunrast              Sun Rasterfile image
 ..V..S svg                  Scalable Vector Graphics
 DEV.L. svq1                 Sorenson Vector Quantizer 1 / Sorenson Video 1 / SVQ1
 D.V.L. svq3                 Sorenson Vector Quantizer 3 / Sorenson Video 3 / SVQ3
 DEVI.S targa                Truevision Targa image
 D.VI.S targa_y216           Pinnacle TARGA CineWave YUV16
 D.V.L. tdsc                 TDSC
 D.V.L. tgq                  Electronic Arts TGQ video (decoders: eatgq )
 D.V.L. tgv                  Electronic Arts TGV video (decoders: eatgv )
 D.V.L. theora               Theora
 D.VIL. thp                  Nintendo Gamecube THP video
 D.V.L. tiertexseqvideo      Tiertex Limited SEQ video
 DEVI.S tiff                 TIFF image
 D.VIL. tmv                  8088flex TMV
 D.V.L. tqi                  Electronic Arts TQI video (decoders: eatqi )
 D.V.L. truemotion1          Duck TrueMotion 1.0
 D.V.L. truemotion2          Duck TrueMotion 2.0
 D.V.L. truemotion2rt        Duck TrueMotion 2.0 Real Time
 D.V..S tscc                 TechSmith Screen Capture Codec (decoders: camtasia )
 D.V.L. tscc2                TechSmith Screen Codec 2
 D.VIL. txd                  Renderware TXD (TeXture Dictionary) image
 D.V.L. ulti                 IBM UltiMotion (decoders: ultimotion )
 DEVI.S utvideo              Ut Video
 DEVI.S v210                 Uncompressed 4:2:2 10-bit
 D.VI.S v210x                Uncompressed 4:2:2 10-bit
 DEVI.S v308                 Uncompressed packed 4:4:4
 DEVI.S v408                 Uncompressed packed QT 4:4:4:4
 DEVI.S v410                 Uncompressed 4:4:4 10-bit
 D.V.L. vb                   Beam Software VB
 D.VI.S vble                 VBLE Lossless Codec
 D.V.L. vc1                  SMPTE VC-1
 D.V.L. vc1image             Windows Media Video 9 Image v2
 D.VIL. vcr1                 ATI VCR1
 D.VIL. vixl                 Miro VideoXL (decoders: xl )
 D.V.L. vmdvideo             Sierra VMD video
 D.V..S vmnc                 VMware Screen Codec / VMware Video
 D.V.L. vp3                  On2 VP3
 D.V.L. vp5                  On2 VP5
 D.V.L. vp6                  On2 VP6
 D.V.L. vp6a                 On2 VP6 (Flash version, with alpha channel)
 D.V.L. vp6f                 On2 VP6 (Flash version)
 D.V.L. vp7                  On2 VP7
 DEV.L. vp8                  On2 VP8 (decoders: vp8 libvpx ) (encoders: libvpx )
 D.V.L. vp9                  Google VP9
 D.VILS webp                 WebP
 DEV.L. wmv1                 Windows Media Video 7
 DEV.L. wmv2                 Windows Media Video 8
 D.V.L. wmv3                 Windows Media Video 9
 D.V.L. wmv3image            Windows Media Video 9 Image
 D.VIL. wnv1                 Winnov WNV1
 DEV..S wrapped_avframe      AVFrame to AVPacket passthrough
 D.V.L. ws_vqa               Westwood Studios VQA (Vector Quantized Animation) video (decoders: vqavideo )
 D.V.L. xan_wc3              Wing Commander III / Xan
 D.V.L. xan_wc4              Wing Commander IV / Xxan
 D.VI.. xbin                 eXtended BINary text
 DEVI.S xbm                  XBM (X BitMap) image
 DEVIL. xface                X-face image
 D.VI.S xpm                  XPM (X PixMap) image
 DEVI.S xwd                  XWD (X Window Dump) image
 DEVI.S y41p                 Uncompressed YUV 4:1:1 12-bit
 D.VI.S ylc                  YUY2 Lossless Codec
 D.V.L. yop                  Psygnosis YOP Video
 DEVI.S yuv4                 Uncompressed packed 4:2:0
 D.V..S zerocodec            ZeroCodec Lossless Video
 DEVI.S zlib                 LCL (LossLess Codec Library) ZLIB
 DEV..S zmbv                 Zip Motion Blocks Video
 ..A.L. 4gv                  4GV (Fourth Generation Vocoder)
 D.A.L. 8svx_exp             8SVX exponential
 D.A..S pcm_f24le            PCM 24.0 floating point little-endian
 DEA..S pcm_f32be            PCM 32-bit floating point big-endian
 DEA..S pcm_f32le            PCM 32-bit floating point little-endian
 DEA..S pcm_f64be            PCM 64-bit floating point big-endian
 DEA..S pcm_f64le            PCM 64-bit floating point little-endian
 D.A..S pcm_lxf              PCM signed 20-bit little-endian planar
 DEA.L. pcm_mulaw            PCM mu-law / G.711 mu-law
 DEA..S pcm_s16be            PCM signed 16-bit big-endian
 DEA..S pcm_s16be_planar     PCM signed 16-bit big-endian planar
 DEA..S pcm_s16le            PCM signed 16-bit little-endian
 DEA..S pcm_s16le_planar     PCM signed 16-bit little-endian planar
 DEA..S pcm_s24be            PCM signed 24-bit big-endian
 DEA..S pcm_s24daud          PCM D-Cinema audio signed 24-bit
 DEA..S pcm_s24le            PCM signed 24-bit little-endian
 DEA..S pcm_s24le_planar     PCM signed 24-bit little-endian planar
 DEA..S pcm_s32be            PCM signed 32-bit big-endian
 DEA..S pcm_s32le            PCM signed 32-bit little-endian
 DEA..S pcm_s32le_planar     PCM signed 32-bit little-endian planar
 DEA..S pcm_s64be            PCM signed 64-bit big-endian
 DEA..S pcm_s64le            PCM signed 64-bit little-endian
 DEA..S pcm_s8               PCM signed 8-bit
 DEA..S pcm_s8_planar        PCM signed 8-bit planar
 DEA..S pcm_u16be            PCM unsigned 16-bit big-endian
 DEA..S pcm_u16le            PCM unsigned 16-bit little-endian
 DEA..S pcm_u24be            PCM unsigned 24-bit big-endian
 DEA..S pcm_u24le            PCM unsigned 24-bit little-endian
 DEA..S pcm_u32be            PCM unsigned 32-bit big-endian
 DEA..S pcm_u32le            PCM unsigned 32-bit little-endian
 DEA..S pcm_u8               PCM unsigned 8-bit
 D.A.L. pcm_zork             PCM Zork
 D.A.L. qcelp                QCELP / PureVoice
 D.A.L. qdm2                 QDesign Music Codec 2
 D.A.L. qdmc                 QDesign Music
 DEA.L. ra_144               RealAudio 1.0 (14.4K) (decoders: real_144 ) (encoders: real_144 )
 D.A.L. ra_288               RealAudio 2.0 (28.8K) (decoders: real_288 )
 D.A..S ralf                 RealAudio Lossless
 DEA.L. roq_dpcm             DPCM id RoQ
 DEA..S s302m                SMPTE 302M
 DEA.L. sbc                  SBC (low-complexity subband codec)
 D.A.L. sdx2_dpcm            DPCM Squareroot-Delta-Exact
 D.A..S shorten              Shorten
 D.A.L. sipr                 RealAudio SIPR / ACELP.NET
 D.A.L. smackaudio           Smacker audio (decoders: smackaud )
 ..A.L. smv                  SMV (Selectable Mode Vocoder)
 D.A.L. sol_dpcm             DPCM Sol
 DEA... sonic                Sonic
 .EA... sonicls              Sonic lossless
 ..A.L. speex                Speex
 D.AI.S tak                  TAK (Tom's lossless Audio Kompressor)
 DEA..S truehd               TrueHD
 D.A.L. truespeech           DSP Group TrueSpeech
 DEAI.S tta                  TTA (True Audio)
 D.A.L. twinvq               VQF TwinVQ
 D.A.L. vmdaudio             Sierra VMD audio
 DEA.L. vorbis               Vorbis (decoders: vorbis libvorbis ) (encoders: vorbis libvorbis )
 D.A... wavesynth            Wave synthesis pseudo-codec
 DEAILS wavpack              WavPack
 D.A.L. westwood_snd1        Westwood Audio (SND1) (decoders: ws_snd1 )
 D.A..S wmalossless          Windows Media Audio Lossless
 D.A.L. wmapro               Windows Media Audio 9 Professional
 DEA.L. wmav1                Windows Media Audio 1
 DEA.L. wmav2                Windows Media Audio 2
 D.A.L. wmavoice             Windows Media Audio Voice
 D.A.L. xan_dpcm             DPCM Xan
 D.A.L. xma1                 Xbox Media Audio 1
 D.A.L. xma2                 Xbox Media Audio 2
 ..D... bin_data             binary data
 ..D... dvd_nav_packet       DVD Nav packet
 ..D... klv                  SMPTE 336M Key-Length-Value (KLV) metadata
 ..D... otf                  OpenType font
 ..D... scte_35              SCTE 35 Message Queue
 ..D... timed_id3            timed ID3 metadata
 ..D... ttf                  TrueType font
 DES... ass                  ASS (Advanced SSA) subtitle (decoders: ssa ass ) (encoders: ssa ass )
 DES... dvb_subtitle         DVB subtitles (decoders: dvbsub ) (encoders: dvbsub )
 ..S... dvb_teletext         DVB teletext
 DES... dvd_subtitle         DVD subtitles (decoders: dvdsub ) (encoders: dvdsub )
 D.S... eia_608              EIA-608 closed captions (decoders: cc_dec )
 D.S... hdmv_pgs_subtitle    HDMV Presentation Graphic Stream subtitles (decoders: pgssub )
 ..S... hdmv_text_subtitle   HDMV Text subtitle
 D.S... jacosub              JACOsub subtitle
 D.S... microdvd             MicroDVD subtitle
 DES... mov_text             MOV text
 D.S... mpl2                 MPL2 subtitle
 D.S... pjs                  PJS (Phoenix Japanimation Society) subtitle
 D.S... realtext             RealText subtitle
 D.S... sami                 SAMI subtitle
 ..S... srt                  SubRip subtitle with embedded timing
 ..S... ssa                  SSA (SubStation Alpha) subtitle
 D.S... stl                  Spruce subtitle format
 DES... subrip               SubRip subtitle (decoders: srt subrip ) (encoders: srt subrip )
 D.S... subviewer            SubViewer subtitle
 D.S... subviewer1           SubViewer v1 subtitle
 DES... text                 raw UTF-8 text
 D.S... vplayer              VPlayer subtitle
 DES... webvtt               WebVTT subtitle
 DES... xsub                 XSUB
DiemBTran commented 1 year ago

Christy Sept 2021:


@orangewolf i was focused before on does this work or no but now have some questions

DiemBTran commented 1 year ago

Christy - Sept 2021:


Tested an MP3 upload and it uses the Work title to display over the item in the UV

Existing audio/video from CDRI is just showing black screens, no content

DiemBTran commented 1 year ago

Christy - Sept 2021:


I tested MP4 video, the proportions match the previous cropping so file was not cropped by quality is very poor. Here is the compressed mp4 quality BEFORE adding to the UV

Here is how it looks in the UV (not the file name is showing on the player also)

DiemBTran commented 1 year ago

Christy Sept 2021:


How do we get uncropped video and video that looks decent??

DiemBTran commented 1 year ago

Crystal Sept 2021:


For CDRI - > Worship Video Project Collection, I manually changed all of the records to not use the UV viewer until this is resolved. We will need to set them back when this is fixed in production.

DiemBTran commented 1 year ago

Crystal Nov 2021:


DiemBTran commented 1 year ago

Diem Nov 2021:


This passes Notch8 QA. I referred to !322 for updated criteria:

See attached screenshots.

a horizontal MP4:

Original video on Vimeo: Image Video in IIIF viewer in staging: Image

a vertical MP4

Original video on Vimeo:

Image

Video in IIIF viewer in staging:

Image

a horizontal MOV

Original video on Vimeo:

Image

Video in IIIF viewer in staging:

Image

DiemBTran commented 1 year ago

Christy Jan 2022


@orangewolf I think what is still left here is getting this to work for the existing video in the CDRI collection

Here is an item in that video collection https://dl.atla.com/concern/works/b8516097p?locale=en

This is noted in Crystal's list above.

DiemBTran commented 1 year ago

Rob Jan 2022


@ckarpinski that file shows a mime-type of video/mp4, but its NOT a video - its an audio file. trying to figure out how to 1) detect this and 2) handle it

DiemBTran commented 1 year ago

Christy Jan 2022


That is really weird since the collection it is in is called Worship Video Project.

This one is video for sure - https://dl.atla.com/concern/works/vd66wb62p?locale=en

DiemBTran commented 1 year ago

Lea Ann - May 2022


Notes from the PR:

CDRI Worship Video Project Collection will need to be re-injested to generate the higher quality derivatives.

DiemBTran commented 1 year ago

Christy May 2022


@labradford1 Hi Lea Ann this is a legacy collection that was the first thing put in the DL, there are no larger files or better quality - it was all done in the early/mid 2000s.


Lea Ann May 2022


Does that mean this ticket is complete? Or is there still an issue. It's not clear to me from reading the notes.

DiemBTran commented 1 year ago

Christy May 2022


@labradford1 No, the video items in CDRI collection need to be viewable, they currently do not show up. My last comments included a link to an audio item that worked, then a comment from rob about how to figure out what is audio vs video and them me sharing this item that is video and in CDRI - https://dl.atla.com/concern/works/vd66wb62p?locale=en

CDRI is currently the only hosted collection all the others are just metadata. For hosted collections we want the content viewable in the UV. CDRI already being in the DL as opposed to being newly ingested was not initially making use of the UV. It seems that now it is just video that is not working

WEIRD side note - just tried to search and narrow by collection and this collection is not listed as a facet


Lea Ann May 2022


thanks for the update

DiemBTran commented 1 year ago

Lea Ann May 2022:


Videos are turned off. Need to turn a video back on (from the edit page) to see the issue

DiemBTran commented 1 year ago

Lea Ann June 2022:


https://sentry.notch8.com/sentry/atla/issues/140992/

The manifest has an error for the works

DiemBTran commented 1 year ago

Lea Ann June 2022:


The manifest is failing to generate with an error that you must login?

{
  "@context": [
    "http://www.w3.org/ns/anno.jsonld",
    "http://iiif.io/api/presentation/3/context.json"
  ],
  "type": "Manifest",
  "id": "http://atla.docker/concern/works/9306sz28s/manifest",
  "label": {
    "@none": [
      "Main Title"
    ]
  },
  "summary": {
    "@none": [
      "This is a test video upload to troubleshoot the IIIF manifest"
    ]
  },
  "metadata": null,
  "rendering": [],
  "items": [
    {
      "type": "Canvas",
      "id": "http://atla.docker/concern/works/9306sz28s/manifest/canvas/rr171x20k",
      "label": "",
      "items": [
        {
          "type": "AnnotationPage",
          "id": "http://atla.docker/concern/works/9306sz28s/manifest/canvas/rr171x20k/annotation_page/1068d94d-015d-4cde-8397-57f6f0c3db61",
          "items": [
            {
              "type": "Annotation",
              "motivation": "painting",
              "target": "http://atla.docker/concern/works/9306sz28s/manifest/canvas/rr171x20k",
              "body": {
                "type": "Choice",
                "choiceHint": "user",
                "items": [
                  {
                    "id": "http://atla.docker/iiif_av/content/rr171x20k/mp4",
                    "type": "Video",
                    "duration": 1,
                    "format": "video/mp4",
                    "label": {
                      "@none": [
                        "mp4"
                      ]
                    },
                    "service": [
                      {
                        "context": "http://iiif.io/api/auth/1/context.json",
                        "@id": "http://atla.docker/users/sign_in?iiif_auth_login=true",
                        "@type": "AuthCookieService1",
                        "confirmLabel": "Login",
                        "description": "You must log in to view this content.",
                        "failureDescription": "<a href=\"http://example.org/policy\">Access Policy</a>",
                        "failureHeader": "Authentication Failed",
                        "header": "Please Log In",
                        "label": "Login Required",
                        "profile": "http://iiif.io/api/auth/1/login",
                        "service": [
                          {
                            "@id": "http://atla.docker/iiif_av/auth_token/rr171x20k",
                            "@type": "AuthTokenService1",
                            "profile": "http://iiif.io/api/auth/1/token"
                          },
                          {
                            "@id": "http://atla.docker/users/sign_out",
                            "@type": "AuthLogoutService1",
                            "label": "Log out",
                            "profile": "http://iiif.io/api/auth/1/logout"
                          }
                        ]
                      }
                    ]
                  },
                  {
                    "id": "http://atla.docker/iiif_av/content/rr171x20k/webm",
                    "type": "Video",
                    "duration": 1,
                    "format": "video/mp4",
                    "label": {
                      "@none": [
                        "webm"
                      ]
                    },
                    "service": [
                      {
                        "context": "http://iiif.io/api/auth/1/context.json",
                        "@id": "http://atla.docker/users/sign_in?iiif_auth_login=true",
                        "@type": "AuthCookieService1",
                        "confirmLabel": "Login",
                        "description": "You must log in to view this content.",
                        "failureDescription": "<a href=\"http://example.org/policy\">Access Policy</a>",
                        "failureHeader": "Authentication Failed",
                        "header": "Please Log In",
                        "label": "Login Required",
                        "profile": "http://iiif.io/api/auth/1/login",
                        "service": [
                          {
                            "@id": "http://atla.docker/iiif_av/auth_token/rr171x20k",
                            "@type": "AuthTokenService1",
                            "profile": "http://iiif.io/api/auth/1/token"
                          },
                          {
                            "@id": "http://atla.docker/users/sign_out",
                            "@type": "AuthLogoutService1",
                            "label": "Log out",
                            "profile": "http://iiif.io/api/auth/1/logout"
                          }
                        ]
                      }
                    ]
                  }
                ]
              }
            }
          ]
        }
      ],
      "width": null,
      "height": null,
      "duration": 1
    }
  ]
DiemBTran commented 1 year ago

Lea Ann June 2022


This is the method in https://github.com/samvera-labs/hyrax-iiif_av that is failing (https://github.com/samvera-labs/hyrax-iiif_av/blob/888ad531ec08e6c1040d609321972e2147f0c702/app/presenters/concerns/hyrax/iiif_av/displays_content.rb#L140):

def auth_service
          {
            "context": "http://iiif.io/api/auth/1/context.json",
            "@id": Rails.application.routes.url_helpers.new_user_session_url(host: request.base_url, iiif_auth_login: true),
            "@type": "AuthCookieService1",
            "confirmLabel": I18n.t('iiif_av.auth.confirmLabel'),
            "description": I18n.t('iiif_av.auth.description'),
            "failureDescription": I18n.t('iiif_av.auth.failureDescription'),
            "failureHeader": I18n.t('iiif_av.auth.failureHeader'),
            "header": I18n.t('iiif_av.auth.header'),
            "label": I18n.t('iiif_av.auth.label'),
            "profile": "http://iiif.io/api/auth/1/login",
            "service": [
              {
                "@id": Hyrax::IiifAv::Engine.routes.url_helpers.iiif_av_auth_token_url(id: id, host: request.base_url),
                "@type": "AuthTokenService1",
                "profile": "http://iiif.io/api/auth/1/token"
              },
              {
                "@id": Rails.application.routes.url_helpers.destroy_user_session_url(host: request.base_url),
                "@type": "AuthLogoutService1",
                "label": I18n.t('iiif_av.auth.logoutLabel'),
                "profile": "http://iiif.io/api/auth/1/logout"
              }
            ]
          }
        end
summer-cook commented 1 year ago

Notes:

removed the overridden manifest file to see if any overrides where causing the issue. This revealed that the line https://github.com/samvera-labs/hyrax-iiif_av/blob/6273f90016c153d2add33f85cc24285d51a25382/app/presenters/concerns/hyrax/iiif_av/displays_content.rb#L125 is where the error about the / is going weird that a VIDEO / mp4 file is hitting the audio_display_content method. need to investigate this more

summer-cook commented 1 year ago

Softserv QA

Passes softserv QA - I am able to upload an MP4, MOV, or AVI file successfully to staging

note that they take quite a while to upload in the DB but this seems to be unrelated (up to 15 mins)