diff --git a/src/media/media_decoder.cpp b/src/media/media_decoder.cpp
index 0512111a5cf905f8c6cf912d7fe81395ac7b07a9..0b704f8782c6c1c94919574e6002361acd67184c 100644
--- a/src/media/media_decoder.cpp
+++ b/src/media/media_decoder.cpp
@@ -312,6 +312,8 @@ int MediaDecoder::setupFromVideoData()
     if (enableAccel_) {
         accel_ = video::makeHardwareAccel(decoderCtx_);
         decoderCtx_->opaque = accel_.get();
+    } else {
+        RING_WARN("Hardware accelerated decoding disabled by user preference");
     }
 #endif // RING_ACCEL
 
@@ -365,7 +367,7 @@ MediaDecoder::decode(VideoFrame& result)
     ret = avcodec_send_packet(decoderCtx_, &inpacket);
     if (ret < 0) {
 #ifdef RING_ACCEL
-        if (accel_->hasFailed())
+        if (accel_ && accel_->hasFailed())
             return Status::RestartRequired;
 #endif
         return ret == AVERROR_EOF ? Status::Success : Status::DecodeError;
@@ -373,7 +375,7 @@ MediaDecoder::decode(VideoFrame& result)
     ret = avcodec_receive_frame(decoderCtx_, frame);
     if (ret < 0 && ret != AVERROR(EAGAIN) && ret != AVERROR_EOF) {
 #ifdef RING_ACCEL
-        if (accel_->hasFailed())
+        if (accel_ && accel_->hasFailed())
             return Status::RestartRequired;
 #endif
         return Status::DecodeError;
@@ -385,7 +387,7 @@ MediaDecoder::decode(VideoFrame& result)
                                     &frameFinished, &inpacket);
     if (ret <= 0) {
 #ifdef RING_ACCEL
-        if (accel_->hasFailed())
+        if (accel_ && accel_->hasFailed())
             return Status::RestartRequired;
 #endif
         return Status::DecodeError;
diff --git a/src/media/video/accel.cpp b/src/media/video/accel.cpp
index 5bd9dc49857ac8b7438bdfbec61bbce9754d4cec..e17f49f776c33245e8e126ec15de9fb7b1210c8d 100644
--- a/src/media/video/accel.cpp
+++ b/src/media/video/accel.cpp
@@ -225,7 +225,7 @@ makeHardwareAccel(AVCodecContext* codecCtx)
                     codecCtx->get_buffer2 = allocateBufferCb;
                     codecCtx->thread_safe_callbacks = 1;
                     codecCtx->thread_count = 1;
-                    RING_DBG("Succesfully set up '%s' acceleration", accel->name().c_str());
+                    RING_DBG("Attempting to use '%s' hardware acceleration", accel->name().c_str());
                     return accel;
                 }
             }