> For the complete documentation index, see [llms.txt](https://docs.firework.com/firework-for-developers/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.firework.com/firework-for-developers/android-sdk/integration-guide/feed-sources/channel-video-feed.md).

# Channel Video Feed

Channel Video Feed displays specific videos from a channel by their video IDs. This feed type is perfect for scenarios where you want to hand-pick and showcase a curated set of videos from a particular channel.

## Overview

The Channel Video Feed allows you to display one or more specific videos from a channel using their video IDs. Unlike the Channel Feed which shows all videos from a channel, this feed type gives you precise control over which videos appear, making it ideal for editorial picks, curated collections, or featured video showcases.

## Usage

### Required Parameters

* `channelId` - Your encoded channel identifier (required, non-empty)
* `videoIds` - List of video identifiers to display (required, non-empty list)

### Programmatic Configuration

```kotlin
val videoFeedView = findViewById<FwVideoFeedView>(R.id.videoFeedView)

val videoIds = listOf("video_id_1", "video_id_2", "video_id_3")

val viewOptions = viewOptions {
    baseOptions {
        feedResource(
            FeedResource.ChannelVideo(
                channelId = "Your_Encoded_Channel_Id",
                videoIds = videoIds
            )
        )
    }
    layoutOptions {
        feedLayout(FeedLayout.HORIZONTAL)
    }
}

videoFeedView.init(viewOptions)
```

## Complete Examples

### Curated Video Showcase

```kotlin
class CuratedVideosActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_curated_videos)

        val videoFeedView = findViewById<FwVideoFeedView>(R.id.curatedVideos)

        val viewOptions = viewOptions {
            baseOptions {
                feedResource(
                    FeedResource.ChannelVideo(
                        channelId = "my_channel_id",
                        videoIds = listOf("featured_video_1", "featured_video_2")
                    )
                )
            }
            layoutOptions {
                feedLayout(FeedLayout.HORIZONTAL)
            }
            titleOptions {
                showFeedTitle(true)
            }
        }

        videoFeedView.init(viewOptions)
    }
}
```

### Editorial Picks (Grid Layout)

```kotlin
class EditorialPicksActivity : AppCompatActivity() {
    private fun showEditorialPicks(videoIds: List<String>) {
        val videoFeedView = findViewById<FwVideoFeedView>(R.id.editorialVideos)

        val viewOptions = viewOptions {
            baseOptions {
                feedResource(
                    FeedResource.ChannelVideo(
                        channelId = "my_channel_id",
                        videoIds = videoIds
                    )
                )
            }
            layoutOptions {
                feedLayout(FeedLayout.GRID)
                columnCount(2)
            }
        }

        videoFeedView.init(viewOptions)
    }
}
```

## Important Notes

* **Encoded Channel ID Required** - Channel ID must be an encoded value from Firework
* **Non-Empty Video List** - The `videoIds` list cannot be empty (will throw exception)
* **Multiple Videos Supported** - You can provide one or multiple video IDs
* **Video Ordering** - Videos are displayed in the order determined by the feed service
* **Video Availability** - Only videos that exist and are published will be shown
* **Video ID Format** - Use the video IDs as provided by the Firework platform

## See Also

* [Feed Sources Overview](/firework-for-developers/android-sdk/integration-guide/feed-sources.md) - All available feed types
* [BaseOption Configuration](/firework-for-developers/android-sdk/integration-guide/configuration/base-options.md) - Detailed configuration
* [Channel Feed](/firework-for-developers/android-sdk/integration-guide/feed-sources/channel-feed.md) - Display all videos from a channel
* [FwVideoFeedView](/firework-for-developers/android-sdk/integration-guide/configure-video-feed.md) - Video feed widget


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.firework.com/firework-for-developers/android-sdk/integration-guide/feed-sources/channel-video-feed.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
